Explorar el Código

Merge remote-tracking branch 'origin/V0.0.4' into V0.0.4

jingyuanchao hace 1 año
padre
commit
0e63edd445

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

@@ -18,7 +18,7 @@ public enum PanelTypeEnums {
     SAFETY_CHECK(2, "安全检查"),
 
     MONITORING_RETRIEVAL(3, "监控调阅"),
-
+OUT_EVALUATION(8,"外包评价"),
 
 
     DRILL(4, "预案演练"),

+ 0 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/controller/CoreEvaluateTaskController.java

@@ -65,7 +65,6 @@ public class CoreEvaluateTaskController extends BaseController {
     public TableDataInfo<CoreEvaluateTaskVO> appList(EvaluateTaskDTO coreEvaluateTask) {
         return coreEvaluateTaskService.selectAPPPage(coreEvaluateTask);
     }
-
     @ApiOperation(value = "统计")
     @RequiresPermissions("core:evaluateTask:list")
     @GetMapping("/statistics")

+ 6 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/mapper/CoreEvaluateTaskMapper.java

@@ -3,6 +3,8 @@ package com.xunmei.core.evaluate.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 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.evaluate.domain.CoreEvaluateTask;
 import com.xunmei.core.evaluate.dto.EvaluateQueryDTO;
 import com.xunmei.core.evaluate.dto.EvaluateTaskDTO;
@@ -75,9 +77,12 @@ public interface CoreEvaluateTaskMapper extends BaseMapper<CoreEvaluateTask> {
 
     Page<CoreEvaluateTaskVO> selectAppPageList(@Param("page") Page<CoreEvaluateTaskVO> page, @Param("request") EvaluateTaskDTO request);
 
+    List<PanelListVo> selectCurUserTaskList(@Param("request") PanelListDto request);
+
     Page<Map> statistics(@Param("page") Page<Map> page, @Param("request") EvaluateTaskStatisticsDTO request);
 
     //List<LinkedHashMap> statisticsAll(@Param("request") EvaluateTaskStatisticsDTO request);
     LinkedHashMap statisticsAll(@Param("request") EvaluateTaskStatisticsDTO request);
-    List<Map> getContentByTaskId(@Param("id") Long id,@Param("startTime") Date startTime,@Param("endTime") Date endTime);
+
+    List<Map> getContentByTaskId(@Param("id") Long id, @Param("startTime") Date startTime, @Param("endTime") Date endTime);
 }

+ 3 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/service/ICoreEvaluateTaskService.java

@@ -2,6 +2,8 @@ package com.xunmei.core.evaluate.service;
 
 
 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.web.page.TableDataInfo;
 import com.xunmei.core.evaluate.domain.CoreEvaluateTask;
 import com.xunmei.core.evaluate.dto.EvaluateTaskContentDTO;
@@ -90,6 +92,7 @@ public interface ICoreEvaluateTaskService extends IService<CoreEvaluateTask> {
      * @return Page
      */
     TableDataInfo<CoreEvaluateTaskVO> selectAPPPage(EvaluateTaskDTO evaluateTaskDTO);
+    List<PanelListVo> selectCurUserTaskList(PanelListDto panelListDto);
     /**
      * 统计
      *

+ 13 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/service/impl/CoreEvaluateTaskServiceImpl.java

@@ -10,6 +10,9 @@ import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.xunmei.common.core.constant.SecurityConstants;
+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.utils.DateUtils;
 import com.xunmei.common.core.utils.StringUtils;
 import com.xunmei.common.core.web.page.TableDataInfo;
@@ -107,6 +110,16 @@ public class CoreEvaluateTaskServiceImpl extends ServiceImpl<CoreEvaluateTaskMap
         return TableDataInfo.build(page);
     }
 
+    @Override
+    public List<PanelListVo> selectCurUserTaskList(PanelListDto panelListDto) {
+        List<PanelListVo> panelListVos = baseMapper.selectCurUserTaskList(panelListDto);
+        panelListVos.removeIf(item -> DateUtil.compare(new Date(), item.getEndTime()) > 0);
+        panelListVos.forEach(item -> {
+            item.setType(PanelTypeEnums.OUT_EVALUATION.getCode());
+        });
+        return panelListVos;
+    }
+
 
     @Override
     public Map statistics(EvaluateTaskStatisticsDTO evaluateTaskStatisticsDTO) {

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

@@ -12,6 +12,7 @@ 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.evaluate.service.ICoreEvaluateTaskService;
 import com.xunmei.core.panel.service.PanelService;
 import com.xunmei.core.resumption.service.IProtectionService;
 import com.xunmei.core.resumption.service.ResumptionService;
@@ -59,7 +60,8 @@ public class PanelServiceImpl implements PanelService {
     @Autowired
     @Qualifier(ThreadPoolConfig.SOC_EXECUTOR)
     private ThreadPoolTaskExecutor threadPoolTaskExecutor;
-
+@Autowired
+private ICoreEvaluateTaskService iCoreEvaluateTaskService;
     @Override
     public List<PanelResultVo> selectPage() throws ExecutionException, InterruptedException, TimeoutException {
 
@@ -87,7 +89,10 @@ public class PanelServiceImpl implements PanelService {
         CompletableFuture<List<PanelListVo>> monitorTaskFuture = CompletableFuture.supplyAsync(() ->
                 coreMonitoringRetrievalTaskService.selectCurUserTaskList(panelListDto), threadPoolTaskExecutor
         );
-
+        //外包评价
+        CompletableFuture<List<PanelListVo>> evaluateTaskFuture=CompletableFuture.supplyAsync(()->
+                        iCoreEvaluateTaskService.selectCurUserTaskList(panelListDto),threadPoolTaskExecutor
+                );
         //安全检查任务
         CompletableFuture<List<PanelListVo>> safetyTaskFuture = CompletableFuture.supplyAsync(() ->
                 safetyTaskService.selectCurUserTaskList(panelListDto), threadPoolTaskExecutor
@@ -109,14 +114,14 @@ public class PanelServiceImpl implements PanelService {
         );
 
         CompletableFuture<Void> allQueries = CompletableFuture.allOf(
-                resumptionTaskFuture, protectionTaskFuture, monitorTaskFuture,
+                resumptionTaskFuture, protectionTaskFuture, monitorTaskFuture,evaluateTaskFuture,
                 safetyTaskFuture, drillTaskFuture, eduTrainingTaskFuture, recLitFuture
         );
 
         allQueries.get(TIMEOUT, TimeUnit.SECONDS);
 
         List<PanelListVo> resultList = Stream.of(
-                        resumptionTaskFuture.join(), protectionTaskFuture.join(), monitorTaskFuture.join(),
+                        resumptionTaskFuture.join(), protectionTaskFuture.join(), monitorTaskFuture.join(),evaluateTaskFuture.join(),
                         safetyTaskFuture.join(), drillTaskFuture.join(), eduTrainingTaskFuture.join(), recLitFuture.join()
                 )
                 .flatMap(Collection::stream)

+ 27 - 0
soc-modules/soc-modules-core/src/main/resources/mapper/evaluate/CoreEvaluateTaskMapper.xml

@@ -216,6 +216,33 @@
                 AND b.id = #{request.planId}
             </if>
     </select>
+    <select id="selectCurUserTaskList" resultType="com.xunmei.common.core.domain.panel.vo.PanelListVo">
+        SELECT
+            a.id AS id,
+            a.evaluate_name AS taskName,
+            a.start_time AS startTime,
+            a.end_time AS endTime,
+            a.`status`
+        FROM
+            core_evaluate_task a
+                LEFT JOIN core_evaluate_role b ON b.evaluate_id = a.plan_id
+                LEFT JOIN sys_role c ON c.id = b.role_id
+                LEFT JOIN core_evaluate_task_user e ON e.task_id = a.id
+                LEFT JOIN core_evaluate_task_user_content d ON d.task_user_id = e.id
+        WHERE
+            a.is_deleted = 0
+          AND a.`status` = 0
+        and c.id in
+        <foreach collection="request.roleIdList" item="roleId" open="(" separator="," close=")">
+            #{roleId}
+        </foreach>
+        AND a.org_id = #{request.orgId}
+        AND ((
+        a.start_time &lt;= #{request.startTime} AND a.end_time >= #{request.startTime})
+        OR (a.start_time &lt;= #{request.endTime} AND a.end_time >= #{request.endTime}  ))
+        GROUP BY
+        a.id
+    </select>
 
 
     <insert id="insertCoreEvaluateTask" parameterType="com.xunmei.core.evaluate.domain.CoreEvaluateTask">