|
@@ -379,34 +379,44 @@ async def get_list(
|
|
if status:
|
|
if status:
|
|
query = query.filter(SysMenu.status.like(f'%{status}%'))
|
|
query = query.filter(SysMenu.status.like(f'%{status}%'))
|
|
# 应用查询
|
|
# 应用查询
|
|
- # menu_list = db.query(SysMenu).filter(
|
|
|
|
- # (SysMenu.menu_name.like(f'%{menu_name}%')) ,
|
|
|
|
- # (SysMenu.status.like(f'%{status}%'))
|
|
|
|
- # ).all()
|
|
|
|
|
|
+
|
|
query = query.order_by(SysMenu.order_num.asc())
|
|
query = query.order_by(SysMenu.order_num.asc())
|
|
menu_list = query.all()
|
|
menu_list = query.all()
|
|
# 将模型实例转换为字典
|
|
# 将模型实例转换为字典
|
|
- menu_list_dict = [{
|
|
|
|
- "menuId": menu.menu_id,
|
|
|
|
- "menuName": menu.menu_name,
|
|
|
|
- "parentId": menu.parent_id,
|
|
|
|
- "orderNum": menu.order_num,
|
|
|
|
- "path": menu.path,
|
|
|
|
- "component": menu.component,
|
|
|
|
- "queryParam": menu.query_param,
|
|
|
|
- "isFrame": str(menu.is_frame),
|
|
|
|
- "isCache": str(menu.is_cache),
|
|
|
|
- "menuType": menu.menu_type,
|
|
|
|
- "visible": menu.visible,
|
|
|
|
- "status": menu.status,
|
|
|
|
- "perms": menu.perms,
|
|
|
|
- "icon": menu.icon,
|
|
|
|
- "createDept": menu.create_dept,
|
|
|
|
- "remark": menu.remark,
|
|
|
|
- "createTime": menu.create_time.strftime('%Y-%m-%d %H:%M:%S') if menu.create_time else '',
|
|
|
|
- "children": [] # 递归调用以获取子菜单
|
|
|
|
- } for menu in menu_list]
|
|
|
|
-
|
|
|
|
|
|
+ menu_list_dict = []
|
|
|
|
+ def menu_parent_life(menu_id):
|
|
|
|
+ query = db.query(SysMenu)
|
|
|
|
+ query = query.filter(SysMenu.menu_id==menu_id)
|
|
|
|
+ data = query.filter(SysMenu.del_flag != '2').first()
|
|
|
|
+ if data is None:
|
|
|
|
+ return False
|
|
|
|
+ if data.parent_id==0 or data.parent_id=='0':
|
|
|
|
+ return True
|
|
|
|
+ else:
|
|
|
|
+ return menu_parent_life(data.parent_id)
|
|
|
|
+
|
|
|
|
+ for menu in menu_list:
|
|
|
|
+ if menu_parent_life(menu.menu_id):
|
|
|
|
+ menu_list_dict.append({
|
|
|
|
+ "menuId": menu.menu_id,
|
|
|
|
+ "menuName": menu.menu_name,
|
|
|
|
+ "parentId": menu.parent_id,
|
|
|
|
+ "orderNum": menu.order_num,
|
|
|
|
+ "path": menu.path,
|
|
|
|
+ "component": menu.component,
|
|
|
|
+ "queryParam": menu.query_param,
|
|
|
|
+ "isFrame": str(menu.is_frame),
|
|
|
|
+ "isCache": str(menu.is_cache),
|
|
|
|
+ "menuType": menu.menu_type,
|
|
|
|
+ "visible": menu.visible,
|
|
|
|
+ "status": menu.status,
|
|
|
|
+ "perms": menu.perms,
|
|
|
|
+ "icon": menu.icon,
|
|
|
|
+ "createDept": menu.create_dept,
|
|
|
|
+ "remark": menu.remark,
|
|
|
|
+ "createTime": menu.create_time.strftime('%Y-%m-%d %H:%M:%S') if menu.create_time else '',
|
|
|
|
+ "children": [] # 递归调用以获取子菜单
|
|
|
|
+ })
|
|
# 构建分页响应
|
|
# 构建分页响应
|
|
# pagination_info = {
|
|
# pagination_info = {
|
|
# "total": total_count,
|
|
# "total": total_count,
|