zhuang 7 місяців тому
батько
коміт
8b52fdafe7

+ 9 - 7
business-common/src/main/java/com/rongwei/bscommon/sys/dao/ZhcxPersistentManageDao.java

@@ -40,7 +40,15 @@ public interface ZhcxPersistentManageDao extends BaseMapper<ZhcxPersistentManage
             "    o.ID AS orgId, \n" +
             "    o.FULLNAME AS orgName, \n" +
             "    o.PID AS pid ,o.ORGTYPE AS orgType,o.SORT AS sort,\n" +
-            "    COUNT(DISTINCT uo.USERID) AS userCount\n" +
+            "    COUNT(DISTINCT CASE \n" +
+            "        WHEN NOT EXISTS (\n" +
+            "            SELECT 1 \n" +
+            "            FROM SYS_USER_ROLE ur\n" +
+            "            JOIN SYS_ROLE r ON ur.ROLEID = r.ID\n" +
+            "            WHERE ur.USERID = uo.USERID AND r.CODE = 'role080'\n" +
+            "        ) THEN uo.USERID\n" +
+            "        ELSE NULL\n" +
+            "    END) AS userCount\n" +
             "FROM \n" +
             "    SYS_USER_ORG uo\n" +
             "JOIN \n" +
@@ -52,12 +60,6 @@ public interface ZhcxPersistentManageDao extends BaseMapper<ZhcxPersistentManage
             "WHERE \n" +
             "    r.CODE !='role080' AND uo.DELETED ='0'\n" +
             "    AND uo.ORGID IN (SELECT ID FROM SYS_ORGANIZATION WHERE FULLPID like '%${orgPid}%')\n" +
-            "    AND NOT EXISTS (\n" +
-            "        SELECT 1 \n" +
-            "        FROM SYS_USER_ROLE ur\n" +
-            "        JOIN SYS_ROLE r ON ur.ROLEID = r.ID\n" +
-            "        WHERE ur.USERID = uo.USERID AND r.CODE = 'role080'\n" +
-            "    ) \n"+
             "GROUP BY \n" +
             "    o.ID,o.PID ,o.ORGTYPE , o.FULLNAME,o.SORT  ORDER BY o.SORT desc ")
     List<OrganizationVo> getOrgUserCount(String id);