Browse Source

工作台代码提交

jingyuanchao 2 years ago
parent
commit
8e0343c734
29 changed files with 529 additions and 0 deletions
  1. 20 0
      soc-common/soc-common-core/src/main/java/com/xunmei/common/core/domain/panel/adapter/PanelAdapter.java
  2. 22 0
      soc-common/soc-common-core/src/main/java/com/xunmei/common/core/domain/panel/dto/PanelListDto.java
  3. 55 0
      soc-common/soc-common-core/src/main/java/com/xunmei/common/core/domain/panel/enums/PanelTypeEnums.java
  4. 29 0
      soc-common/soc-common-core/src/main/java/com/xunmei/common/core/domain/panel/vo/PanelListVo.java
  5. 20 0
      soc-common/soc-common-core/src/main/java/com/xunmei/common/core/domain/panel/vo/PanelResultVo.java
  6. 4 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/drill/mapper/CoreDrillTaskMapper.java
  7. 4 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/drill/service/ICoreDrillTaskService.java
  8. 7 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/drill/service/impl/CoreDrillTaskServiceImpl.java
  9. 4 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/edu/mapper/CoreEduTrainingTaskMapper.java
  10. 3 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/edu/service/ICoreEduTrainingTaskService.java
  11. 7 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/edu/service/impl/CoreEduTrainingTaskServiceImpl.java
  12. 39 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/panel/controller/PanelController.java
  13. 6 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/panel/mapper/PanelMapper.java
  14. 11 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/panel/service/PanelService.java
  15. 141 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/panel/service/impl/PanelServiceImpl.java
  16. 4 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/mapper/ResumptionMapper.java
  17. 4 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/service/ResumptionService.java
  18. 8 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/service/impl/ResumptionServiceImpl.java
  19. 4 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/retrieval/mapper/CoreMonitoringRetrievalTaskMapper.java
  20. 4 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/retrieval/service/ICoreMonitoringRetrievalTaskService.java
  21. 6 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/retrieval/service/impl/CoreMonitoringRetrievalTaskServiceImpl.java
  22. 4 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/safetyCheck/mapper/CoreSafetyTaskMapper.java
  23. 5 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/safetyCheck/service/ICoreSafetyTaskService.java
  24. 7 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/safetyCheck/service/impl/CoreSafetyTaskServiceImpl.java
  25. 26 0
      soc-modules/soc-modules-core/src/main/resources/mapper/drill/CoreDrillTaskMapper.xml
  26. 24 0
      soc-modules/soc-modules-core/src/main/resources/mapper/edu/CoreEduTrainingTaskMapper.xml
  27. 21 0
      soc-modules/soc-modules-core/src/main/resources/mapper/resumption/ResumptionMapper.xml
  28. 20 0
      soc-modules/soc-modules-core/src/main/resources/mapper/retrieval/CoreMonitoringRetrievalTaskMapper.xml
  29. 20 0
      soc-modules/soc-modules-core/src/main/resources/mapper/safetycheck/CoreSafetyTaskMapper.xml

+ 20 - 0
soc-common/soc-common-core/src/main/java/com/xunmei/common/core/domain/panel/adapter/PanelAdapter.java

@@ -0,0 +1,20 @@
+package com.xunmei.common.core.domain.panel.adapter;
+
+import cn.hutool.core.date.DateUtil;
+import com.xunmei.common.core.domain.panel.dto.PanelListDto;
+
+import java.util.Date;
+import java.util.Set;
+
+public class PanelAdapter {
+
+    public static PanelListDto getMapperSelectParam(Long orgId,Set<String> roleIdList, Long userId) {
+        PanelListDto panelListDto = new PanelListDto();
+        panelListDto.setUserId(userId);
+        panelListDto.setOrgId(orgId);
+        panelListDto.setStartTime(DateUtil.beginOfDay(new Date()));
+        panelListDto.setEndTime(DateUtil.endOfDay(new Date()));
+        panelListDto.setRoleIdList(roleIdList.stream().map(Long::valueOf).collect(java.util.stream.Collectors.toList()));
+        return panelListDto;
+    }
+}

+ 22 - 0
soc-common/soc-common-core/src/main/java/com/xunmei/common/core/domain/panel/dto/PanelListDto.java

@@ -0,0 +1,22 @@
+package com.xunmei.common.core.domain.panel.dto;
+
+import lombok.Builder;
+import lombok.Data;
+
+import java.util.Date;
+import java.util.List;
+
+@Data
+
+public class PanelListDto {
+
+    private Long userId;
+    private Long orgId;
+
+    private List<Long> roleIdList;
+
+
+    private Date startTime;
+    private Date endTime;
+
+}

