Skip to content

Commit 7ad1e05

Browse files
authored
fix: activity list size error (#49)
* fix: activity list size error * fix: check if user exists before import
1 parent f554fe6 commit 7ad1e05

File tree

2 files changed

+8
-23
lines changed

2 files changed

+8
-23
lines changed

routers/activities_router.py

Lines changed: 3 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,7 @@ async def change_activity_status(
199199
@router.get("")
200200
async def read_activities(
201201
type: str | None,
202-
mode: str,
202+
mode: str | None,
203203
page: int = -1,
204204
perpage: int = 10,
205205
query: str = "",
@@ -215,13 +215,6 @@ async def read_activities(
215215
if (
216216
"admin" not in user["per"]
217217
and "department" not in user["per"]
218-
and mode == "campus"
219-
):
220-
raise HTTPException(status_code=403, detail="Permission denied")
221-
elif (
222-
"secretary" not in user["per"]
223-
and "admin" not in user["per"]
224-
and mode == "class"
225218
):
226219
raise HTTPException(status_code=403, detail="Permission denied")
227220
if type is None or type == 'all' or type == '':
@@ -230,7 +223,7 @@ async def read_activities(
230223
target_types = type.split(",")
231224
if len(target_types) == 0:
232225
target_types = ["specified", "social", "scale", "special"]
233-
if mode == "campus":
226+
if True:
234227
# Read activities
235228
result = []
236229

@@ -298,7 +291,7 @@ async def read_activities(
298291
]
299292

300293
count = await db.zvms.activities.count_documents(
301-
{"name": {"$regex": query, "$options": "i"}}
294+
{"name": {"$regex": query, "$options": "i"}, "type": {"$in": target_types}}
302295
)
303296
activities = await db.zvms.activities.aggregate(pipeline).to_list(None)
304297
for activity in activities:
@@ -309,16 +302,6 @@ async def read_activities(
309302
"data": activities,
310303
"metadata": {"size": count},
311304
}
312-
elif mode == "class":
313-
result, count = await get_activities_related_to_user(
314-
user["id"], page, perpage, query
315-
)
316-
return {
317-
"status": "ok",
318-
"code": 200,
319-
"data": result,
320-
"metadata": {"size": count},
321-
}
322305

323306

324307
@router.get("/{activity_oid}")

routers/imports_router.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -69,9 +69,11 @@ async def upload_activity_excel(name: str, desc: str, payload: UploadFile = File
6969
template.name += ' | Mode: ' + mode
7070
for idx, row in df.iterrows():
7171
if row[mode] != 0.0 and not pd.isna(row[mode]):
72-
template.members.append(ActivityMember(_id=row['_id'], id=row['_id'], status=MemberActivityStatus.effective,
73-
mode=ActivityMode(mode.replace(' ', '-').lower()),
74-
duration=row[mode]))
72+
user = await db.zvms.users.find_one({"_id": validate_object_id(row['_id'])})
73+
if user is not None:
74+
template.members.append(ActivityMember(_id=row['_id'], id=row['_id'], status=MemberActivityStatus.effective,
75+
mode=ActivityMode(mode.replace(' ', '-').lower()),
76+
duration=row[mode]))
7577
if len(user) != 0:
7678
await create_activity(template, user=user, log=log)
7779
except Exception as e:

0 commit comments

Comments
 (0)