|
@@ -1,6 +1,7 @@
|
|
|
from fastapi import APIRouter, Request, Depends, HTTPException, Query,Response
|
|
|
from sqlalchemy.exc import IntegrityError
|
|
|
|
|
|
+from common.security import valid_access_token
|
|
|
from fastapi.responses import JSONResponse
|
|
|
from database import get_db
|
|
|
from sqlalchemy.orm import Session
|
|
@@ -20,7 +21,7 @@ router = APIRouter()
|
|
|
|
|
|
|
|
|
@router.post('/create')
|
|
|
-async def create_knowledge(request: Request, db: Session = Depends(get_db)):
|
|
|
+async def create_knowledge(request: Request, db: Session = Depends(get_db), user_id=Depends(valid_access_token)):
|
|
|
body = await request.json()
|
|
|
required_fields = ['reportName', 'subject', 'eventType', 'publishingUnit', 'publishDate', 'summary', 'fileNames']
|
|
|
if not all(field in body for field in required_fields):
|
|
@@ -108,7 +109,7 @@ async def select_knowledge(
|
|
|
pageSize: int = Query(10, gt=0, le=100, description="每页大小"),
|
|
|
eventType: str = Query(None, description="事件类型"),
|
|
|
publishDateRange: str = Query(None, description="发布日期范围"),
|
|
|
- query: str = Query(None, description="查询关键字")
|
|
|
+ query: str = Query(None, description="查询关键字", user_id=Depends(valid_access_token))
|
|
|
):
|
|
|
data_query = db.query(KnowledgeBase)
|
|
|
data_query = data_query.filter(KnowledgeBase.del_flag != '2')
|
|
@@ -176,7 +177,7 @@ async def select_knowledge(
|
|
|
|
|
|
|
|
|
@router.get('/detail')
|
|
|
-async def get_knowledge_detail(db: Session = Depends(get_db), reportID: Optional[str] = Query(None, description="报告ID")):
|
|
|
+async def get_knowledge_detail(db: Session = Depends(get_db), reportID: Optional[str] = Query(None, description="报告ID"), user_id=Depends(valid_access_token)):
|
|
|
if not reportID:
|
|
|
raise HTTPException(status_code=400, detail="Missing required parameter 'reportID'")
|
|
|
|
|
@@ -230,7 +231,7 @@ async def get_knowledge_detail(db: Session = Depends(get_db), reportID: Optional
|
|
|
|
|
|
|
|
|
@router.post ('/delete')
|
|
|
-async def delete_knowledge(request: Request, db: Session = Depends(get_db)):
|
|
|
+async def delete_knowledge(request: Request, db: Session = Depends(get_db), user_id=Depends(valid_access_token)):
|
|
|
# 从请求的 JSON 数据中获取 reportID
|
|
|
body = await request.json()
|
|
|
report_id_to_use = body.get('reportID')
|
|
@@ -274,7 +275,7 @@ async def delete_knowledge(request: Request, db: Session = Depends(get_db)):
|
|
|
|
|
|
|
|
|
@router.delete('/delete/list')
|
|
|
-async def delete_knowledge_list(request: Request, db: Session = Depends(get_db)):
|
|
|
+async def delete_knowledge_list(request: Request, db: Session = Depends(get_db), user_id=Depends(valid_access_token)):
|
|
|
# 从请求的 JSON 数据中获取 reportID
|
|
|
body = await request.json()
|
|
|
report_id_to_use = body.get('reportID')
|
|
@@ -341,7 +342,7 @@ def delete_file_fun(knowledge_base_code,db: Session):
|
|
|
|
|
|
|
|
|
@router.post('/update')
|
|
|
-async def update_knowledge(request: Request, db: Session = Depends(get_db)):
|
|
|
+async def update_knowledge(request: Request, db: Session = Depends(get_db), user_id=Depends(valid_access_token)):
|
|
|
body = await request.json()
|
|
|
report_id_to_use = body.get('reportId')
|
|
|
if not report_id_to_use:
|
|
@@ -407,7 +408,7 @@ async def update_knowledge(request: Request, db: Session = Depends(get_db)):
|
|
|
|
|
|
|
|
|
@router.put('/update/list')
|
|
|
-async def update_knowledge_list(request: Request, db: Session = Depends(get_db)):
|
|
|
+async def update_knowledge_list(request: Request, db: Session = Depends(get_db), user_id=Depends(valid_access_token)):
|
|
|
body = await request.json()
|
|
|
update_items = body.get('updateItems')
|
|
|
if not update_items or not isinstance(update_items, list):
|