+ 55 - 0
soc-common/soc-common-core/src/main/java/com/xunmei/common/core/domain/panel/enums/PanelTypeEnums.java

@@ -0,0 +1,55 @@
+package com.xunmei.common.core.domain.panel.enums;
+
+import com.xunmei.common.core.enums.drill.DrillDoStatus;
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+
+@Getter
+@AllArgsConstructor
+public enum PanelTypeEnums {
+
+    RESUMPTION(0, "履职任务"),
+
+    MONITORING_RETRIEVAL(1, "监控调阅"),
+
+    SAFETY_CHECK(2, "安全检查"),
+
+    DRILL(3, "预案演练"),
+
+    EDU_TRAINING(4, "教育培训"),
+
+    OTHER(5, "其他任务"),
+
+
+    ;
+
+
+    /**
+     * 所有枚举
+     */
+    private static final Map<Integer, PanelTypeEnums> enumMap = new LinkedHashMap<>();
+
+    static {
+        for (PanelTypeEnums enumNode : PanelTypeEnums.values()) {
+            enumMap.put(enumNode.code, enumNode);
+        }
+    }
+
+    private final Integer code;
+    private final String name;
+
+
+    public static String getName(Integer code) {
+        PanelTypeEnums e = enumMap.get(code);
+        return e != null ? e.getName() : "";
+    }
+
+    public static PanelTypeEnums getPanelTypeEnums(Integer code) {
+        return enumMap.get(code);
+
+    }
+
+}

+ 29 - 0
soc-common/soc-common-core/src/main/java/com/xunmei/common/core/domain/panel/vo/PanelListVo.java

@@ -0,0 +1,29 @@
+package com.xunmei.common.core.domain.panel.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+public class PanelListVo {
+
+    @ApiModelProperty(value = "面板功能类型")
+    private Integer type;
+
+
+    @ApiModelProperty(value = "面板功能名称")
+    private String taskName;
+
+    @ApiModelProperty(value = "开始时间")
+    private Date startTime;
+
+    @ApiModelProperty(value = "开始时间")
+    private Date endTime;
+
+    @ApiModelProperty(value = "任务状态")
+    private int status;
+
+
+
+}

+ 20 - 0
soc-common/soc-common-core/src/main/java/com/xunmei/common/core/domain/panel/vo/PanelResultVo.java

@@ -0,0 +1,20 @@
+package com.xunmei.common.core.domain.panel.vo;
+
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class PanelResultVo {
+
+    private int taskType;
+
+
+    private String taskTypeText;
+
+
+    private int nums;
+
+    private List<PanelListVo> dataList;
+}

+ 4 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/drill/mapper/CoreDrillTaskMapper.java

@@ -9,6 +9,8 @@ import com.xunmei.common.core.domain.drill.dto.CoreDrillTaskPageDto;
 import com.xunmei.common.core.domain.drill.dto.CoreDrillTaskRecPageDto;
 import com.xunmei.common.core.domain.drill.dto.CoreDrillTaskReportDto;
 import com.xunmei.common.core.domain.drill.vo.*;
+import com.xunmei.common.core.domain.panel.dto.PanelListDto;
+import com.xunmei.common.core.domain.panel.vo.PanelListVo;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -38,4 +40,6 @@ public interface CoreDrillTaskMapper extends BaseMapper<CoreDrillTask> {
     IPage<CoreDrillTaskRecTaskPageVo> selectRecTaskListPage(Page<Object> pageRequest, @Param("request") CoreDrillTaskRecPageDto request);
 
     int updateStatusById(@Param("drillTaskId") Long drillTaskId, @Param("recStatus") Integer recStatus);
+
+    List<PanelListVo> selectCurUserTaskList(@Param("request") PanelListDto request);
 }

+ 4 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/drill/service/ICoreDrillTaskService.java

@@ -6,6 +6,8 @@ import com.xunmei.common.core.domain.drill.domain.CoreDrillTask;
 import com.xunmei.common.core.domain.drill.domain.CoreDrillTaskToUser;
 import com.xunmei.common.core.domain.drill.dto.*;
 import com.xunmei.common.core.domain.drill.vo.*;
+import com.xunmei.common.core.domain.panel.dto.PanelListDto;
+import com.xunmei.common.core.domain.panel.vo.PanelListVo;
 import com.xunmei.common.core.web.domain.AjaxResult;
 import com.xunmei.common.core.web.page.TableDataInfo;
 
@@ -96,4 +98,6 @@ public interface ICoreDrillTaskService extends IService<CoreDrillTask> {
     TableDataInfo<CoreDrillTaskRecTaskPageVo> recTaskList(CoreDrillTaskRecPageDto request);
 
     int doRecTask(CoreDrillTaskDoRec request);
+
+    List<PanelListVo> selectCurUserTaskList(PanelListDto panelListDto);
 }

