xiongchao 3 år sedan
förälder
incheckning
e2697b4b46

+ 2 - 2
platform-dao/src/main/java/com/platform/dao/enums/RepairApplicationFormStatusEnum.java

@@ -41,11 +41,11 @@ public enum RepairApplicationFormStatusEnum {
      */
     FINISHED(6),
     /**
-     * 提交检查
+     * 提交检查-废弃
      */
     EXAMINING(7),
     /**
-     * 已检查完毕,检查不成功,则返回到已完成状态,可以继续修改内容,然后提交
+     * 已检查完毕,检查不成功,则返回到已完成状态,可以继续修改内容,然后提交-废弃
      */
     EXAMINED(8),
 

+ 31 - 0
platform-dao/src/main/java/com/platform/dao/enums/SbInfoLevelEnum.java

@@ -0,0 +1,31 @@
+package com.platform.dao.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * @Description 设备是否父子
+ * @Author liuyu
+ * @Date 2020/05/05
+ * @Version Copyright (c) 2019,安徽阡陌网络科技有限公司 All rights reserved.
+ */
+@Getter
+@AllArgsConstructor
+public enum SbInfoLevelEnum {
+
+    /**
+     * 子设备
+     */
+    A(1),
+    /**
+     * 父设备
+     */
+    B(2),
+    /**
+     * 单体设备
+     */
+    C(3);
+
+    private final Integer value;
+
+}

+ 1 - 0
platform-dao/src/main/java/com/platform/dao/mapper/check/CheckStandardMapper.java

@@ -38,4 +38,5 @@ public interface CheckStandardMapper extends MyMapper<CheckStandard> {
      */
     List<CheckStandardVO> selectProjectStandardList(String projectId);
 
+    void updataBatch(List<CheckStandard> updateStandardList);
 }

+ 4 - 0
platform-dao/src/main/java/com/platform/dao/vo/sb/SbInfoScreenDetailVO.java

@@ -35,4 +35,8 @@ public class SbInfoScreenDetailVO extends BaseVO implements Serializable {
     private String no;
     private String zjm;//x 轴
     private String jbdh;//y轴
+    /**
+     * 设备等级
+     */
+    private Integer level;
 }

+ 10 - 0
platform-dao/src/main/resources/mapper/check/CheckStandardMapper.xml

@@ -144,4 +144,14 @@ checkstandard.sort,
         inner join t_check_standard standard on tcppr.standard_id  = standard.id
         where tcppr.project_id = #{projectId}
     </select>
+
+    <update id="updateBatch" parameterType="java.util.List">
+        <foreach collection="list" item="item" index="index" open="" close="" separator=";">
+            update t_check_standard
+            <set>
+                check_user_type=#{item.checkUserType}
+            </set>
+            where id = #{item.id}
+        </foreach>
+    </update>
 </mapper>

+ 3 - 7
platform-dao/src/main/resources/mapper/sb/SbInfoMapper.xml

@@ -388,15 +388,11 @@ user.real_name as saveUserName
             parameterType="com.platform.dao.dto.sb.SbInfoDTO"
             resultType="com.platform.dao.vo.sb.SbInfoScreenDetailVO">
         select
-        sb.id, sb.no, sb.zjm, sb.jbdh
+        sb.id, sb.no, sb.zjm, sb.jbdh, sb.level
         from t_sb_info sb
         <where>
-            <if test="status != null">
-                and sb.status = #{status}
-            </if>
-            <if test="isShow != null">
-                and sb.is_show = #{isShow}
-            </if>
+            sb.zjm is not null
+            and sb.jbdh is not null
         </where>
     </select>
 

+ 16 - 0
platform-service/src/main/java/com/platform/service/check/impl/CheckJobServiceImpl.java

@@ -314,6 +314,11 @@ public class CheckJobServiceImpl extends BaseServiceImpl<CheckJobMapper, CheckJo
     }
 
 
