Forráskód Böngészése

信息牌bug修改

xuxiaofei 2 éve
szülő
commit
ae4c13c8ce

+ 26 - 0
zd-api/zd-laboratory-api/src/main/java/com/zd/laboratory/api/entity/LabSubjectControllerVO.java

@@ -75,6 +75,16 @@ public class LabSubjectControllerVO extends LabSubjectEntity {
      */
      */
     private Integer hardwareType;
     private Integer hardwareType;
 
 
+    /***
+     * 是否配置海康门禁
+     */
+    private Integer hKCount;
+
+    /***
+     * 是否配置电子信息牌
+     */
+    private Integer cardInfoCount;
+
     /**
     /**
      * 实验室类型ID
      * 实验室类型ID
      */
      */
@@ -453,4 +463,20 @@ public class LabSubjectControllerVO extends LabSubjectEntity {
     public void setHardwareType(Integer hardwareType) {
     public void setHardwareType(Integer hardwareType) {
         this.hardwareType = hardwareType;
         this.hardwareType = hardwareType;
     }
     }
+
+    public Integer gethKCount() {
+        return hKCount;
+    }
+
+    public void sethKCount(Integer hKCount) {
+        this.hKCount = hKCount;
+    }
+
+    public Integer getCardInfoCount() {
+        return cardInfoCount;
+    }
+
+    public void setCardInfoCount(Integer cardInfoCount) {
+        this.cardInfoCount = cardInfoCount;
+    }
 }
 }

+ 10 - 0
zd-model/src/main/java/com/zd/model/entity/SysUser.java

@@ -284,6 +284,8 @@ public class SysUser extends BaseEntity implements Serializable {
 
 
     private List<Long> subjectIds;
     private List<Long> subjectIds;
 
 
+    private List<String> dateList;
+
     private boolean include = false;
     private boolean include = false;
 
 
     private List<Object> permitMenus = new ArrayList<>();
     private List<Object> permitMenus = new ArrayList<>();
@@ -734,4 +736,12 @@ public class SysUser extends BaseEntity implements Serializable {
     public void setSubjectIds(List<Long> subjectIds) {
     public void setSubjectIds(List<Long> subjectIds) {
         this.subjectIds = subjectIds;
         this.subjectIds = subjectIds;
     }
     }
+
+    public List<String> getDateList() {
+        return dateList;
+    }
+
+    public void setDateList(List<String> dateList) {
+        this.dateList = dateList;
+    }
 }
 }

+ 14 - 1
zd-modules/zd-modules-laboratory/src/main/java/com/zd/laboratory/service/impl/LabSubjectManagerService.java