+ 7 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/drill/service/impl/CoreDrillTaskServiceImpl.java

@@ -22,6 +22,8 @@ import com.xunmei.common.core.domain.drill.dto.*;
 import com.xunmei.common.core.domain.drill.vo.*;
 import com.xunmei.common.core.domain.edu.domain.CoreEduTrainingTaskToUser;
 import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingTaskReportVo;
+import com.xunmei.common.core.domain.panel.dto.PanelListDto;
+import com.xunmei.common.core.domain.panel.vo.PanelListVo;
 import com.xunmei.common.core.enums.ExportPdfType;
 import com.xunmei.common.core.enums.OrgTypeEnum;
 import com.xunmei.common.core.enums.drill.DrillDoStatus;
@@ -793,6 +795,11 @@ public class CoreDrillTaskServiceImpl extends ServiceImpl<CoreDrillTaskMapper, C
             }
         }
     }
+
+    @Override
+    public List<PanelListVo> selectCurUserTaskList(PanelListDto panelListDto) {
+        return coreDrillTaskMapper.selectCurUserTaskList(panelListDto);
+    }
 }
 
 

+ 4 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/edu/mapper/CoreEduTrainingTaskMapper.java

@@ -9,6 +9,8 @@ import com.xunmei.common.core.domain.edu.dto.CoreEduTrainingTaskReportDto;
 import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingTaskDetailVo;
 import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingTaskPageVo;
 import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingTaskReportVo;
+import com.xunmei.common.core.domain.panel.dto.PanelListDto;
+import com.xunmei.common.core.domain.panel.vo.PanelListVo;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -34,4 +36,6 @@ public interface CoreEduTrainingTaskMapper extends BaseMapper<CoreEduTrainingTas
     Integer checkHasTaskIsDoneByPlanParentId(@Param("planId") Long planId);
 
     Integer updateStatusByIdList();
+
+    List<PanelListVo> selectCurUserTaskList(@Param("request") PanelListDto request);
 }

+ 3 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/edu/service/ICoreEduTrainingTaskService.java

@@ -12,6 +12,8 @@ import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingPlanDataVo;
 import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingTaskDetailVo;
 import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingTaskPageVo;
 import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingTaskReportVo;
+import com.xunmei.common.core.domain.panel.dto.PanelListDto;
+import com.xunmei.common.core.domain.panel.vo.PanelListVo;
 import com.xunmei.common.core.web.domain.AjaxResult;
 import com.xunmei.common.core.web.page.TableDataInfo;
 
@@ -97,4 +99,5 @@ public interface ICoreEduTrainingTaskService extends IService<CoreEduTrainingTas
     String updateEduTaskStatus();
 
 
+    List<PanelListVo> selectCurUserTaskList(PanelListDto panelListDto);
 }

+ 7 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/edu/service/impl/CoreEduTrainingTaskServiceImpl.java

@@ -25,6 +25,8 @@ import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingPlanDataVo;
 import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingTaskDetailVo;
 import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingTaskPageVo;
 import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingTaskReportVo;
+import com.xunmei.common.core.domain.panel.dto.PanelListDto;
+import com.xunmei.common.core.domain.panel.vo.PanelListVo;
 import com.xunmei.common.core.enums.ExportPdfType;
 import com.xunmei.common.core.enums.edu.EduTrainingDoStatus;
 import com.xunmei.common.core.enums.edu.EduTrainingType;
@@ -616,6 +618,11 @@ public class CoreEduTrainingTaskServiceImpl extends ServiceImpl<CoreEduTrainingT
         return "更新成功";
 
     }
+
+    @Override
+    public List<PanelListVo> selectCurUserTaskList(PanelListDto panelListDto) {
+        return coreEduTrainingTaskMapper.selectCurUserTaskList( panelListDto);
+    }
 }
 
 

+ 39 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/panel/controller/PanelController.java

@@ -0,0 +1,39 @@
+package com.xunmei.core.panel.controller;
+
+
+import com.xunmei.common.core.domain.edu.dto.CoreEduTrainingPlanPageDto;
+import com.xunmei.common.core.domain.panel.vo.PanelListVo;
+import com.xunmei.common.core.domain.panel.vo.PanelResultVo;
+import com.xunmei.common.core.web.page.TableDataInfo;
+import com.xunmei.common.security.annotation.RequiresPermissions;
+import com.xunmei.core.edu.service.ICoreEduTrainingPlanService;
+import com.xunmei.core.panel.service.PanelService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+@Api(tags = {"CoreEduTrainingPlan"})
+@RestController
+@RequestMapping("/panel")
+public class PanelController {
+
+
+    @Autowired
+    private PanelService panelService;
+
+    /**
+     * App面板接口
+     */
+    @ApiOperation(value = "App面板接口")
+    //@RequiresPermissions("core:panel:list")
+    @GetMapping("/list")
+    public List<PanelResultVo> list() {
+        return panelService.selectPage();
+    }
+
+}