+    /**
+     * 生成设备的保养任务
+     *
+     * @param checkType 检查类型:
+     */
     @Override
     @Transactional(rollbackFor = Exception.class)
     public void genTaskBySbId(int checkType) {
@@ -335,6 +340,10 @@ public class CheckJobServiceImpl extends BaseServiceImpl<CheckJobMapper, CheckJo
         Weekend<CheckJob> weekend = new Weekend<>(CheckJob.class);
         weekend.weekendCriteria().andNotEqualTo(CheckJob::getStatus, CheckJobStatusEnum.FINISHED.getValue());
         List<CheckJob> checkJobs = mapper.selectByExample(weekend);
+
+        // 针对没有设置指定人方式的,要更新
+
+        List<CheckStandard> updateStandardList =  new ArrayList<CheckStandard>();
         for(CheckStandard standard: standardList){
             if(!CheckPlanPeriodTypeEnum.MILES.getValue().equals(standard.getPeriodType()) && !CheckPlanPeriodTypeEnum.TAISHI.getValue().equals(standard.getPeriodType()) ){
                 boolean find = false;
@@ -350,9 +359,12 @@ public class CheckJobServiceImpl extends BaseServiceImpl<CheckJobMapper, CheckJo
                     if(standard.getCheckUserType() == null){
                         if(standard.getPeriodType()< CheckPlanPeriodTypeEnum.WEEK.getValue()){
                             checkJob.setCheckUserId(sbInfo.getSaveUser());
+                            standard.setCheckUserType(CheckUserTypeEnum.USE_USER.getValue());
                         }else{
                             checkJob.setCheckUserId(sbInfo.getRepairUser());
+                            standard.setCheckUserType(CheckUserTypeEnum.REPAIR_USER.getValue());
                         }
+                        updateStandardList.add(standard);
                     }else{
                         if(standard.getCheckUserType().equals(CheckUserTypeEnum.USE_USER.getValue())){
                             checkJob.setCheckUserId(sbInfo.getSaveUser());
@@ -381,6 +393,10 @@ public class CheckJobServiceImpl extends BaseServiceImpl<CheckJobMapper, CheckJo
         if (!CollectionUtils.isEmpty(jobList)) {
             mapper.insertListforComplex(jobList);
         }
+
+        if (!CollectionUtils.isEmpty(updateStandardList)) {
+            standardMapper.updataBatch(updateStandardList);
+        }
     }
 
     /**

+ 4 - 1
platform-service/src/main/java/com/platform/service/repair/impl/RepairApplicationFormServiceImpl.java

@@ -239,7 +239,10 @@ public class RepairApplicationFormServiceImpl extends BaseServiceImpl<RepairAppl
 
         model.setOutNo(model.getOutNo());
         model.setNo(IdGeneratorUtils.getRepairApplicaitonFormNo(++count));
-        String repairUserId = model.getRepairUserId();
+
+        // 判断设备第一维修人是否存在
+        SbInfo sbInfo = sbInfoService.getModelById(model.getSbId());
+        String repairUserId = sbInfo.getRepairUser();
         model.setStatus(StringUtils.isNotEmpty(repairUserId) ? RepairApplicationFormStatusEnum.ALLOCATED.getValue() : RepairApplicationFormStatusEnum.NOT_ALLOCATED.getValue());
         model.setApplyTime(LocalDateTime.now());
         model.setCreatedTime(model.getApplyTime());

+ 5 - 3
platform-service/src/main/java/com/platform/service/sb/impl/SbInfoServiceImpl.java

@@ -210,7 +210,8 @@ public class SbInfoServiceImpl extends BaseServiceImpl<SbInfoMapper, SbInfo, SbI
 
     /**
      * 获取大屏显示的有异常的设备
-     *
+     * 1:A类和b类都要显示
+     * 2:有报修的都要显示
      * @param model
      * @return
      */
@@ -218,7 +219,6 @@ public class SbInfoServiceImpl extends BaseServiceImpl<SbInfoMapper, SbInfo, SbI
     public SbInfoScreenVO getModelListRepairAndShowByDTO(SbInfoDTO model) {
 
         // 选择所有显示的设备
-        model.setIsShow(SbInfoShowEnum.IS_SHOWING.getValue());
         List<SbInfoScreenDetailVO> sbInfoList = selectScreenDetailVOList(model);
 
         // 判断是否有待分配的报修记录,也就是新增的报修
@@ -243,7 +243,9 @@ public class SbInfoServiceImpl extends BaseServiceImpl<SbInfoMapper, SbInfo, SbI
                 if (find) {
                     repairSbInfoList.add(sbInfo);
                 } else {
-                    normalSbInfoList.add(sbInfo);
+                    if(sbInfo.getLevel() != null && !sbInfo.getLevel().equals(SbInfoLevelEnum.C.getValue())){
+                        normalSbInfoList.add(sbInfo);
+                    }
                 }
             }
         }