|
@@ -192,10 +192,27 @@ async def getRouters(request: Request, db: Session = Depends(get_db),
|
|
|
|
|
|
routers_dict.append(router_info)
|
|
|
# 返回构建好的路由数据
|
|
|
+ query = db.query(SysDictData)
|
|
|
+ query = query.filter(SysDictData.del_flag != '2')
|
|
|
+ query = query.filter(SysDictData.dict_type == 'sys_menu_layer_zt')
|
|
|
+ if ZT is None:
|
|
|
+ return {
|
|
|
+ "code": 200,
|
|
|
+ "data": [],
|
|
|
+ "msg": "操作成功"
|
|
|
+ }
|
|
|
+
|
|
|
+ query = query.order_by(SysDictData.order_num)
|
|
|
+ zt_list = query.all()
|
|
|
+ zt = []
|
|
|
+ for info in zt_list:
|
|
|
+ zt.append({"data":[i for i in info.remark.split(';') if i != ''] if info.remark else [],'zt':info.dict_label,"zt_code":info.dict_value})
|
|
|
+
|
|
|
return {
|
|
|
"code": 200,
|
|
|
"msg": "操作成功",
|
|
|
- "data": routers_dict #[router.dict() for router in routers] # 如果没有顶级菜单,返回空列表
|
|
|
+ "data": routers_dict, #[router.dict() for router in routers] # 如果没有顶级菜单,返回空列表
|
|
|
+ 'zt':[]
|
|
|
}
|
|
|
except Exception as e:
|
|
|
# 处理异常,返回错误信息
|
|
@@ -472,5 +489,82 @@ async def delete(
|
|
|
except Exception as e:
|
|
|
traceback.print_exc()
|
|
|
|
|
|
+ db.rollback()
|
|
|
+ return JSONResponse(status_code=404, content={"code": 404, "msg": str(e)})
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+@router.get('/zt/dt/list')
|
|
|
+async def get_list(
|
|
|
+ ZT: str = Query(None, max_length=100),
|
|
|
+ db: Session = Depends(get_db),
|
|
|
+ body = Depends(remove_xss_json),
|
|
|
+ user_id = Depends(valid_access_token)
|
|
|
+):
|
|
|
+ query = db.query(SysDictData)
|
|
|
+ query = query.filter(SysDictData.del_flag != '2')
|
|
|
+ query = query.filter(SysDictData.dict_type=='sys_menu_layer_zt')
|
|
|
+ if ZT is None:
|
|
|
+ return {
|
|
|
+ "code": 200,
|
|
|
+ "data": [],
|
|
|
+ "msg": "操作成功"
|
|
|
+ }
|
|
|
+
|
|
|
+ query = query.filter(SysDictData.dict_value==ZT)
|
|
|
+ # query = query.order_by(SysDictData.order_num)
|
|
|
+ # 应用查询
|
|
|
+ # menu_list = db.query(SysMenu).filter(
|
|
|
+ # (SysMenu.menu_name.like(f'%{menu_name}%')) ,
|
|
|
+ # (SysMenu.status.like(f'%{status}%'))
|
|
|
+ # ).all()
|
|
|
+ zt = query.first()
|
|
|
+ if zt is None:
|
|
|
+ return {
|
|
|
+ "code": 200,
|
|
|
+ "data": [],
|
|
|
+ "msg": "操作成功"
|
|
|
+ }
|
|
|
+ # 将模型实例转换为字典
|
|
|
+ zt_list = [i for i in zt.remark.split(';') if i != ''] if zt.remark else []
|
|
|
+
|
|
|
+ return {
|
|
|
+ "code": 200,
|
|
|
+ "data": zt_list,
|
|
|
+ "msg": "操作成功"
|
|
|
+ }
|
|
|
+
|
|
|
+@router.put('/zt/{id}/dt/update')
|
|
|
+async def update(
|
|
|
+ request: Request,
|
|
|
+ id:str,
|
|
|
+ auth_user: AuthUser = Depends(find_auth_user),
|
|
|
+ # form_data: SysMuneUpdateForm,
|
|
|
+ db: Session = Depends(get_db),
|
|
|
+ body = Depends(remove_xss_json),
|
|
|
+ user_id = Depends(valid_access_token)
|
|
|
+):
|
|
|
+
|
|
|
+ try:
|
|
|
+ query = db.query(SysDictData)
|
|
|
+ query = query.filter(SysDictData.del_flag != '2')
|
|
|
+ query = query.filter(SysDictData.dict_type == 'sys_menu_layer_zt')
|
|
|
+ query = query.filter(SysDictData.dict_value == id)
|
|
|
+ zt = query.first()
|
|
|
+ if zt is None:
|
|
|
+ return JSONResponse(status_code=404, content={"code": 404, "msg": '专题不存在'})
|
|
|
+ if 'dt' in body:
|
|
|
+ remark = ';' + ';'.join(body['dt']) + ';'
|
|
|
+ zt.remark = remark
|
|
|
+
|
|
|
+ zt.update_by = user_id
|
|
|
+ zt.update_time = datetime.now()
|
|
|
+
|
|
|
+ db.commit()
|
|
|
+ return {"code":200,"msg":"操作成功"}
|
|
|
+ except Exception as e:
|
|
|
+ traceback.print_exc()
|
|
|
+
|
|
|
db.rollback()
|
|
|
return JSONResponse(status_code=404, content={"code": 404, "msg": str(e)})
|