@@ -105,7 +105,8 @@ public class LabSubjectManagerService {
     private IXxpClassifyService classifyService;
     private IXxpClassifyService classifyService;
     @Autowired
     @Autowired
     private IXxpClassifyDetailedService classifyDetailedService;
     private IXxpClassifyDetailedService classifyDetailedService;
-
+    @Autowired
+    private IXxpCardInfoService cardInfoService;
     private Map<ControlEntity.CommTypeEnums, ControlService> controlServiceMap = new HashMap<>();
     private Map<ControlEntity.CommTypeEnums, ControlService> controlServiceMap = new HashMap<>();
 
 
     /**
     /**
@@ -688,6 +689,18 @@ public class LabSubjectManagerService {
                 subjectControllerVO.setRiskPlanList(labRiskPlanMapper.selectRiskPlanCountBySubId(subjectControllerVO.getId()));
                 subjectControllerVO.setRiskPlanList(labRiskPlanMapper.selectRiskPlanCountBySubId(subjectControllerVO.getId()));
             }
             }
 
 
+            //查询该实验室是否配置门禁
+            LabHardware hardware = new LabHardware();
+            hardware.setSubjectId(id);
+            hardware.setType(HardwareTypeEnum.HK_DOOR);
+            List<LabHardware> hardwareList = hardwareMapper.selectLabHardwareListBySubject(hardware);
+            subjectControllerVO.sethKCount(hardwareList.size());
+
+            //查询该实验室是否配置信息牌
+            XxpCardInfo cardInfo = new XxpCardInfo();
+            cardInfo.setSubjectId(id);
+            List<XxpCardInfo> cardInfoList = cardInfoService.selectXxpCardInfoList(cardInfo);
+            subjectControllerVO.setCardInfoCount(cardInfoList.size());
 
 
             subjectControllerVO.setClassifyList(getSubClassify(id));
             subjectControllerVO.setClassifyList(getSubClassify(id));
             return subjectControllerVO;
             return subjectControllerVO;

+ 10 - 3
zd-modules/zd-modules-system/src/main/java/com/zd/system/controller/SysUserController.java

@@ -125,10 +125,17 @@ public class SysUserController extends BaseController {
      * 值班人员列表
      * 值班人员列表
      */
      */
     @ApiOperation("值班人员列表")
     @ApiOperation("值班人员列表")
-    @GetMapping("/getUserDutyList")
-    public TableDataInfo getUserDutyList(SysUser user) {
+    @PostMapping("/getUserDutyList")
+    public TableDataInfo getUserDutyList(@RequestBody SysUser user) {
         startPage();
         startPage();
-        List<SysUser> list = userService.selectUserDutyList(user);
+        List<SysUser> list = new ArrayList<>();
+        user.setMajorId(Long.valueOf(user.getSubjectIds().size()+"") );
+        if(user.getSubjectIds().size()==1){
+            list = userService.selectUserDutyList(user);
+        }else {
+            list = userService.selectUserDutyListMultiple(user);
+        }
+
         for (SysUser su:list) {
         for (SysUser su:list) {
             //白名单集合
             //白名单集合
             ResultData white= remoteLaboratoryService.getWhiteSubList(su.getUserId());
             ResultData white= remoteLaboratoryService.getWhiteSubList(su.getUserId());

+ 7 - 0
zd-modules/zd-modules-system/src/main/java/com/zd/system/mapper/SysUserMapper.java

@@ -296,6 +296,13 @@ public interface SysUserMapper {
      */
      */
     public List<SysUser> selectUserDutyList(SysUser sysUser);
     public List<SysUser> selectUserDutyList(SysUser sysUser);
 
 
+    /****
+     * 值班人员列表多个实验室使用
+     * @param sysUser
+     * @return
+     */
+    public List<SysUser> selectUserDutyListMultiple(SysUser sysUser);
+
     /**
     /**
      * 根据用户id查询用户基本信息
      * 根据用户id查询用户基本信息
      * @param userId
      * @param userId

+ 7 - 0
zd-modules/zd-modules-system/src/main/java/com/zd/system/service/ISysUserService.java

@@ -366,6 +366,13 @@ public interface ISysUserService {
     public List<SysUser> selectUserDutyList(SysUser sysUser);
     public List<SysUser> selectUserDutyList(SysUser sysUser);
 
 
     /**
     /**
+     * 值班人员列表多个实验室使用
+     * @param sysUser
+     * @return
+     */
+    public List<SysUser> selectUserDutyListMultiple(SysUser sysUser);
+
+    /**
      * 根据用户id查询基本用户信息
      * 根据用户id查询基本用户信息
      * @param userId
      * @param userId
      * @return
      * @return

+ 11 - 0
zd-modules/zd-modules-system/src/main/java/com/zd/system/service/impl/SysUserServiceImpl.java

@@ -1199,6 +1199,17 @@ public class SysUserServiceImpl implements ISysUserService {
     }
     }
 
 
     /**
     /**
+     * 值班人员列表多个实验室使用
+     *
+     * @param sysUser
+     * @return
+     */
+    @Override
+    public List<SysUser> selectUserDutyListMultiple(SysUser sysUser) {
+        return userMapper.selectUserDutyListMultiple(sysUser);
+    }
+
+    /**
      * 根据用户id查询基本用户信息
      * 根据用户id查询基本用户信息
      * @param userId
      * @param userId
      * @return
      * @return

+ 63 - 2
zd-modules/zd-modules-system/src/main/resources/mapper/system/SysUserMapper.xml

@@ -1054,13 +1054,18 @@
         GROUP BY w.user_id
         GROUP BY w.user_id
         union all
         union all
         select a.user_id from lab_security_apply a
         select a.user_id from lab_security_apply a
-        where date_format(a.valid_end_time,'%Y-%m-%d')  &gt;= date_format(NOW(),'%Y-%m-%d')
-        and audit_status=2
+        where audit_status=2
+        and date_format(a.valid_end_time,'%Y-%m-%d')  &gt;= date_format(NOW(),'%Y-%m-%d')
         <if test="subjectIds!=null and subjectIds.size > 0">
         <if test="subjectIds!=null and subjectIds.size > 0">
              and a.subject_id in
              and a.subject_id in
             <foreach item="item" collection="subjectIds" open="(" separator="," close=")">
             <foreach item="item" collection="subjectIds" open="(" separator="," close=")">
                 #{item}
                 #{item}
             </foreach>
             </foreach>
+        <if test="dateList!=null and dateList.size > 0">
+            <foreach item="item" collection="dateList">
+                and date_format(a.valid_end_time,'%Y-%m-%d') &gt;=date_format(#{item},'%Y-%m-%d')
+            </foreach>
+        </if>
         </if>
         </if>
         ) t
         ) t
         LEFT JOIN sys_user u on t.user_id=u.user_id
         LEFT JOIN sys_user u on t.user_id=u.user_id
@@ -1080,6 +1085,62 @@
         <!-- 数据范围过滤 -->
         <!-- 数据范围过滤 -->
         ${params.dataScope}
         ${params.dataScope}
     </select>
     </select>
+
+    <!--值班人员列表,多个实验室时使用-->
+    <select id="selectUserDutyListMultiple" parameterType="com.zd.model.entity.SysUser" resultMap="SysUserResult">
+        select u.user_id, u.dept_id,d.dept_name, u.user_name, u.nick_name,  u.avatar, u.phonenumber,  u.sex,
+        u.status, u.del_flag,u.user_type, count
+        from
+        (
+        select w.user_id,j.subject_id,count(1) count from lab_whitelist w LEFT JOIN lab_white_join_sublist j on w.user_id = j.white_user_id
+        <if test="deptId != null and deptId != 0">
+            AND (w.dept_id = #{deptId} OR w.dept_id IN ( SELECT t.dept_id FROM sys_dept t WHERE find_in_set(#{deptId},
+            ancestors) ))
+        </if>
+        <if test="subjectIds!=null and subjectIds.size > 0">
+            where j.subject_id in
+            <foreach item="item" collection="subjectIds" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+        </if>
+
+        GROUP BY w.user_id
+        union all
+        select a.user_id,a.subject_id,count(1) count from lab_security_apply a
+        where audit_status=2
+        and date_format(a.valid_end_time,'%Y-%m-%d')  &gt;= date_format(NOW(),'%Y-%m-%d')
+        <if test="dateList!=null and dateList.size > 0">
+            <foreach item="item" collection="dateList">
+                and date_format(a.valid_end_time,'%Y-%m-%d') &gt;=date_format(#{item},'%Y-%m-%d')
+            </foreach>
+        </if>
+        <if test="subjectIds!=null and subjectIds.size > 0">
+            and a.subject_id in
+            <foreach item="item" collection="subjectIds" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+        </if>
+        GROUP BY a.user_id
+        ) t
+        LEFT JOIN sys_user u on t.user_id=u.user_id
+        LEFT JOIN sys_dept d on d.dept_id = u.dept_id
+        <where>
+            <if test="deptId != null and deptId != 0">
+                AND (u.dept_id = #{deptId} OR u.dept_id IN ( SELECT t.dept_id FROM sys_dept t WHERE find_in_set(#{deptId},
+                ancestors) ))
+            </if>
+            <if test="nickName != null and nickName != ''">
+                AND u.nick_name like concat('%', #{nickName}, '%')
+            </if>
+            <if test="userType != null and userType != ''">
+                AND u.user_type = #{userType}
+            </if>
+            and count >= #{majorId}
+        </where>
+        <!-- 数据范围过滤 -->
+        ${params.dataScope}
+    </select>
+
     <select id="selectUserByUserId" resultType="java.util.Map">
     <select id="selectUserByUserId" resultType="java.util.Map">
          SELECT user_type userType,nick_name userName,user_id userId,avatar,dept_id deptId,(SELECT dept_name FROM sys_dept sd WHERE sd.dept_id=su.dept_id)  deptName FROM  `sys_user` su WHERE del_flag=0 AND user_id=#{userId}
          SELECT user_type userType,nick_name userName,user_id userId,avatar,dept_id deptId,(SELECT dept_name FROM sys_dept sd WHERE sd.dept_id=su.dept_id)  deptName FROM  `sys_user` su WHERE del_flag=0 AND user_id=#{userId}
     </select>
     </select>