diff --git a/api/api_v1/endpoints/interview.py b/api/api_v1/endpoints/interview.py index f0ab20f..b21b9a6 100644 --- a/api/api_v1/endpoints/interview.py +++ b/api/api_v1/endpoints/interview.py @@ -320,9 +320,9 @@ async def interview_file_insert( print(data) return schemas.Msg(code=200, msg='ok', data=data) else: - return schemas.Msg(code=400, msg='解析失败', data=None) + return schemas.Msg(code=-9, msg='解析失败', data='') except: - return schemas.Msg(code=400, msg='解析失败', data=None) + return schemas.Msg(code=-9, msg='解析失败', data='') @router.post("/add_job") @@ -1225,3 +1225,80 @@ async def add_api( api_list=[data_in.path], api_name=[data_in.desc], state=[True])) return schemas.Msg(code=200, msg='ok', data='路由添加成功!') + + +@router.post("/add_policy") +async def add_policy( + request: Request, + data_in: schemas.Datalist, + db: AsyncIOMotorDatabase = Depends(get_database), + # current_user: schemas.UserDB = Depends(deps.get_current_user) +): + """ + 向当前权限添加新路由 + """ + res = await crud.url_list.find_one_url(db, data_in) + for i in range(len(res['api_list'])): + if res['api_list'][i] == data_in.path: + res['state'][i] = True + await crud.url_list.update_url_url(db, res) + return schemas.Msg(code=200, msg='修改成功', data='') + + +@router.post("/del_policy") +async def remove_policy( + request: Request, + data_in: schemas.Del_role, + db: AsyncIOMotorDatabase = Depends(get_database), + # current_user: schemas.UserDB = Depends(deps.get_current_user) +): + """ + 修改角色api权限 + """ + res = await crud.url_list.find_one_url(db, data_in) + for i in range(len(res['api_list'])): + if res['api_list'][i] == data_in.path: + res['state'][i] = False + await crud.url_list.update_url_url(db, res) + return schemas.Msg(code=200, msg='修改成功', data='') + + +@router.get("/roles") +async def roles( + request: Request, + db: AsyncIOMotorDatabase = Depends(get_database), + # current_user: schemas.UserDB = Depends(deps.get_current_user) +) -> schemas.Msg: + """ + 获取所有的管理员用户 + """ + res = await crud.url_list.get_all(db) + role = [] + data = [] + # 区分不同项目下的权限用户 + for i in res: + if i['system'] == 1 and i['name'] != 'root': + role.append(i['name']) + # 得到不同权限用户 + role = list(set(role)) + for id in role: + data_dcit = {} + data_dcit['name'] = id + auth_id = [] + system = [] + data_list = [] + for i in res: + if i['name'] == id: + data_one = {} + auth_id.append(i['auth_id']) + system.append(i['system']) + data_one['path_name'] = i['path_name'] + data_one['api_name'] = i['api_name'] + data_one['api_list'] = i['api_list'] + data_one['state'] = i['state'] + data_list.append(data_one) + data_dcit['datalist'] = data_list + data_dcit['auth_id'] = auth_id[0] + data_dcit['system'] = system[0] + data.append(data_dcit) + return schemas.Msg(code=200, msg='ok', data=data)