You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

68 line
1.6KB

  1. from fastapi import APIRouter,Request,HTTPException
  2. from pydantic import BaseModel
  3. from fastapi import APIRouter, Depends
  4. from pydantic import BaseModel, ValidationError
  5. from model.models import AgentConfig,validate_wxid,auth_required_time
  6. import threading
  7. import asyncio
  8. import time,random
  9. from typing import Dict, Tuple, Any
  10. label_router = APIRouter(prefix="/api/label")
  11. class LabelAddRequest(BaseModel):
  12. wxid: str
  13. labelName: str
  14. class LabelDelRequest(BaseModel):
  15. wxid: str
  16. labelIds: list
  17. class LabelListRequest(BaseModel):
  18. wxid: str
  19. class LabelModifyRequest(BaseModel):
  20. wxid: str
  21. labelIds: list
  22. wxIds: list
  23. @label_router.post("/add", response_model=None)
  24. async def add_label(request: Request, body: LabelAddRequest):
  25. wxid = body.wxid
  26. label_name = body.labelName
  27. return { "labelName":label_name,"labelId":random.randint(1,100)}
  28. @label_router.post("/delete", response_model=None)
  29. async def delete_label(request: Request, body: LabelDelRequest, ):
  30. wxid = body.wxid
  31. label_ids= body.labelIds
  32. return {"message":"操作成功"}
  33. @label_router.post("/list", response_model=None)
  34. async def list_label(request: Request, body: LabelListRequest, ):
  35. wxid = body.wxid
  36. return {
  37. "labelList":[{
  38. "labelName": "朋友",
  39. "labelId": 1
  40. },{
  41. "labelName": "邻居",
  42. "labelId": 2
  43. }]
  44. }
  45. @label_router.post("/modifymembers", response_model=None)
  46. async def modifymembers_label(request: Request, body: LabelModifyRequest, ):
  47. wxid = body.wxid
  48. label_ids= body.labelIds
  49. wxids= body.wxIds
  50. return {"message":"操作成功"}