xiongchao 3 년 전
부모
커밋
071474afbf

+ 5 - 0
platform-dao/src/main/java/com/platform/dao/dto/check/CheckJobDTO.java

@@ -28,6 +28,11 @@ public class CheckJobDTO extends BaseDTO implements Serializable {
      * 实际执行人姓名
      */
     private String actualUser;
+
+    /**
+     * 查询类别
+     */
+    private Integer searchType;
     /**
      * 主键
      */

+ 1 - 0
platform-dao/src/main/java/com/platform/dao/mapper/repair/RepairReasonMapper.java

@@ -23,4 +23,5 @@ public interface RepairReasonMapper extends MyMapper<RepairReason> {
      */
     List<RepairReasonVO> selectList(RepairReasonDTO dto);
 
+    RepairReasonVO getVOById(String id);
 }

+ 13 - 1
platform-dao/src/main/java/com/platform/dao/vo/index/GatherTaskVO.java

@@ -24,10 +24,22 @@ public class GatherTaskVO extends BaseVO implements Serializable {
     private Integer maintainTask;
 
     /**
-     * 保养任务
+     * 现场保养任务
      */
     private Integer lubricationTask;
 
+    /**
+     * weixiu人员保养任务
+     */
+    private Integer lubricationTask2;
+    /**
+     * 本周保养任务
+     */
+    private Integer lubricationTaskWeek;
+    /**
+     * 本月保养任务
+     */
+    private Integer lubricationTaskMonth;
     /**
      * 加油任务
      */

+ 8 - 1
platform-dao/src/main/resources/mapper/repair/RepairReasonMapper.xml

@@ -90,11 +90,18 @@ repairReason.type, repairReason.status,
     </sql>
     <select id="selectList" parameterType="com.platform.dao.dto.repair.RepairReasonDTO"
             resultType="com.platform.dao.vo.query.repair.RepairReasonVO">
-        select repairReason.*, part.name as sbPartName
+        select repairReason.*, partInfo.name as sbPartName
         from t_repair_reason as repairReason
         LEFT JOIN t_part_info partInfo on repairReason.sb_part_id = partInfo.id
         <where>
             <include refid="List_Condition" />
         </where>
     </select>
+
+    <select id="getVOById" parameterType="java.lang.Object" resultType="com.platform.dao.vo.query.repair.RepairReasonVO">
+        select repairReason.*, partInfo.name as sbPartName
+        from t_repair_reason as repairReason
+        LEFT JOIN t_part_info partInfo on repairReason.sb_part_id = partInfo.id
+        where repairReason.id = #{value}
+    </select>
 </mapper>

+ 24 - 13
platform-rest/src/main/java/com/platform/rest/controller/index/IndexController.java

@@ -1,10 +1,13 @@
 package com.platform.rest.controller.index;
 
 import com.platform.common.model.UserInfo;
+import com.platform.common.util.DateUtils;
 import com.platform.common.util.R;
 import com.platform.common.util.SecurityUtils;
 import com.platform.dao.entity.upms.SysUser;
+import com.platform.dao.enums.CheckStandardTypeEnum;
 import com.platform.dao.enums.RepairApplicationFormStatusEnum;
+import com.platform.dao.enums.SysRoleCodeEnum;
 import com.platform.dao.vo.index.GatherTaskVO;
 import com.platform.service.check.CheckJobService;
 import com.platform.service.repair.RepairApplicationFormService;
@@ -45,23 +48,31 @@ public class IndexController {
     @GetMapping("/gather/task/user")
     public R gatherTaskUser() {
         UserInfo userInfo = SecurityUtils.getUserInfo();
-        // 润滑任务
-        // int maintainTask = checkJobService.countUserTask(userInfo.getUserId(), 3);
-        // 当日待保养任务
-        int lubricationTask = checkJobService.countUserTask(userInfo.getUserId(), 2);
-        // 加油任务
-        // int oilTask = sbOilService.countUserTask(userInfo.getUserId());
+        // 根据登录用户的角色来设置周期,使用人员:1周的任务,维修人员1个月的任务
+        List<String> roleCodes = userInfo.getRoleCodes();
+        boolean isOperator = false;
+        for(String roleCode:roleCodes){
+            System.out.println("roleCode: " + roleCode);
+            if(roleCode.equals(SysRoleCodeEnum.Opreator.name())){
+                isOperator = true;
+                break;
+            }
+        }
+        // 当日,本周,本月待保养任务
+        int lubricationTask = checkJobService.countTask(null, userInfo.getUserId(), CheckStandardTypeEnum.POLLING.getValue(), 1);
+        int lubricationTaskWeek = checkJobService.countTask(null, userInfo.getUserId(), CheckStandardTypeEnum.POLLING.getValue(), 2);
+        int lubricationTaskMonth = checkJobService.countTask(null, userInfo.getUserId(), CheckStandardTypeEnum.POLLING.getValue(), 3);
 
         // 维修任务:所有的未完成的,登录用户需要完成的
-        List<Integer> repairStatusList = new ArrayList<Integer>();
-        repairStatusList.add(RepairApplicationFormStatusEnum.NOT_ALLOCATED.getValue());
-        repairStatusList.add(RepairApplicationFormStatusEnum.PROCESSING.getValue());
-        int repairTask = repairApplicationFormService.countUserTask(userInfo.getUserId(), repairStatusList);
+        int repairTask = repairApplicationFormService.countTask(null, userInfo.getUserId(), 2);
 
-        // 维修任务
-        int repairCheckTask = repairApplicationFormService.countUserCheckTask(userInfo.getUserId());
+        // 维修验收任务
+        int repairCheckTask = repairApplicationFormService.countTask(null, userInfo.getUserId(), 3);
         return R.success(new GatherTaskVO()
-                .setLubricationTask(lubricationTask).setRepairTask(repairTask).setRepairCheckTask(repairCheckTask));
+                .setLubricationTask2(lubricationTask)
+                .setLubricationTaskWeek(lubricationTaskWeek)
+                .setLubricationTaskMonth(lubricationTaskMonth)
+                .setRepairTask(repairTask).setRepairCheckTask(repairCheckTask));
     }
 
 }

+ 4 - 10
platform-rest/src/main/java/com/platform/rest/controller/mobile/IgnoreController.java

@@ -114,18 +114,12 @@ public class IgnoreController {
     @GetMapping("/sb/task/{sbId}")
     public R getSbTaskUser(@PathVariable("sbId") String sbId) {
         // 保养任务:根据类型查询,1:设备的、设备使用人的,未完成的,已过期的
-        List<Integer> checkStatusList = new ArrayList<Integer>();
-        checkStatusList.add(CheckJobStatusEnum.NOT_EXECUTE.getValue());
-        checkStatusList.add(CheckJobStatusEnum.EXECUTING.getValue());
-        checkStatusList.add(CheckJobStatusEnum.OUT_OF_DATE.getValue());
-        int lubricationTask = checkJobService.countSbTask(sbId, CheckStandardTypeEnum.POLLING.getValue(), checkStatusList,1);
+        int lubricationTask = checkJobService.countTask(sbId, null, CheckStandardTypeEnum.POLLING.getValue(), 1);
+        int lubricationTask2 = checkJobService.countTask(sbId, null, CheckStandardTypeEnum.POLLING.getValue(), 1);
 
         // 维修任务:所有的未完成的
-        List<Integer> repairStatusList = new ArrayList<Integer>();
-        repairStatusList.add(RepairApplicationFormStatusEnum.NOT_ALLOCATED.getValue());
-        repairStatusList.add(RepairApplicationFormStatusEnum.PROCESSING.getValue());
-        int repairTask = repairApplicationFormService.countSbTask(sbId, repairStatusList);
-        return R.success(new GatherTaskVO().setLubricationTask(lubricationTask).setRepairTask(repairTask));
+        int repairTask = repairApplicationFormService.countTask(sbId, null,  1);
+        return R.success(new GatherTaskVO().setLubricationTask(lubricationTask).setLubricationTask2(lubricationTask2).setRepairTask(repairTask));
     }
 
     /**

+ 2 - 2
platform-rest/src/main/java/com/platform/rest/controller/repair/RepairReasonController.java

@@ -41,8 +41,8 @@ public class RepairReasonController {
    * @return R
    */
   @GetMapping("/{id}")
-  public R<RepairReason> getById(@PathVariable("id") String id){
-      return new R<>(repairReasonService.getModelById(id));
+  public R<RepairReasonVO> getById(@PathVariable("id") String id){
+      return new R<>(repairReasonService.getVOById(id));
   }
 
   /**

+ 2 - 20
platform-service/src/main/java/com/platform/service/check/CheckJobService.java

@@ -97,31 +97,13 @@ public interface CheckJobService extends IBaseService<CheckJob, CheckJobDTO> {
      */
     void finishJob(CheckJobDTO dto);
 
-    /**
-     * 统计用户任务数量
-     *
-     * @param userId :
-     * @param type   :
-     * @return :
-     */
-    int countUserTask(String userId, Integer type);
-
-    /**
-     * 统计设备任务数量,根据状态来统计
-     *
-     * @param sbId :
-     * @param type   :
-     *  @param status   :
-     *  @param searchType   :1:使用人员,2维修人员,3全部任务
-     * @return :
-     */
-    int countSbTask(String sbId, Integer type, List<Integer>  status, Integer searchType);
-
     void executeJobBatch(List<String> ids);
 
     void finishJobBatch(List<String> ids);
 
     TuiCalendar getTuiCalendar(CheckJobDTO checkJobDTO);
 
+    int countTask(String sbId, String userId, Integer type, Integer searchType);
+
     CheckJobReportVO getMonthReport(CheckJobDTO checkJobDTO, Integer month);
 }

+ 56 - 51
platform-service/src/main/java/com/platform/service/check/impl/CheckJobServiceImpl.java

@@ -82,23 +82,19 @@ public class CheckJobServiceImpl extends BaseServiceImpl<CheckJobMapper, CheckJo
         if (model.getFilter() != null && DataFilterTypeEnum.SELF.getValue() == model.getFilter().intValue()) {
             UserInfo userInfo = SecurityUtils.getUserInfo();
             model.setCheckUserId(userInfo.getUserId());
-
-            // 根据登录用户的角色来设置周期,使用人员:1周的任务,维修人员1个月的任务
-            List<String> roleCodes = userInfo.getRoleCodes();
-            boolean isOperator = false;
-            for(String roleCode:roleCodes){
-                System.out.println("roleCode: " + roleCode);
-                if(roleCode.equals(SysRoleCodeEnum.Opreator.name())){
-                    isOperator = true;
-                    model.setSearchStartTime(DateUtils.getMondayOfThisWeek());
-                    model.setSearchEndTime(DateUtils.getSundayOfThisWeek());
-                    break;
-                }
-            }
-            if(!isOperator){
-                model.setSearchStartTime(DateUtils.getFirstDayOfThisMonth());
-                model.setSearchEndTime(DateUtils.getLastDayOfThisMonth());
-            }
+        }
+        if (model.getSearchType() != null && 1 == model.getSearchType()) {
+            model.setSearchStartTime(DateUtils.getTodayStartTime());
+            model.setSearchEndTime(DateUtils.getTodayEndTime());
+        } else if (model.getSearchType() != null && 2 == model.getSearchType()) {
+            model.setSearchStartTime(DateUtils.getMondayOfThisWeek());
+            model.setSearchEndTime(DateUtils.getSundayOfThisWeek());
+        } else if (model.getSearchType() != null && 3 == model.getSearchType()) {
+            model.setSearchStartTime(DateUtils.getFirstDayOfThisMonth());
+            model.setSearchEndTime(DateUtils.getLastDayOfThisMonth());
+        } else{
+            model.setSearchStartTime(DateUtils.getTodayStartTime());
+            model.setSearchEndTime(DateUtils.getTodayEndTime());
         }
         PageHelper.startPage(pageNum, pageSize);
         return new MyPage(mapper.selectList(model));
@@ -106,7 +102,8 @@ public class CheckJobServiceImpl extends BaseServiceImpl<CheckJobMapper, CheckJo
 
     /**
      *
-     * 获取当日移动端现场任务:当日的任务
+     * 获取当日移动端现场任务:当日的任务:主要是现场人员的任务
+     *
      * 如果有sbId,则说明是查询某一台设备的任务,需要查询设备的显示使用人员账号
      * @param model
      * @param pageNum
@@ -123,13 +120,8 @@ public class CheckJobServiceImpl extends BaseServiceImpl<CheckJobMapper, CheckJo
                 model.setCheckUserId(sbInfo.getSaveUser());
             }
         }
-        if(SecurityUtils.checkAndGetUser() != null){
-                model.setSearchStartTime(DateUtils.getFirstDayOfThisMonth());
-                model.setSearchEndTime(DateUtils.getLastDayOfThisMonth());
-        }else{
-            model.setSearchStartTime(DateUtils.getMondayOfThisWeek());
-            model.setSearchEndTime(DateUtils.getSundayOfThisWeek());
-        }
+        model.setSearchStartTime(DateUtils.getTodayStartTime());
+        model.setSearchEndTime(DateUtils.getTodayEndTime());
         PageHelper.startPage(pageNum, pageSize);
         return new MyPage(mapper.selectList(model));
     }
@@ -857,40 +849,53 @@ public class CheckJobServiceImpl extends BaseServiceImpl<CheckJobMapper, CheckJo
         });
     }
 
+    /**
+     * 查询任务
+     * 未登录查询当日任务
+     * 登录根据角色查询当日或者当月任务数量
+     *
+     * @param sbId:设备id
+     * @param userId:用户id
+     * @param type:类型
+     * @param searchType:
+     *                  如果 sbId 不为空,searchType:1使用人,2维修人
+     *                  如果 userId 不为空,searchType:1当日,2当月
+     * @return
+     */
     @Override
-    public int countUserTask(String userId, Integer type) {
-        Weekend<CheckJob> weekend = new Weekend<>(CheckJob.class);
-        WeekendCriteria<CheckJob, Object> weekendCriteria = weekend.weekendCriteria();
-        weekendCriteria.andEqualTo(CheckJob::getType, type);
-        weekendCriteria.andEqualTo(CheckJob::getCheckUserId, userId);
-        List<Integer> statusList = ListUtils.newArrayList(CheckJobStatusEnum.NOT_EXECUTE.getValue(),
-                CheckJobStatusEnum.EXECUTING.getValue(), CheckJobStatusEnum.OUT_OF_DATE.getValue());
-        weekendCriteria.andIn(CheckJob::getStatus, statusList);
-        return mapper.selectCountByExample(weekend);
-    }
-
-    @Override
-    public int countSbTask(String sbId, Integer type, List<Integer> status, Integer searchType) {
+    public int countTask(String sbId, String userId, Integer type, Integer searchType) {
         Weekend<CheckJob> weekend = new Weekend<>(CheckJob.class);
         WeekendCriteria<CheckJob, Object> weekendCriteria = weekend.weekendCriteria();
-        weekendCriteria.andEqualTo(CheckJob::getSbId, sbId);
-        weekendCriteria.andEqualTo(CheckJob::getType, type);
-        if(searchType != null) {
+        if(StringUtils.isNotBlank(sbId)){
+            weekendCriteria.andEqualTo(CheckJob::getSbId, sbId);
             SbInfo sbInfo = sbInfoService.getModelById(sbId);
-            if (searchType == 1) {
-                weekendCriteria.andEqualTo(CheckJob::getCheckUserId, sbInfo.getSaveUser());
-            } else if (searchType == 2) {
-                weekendCriteria.andEqualTo(CheckJob::getCheckUserId, sbInfo.getRepairUser());
-            } else {
-
+            weekendCriteria.andBetween(CheckJob::getStartTime, DateUtils.getTodayStartTime(), DateUtils.getTodayEndTime());
+            // 查找人员
+            if(searchType != null) {
+                if (searchType == 1) {
+                    weekendCriteria.andEqualTo(CheckJob::getCheckUserId, sbInfo.getSaveUser());
+                } else if (searchType == 2) {
+                    weekendCriteria.andEqualTo(CheckJob::getCheckUserId, sbInfo.getRepairUser());
+                }
             }
         }
-        if(status !=null){
-            weekendCriteria.andIn(CheckJob::getStatus, status);
+        if(StringUtils.isNotBlank(userId)){
+            weekendCriteria.andEqualTo(CheckJob::getCheckUserId, userId);
+            if(searchType != null) {
+                // 查询当日的任务数
+                if (searchType == 1) {
+                    weekendCriteria.andBetween(CheckJob::getStartTime, DateUtils.getTodayStartTime(), DateUtils.getTodayEndTime());
+                } else if (searchType == 2) {
+                    // 查询当月的任务数
+                    weekendCriteria.andBetween(CheckJob::getStartTime, DateUtils.getFirstDayOfThisMonth(), DateUtils.getLastDayOfThisMonth());
+                }
+            }
         }
+        weekendCriteria.andEqualTo(CheckJob::getType, type);
 
-        // 查询当月的任务数
-        weekendCriteria.andBetween(CheckJob::getStartTime, DateUtils.getTodayStartTime(), DateUtils.getTodayEndTime());
+        List<Integer> statusList = ListUtils.newArrayList(CheckJobStatusEnum.NOT_EXECUTE.getValue(),
+                CheckJobStatusEnum.EXECUTING.getValue(), CheckJobStatusEnum.OUT_OF_DATE.getValue());
+        weekendCriteria.andIn(CheckJob::getStatus, statusList);
         return mapper.selectCountByExample(weekend);
     }
 

+ 5 - 15
platform-service/src/main/java/com/platform/service/repair/RepairApplicationFormService.java

@@ -83,21 +83,13 @@ public interface RepairApplicationFormService extends IBaseService<RepairApplica
     void returnRepair(RepairApplicationFormDTO dto);
 
     /**
-     * 统计维修单
-     *
-     * @param userId :
+     * 统计维修单任务:未完成的
+     * @param sbId :某台设备的
+     * @param userId :某个人的, 如果传递userid,必须传递searchType
+     * @param searchType :1:报修人(设备的归属人),2:维修人,3,验收人
      * @return :
      */
-    int countUserTask(String userId, List<Integer> statusList);
-
-    /**
-     * 统计设备维修单
-     *
-     * @param status :
-     * @param status :
-     * @return :
-     */
-    int countSbTask(String sbId, List<Integer> status);
+    int countTask(String sbId, String userId, Integer searchType);
 
     /**
      * 自动分配任务
@@ -110,6 +102,4 @@ public interface RepairApplicationFormService extends IBaseService<RepairApplica
     void unFinishNoticeForTimer();
 
     void examine(String id);
-
-    int countUserCheckTask(String userId);
 }

+ 2 - 0
platform-service/src/main/java/com/platform/service/repair/RepairReasonService.java

@@ -31,4 +31,6 @@ public interface RepairReasonService extends IBaseService<RepairReason, RepairRe
      * @return
      */
     AbstractPageResultBean<RepairReasonVO> selectPageList(RepairReasonDTO record, int pageNum, int pageSize);
+
+    RepairReasonVO getVOById(String id);
 }

+ 20 - 26
platform-service/src/main/java/com/platform/service/repair/impl/RepairApplicationFormServiceImpl.java

@@ -18,10 +18,12 @@ import com.platform.dao.dto.repair.RepairCheckDTO;
 import com.platform.dao.dto.repair.RepairFormDTO;
 import com.platform.dao.dto.sb.SbInfoDTO;
 import com.platform.dao.dto.upms.SysUserDTO;
+import com.platform.dao.entity.check.CheckJob;
 import com.platform.dao.entity.repair.RepairApplicationForm;
 import com.platform.dao.entity.repair.RepairCheck;
 import com.platform.dao.entity.repair.RepairForm;
 import com.platform.dao.entity.sb.SbInfo;
+import com.platform.dao.entity.sb.SbInspectionFill;
 import com.platform.dao.entity.upms.SysFile;
 import com.platform.dao.entity.upms.SysUser;
 import com.platform.dao.enums.*;
@@ -642,37 +644,29 @@ public class RepairApplicationFormServiceImpl extends BaseServiceImpl<RepairAppl
                 applicationForm.getId(), ListUtils.newArrayList(applicationForm.getRepairUserId()), ListUtils.newArrayList(noticeUser.getEmail())));
     }
 
-    /**
-     * 维修任务:未完成的
-     *
-     * @param userId :
-     * @return
-     */
     @Override
-    public int countUserTask(String userId, List<Integer> statusList) {
+    public int countTask(String sbId, String userId, Integer searchType) {
         Weekend<RepairApplicationForm> weekend = new Weekend<>(RepairApplicationForm.class);
-        weekend.weekendCriteria().andEqualTo(RepairApplicationForm::getRepairUserId, userId);
-        if(CollectionUtil.isNotEmpty(statusList) && statusList.size()>0){
-            weekend.weekendCriteria().andIn(RepairApplicationForm::getStatus, statusList);
+        WeekendCriteria<RepairApplicationForm, Object> weekendCriteria = weekend.weekendCriteria();
+        if(StringUtils.isNotBlank(sbId)){
+            weekendCriteria.andEqualTo(RepairApplicationForm::getSbId, sbId);
+        }
+        if(StringUtils.isNotBlank(userId)){
+            if(searchType == 1){
+                weekendCriteria.andEqualTo(RepairApplicationForm::getUserId, userId);
+            }else if(searchType == 2){
+                weekendCriteria.andEqualTo(RepairApplicationForm::getRepairUserId, userId);
+            }else if(searchType == 3){
+                weekendCriteria.andEqualTo(RepairApplicationForm::getCheckUserId, userId);
+            }
         }
-        weekend.weekendCriteria().andIn(RepairApplicationForm::getStatus, statusList);
-        return mapper.selectCountByExample(weekend);
-    }
 
-    @Override
-    public int countUserCheckTask(String userId) {
-        Weekend<RepairApplicationForm> weekend = new Weekend<>(RepairApplicationForm.class);
-        weekend.weekendCriteria().andEqualTo(RepairApplicationForm::getCheckUserId, userId);
-        return mapper.selectCountByExample(weekend);
-    }
+        // 待接收的,未完成的
+        List<Integer> repairStatusList = new ArrayList<Integer>();
+        repairStatusList.add(RepairApplicationFormStatusEnum.NOT_ALLOCATED.getValue());
+        repairStatusList.add(RepairApplicationFormStatusEnum.PROCESSING.getValue());
+        weekendCriteria.andIn(RepairApplicationForm::getStatus, repairStatusList);
 
-    @Override
-    public int countSbTask(String sbId, List<Integer> status) {
-        Weekend<RepairApplicationForm> weekend = new Weekend<>(RepairApplicationForm.class);
-        weekend.weekendCriteria().andEqualTo(RepairApplicationForm::getSbId, sbId);
-        if(CollectionUtil.isNotEmpty(status) && status.size()>0){
-            weekend.weekendCriteria().andIn(RepairApplicationForm::getStatus, status);
-        }
         return mapper.selectCountByExample(weekend);
     }
 

+ 5 - 0
platform-service/src/main/java/com/platform/service/repair/impl/RepairReasonServiceImpl.java

@@ -44,6 +44,11 @@ public class RepairReasonServiceImpl extends BaseServiceImpl<RepairReasonMapper,
         return model;
     }
 
+    @Override
+    public RepairReasonVO getVOById(String id) {
+        return mapper.getVOById(id);
+    }
+
     @Override
     public RepairReason saveModelByDTO(RepairReasonDTO model) {
         model.setId(IdGeneratorUtils.getObjectId());