Sfoglia il codice sorgente

Merge branch 'master' of https://gogs.tjp.com.cn/maoming/python-fastapi-mm-zhcs-yj-api

libushang 3 settimane fa
parent
commit
7bf5d60ea5
1 ha cambiato i file con 95 aggiunte e 1 eliminazioni
  1. 95 1
      routers/api/layerConfiguration/__init__.py

+ 95 - 1
routers/api/layerConfiguration/__init__.py

@@ -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)})