Browse Source

优化findByUser

zouxuan 4 năm trước cách đây
mục cha
commit
718e91c2a6

+ 8 - 3
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/service/impl/SysMenuServiceImpl.java

@@ -50,11 +50,16 @@ public class SysMenuServiceImpl extends BaseServiceImpl<Integer, SysMenu>  imple
 
 	public List<SysMenu> findByUser(MenuQueryInfo menuQueryInfo) {
 		SysUser sysUser = sysUserDao.get(menuQueryInfo.getUserId());
+		List<SysMenu> sysMenus;
+		List<SysMenu> sysMenusAllList;
+
 		if(sysUser.getIsSuperAdmin()){
-			menuQueryInfo.setUserId(null);
+			sysMenus = sysMenuDao.findList(menuQueryInfo.getParentId(),menuQueryInfo.getDelFlag(),menuQueryInfo.getHid());
+			sysMenusAllList = sysMenuDao.findList(null,menuQueryInfo.getDelFlag(),menuQueryInfo.getHid());
+		}else {
+			sysMenus = sysMenuDao.findByParentId(menuQueryInfo.getParentId(),menuQueryInfo.getDelFlag(),menuQueryInfo.getUserId(),menuQueryInfo.getHid());
+			sysMenusAllList = sysMenuDao.findByParentId(null,menuQueryInfo.getDelFlag(),menuQueryInfo.getUserId(),menuQueryInfo.getHid());
 		}
-		List<SysMenu> sysMenus = sysMenuDao.findByParentId(menuQueryInfo.getParentId(),menuQueryInfo.getDelFlag(),menuQueryInfo.getUserId(),menuQueryInfo.getHid());
-		List<SysMenu> sysMenusAllList = sysMenuDao.findByParentId(null,menuQueryInfo.getDelFlag(),menuQueryInfo.getUserId(),menuQueryInfo.getHid());
 
 		for (SysMenu menu:sysMenus) {
 			menu = getTree1(menu,sysMenusAllList);

+ 1 - 1
mec-auth/mec-auth-server/src/main/resources/config/mybatis/SysMenuMapper.xml

@@ -182,6 +182,6 @@
                 AND hidden_ = #{hid}
             </if>
         </where>
-        ORDER BY sort_ DESC
+        ORDER BY sort_ DESC,id_ DESC
     </select>
 </mapper>