summaryrefslogtreecommitdiff
path: root/ATRI/plugins/anti_effort/data_source.py
diff options
context:
space:
mode:
Diffstat (limited to 'ATRI/plugins/anti_effort/data_source.py')
1 files changed, 10 insertions, 5 deletions
diff --git a/ATRI/plugins/anti_effort/data_source.py b/ATRI/plugins/anti_effort/data_source.py
index f9a943f..0a0ef02 100644
--- a/ATRI/plugins/anti_effort/data_source.py
+++ b/ATRI/plugins/anti_effort/data_source.py
@@ -21,13 +21,14 @@ class AntiEffort(Service):
self, "谁是卷王", "谁是卷王!", rule=is_in_service("谁是卷王"), main_cmd="/ae"
)
- def add_user(self, group_id: int, user_id: int, waka_url: str) -> str:
+ def add_user(
+ self, group_id: int, user_id: int, user_nickname: str, waka_url: str
+ ) -> str:
patt = r"/@([a-zA-Z0-9].*?)/([a-zA-Z0-9].*?).json"
match = re.findall(patt, waka_url)
if not match:
return "哥,你提供的链接有问题啊"
- w_user_name = match[0][0]
w_user_id = match[0][1]
file_path = PLUGIN_DIR / f"{group_id}.json"
@@ -36,10 +37,14 @@ class AntiEffort(Service):
f.write(json.dumps(list()))
data: list = json.loads(file_path.read_text())
+ for i in data:
+ if i["user_id"] == user_id:
+ return "你已经在卷王统计榜力!"
+
data.append(
AntiEffortUserModel(
user_id=user_id,
- w_user_name=w_user_name,
+ user_nickname=user_nickname,
w_user_id=w_user_id,
waka_url=waka_url,
last_7_days_count=int(),
@@ -62,7 +67,7 @@ class AntiEffort(Service):
f.write(json.dumps(data))
return "成功退出卷王统计榜!"
- return "贵群还没有人加入卷王统计榜!"
+ return "你未加入卷王统计榜捏"
def get_data(self, group_id: int) -> list:
file_path = PLUGIN_DIR / f"{group_id}.json"
@@ -99,11 +104,11 @@ class AntiEffort(Service):
for j in data:
try:
resp = await request.get(j["waka_url"])
+ user_w_data = resp.json() # type: ignore
except Exception:
log.error(f"获取卷王 {j['user_id']} 数据失败!")
continue
- user_w_data = resp.json() # type: ignore
d = user_w_data["data"]
user_w_last_7_days_count = float()
user_w_recent_count = float(d[-1]["grand_total"]["decimal"])