Spaces:
Running
Running
优化系统管理员头像
Browse files- router_messages.py +6 -2
router_messages.py
CHANGED
|
@@ -28,14 +28,18 @@ async def publish_announcement(ann: SystemAnnouncement, current_user: str = Depe
|
|
| 28 |
if not is_admin(current_user):
|
| 29 |
raise HTTPException(status_code=403, detail="无权发布系统公告,仅管理员可操作")
|
| 30 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 31 |
announcements_db = db.load_data("announcements.json", default_data=[])
|
| 32 |
|
| 33 |
new_ann = {
|
| 34 |
"id": f"sys_{int(time.time())}_{uuid.uuid4().hex[:6]}",
|
| 35 |
"type": "system",
|
| 36 |
"from_user": current_user, # 使用真实的管理员账号
|
| 37 |
-
"from_name": "
|
| 38 |
-
"from_avatar": "",
|
| 39 |
"content": ann.content,
|
| 40 |
"created_at": int(time.time())
|
| 41 |
}
|
|
|
|
| 28 |
if not is_admin(current_user):
|
| 29 |
raise HTTPException(status_code=403, detail="无权发布系统公告,仅管理员可操作")
|
| 30 |
|
| 31 |
+
# 查询管理员信息
|
| 32 |
+
users_db = db.load_data("users.json", default_data={})
|
| 33 |
+
admin_info = users_db.get(current_user, {})
|
| 34 |
+
|
| 35 |
announcements_db = db.load_data("announcements.json", default_data=[])
|
| 36 |
|
| 37 |
new_ann = {
|
| 38 |
"id": f"sys_{int(time.time())}_{uuid.uuid4().hex[:6]}",
|
| 39 |
"type": "system",
|
| 40 |
"from_user": current_user, # 使用真实的管理员账号
|
| 41 |
+
"from_name": admin_info.get("name", current_user), # 使用真实昵称,fallback 为账号
|
| 42 |
+
"from_avatar": admin_info.get("avatarDataUrl", ""), # 使用真实头像
|
| 43 |
"content": ann.content,
|
| 44 |
"created_at": int(time.time())
|
| 45 |
}
|