brealinxx 1 år sedan
förälder
incheckning
9d217af74d

+ 11 - 5
src/main/java/com/xjrsoft/module/system/controller/MenuController.java

@@ -140,12 +140,18 @@ public class MenuController {
                         .select(Menu::getId)
                         .select(Menu.class, x -> VoToColumnUtil.fieldsToColumns(MenuTreeVo.class).contains(x.getProperty()))
                         .selectAs(Subsystem::getName, MenuTreeVo::getSystemName)
+                        .select("t3.name", MenuTreeVo::getDeptName)
+                        .select("t2.dept_id", MenuTreeVo::getDeptId)
                         .eq(ObjectUtils.isNotEmpty(dto.getEnabledMark()), Menu::getEnabledMark, dto.getEnabledMark())
-                        .leftJoin(Subsystem.class, Subsystem::getId, Menu::getSystemId);
-
-        wrapper.select(
-                "(select p1.name from xjr_menu_dept_relation p left join xjr_department p1 on p1.id = p.dept_id where t.id = p.menu_id) AS deptName"
-        ).orderByAsc(Menu::getSortCode);
+                        .leftJoin(Subsystem.class, Subsystem::getId, Menu::getSystemId)
+                        .leftJoin("xjr_menu_dept_relation t2 ON (t.id = t2.menu_id)")
+                        .leftJoin("xjr_department t3 ON (t3.id = t2.dept_id)")
+                        .orderByAsc(Menu::getSortCode);
+
+//        wrapper.select(
+//                "(select p1.name from xjr_menu_dept_relation p left join xjr_department p1 on p1.id = p.dept_id where t.id = p.menu_id) AS deptName",
+//                "(select p.dept_id from xjr_menu_dept_relation p where t.id = p.menu_id) AS deptId"
+//        );
 
         List<MenuTreeVo> list = menuService.selectJoinList(MenuTreeVo.class, wrapper);
         List<MenuTreeVo> treeVoList = TreeUtil.build(list);

+ 1 - 0
src/main/java/com/xjrsoft/module/system/vo/MenuTreeVo.java

@@ -139,6 +139,7 @@ public class MenuTreeVo implements ITreeNode<MenuTreeVo,Long>, Serializable {
     private Integer enabledMark;
 
     private String deptName;
+    private String deptId;
 
     private List<MenuTreeVo> children;