+ 6 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/panel/mapper/PanelMapper.java

@@ -0,0 +1,6 @@
+package com.xunmei.core.panel.mapper;
+
+public class PanelMapper {
+
+
+}

+ 11 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/panel/service/PanelService.java

@@ -0,0 +1,11 @@
+package com.xunmei.core.panel.service;
+
+import com.xunmei.common.core.domain.panel.vo.PanelListVo;
+import com.xunmei.common.core.domain.panel.vo.PanelResultVo;
+
+import java.util.List;
+
+public interface PanelService {
+    List<PanelResultVo> selectPage();
+
+}

+ 141 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/panel/service/impl/PanelServiceImpl.java

@@ -0,0 +1,141 @@
+package com.xunmei.core.panel.service.impl;
+
+import cn.hutool.core.collection.ListUtil;
+import cn.hutool.core.util.ObjectUtil;
+import com.xunmei.common.core.domain.panel.adapter.PanelAdapter;
+import com.xunmei.common.core.domain.panel.dto.PanelListDto;
+import com.xunmei.common.core.domain.panel.enums.PanelTypeEnums;
+import com.xunmei.common.core.domain.panel.vo.PanelListVo;
+import com.xunmei.common.core.domain.panel.vo.PanelResultVo;
+import com.xunmei.common.security.utils.SecurityUtils;
+import com.xunmei.core.drill.service.ICoreDrillTaskService;
+import com.xunmei.core.edu.service.ICoreEduTrainingTaskService;
+import com.xunmei.core.panel.service.PanelService;
+import com.xunmei.core.resumption.service.ResumptionService;
+import com.xunmei.core.retrieval.service.ICoreMonitoringRetrievalTaskService;
+import com.xunmei.core.safetyCheck.service.ICoreSafetyTaskService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.*;
+import java.util.concurrent.CompletableFuture;
+import java.util.stream.Collectors;
+
+@Slf4j
+@Service
+public class PanelServiceImpl implements PanelService {
+
+    @Autowired
+    private ResumptionService resumptionService;
+
+    @Autowired
+    private ICoreMonitoringRetrievalTaskService coreMonitoringRetrievalTaskService;
+    @Autowired
+    private ICoreSafetyTaskService safetyTaskService;
+    @Autowired
+    private ICoreDrillTaskService drillTaskService;
+
+    @Autowired
+    private ICoreEduTrainingTaskService eduTrainingTaskService;
+
+    @Override
+    public  List<PanelResultVo> selectPage() {
+        PanelListDto panelListDto = PanelAdapter.getMapperSelectParam(SecurityUtils.getLoginUser().getOrgId(),
+                SecurityUtils.getLoginUser().getRoles(),
+                SecurityUtils.getUserId());
+
+        List<PanelListVo> resultList = Collections.synchronizedList(new ArrayList<>(6));
+
+        //履职任务
+        CompletableFuture<List<PanelListVo>> resumptionTaskFuture = CompletableFuture.supplyAsync(() -> {
+            return resumptionService.selectCurUserTaskList(panelListDto);
+        }).whenComplete((resumptionTaskList, throwable) -> {
+            if (ObjectUtil.isNotEmpty(resumptionTaskList)) {
+                resultList.addAll(resumptionTaskList);
+            }
+            if (throwable != null) {
+                log.error("resumptionTaskFuture Exception error.", throwable);
+            }
+        });
+
+        //监控调阅任务
+        CompletableFuture<List<PanelListVo>> monitorTaskFuture = CompletableFuture.supplyAsync(() -> {
+            return coreMonitoringRetrievalTaskService.selectCurUserTaskList(panelListDto);
+        }).whenComplete((monitorTaskList, throwable) -> {
+            if (ObjectUtil.isNotEmpty(monitorTaskList)) {
+                resultList.addAll(monitorTaskList);
+            }
+            if (throwable != null) {
+                log.error("monitorTaskFuture Exception error.", throwable);
+            }
+        });
+
+        //安全检查任务
+        CompletableFuture<List<PanelListVo>> safetyTaskFuture = CompletableFuture.supplyAsync(() -> {
+            return safetyTaskService.selectCurUserTaskList(panelListDto);
+        }).whenComplete((safetyTaskList, throwable) -> {
+            if (ObjectUtil.isNotEmpty(safetyTaskList)) {
+                resultList.addAll(safetyTaskList);
+            }
+            if (throwable != null) {
+                log.error("safetyTaskFuture Exception error.", throwable);
+            }
+        });
+
+
+        //预案演练任务
+        CompletableFuture<List<PanelListVo>> drillTaskFuture = CompletableFuture.supplyAsync(() -> {
+            return drillTaskService.selectCurUserTaskList(panelListDto);
+        }).whenComplete((drillTaskList, throwable) -> {
+            if (ObjectUtil.isNotEmpty(drillTaskList)) {
+                resultList.addAll(drillTaskList);
+            }
+            if (throwable != null) {
+                log.error("drillTaskFuture Exception error.", throwable);
+            }
+        });
+
+        //教育培训任务
+        CompletableFuture<List<PanelListVo>> eduTrainingTaskFuture = CompletableFuture.supplyAsync(() -> {
+            return eduTrainingTaskService.selectCurUserTaskList(panelListDto);
+        }).whenComplete((duTrainingTaskList, throwable) -> {
+            if (ObjectUtil.isNotEmpty(duTrainingTaskList)) {
+                resultList.addAll(duTrainingTaskList);
+            }
+            if (throwable != null) {
+                log.error("eduTrainingTaskFuture Exception error.", throwable);
+            }
+        });
+
+        List<CompletableFuture<List<PanelListVo>>> futureList = ListUtil.list(true,
+                resumptionTaskFuture,
+                monitorTaskFuture,
+                safetyTaskFuture,
+                drillTaskFuture,
+                eduTrainingTaskFuture);
+
+
+        try {
+            // 多个任务
+            CompletableFuture.allOf(futureList.toArray(new CompletableFuture[0])).join();
+        } catch (Exception e) {
+            log.error("CompletableFuture.allOf Exception error.", e);
+        }
+
+       // Map<Integer, List<PanelListVo>> listMap = resultList.stream().collect(Collectors.groupingBy(PanelListVo::getType));
+        //将 resultList根据type字段分组,并排序
+        Map<Integer, List<PanelListVo>> listMap = resultList.stream().sorted(Comparator.comparing(PanelListVo::getType)).collect(Collectors.groupingBy(PanelListVo::getType));
+        List<PanelResultVo> list = new ArrayList<PanelResultVo>();
+        for (Integer type : listMap.keySet()) {
+            PanelResultVo vo = new PanelResultVo();
+            vo.setTaskType(type);
+            vo.setTaskTypeText(PanelTypeEnums.getName(type));
+            vo.setDataList(listMap.get(type));
+            list.add(vo);
+        }
+
+        return list;
+
+    }
+}

