Explorar o código

访客还需要 培训管理员抄送

huangpeng hai 1 semana
pai
achega
2c66a246ec

+ 2 - 1
qhse-common/src/main/java/com/rongwei/bscommon/system/dao/QhseVisitorManagementDao.java

@@ -23,7 +23,8 @@ public interface QhseVisitorManagementDao extends BaseMapper<QhseVisitorManageme
     List<Map<String, String>> getUserByCodes(@Param("fitstDeptId") String fitstDeptId,
                                              @Param("code0") String code0,
                                              @Param("code1") String code1,
-                                             @Param("code2") String code2);
+                                             @Param("code2") String code2,
+                                             @Param("code3") String code3 );
 
 
 

+ 8 - 2
qhse-common/src/main/java/com/rongwei/bscommon/system/service/impl/QhseVisitorManagementServiceImpl.java

@@ -154,7 +154,8 @@ public class QhseVisitorManagementServiceImpl extends ServiceImpl<QhseVisitorMan
     private static final String[] CODES ={
             "role103", //部门安全主任
             "role068", //部门经理
-            "role084" //安监部(应急办)
+            "role084", //安监部(应急办)
+            "role112"  //培训管理员
     };
 
 
@@ -172,8 +173,13 @@ public class QhseVisitorManagementServiceImpl extends ServiceImpl<QhseVisitorMan
             // //1.获取一级部门ID
             String firstDeptId = getFitstDeptId(qhseVisitorManagementDo.getVisiteddepartmentid());
 
+            //技服访客 +需要查询培训管理员
+            String code ="-null";
+            if(qhseVisitorManagementDo.getVisitorcategory().equals("2")){
+                code=CODES[3];
+            }
             //2. 获取对应的部门安全主管,部门经理,安监部
-            List<Map<String, String>> userByCodes = qhseVisitorManagementDao.getUserByCodes(firstDeptId, CODES[0], CODES[1], CODES[2]);
+            List<Map<String, String>> userByCodes = qhseVisitorManagementDao.getUserByCodes(firstDeptId, CODES[0], CODES[1], CODES[2],code);
             userByCodes.forEach(map -> {
                 if ( map.get("code").equals(CODES[0])){
                     qhseVisitorManagementDo.setDepartmentsafesupervisorid( map.get("ids"));

+ 7 - 4
qhse-common/src/main/resources/mybatis/QhseVisitorManagementDao.xml

@@ -54,13 +54,16 @@
                 LISTAGG(a.NAME, ',') WITHIN GROUP (ORDER BY a.NAME) AS names
             FROM
                 sys_user a
+               LEFT JOIN sys_user_role d ON a.ID = d.USERID AND d.DELETED = '0'
+               INNER JOIN (
+                    SELECT ID, #{code2} AS CODE
+                    FROM sys_role
+                    WHERE CODE IN (#{code2},#{code3}) AND DELETED = '0'
+                ) e ON d.ROLEID = e.id
 
-                    LEFT JOIN sys_user_role d ON a.ID = d.USERID AND d.DELETED = '0'
-                    LEFT JOIN sys_role e ON d.ROLEID = e.id AND e.DELETED = '0'
                     LEFT JOIN sys_user f ON a.CREATEUSERID = f.id AND f.DELETED = '0'
                     LEFT JOIN sys_user g ON a.MODIFYUSERID = g.id AND g.DELETED = '0'
-            WHERE
-               e.CODE =#{code2}
+
             GROUP BY
                 e.code