Skip to content

Commit aa27379

Browse files
Zcraft37937086cmd
andauthored
fix: should use data to handle duration modification (#51)
* fix: move duration parameter into request body * fix: string with '/' causes 404 * fix: delete empty past record * feat: remove notification api * feat: support netlify previews * fix * add note * revert to main --------- Co-authored-by: Ethan Goh <[email protected]>
1 parent d30a060 commit aa27379

File tree

2 files changed

+14
-9
lines changed

2 files changed

+14
-9
lines changed

main.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323

2424
app.add_middleware(
2525
CORSMiddleware,
26-
allow_origins=["http://localhost:5173", "https://v4.zvms.site", "https://v4-netlify.zvms.site/"],
26+
allow_origins=["http://localhost:5173", "https://v4.zvms.site", "https://v4-netlify.zvms.site/", "https://deploy-preview-*--zvms.netlify.app/"],
2727
allow_credentials=True,
2828
allow_methods=["*"],
2929
allow_headers=["*"],
@@ -71,9 +71,9 @@ async def home():
7171
"license": "MIT",
7272
"source": "https://github.com/zvms/zvms4-backend-python.git",
7373
"apis": {
74-
"user": "/api/user",
75-
"activity": "/api/activity",
76-
"group": "/api/group",
74+
"user": "/api/users",
75+
"activity": "/api/activities",
76+
"group": "/api/groups",
7777
"exports": "/api/exports",
7878
"imports": "/api/imports",
7979
"logs": "/api/logs"

routers/activities_router.py

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -443,15 +443,16 @@ async def read_activity(activity_oid: str, user=Depends(get_current_user)):
443443
return {"status": "ok", "code": 200, "data": activity}
444444

445445

446+
class PutActivityDuration(BaseModel):
447+
duration: str
448+
449+
446450
@router.put('/{activity_oid}/member/{uid}/duration')
447-
async def update_activity_member_duration(activity_oid: str, uid: str, duration: float, user=Depends(get_current_user),
451+
async def update_activity_member_duration(activity_oid: str, uid: str, payload: PutActivityDuration, user=Depends(get_current_user),
448452
log=Depends(inject_log)):
449453
"""
450454
Update activity member duration
451455
"""
452-
log.with_text(
453-
f"User {await get_user_name(user['id'])} updated activity member {await get_user_name(uid)}'s duration to {duration} in activity {activity_oid}")
454-
await log.insert_log()
455456

456457
activity = await db.zvms.activities.find_one(
457458
{"_id": validate_object_id(activity_oid)}
@@ -477,7 +478,7 @@ async def update_activity_member_duration(activity_oid: str, uid: str, duration:
477478
"in": {
478479
"$cond": [
479480
{"$eq": ["$$member._id", uid]},
480-
{"$mergeObjects": ["$$member", {"duration": duration}]},
481+
{"$mergeObjects": ["$$member", {"duration": payload.duration}]},
481482
"$$member"
482483
]
483484
}
@@ -492,6 +493,10 @@ async def update_activity_member_duration(activity_oid: str, uid: str, duration:
492493
pipeline
493494
)
494495

496+
log.with_text(
497+
f"User {await get_user_name(user['id'])} updated activity member {await get_user_name(uid)}'s duration to {duration} in activity {activity_oid}")
498+
await log.insert_log()
499+
495500
return {
496501
"status": "ok",
497502
"code": 200,

0 commit comments

Comments
 (0)