+ 4 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/mapper/ResumptionMapper.java

@@ -1,6 +1,8 @@
 package com.xunmei.core.resumption.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.xunmei.common.core.domain.panel.dto.PanelListDto;
+import com.xunmei.common.core.domain.panel.vo.PanelListVo;
 import com.xunmei.core.resumption.domain.AppRulePoint;
 import com.xunmei.core.resumption.domain.Resumption;
 import com.xunmei.core.resumption.dto.ResumptionTaskDto;
@@ -49,6 +51,8 @@ public interface ResumptionMapper extends BaseMapper<Resumption> {
      */
     List<Resumption>selectDay(@Param("planEndTime")String planEndTime,@Param("planExec")String planExec);
 
+    List<PanelListVo> selectCurUserTaskList(@Param("request") PanelListDto request);
+
     /**
      * 根据任务id获取数据
      * @param resumptionId

+ 4 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/service/ResumptionService.java

@@ -2,6 +2,8 @@ package com.xunmei.core.resumption.service;
 
 import cn.hutool.core.date.DateTime;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.xunmei.common.core.domain.panel.dto.PanelListDto;
+import com.xunmei.common.core.domain.panel.vo.PanelListVo;
 import com.xunmei.common.core.utils.ResumptionType;
 import com.xunmei.core.resumption.domain.AppPlan;
 import com.xunmei.core.resumption.domain.Resumption;
@@ -40,4 +42,6 @@ public interface ResumptionService extends IService<Resumption> {
     public List<WorkChangeResumptionVo> findResumptionList(List<Long> orgIds, Date date, Integer type, Integer status, Integer year, Integer quarter);
     public void saveResumption(List<Resumption> listResumption, List<AppPlan> appPlanList, List<Map<String,Long>> planIdAndOrgs);
     public void deleteResumption(List<String> ids,Integer year, Integer quarter);
+
+    List<PanelListVo> selectCurUserTaskList(PanelListDto panelListDto);
 }

+ 8 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/service/impl/ResumptionServiceImpl.java

@@ -8,6 +8,8 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.mysql.cj.PreparedQuery;
+import com.xunmei.common.core.domain.panel.dto.PanelListDto;
+import com.xunmei.common.core.domain.panel.vo.PanelListVo;
 import com.xunmei.common.core.utils.DateHelper;
 import com.xunmei.common.core.utils.ResumptionType;
 import com.xunmei.common.core.utils.Ymd;
@@ -152,4 +154,10 @@ public class ResumptionServiceImpl extends ServiceImpl<ResumptionMapper, Resumpt
     public void deleteResumption(List<String> ids, Integer year, Integer quarter) {
         resumptionMapper.deleteResumption(ids, year, quarter);
     }
+
+    @Override
+    public List<PanelListVo> selectCurUserTaskList(PanelListDto panelListDto) {
+
+        return resumptionMapper.selectCurUserTaskList( panelListDto);
+    }
 }

+ 4 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/retrieval/mapper/CoreMonitoringRetrievalTaskMapper.java

@@ -7,6 +7,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.xunmei.common.core.domain.edu.dto.CoreEduTrainingPlanPageDto;
 import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingPlanPageVo;
+import com.xunmei.common.core.domain.panel.dto.PanelListDto;
+import com.xunmei.common.core.domain.panel.vo.PanelListVo;
 import com.xunmei.common.core.domain.retrieval.domain.CoreMonitoringRetrievalTask;
 import com.xunmei.common.core.domain.retrieval.dto.RetrievalTaskPageDto;
 import com.xunmei.common.core.domain.retrieval.vo.CoreMonitoringRetrievalTaskExcelVo;
@@ -91,4 +93,6 @@ public interface CoreMonitoringRetrievalTaskMapper extends BaseMapper<CoreMonito
     void updateDeleteTaskByPlanId(@Param("planId") Long planId,@Param("isDeleted") Integer isDeleted);
 
     List<CoreMonitoringRetrievalTaskExcelVo> selectAllList(@Param("request") RetrievalTaskPageDto request);
+
+    List<PanelListVo> selectCurUserTaskList(@Param("request") PanelListDto request);
 }

+ 4 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/retrieval/service/ICoreMonitoringRetrievalTaskService.java

@@ -6,6 +6,8 @@ import java.util.Date;
 import java.util.List;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.xunmei.common.core.domain.panel.dto.PanelListDto;
+import com.xunmei.common.core.domain.panel.vo.PanelListVo;
 import com.xunmei.common.core.domain.retrieval.vo.CoreMonitoringRetrievalTaskOneVo;
 import com.xunmei.common.core.web.page.TableDataInfo;
 import com.xunmei.core.access.domain.TMonitoringRetrievalPlan;
@@ -94,4 +96,6 @@ public interface ICoreMonitoringRetrievalTaskService extends IService<CoreMonito
     void deleteTaskByPlanId(Long planId);
     void  deleteWaitTaskByPlanId(Long planId);
     void updateDeleteTaskByPlanId(Long planId,Integer isDeleted);
+
+    List<PanelListVo> selectCurUserTaskList(PanelListDto panelListDto);
 }

+ 6 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/retrieval/service/impl/CoreMonitoringRetrievalTaskServiceImpl.java

@@ -16,6 +16,8 @@ import com.xunmei.common.core.constant.ErrorMsgConstants;
 import com.xunmei.common.core.constant.SecurityConstants;
 import com.xunmei.common.core.domain.DateRange;
 import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingPlanPageVo;
+import com.xunmei.common.core.domain.panel.dto.PanelListDto;
+import com.xunmei.common.core.domain.panel.vo.PanelListVo;
 import com.xunmei.common.core.domain.retrieval.domain.CoreMonitoringRetrievalTask;
 import com.xunmei.common.core.domain.retrieval.dto.RetrievalTaskPageDto;
 import com.xunmei.common.core.domain.retrieval.vo.CoreMonitoringRetrievalTaskExcelVo;
@@ -458,4 +460,8 @@ public class CoreMonitoringRetrievalTaskServiceImpl extends ServiceImpl<CoreMoni
         return task;
     }
 
+    @Override
+    public List<PanelListVo> selectCurUserTaskList(PanelListDto request) {
+       return baseMapper.selectCurUserTaskList(request);
+    }
 }

+ 4 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/safetyCheck/mapper/CoreSafetyTaskMapper.java

@@ -3,6 +3,8 @@ package com.xunmei.core.safetyCheck.mapper;
 import java.util.List;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.xunmei.common.core.domain.panel.dto.PanelListDto;
+import com.xunmei.common.core.domain.panel.vo.PanelListVo;
 import com.xunmei.core.safetyCheck.domain.CoreSafetyTask;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.xunmei.core.safetyCheck.dto.register.AppPageDto;
@@ -83,4 +85,6 @@ public interface CoreSafetyTaskMapper extends BaseMapper<CoreSafetyTask> {
     Page<AppPageVo> selectTaskGroup(@Param("page") Page<AppPageVo> page, @Param("params") AppPageDto params, @Param("userId") Long userId);
 
     List<CheckNfcRecord> selectNfcRecord(String taskId);
+
+    List<PanelListVo> selectCurUserTaskList(@Param("request") PanelListDto request);
 }

+ 5 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/safetyCheck/service/ICoreSafetyTaskService.java

@@ -1,9 +1,12 @@
 package com.xunmei.core.safetyCheck.service;
 
+import java.util.Date;
 import java.util.List;
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.xunmei.common.core.domain.panel.dto.PanelListDto;
+import com.xunmei.common.core.domain.panel.vo.PanelListVo;
 import com.xunmei.common.core.web.page.TableDataInfo;
 import com.xunmei.core.safetyCheck.domain.CoreSafetyTask;
 import com.xunmei.core.safetyCheck.vo.CheckNfcRecord;
@@ -72,4 +75,6 @@ public interface ICoreSafetyTaskService extends IService<CoreSafetyTask> {
     TableDataInfo<CoreSafetyTask> selectPage(CoreSafetyTask coreSafetyTask);
 
     List<CheckNfcRecord> selectNfc(String taskId);
+
+    List<PanelListVo> selectCurUserTaskList(PanelListDto panelListDto);
 }

+ 7 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/safetyCheck/service/impl/CoreSafetyTaskServiceImpl.java

@@ -2,6 +2,8 @@ package com.xunmei.core.safetyCheck.service.impl;
 
 import java.util.List;
 
+import com.xunmei.common.core.domain.panel.dto.PanelListDto;
+import com.xunmei.common.core.domain.panel.vo.PanelListVo;
 import com.xunmei.common.core.utils.DateUtils;
 import com.xunmei.core.safetyCheck.domain.CoreSafetyTask;
 import com.xunmei.core.safetyCheck.mapper.CoreSafetyTaskMapper;
@@ -135,4 +137,9 @@ public class CoreSafetyTaskServiceImpl extends ServiceImpl<CoreSafetyTaskMapper,
     public int deleteCoreSafetyTaskById(String id) {
         return coreSafetyTaskMapper.deleteById(id);
     }
+
+    @Override
+    public List<PanelListVo> selectCurUserTaskList(PanelListDto panelListDto) {
+        return coreSafetyTaskMapper.selectCurUserTaskList(panelListDto);
+    }
 }

+ 26 - 0
soc-modules/soc-modules-core/src/main/resources/mapper/drill/CoreDrillTaskMapper.xml

@@ -277,4 +277,30 @@
         set rec_status=#{recStatus}
         where id = #{drillTaskId}
     </update>
+
+    <select id="selectCurUserTaskList" resultType="com.xunmei.common.core.domain.panel.vo.PanelListVo">
+        select 4 as type,title as taskName,t.start_date startTime,t.end_date as endTime
+        from core_drill_task t inner join core_drill_task_to_role tr  on t.id=tr.drill_task_id
+        where t.org_id =#{request.orgId} and  tr.role_id in
+        <foreach collection="request.roleIdList" item="roleId" open="(" separator="," close=")">
+            #{roleId}
+        </foreach>
+        <if test="request.startTime != null and request.endTime != null">
+        and (
+        (
+        #{request.startTime}   <![CDATA[<=]]> t.start_date
+        and #{request.endTime}     <![CDATA[>=]]> t.start_date
+        )
+        or
+        (
+        #{request.startTime}   <![CDATA[<=]]> t.end_date
+        and #{request.endTime}     <![CDATA[>=]]> t.end_date
+        )
+        or (
+        #{request.startTime}   <![CDATA[>=]]> t.start_date
+        and #{request.endTime}     <![CDATA[<=]]> t.end_date
+        )
+        )
+        </if>
+    </select>
 </mapper>

+ 24 - 0
soc-modules/soc-modules-core/src/main/resources/mapper/edu/CoreEduTrainingTaskMapper.xml

@@ -188,4 +188,28 @@
         where end_date <![CDATA[<]]> now()
           and status <![CDATA[<]]> 2
     </update>
+
+    <select id="selectCurUserTaskList" resultType="com.xunmei.common.core.domain.panel.vo.PanelListVo">
+        select 5 as type,title as taskName,t.start_date startTime,t.end_date as endTime
+        from core_edu_training_task t inner join core_edu_training_task_to_role tr on t.id=tr.role_id
+        where t.org_id =#{request.orgId} and  tr.role_id in
+        <foreach collection="request.roleIdList" item="roleId" open="(" separator="," close=")">
+            #{roleId}
+        </foreach>
+            and (
+            (
+            #{request.startTime}   <![CDATA[<=]]> t.start_date
+            and #{request.endTime}     <![CDATA[>=]]> t.start_date
+            )
+            or
+            (
+            #{request.startTime}   <![CDATA[<=]]> t.end_date
+            and #{request.endTime}     <![CDATA[>=]]> t.end_date
+            )
+            or (
+            #{request.startTime}   <![CDATA[>=]]> t.start_date
+            and #{request.endTime}     <![CDATA[<=]]> t.end_date
+            )
+            )
+    </select>
 </mapper>

+ 21 - 0
soc-modules/soc-modules-core/src/main/resources/mapper/resumption/ResumptionMapper.xml

@@ -195,4 +195,25 @@
             LEFT JOIN ( SELECT nfc_id, point_id, img, STATUS, scan_method FROM core_resumption_data_nfc WHERE resumption_id = #{resumptionId} ) b ON a.id = b.nfc_id
 
     </select>
+
+    <select id="selectCurUserTaskList" resultType="com.xunmei.common.core.domain.panel.vo.PanelListVo">
+
+        select 1 as type,name as taskName,t.plan_start_time as startTime,t.plan_end_time as endTime
+        from core_resumption t where t.org_id =#{request.orgId} and  t.role_id in
+        <foreach collection="request.roleIdList" item="roleId" open="(" separator="," close=")">
+            #{roleId}
+        </foreach>
+        and ((
+            #{request.startTime}   <![CDATA[<=]]> t.plan_start_time
+        and #{request.endTime} >= t.plan_start_time
+        )
+        or (
+            #{request.startTime}    <![CDATA[<=]]> t.plan_end_time
+        and #{request.endTime} >= t.plan_end_time
+        )
+        or (
+            #{request.startTime} >= t.plan_start_time
+        and #{request.endTime}  <![CDATA[<=]]>  t.plan_end_time
+        ))                                                )
+    </select>
 </mapper>

+ 20 - 0
soc-modules/soc-modules-core/src/main/resources/mapper/retrieval/CoreMonitoringRetrievalTaskMapper.xml

@@ -423,4 +423,24 @@
         set is_deleted = #{isDeleted}
         where plan_id = #{planId}
     </update>
+
+    <select id="selectCurUserTaskList" resultType="com.xunmei.common.core.domain.panel.vo.PanelListVo">
+     select 2 as type,task_name as taskName,t.plan_start_time as startTime,t.plan_end_time as endTime
+        from core_monitoring_retrieval_task t where t.org_id =#{request.orgId} and  t.role_id in
+         <foreach collection="request.roleIdList" item="roleId" open="(" separator="," close=")">
+            #{roleId}
+         </foreach>
+        and ((
+                #{request.startTime}   <![CDATA[<=]]> t.plan_start_time
+                and #{request.endTime} >= t.plan_start_time
+                )
+                or (
+                #{request.startTime}    <![CDATA[<=]]> t.plan_end_time
+                and #{request.endTime} >= t.plan_end_time
+                )
+                or (
+                #{request.startTime} >= t.plan_start_time
+                and #{request.endTime}  <![CDATA[<=]]>  t.plan_end_time
+             ))
+    </select>
 </mapper>

+ 20 - 0
soc-modules/soc-modules-core/src/main/resources/mapper/safetycheck/CoreSafetyTaskMapper.xml

@@ -731,4 +731,24 @@
                  left join sys_nfc_bind n on n.id = t.nfc_id
         where t.task_id = #{taskId}
     </select>
+
+    <select id="selectCurUserTaskList" resultType="com.xunmei.common.core.domain.panel.vo.PanelListVo">
+        select 3 as type,title as taskName,t.plan_start_time as startTime,t.plan_end_time as endTime
+        from core_safety_task t where t.org_id =#{request.orgId} and  t.role_id in
+        <foreach collection="request.roleIdList" item="roleId" open="(" separator="," close=")">
+            #{roleId}
+        </foreach>
+        and ((
+        #{request.startTime}   <![CDATA[<=]]> t.plan_start_time
+        and #{request.endTime} >= t.plan_start_time
+        )
+        or (
+        #{request.startTime}    <![CDATA[<=]]> t.plan_end_time
+        and #{request.endTime} >= t.plan_end_time
+        )
+        or (
+        #{request.startTime} >= t.plan_start_time
+        and #{request.endTime}  <![CDATA[<=]]>  t.plan_end_time
+        ))
+    </select>
 </mapper>