Kaynağa Gözat

评价任务和sql

luowei 2 yıl önce
ebeveyn
işleme
e4e63d4693
31 değiştirilmiş dosya ile 1171 ekleme ve 78 silme
  1. 61 4
      project_data/sql/0.0.2/soc/soc.sql
  2. 3 0
      soc-api/soc-api-system/src/main/java/com/xunmei/system/api/RemoteRoleService.java
  3. 5 0
      soc-api/soc-api-system/src/main/java/com/xunmei/system/api/factory/RemoteRoleFallbackFactory.java
  4. 3 1
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/access/controller/TMonitoringRetrievalPlanController.java
  5. 22 12
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/controller/CoreEvaluatePlanController.java
  6. 85 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/controller/CoreEvaluateTaskController.java
  7. 2 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/domain/CoreEvaluatePlan.java
  8. 125 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/domain/CoreEvaluateTask.java
  9. 36 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/domain/CoreEvaluateTaskContent.java
  10. 2 1
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/dto/CoreEvaluatePlanDTO.java
  11. 16 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/dto/EvaluateTaskContentDTO.java
  12. 32 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/dto/EvaluateTaskDTO.java
  13. 2 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/mapper/CoreEvaluateContentMapper.java
  14. 2 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/mapper/CoreEvaluatePlanContentMapper.java
  15. 0 2
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/mapper/CoreEvaluatePlanMapper.java
  16. 17 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/mapper/CoreEvaluateTaskContentMapper.java
  17. 71 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/mapper/CoreEvaluateTaskMapper.java
  18. 3 1
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/service/ICoreEvaluatePlanService.java
  19. 77 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/service/ICoreEvaluateTaskService.java
  20. 80 40
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/service/impl/CoreEvaluatePlanServiceImpl.java
  21. 231 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/service/impl/CoreEvaluateTaskServiceImpl.java
  22. 3 1
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/vo/CoreEvaluatePlanListVO.java
  23. 7 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/vo/CoreEvaluatePlanVO.java
  24. 16 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/vo/CoreEvaluateTaskVO.java
  25. 2 2
      soc-modules/soc-modules-core/src/main/resources/bootstrap.yml
  26. 1 1
      soc-modules/soc-modules-core/src/main/resources/mapper/evaluate/CoreEvaluateContentMapper.xml
  27. 20 12
      soc-modules/soc-modules-core/src/main/resources/mapper/evaluate/CoreEvaluatePlanMapper.xml
  28. 16 0
      soc-modules/soc-modules-core/src/main/resources/mapper/evaluate/CoreEvaluateTaskContentMapper.xml
  29. 222 0
      soc-modules/soc-modules-core/src/main/resources/mapper/evaluate/CoreEvaluateTaskMapper.xml
  30. 8 0
      soc-modules/soc-modules-system/src/main/java/com/xunmei/system/controller/SysRoleController.java
  31. 1 1
      soc-modules/soc-modules-system/src/main/java/com/xunmei/system/service/impl/SysDeviceServiceImpl.java

+ 61 - 4
project_data/sql/0.0.2/soc/soc.sql

@@ -7,11 +7,15 @@ DROP TABLE
 CREATE TABLE `core_evaluate_plan` (
                                       `id` BIGINT NOT NULL,
                                       `org_id` BIGINT DEFAULT NULL COMMENT '机构id',
-                                      `status` VARCHAR ( 2 ) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '状态',
-                                      `org_path` VARCHAR ( 255 ) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '机构路径',
+
+                                      `build_task_now` VARCHAR ( 1 ) CHARACTER
+                                          SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 0 COMMENT '是否立即生效',
+                                      `status` VARCHAR ( 2 ) CHARACTER
+                                          SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 0 COMMENT '状态',
                                       `is_distribute` VARCHAR ( 2 ) CHARACTER
                                           SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 0 COMMENT '是否下发0未1已',
                                       `org_name` VARCHAR ( 255 ) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '机构名称',
+                                      `org_path` VARCHAR ( 255 ) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '机构路径',
                                       `org_type` VARCHAR ( 2 ) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '机构类型',
                                       `evaluate_name` VARCHAR ( 255 ) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '外包评价名称',
                                       `evaluate_cycle` VARCHAR ( 2 ) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '周期',
@@ -107,6 +111,50 @@ CREATE TABLE `core_evaluate_plan_content` (
 ) ENGINE = INNODB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '外包评价计划和内容绑定';
 
 DROP TABLE
+    IF
+    EXISTS `core_evaluate_task`;
+CREATE TABLE `core_evaluate_task` (
+                                      `id` BIGINT NOT NULL,
+                                      `plan_id` BIGINT DEFAULT NULL COMMENT '评价计划id',
+                                      `org_id` BIGINT DEFAULT NULL COMMENT '机构id',
+                                      `status` VARCHAR ( 2 ) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '状态0待1中2完成',
+                                      `org_name` VARCHAR ( 255 ) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '机构名称',
+                                      `evaluate_name` VARCHAR ( 255 ) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '外包评价名称',
+                                      `role_name` VARCHAR ( 255 ) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '角色',
+                                      `create_time` DATETIME NULL DEFAULT NULL COMMENT '创建时间',
+                                      `update_time` DATETIME NULL DEFAULT NULL COMMENT '修改时间',
+                                      `is_deleted` VARCHAR ( 1 ) CHARACTER
+                                          SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 0 COMMENT '是否删除',
+                                      `start_time` DATETIME NULL DEFAULT NULL COMMENT '开始时间',
+                                      `end_time` DATETIME NULL DEFAULT NULL COMMENT '结束时间',
+                                      `complete_time` DATETIME NULL DEFAULT NULL COMMENT '完成时间',
+                                      `create_by` VARCHAR ( 255 ) CHARACTER
+                                          SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
+                                      `update_by` VARCHAR ( 32 ) CHARACTER
+                                          SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
+                                      `evaluate_by` VARCHAR ( 32 ) CHARACTER
+                                          SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
+                                      `evaluate_cycle` VARCHAR ( 2 ) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '周期',
+                                      `evaluate_org` VARCHAR ( 32 ) CHARACTER
+                                          SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
+                                      PRIMARY KEY ( `id` )
+) ENGINE = INNODB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '外包评价任务';
+
+DROP TABLE
+    IF
+    EXISTS `core_evaluate_task_content`;
+CREATE TABLE `core_evaluate_task_content` (
+                                              `id` BIGINT NOT NULL,
+                                              `task_id` BIGINT DEFAULT NULL COMMENT '评价任务id',
+                                              `u_id` VARCHAR ( 255 ) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '前端需要的',
+                                              `code` BIGINT DEFAULT NULL COMMENT '编号',
+                                              `content_type` VARCHAR ( 2 ) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '评价类型',
+                                              `content` VARCHAR ( 1000 ) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '内容',
+                                              `score` VARCHAR ( 1000 ) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '评价评分',
+                                              PRIMARY KEY ( `id` )
+) ENGINE = INNODB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '外包评价任务绑定内容';
+
+DROP TABLE
 IF
 	EXISTS `sync_fjnx_org_move`;
 CREATE TABLE `sync_fjnx_org_move` (
@@ -1553,7 +1601,7 @@ INSERT INTO `sys_dict_type`( `dict_name`, `dict_type`, `status`, `create_by`, `c
 DELETE from `sys_dict_type` WHERE dict_type='question_confirm_status' or dict_type='question_reform_status';
 INSERT INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES ( '问题确认状态', 'question_confirm_status', '0', '超级管理员', '2023-09-13 18:14:59', '', NULL, NULL);
 INSERT INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES ( '问题整改状态', 'question_reform_status', '0', '超级管理员', '2023-09-13 18:15:18', '', NULL, NULL);
-delete  from sys_dict_type WHERE dict_type in ('send_time_type' ,'message_type' ,'send_status' ,'evaluate_cycle','evaluate_type');
+delete  from sys_dict_type WHERE dict_type in ('send_time_type' ,'message_type' ,'send_status' ,'evaluate_cycle','evaluate_type','evaluate_task_status');
 INSERT INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`)
 VALUES ( '发送时间类型', 'send_time_type', '0', '超级管理员', '2023-09-13 18:14:59', '', NULL, NULL);
 INSERT INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`)
@@ -1564,6 +1612,8 @@ INSERT INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `c
 VALUES ( '评价周期', 'evaluate_cycle', '0', '超级管理员', '2023-09-13 18:14:59', '', NULL, NULL);
 INSERT INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`)
 VALUES ( '评价类型', 'evaluate_type', '0', '超级管理员', '2023-09-13 18:14:59', '', NULL, NULL);
+INSERT INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`)
+VALUES ( '评价任务状态', 'evaluate_task_status', '0', '超级管理员', '2023-09-13 18:14:59', '', NULL, NULL);
 
 -- 安全责任书类型字典
 DELETE from `sys_dict_data` WHERE dict_type='safety_book_type';
@@ -1580,7 +1630,14 @@ INSERT INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type
 VALUES ( 1, '每季度', '1', 'evaluate_cycle', NULL, 'default', 'N', '0', '超级管理员', '2023-09-13 18:15:44', '', NULL, NULL);
 INSERT INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`)
 VALUES ( 2, '每年', '2', 'evaluate_cycle', NULL, 'default', 'N', '0', '超级管理员', '2023-09-13 18:15:44', '', NULL, NULL);
-
+INSERT INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`)
+VALUES ( 0, '待完成', '0', 'evaluate_task_status', NULL, 'default', 'N', '0', '超级管理员', '2023-09-13 18:15:44', '', NULL, NULL);
+INSERT INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`)
+VALUES ( 1, '进行中', '1', 'evaluate_task_status', NULL, 'default', 'N', '0', '超级管理员', '2023-09-13 18:15:44', '', NULL, NULL);
+INSERT INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`)
+VALUES ( 2, '已完成', '2', 'evaluate_task_status', NULL, 'default', 'N', '0', '超级管理员', '2023-09-13 18:15:44', '', NULL, NULL);
+INSERT INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`)
+VALUES ( 3, '已超期', '3', 'evaluate_task_status', NULL, 'default', 'N', '0', '超级管理员', '2023-09-13 18:15:44', '', NULL, NULL);
 INSERT INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`)
 VALUES ( 1, '文本输入', '1', 'evaluate_type', NULL, 'default', 'N', '0', '超级管理员', '2023-09-13 18:15:44', '', NULL, NULL);
 INSERT INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`)

+ 3 - 0
soc-api/soc-api-system/src/main/java/com/xunmei/system/api/RemoteRoleService.java

@@ -24,6 +24,9 @@ public interface RemoteRoleService {
     @GetMapping("/role/getRoleById")
     SysRole getRoleById(@RequestParam("id") Long id, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
 
+    @GetMapping("/role/getRoleByUserId")
+    List<SysRole> getRoleByUserId(@RequestParam("userId") Long userId, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
+
     @GetMapping("/role/getRoleByName")
     SysRole getRoleByName(@RequestParam("name") String name, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
 

+ 5 - 0
soc-api/soc-api-system/src/main/java/com/xunmei/system/api/factory/RemoteRoleFallbackFactory.java

@@ -33,6 +33,11 @@ public class RemoteRoleFallbackFactory implements FallbackFactory<RemoteRoleServ
             }
 
             @Override
+            public List<SysRole> getRoleByUserId(Long userId, String source) {
+                return null;
+            }
+
+            @Override
             public String selectRoleNameByUserId(Long userId, String source) {
                 return null;
             }

+ 3 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/access/controller/TMonitoringRetrievalPlanController.java

@@ -17,6 +17,8 @@ import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import java.util.Set;
+
 /**
  * 监控调阅计划Controller
  *
@@ -57,7 +59,7 @@ public class TMonitoringRetrievalPlanController extends BaseController {
             } else if (s.equals("省联社安全保卫管理人员") || s.equals("超级管理员") || s.equals("行社安全保卫管理人员")) {
                 admin = true;
             }
-        }else if (SecurityUtils.getUserId()==1){
+        } else if (SecurityUtils.getUserId() == 1) {
             admin = true;
         }
         ajax.put("check", admin);

+ 22 - 12
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/controller/CoreEvaluatePlanController.java

@@ -22,25 +22,24 @@ import org.springframework.web.bind.annotation.*;
  * @author xunmei
  * @date 2023-10-10
  */
-@Api(tags = {"CoreEvaluatePlan" })
+@Api(tags = {"CoreEvaluatePlan"})
 @RestController
 @RequestMapping("/evaluatePlan")
 public class CoreEvaluatePlanController extends BaseController {
     @Autowired
     private ICoreEvaluatePlanService coreEvaluatePlanService;
 
-/**
- * 查询外包评价计划列表
- */
-@ApiOperation(value = "查询CoreEvaluatePlan列表")
-@RequiresPermissions("core:evaluatePlan:list")
-@GetMapping("/list")
+    /**
+     * 查询外包评价计划列表
+     */
+    @ApiOperation(value = "查询CoreEvaluatePlan列表")
+    @RequiresPermissions("core:evaluatePlan:list")
+    @GetMapping("/list")
     public TableDataInfo list(EvaluateQueryDTO coreEvaluatePlan) {
-        return coreEvaluatePlanService. selectPage(coreEvaluatePlan);
+        return coreEvaluatePlanService.selectPage(coreEvaluatePlan);
     }
 
 
-
     /**
      * 获取外包评价计划详细信息
      */
@@ -50,18 +49,20 @@ public class CoreEvaluatePlanController extends BaseController {
     public AjaxResult getInfo(@PathVariable("id") Long id) {
         return success(coreEvaluatePlanService.selectCoreEvaluatePlanById(id));
     }
+
     @ApiOperation(value = "修改状态")
     @RequiresPermissions("core:evaluatePlan:edit")
     @PostMapping(value = "/updateStatus")
     public AjaxResult updateStatus(@RequestBody CoreEvaluatePlan coreEvaluatePlan) {
         return success(coreEvaluatePlanService.updateStatus(coreEvaluatePlan));
     }
+
     /**
      * 新增外包评价计划
      */
     @ApiOperation(value = "新增CoreEvaluatePlan")
     @RequiresPermissions("core:evaluatePlan:add")
-    @Log(title = "外包评价计划" , businessType = BusinessType.INSERT)
+    @Log(title = "外包评价计划", businessType = BusinessType.INSERT)
     @PostMapping
     public AjaxResult add(@RequestBody CoreEvaluatePlanDTO coreEvaluatePlan) {
         return toAjax(coreEvaluatePlanService.insertCoreEvaluatePlan(coreEvaluatePlan));
@@ -72,19 +73,28 @@ public class CoreEvaluatePlanController extends BaseController {
      */
     @ApiOperation(value = "修改CoreEvaluatePlan")
     @RequiresPermissions("core:evaluatePlan:edit")
-    @Log(title = "外包评价计划" , businessType = BusinessType.UPDATE)
+    @Log(title = "外包评价计划", businessType = BusinessType.UPDATE)
     @PutMapping
     public AjaxResult edit(@RequestBody CoreEvaluatePlanDTO coreEvaluatePlan) {
         return toAjax(coreEvaluatePlanService.updateCoreEvaluatePlan(coreEvaluatePlan));
     }
 
+    /**
+     * 下发
+     */
+    @ApiOperation(value = "下发")
+    @RequiresPermissions("core:evaluatePlan:add")
+    @GetMapping(value = "/distribute/{id}")
+    public AjaxResult distribute(@PathVariable(value = "id", required = false) Long id) {
+        return toAjax(coreEvaluatePlanService.distribute(id));
+    }
 
     /**
      * 删除外包评价计划
      */
     @ApiOperation(value = "删除CoreEvaluatePlan")
     @RequiresPermissions("core:evaluatePlan:remove")
-    @Log(title = "外包评价计划" , businessType = BusinessType.DELETE)
+    @Log(title = "外包评价计划", businessType = BusinessType.DELETE)
     @DeleteMapping("/{ids}")
     public AjaxResult remove(@PathVariable Long[] ids) {
         return toAjax(coreEvaluatePlanService.deleteCoreEvaluatePlanByIds(ids));

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

@@ -0,0 +1,85 @@
+package com.xunmei.core.evaluate.controller;
+
+
+import com.xunmei.common.core.web.controller.BaseController;
+import com.xunmei.common.core.web.domain.AjaxResult;
+import com.xunmei.common.core.web.page.TableDataInfo;
+import com.xunmei.common.log.annotation.Log;
+import com.xunmei.common.log.enums.BusinessType;
+import com.xunmei.common.security.annotation.RequiresPermissions;
+import com.xunmei.core.evaluate.domain.CoreEvaluateTask;
+import com.xunmei.core.evaluate.dto.EvaluateTaskContentDTO;
+import com.xunmei.core.evaluate.dto.EvaluateTaskDTO;
+import com.xunmei.core.evaluate.service.ICoreEvaluateTaskService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * 外包评价任务Controller
+ *
+ * @author xunmei
+ * @date 2023-10-11
+ */
+@Api(tags = {"CoreEvaluateTask"})
+@RestController
+@RequestMapping("/task")
+public class CoreEvaluateTaskController extends BaseController {
+    @Autowired
+    private ICoreEvaluateTaskService coreEvaluateTaskService;
+
+    /**
+     * 查询外包评价任务列表
+     */
+    @ApiOperation(value = "查询CoreEvaluateTask列表")
+    @RequiresPermissions("system:task:list")
+    @GetMapping("/list")
+    public TableDataInfo<CoreEvaluateTask> list(EvaluateTaskDTO coreEvaluateTask) {
+        return coreEvaluateTaskService.selectPage(coreEvaluateTask);
+    }
+
+
+    /**
+     * 获取外包评价任务详细信息
+     */
+    @ApiOperation(value = "获取CoreEvaluateTask详细信息")
+    @RequiresPermissions("system:task:query")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id) {
+        return success(coreEvaluateTaskService.selectCoreEvaluateTaskById(id));
+    }
+
+    /**
+     * 新增外包评价任务
+     */
+    @ApiOperation(value = "新增CoreEvaluateTask")
+    @RequiresPermissions("system:task:add")
+    @Log(title = "外包评价任务", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody CoreEvaluateTask coreEvaluateTask) {
+        return toAjax(coreEvaluateTaskService.insertCoreEvaluateTask(coreEvaluateTask));
+    }
+
+    /**
+     * 修改外包评价任务
+     */
+    @ApiOperation(value = "修改CoreEvaluateTask")
+    @RequiresPermissions("system:task:edit")
+    @Log(title = "外包评价任务", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody EvaluateTaskContentDTO evaluateTaskContentDTO) {
+        return toAjax(coreEvaluateTaskService.updateCoreEvaluateTask(evaluateTaskContentDTO));
+    }
+
+    /**
+     * 删除外包评价任务
+     */
+    @ApiOperation(value = "删除CoreEvaluateTask")
+    @RequiresPermissions("system:task:remove")
+    @Log(title = "外包评价任务", businessType = BusinessType.DELETE)
+    @DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids) {
+        return toAjax(coreEvaluateTaskService.deleteCoreEvaluateTaskByIds(ids));
+    }
+}

+ 2 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/domain/CoreEvaluatePlan.java

@@ -30,6 +30,8 @@ public class CoreEvaluatePlan extends BaseEntity {
      * $column.columnComment
      */
     private Long id;
+    @ApiModelProperty(value = "是否立即生效")
+    private Boolean buildTaskNow;
 
     /**
      * 机构id

+ 125 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/domain/CoreEvaluateTask.java

@@ -0,0 +1,125 @@
+package com.xunmei.core.evaluate.domain;
+
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.xunmei.common.core.web.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.util.Date;
+
+/**
+ * 外包评价任务对象 core_evaluate_task
+ *
+ * @author xunmei
+ * @date 2023-10-11
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("core_evaluate_task")
+@ApiModel(value = "CoreEvaluateTask对象" , description = "外包评价任务")
+public class CoreEvaluateTask extends BaseEntity
+        {
+private static final long serialVersionUID=1L;
+
+    /** $column.columnComment */
+    private Long id;
+
+    /** 评价计划id */
+            @ApiModelProperty(value = "评价计划id")
+    private Long planId;
+
+    /** 机构id */
+            @ApiModelProperty(value = "机构id")
+    private Long orgId;
+            @ApiModelProperty(value = "评价人")
+private String evaluateBy;
+    /** 状态0待1中2完成 */
+            @ApiModelProperty(value = "状态0待1中2完成")
+    private String status;
+
+    /** 机构名称 */
+            @ApiModelProperty(value = "机构名称")
+    private String orgName;
+
+    /** 外包评价名称 */
+            @ApiModelProperty(value = "外包评价名称")
+    private String evaluateName;
+
+    /** 是否删除 */
+            @ApiModelProperty(value = "是否删除")
+    private String isDeleted;
+
+    /** 开始时间 */
+            @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+            @ApiModelProperty(value = "开始时间")
+    private Date startTime;
+
+    /** 结束时间 */
+            @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+            @ApiModelProperty(value = "结束时间")
+    private Date endTime;
+
+    /** 完成时间 */
+            @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+            @ApiModelProperty(value = "完成时间")
+    private Date completeTime;
+            @ApiModelProperty(value = "周期")
+          private String evaluateCycle;
+            @ApiModelProperty(value = "周期")
+            private String evaluateOrg;
+@Override
+public String toString(){
+        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
+
+
+                .append("id" ,getId())
+
+
+                .append("planId" ,getPlanId())
+
+
+                .append("orgId" ,getOrgId())
+
+
+                .append("status" ,getStatus())
+
+
+                .append("orgName" ,getOrgName())
+
+
+                .append("evaluateName" ,getEvaluateName())
+
+
+                .append("createTime" ,getCreateTime())
+
+
+                .append("updateTime" ,getUpdateTime())
+
+
+                .append("isDeleted" ,getIsDeleted())
+
+
+                .append("startTime" ,getStartTime())
+
+
+                .append("endTime" ,getEndTime())
+
+
+                .append("completeTime" ,getCompleteTime())
+
+
+                .append("createBy" ,getCreateBy())
+
+
+                .append("updateBy" ,getUpdateBy())
+        .toString();
+        }
+        }

+ 36 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/domain/CoreEvaluateTaskContent.java

@@ -0,0 +1,36 @@
+package com.xunmei.core.evaluate.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * @author :LuoWei
+ * @date : 2023/10/11
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("core_evaluate_task_content")
+@ApiModel(value = "CoreEvaluateTaskContent对象", description = "外包评价任务绑定内容")
+public class CoreEvaluateTaskContent {
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(value = "ID")
+    private Long id;
+    @ApiModelProperty(value = "评价任务id")
+    private Long taskId;
+    @ApiModelProperty(value = "前端id")
+    private String uId;
+    @ApiModelProperty(value = "编号")
+    private Long code;
+    @ApiModelProperty(value = "评价类型")
+    private String contentType;
+    @ApiModelProperty(value = "内容")
+    private String content;
+    @ApiModelProperty(value = "评价评分")
+    private String score;
+}

+ 2 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/dto/CoreEvaluatePlanDTO.java

@@ -18,7 +18,8 @@ public class CoreEvaluatePlanDTO {
      */
     @ApiModelProperty(value = "机构类型")
     private String orgType;
-
+    @ApiModelProperty(value = "是否立即生效")
+    private Boolean buildTaskNow;
     /**
      * 外包评价名称
      */

+ 16 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/dto/EvaluateTaskContentDTO.java

@@ -0,0 +1,16 @@
+package com.xunmei.core.evaluate.dto;
+
+import com.xunmei.core.evaluate.domain.CoreEvaluateTaskContent;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @author :LuoWei
+ * @date : 2023/10/12
+ */
+@Data
+public class EvaluateTaskContentDTO {
+    private Long id;
+    List<CoreEvaluateTaskContent>coreEvaluateTaskContentList;
+}

+ 32 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/dto/EvaluateTaskDTO.java

@@ -0,0 +1,32 @@
+package com.xunmei.core.evaluate.dto;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.xunmei.common.core.web.domain.BaseEntity;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author :LuoWei
+ * @date : 2023/10/11
+ */
+@Data
+public class EvaluateTaskDTO extends BaseEntity {
+    @ApiModelProperty(value = "机构id")
+    private Long orgId;
+    @ApiModelProperty(value = "机构路径")
+    private String orgPath;
+    @ApiModelProperty(value = "外包评价名称")
+    private String evaluateName;
+    @ApiModelProperty(value = "状态0待1中2完成")
+    private String status;
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    @ApiModelProperty(value = "开始时间")
+    private Date startTime;
+
+    /** 结束时间 */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    @ApiModelProperty(value = "结束时间")
+    private Date endTime;
+}

+ 2 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/mapper/CoreEvaluateContentMapper.java

@@ -3,6 +3,7 @@ package com.xunmei.core.evaluate.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.xunmei.core.evaluate.domain.CoreEvaluateContent;
 import com.xunmei.core.evaluate.domain.CoreEvaluatePlanContent;
+import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -12,6 +13,7 @@ import java.util.List;
  * @author :LuoWei
  * @date : 2023/10/10
  */
+@Mapper
 public interface CoreEvaluateContentMapper extends BaseMapper<CoreEvaluateContent> {
     List<CoreEvaluateContent> getByEvaluateId(@Param("evaluateId") Long evaluateId);
 }

+ 2 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/mapper/CoreEvaluatePlanContentMapper.java

@@ -7,6 +7,7 @@ import com.xunmei.common.core.domain.retrieval.vo.CoreMonitoringRetrievalTaskVo;
 import com.xunmei.core.evaluate.domain.CoreEvaluatePlanContent;
 import com.xunmei.core.evaluate.dto.EvaluateQueryDTO;
 import com.xunmei.core.evaluate.vo.CoreEvaluatePlanListVO;
+import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -15,6 +16,7 @@ import java.util.List;
  * @author :LuoWei
  * @date : 2023/10/10
  */
+@Mapper
 public interface CoreEvaluatePlanContentMapper extends BaseMapper<CoreEvaluatePlanContent> {
     int deleteByEvaluateIdInt(@Param("evaluateId") Long evaluateId);
 

+ 0 - 2
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/mapper/CoreEvaluatePlanMapper.java

@@ -68,8 +68,6 @@ public interface CoreEvaluatePlanMapper extends BaseMapper<CoreEvaluatePlan> {
      */
     int deleteCoreEvaluatePlanByIds(Long[] ids);
 
-   // Page<CoreEvaluatePlanListVO> selectByPage(Page<CoreEvaluatePlan> page, @Param("request") EvaluateQueryDTO request);
-
     Page<CoreEvaluatePlanListVO> selectPageList(@Param("page") Page<CoreEvaluatePlanListVO> page, @Param("request") EvaluateQueryDTO request);
 
 }

+ 17 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/mapper/CoreEvaluateTaskContentMapper.java

@@ -0,0 +1,17 @@
+package com.xunmei.core.evaluate.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+import com.xunmei.core.evaluate.domain.CoreEvaluateTaskContent;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * @author :LuoWei
+ * @date : 2023/10/12
+ */
+@Mapper
+public interface CoreEvaluateTaskContentMapper extends BaseMapper<CoreEvaluateTaskContent> {
+  List<CoreEvaluateTaskContent>  selectByTaskId(Long taskId);
+}

+ 71 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/mapper/CoreEvaluateTaskMapper.java

@@ -0,0 +1,71 @@
+package com.xunmei.core.evaluate.mapper;
+
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.xunmei.core.evaluate.domain.CoreEvaluateTask;
+import com.xunmei.core.evaluate.dto.EvaluateQueryDTO;
+import com.xunmei.core.evaluate.dto.EvaluateTaskDTO;
+import com.xunmei.core.evaluate.vo.CoreEvaluatePlanListVO;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 外包评价任务Mapper接口
+ *
+ * @author xunmei
+ * @date 2023-10-11
+ */
+public interface CoreEvaluateTaskMapper extends BaseMapper<CoreEvaluateTask> {
+    /**
+     * 查询外包评价任务
+     *
+     * @param id 外包评价任务主键
+     * @return 外包评价任务
+     */
+    CoreEvaluateTask selectCoreEvaluateTaskById(Long id);
+
+    /**
+     * 查询外包评价任务列表
+     *
+     * @param coreEvaluateTask 外包评价任务
+     * @return 外包评价任务集合
+     */
+    List<CoreEvaluateTask> selectCoreEvaluateTaskList(CoreEvaluateTask coreEvaluateTask);
+
+    /**
+     * 新增外包评价任务
+     *
+     * @param coreEvaluateTask 外包评价任务
+     * @return 结果
+     */
+    int insertCoreEvaluateTask(CoreEvaluateTask coreEvaluateTask);
+
+    /**
+     * 修改外包评价任务
+     *
+     * @param coreEvaluateTask 外包评价任务
+     * @return 结果
+     */
+    int updateCoreEvaluateTask(CoreEvaluateTask coreEvaluateTask);
+
+    /**
+     * 删除外包评价任务
+     *
+     * @param id 外包评价任务主键
+     * @return 结果
+     */
+    int deleteCoreEvaluateTaskById(Long id);
+
+    /**
+     * 批量删除外包评价任务
+     *
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    int deleteCoreEvaluateTaskByIds(Long[] ids);
+
+    Page<CoreEvaluateTask> selectPageList(@Param("page") Page<CoreEvaluateTask> page, @Param("request") EvaluateTaskDTO request);
+
+}

+ 3 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/service/ICoreEvaluatePlanService.java

@@ -52,6 +52,8 @@ public interface ICoreEvaluatePlanService extends IService<CoreEvaluatePlan> {
      */
     int updateCoreEvaluatePlan(CoreEvaluatePlanDTO coreEvaluatePlanDTO);
 
+    int distribute(Long id);
+
     /**
      * 批量删除外包评价计划
      *
@@ -74,5 +76,5 @@ public interface ICoreEvaluatePlanService extends IService<CoreEvaluatePlan> {
      * @param coreEvaluatePlan 查询条件对象
      * @return Page
      */
-     TableDataInfo<CoreEvaluatePlanListVO> selectPage(EvaluateQueryDTO evaluateQueryDTO);
+    TableDataInfo<CoreEvaluatePlanListVO> selectPage(EvaluateQueryDTO evaluateQueryDTO);
 }

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

@@ -0,0 +1,77 @@
+package com.xunmei.core.evaluate.service;
+
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.xunmei.common.core.web.page.TableDataInfo;
+import com.xunmei.core.evaluate.domain.CoreEvaluateTask;
+import com.xunmei.core.evaluate.dto.EvaluateTaskContentDTO;
+import com.xunmei.core.evaluate.dto.EvaluateTaskDTO;
+import com.xunmei.core.evaluate.vo.CoreEvaluateTaskVO;
+
+import java.util.List;
+
+/**
+ * 外包评价任务Service接口
+ *
+ * @author xunmei
+ * @date 2023-10-11
+ */
+public interface ICoreEvaluateTaskService extends IService<CoreEvaluateTask> {
+    /**
+     * 查询外包评价任务
+     *
+     * @param id 外包评价任务主键
+     * @return 外包评价任务
+     */
+    CoreEvaluateTaskVO selectCoreEvaluateTaskById(Long id);
+
+    /**
+     * 查询外包评价任务列表
+     *
+     * @param coreEvaluateTask 外包评价任务
+     * @return 外包评价任务集合
+     */
+    List<CoreEvaluateTask> selectCoreEvaluateTaskList(CoreEvaluateTask coreEvaluateTask);
+
+    /**
+     * 新增外包评价任务
+     *
+     * @param coreEvaluateTask 外包评价任务
+     * @return 结果
+     */
+    int insertCoreEvaluateTask(CoreEvaluateTask coreEvaluateTask);
+
+    /**
+     * 修改外包评价任务
+     *
+     * @param coreEvaluateTask 外包评价任务
+     * @return 结果
+     */
+    int updateCoreEvaluateTask(EvaluateTaskContentDTO evaluateTaskContentDTO);
+
+    /**
+     * 批量删除外包评价任务
+     *
+     * @param ids 需要删除的外包评价任务主键集合
+     * @return 结果
+     */
+    int deleteCoreEvaluateTaskByIds(Long[] ids);
+
+    int deleteCoreEvaluateTaskByEvaluatePlanId(Long evaluatePlanId,List status);
+
+    /**
+     * 删除外包评价任务信息
+     *
+     * @param id 外包评价任务主键
+     * @return 结果
+     */
+    int deleteCoreEvaluateTaskById(Long id);
+
+    /**
+     * 查询外包评价任务分页数据
+     *
+     * @param evaluateTaskDTO 查询条件对象
+     * @return Page
+     */
+    TableDataInfo<CoreEvaluateTask> selectPage(EvaluateTaskDTO evaluateTaskDTO);
+}

+ 80 - 40
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/service/impl/CoreEvaluatePlanServiceImpl.java

@@ -10,10 +10,7 @@ import com.xunmei.common.core.constant.SecurityConstants;
 import com.xunmei.common.core.utils.DateUtils;
 import com.xunmei.common.core.web.page.TableDataInfo;
 import com.xunmei.common.security.utils.SecurityUtils;
-import com.xunmei.core.evaluate.domain.CoreEvaluateContent;
-import com.xunmei.core.evaluate.domain.CoreEvaluatePlan;
-import com.xunmei.core.evaluate.domain.CoreEvaluatePlanContent;
-import com.xunmei.core.evaluate.domain.CoreEvaluateRole;
+import com.xunmei.core.evaluate.domain.*;
 import com.xunmei.core.evaluate.dto.CoreEvaluatePlanDTO;
 import com.xunmei.core.evaluate.dto.EvaluateQueryDTO;
 import com.xunmei.core.evaluate.mapper.CoreEvaluateContentMapper;
@@ -21,6 +18,7 @@ import com.xunmei.core.evaluate.mapper.CoreEvaluatePlanContentMapper;
 import com.xunmei.core.evaluate.mapper.CoreEvaluatePlanMapper;
 import com.xunmei.core.evaluate.mapper.CoreEvaluateRoleMapper;
 import com.xunmei.core.evaluate.service.ICoreEvaluatePlanService;
+import com.xunmei.core.evaluate.service.ICoreEvaluateTaskService;
 import com.xunmei.core.evaluate.vo.CoreEvaluatePlanListVO;
 import com.xunmei.core.evaluate.vo.CoreEvaluatePlanVO;
 import com.xunmei.system.api.RemoteOrgService;
@@ -33,7 +31,12 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.text.SimpleDateFormat;
+import java.time.LocalDate;
+import java.time.ZoneId;
+import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -58,38 +61,8 @@ public class CoreEvaluatePlanServiceImpl extends ServiceImpl<CoreEvaluatePlanMap
     private CoreEvaluatePlanContentMapper coreEvaluatePlanContentMapper;
     @Resource
     private RemoteOrgService orgService;
-/*    @Override
-    public TableDataInfo<CoreEvaluatePlan> selectPage(CoreEvaluatePlan coreEvaluatePlan) {
-        //未删除
-        coreEvaluatePlan.setDeleted(0L);
-        Page<CoreEvaluatePlan> page;
-        //分页
-        if (coreEvaluatePlan.getPageNum()!=null&&coreEvaluatePlan.getPageSize()!=null)
-        {
-            page = new Page<>(coreEvaluatePlan.getPageNum(), coreEvaluatePlan.getPageSize());
-        }else{
-            page = new Page<>();
-        }
-        //查询条件
-        QueryWrapper<CoreEvaluatePlan> query = new QueryWrapper<>(coreEvaluatePlan);
-        //下穿
-        if (coreEvaluatePlan.getCheckSub()){
-            List<Long> ids = orgService.selectCheckSubOrgIdList(coreEvaluatePlan.getOrgId());
-            //清空前端传递的org_id
-            coreEvaluatePlan.setOrgId(null);
-            //添加in条件
-            query.in("org_id",ids);
-        }
-        //时间范围查询
-        if (coreEvaluatePlan.getParams().get("beginTime")!=null&&coreEvaluatePlan.getParams().get("endTime")!=null){
-            query.between("create_time", coreEvaluatePlan.getParams().get("beginTime"), coreEvaluatePlan.getParams().get("endTime"));
-        }
-        //获取数据
-        page = coreEvaluatePlanMapper.selectPage(page, query);
-        //抓换为TableDataInfo适配前端
-        return TableDataInfo.build(page);
-    }*/
-
+    @Autowired
+    private ICoreEvaluateTaskService coreEvaluateTaskService;
 
     /**
      * 查询外包评价计划
@@ -137,14 +110,13 @@ public class CoreEvaluatePlanServiceImpl extends ServiceImpl<CoreEvaluatePlanMap
     public int insertCoreEvaluatePlan(CoreEvaluatePlanDTO coreEvaluatePlanDTO) {
         CoreEvaluatePlan coreEvaluatePlan = new CoreEvaluatePlan();
         BeanUtils.copyProperties(coreEvaluatePlanDTO, coreEvaluatePlan);
-        coreEvaluatePlan.setStatus("0");
         coreEvaluatePlan.setCreateTime(DateUtils.getNowDate());
         SysUser sysUser = remoteUserService.getUserById(SecurityUtils.getUserId(), SecurityConstants.INNER);
         SysOrg sysOrg = remoteOrgService.selectSysOrgById(sysUser.getOrgId(), SecurityConstants.INNER);
         coreEvaluatePlan.setCreateBy(SecurityUtils.getUsername());
         coreEvaluatePlan.setOrgId(sysUser.getOrgId());
         coreEvaluatePlan.setOrgName(sysOrg.getShortName());
-        coreEvaluatePlan.setIsDeleted("0");
+        coreEvaluatePlan.setOrgPath(sysOrg.getPath());
         long planId = IdWorker.getId();
         coreEvaluatePlan.setId(planId);
         int insert = 0;
@@ -167,6 +139,9 @@ public class CoreEvaluatePlanServiceImpl extends ServiceImpl<CoreEvaluatePlanMap
             coreEvaluatePlanContent.setEvaluateId(planId);
             coreEvaluatePlanContentMapper.insert(coreEvaluatePlanContent);
         });
+        if (coreEvaluatePlanDTO.getBuildTaskNow()){
+            this.distribute(planId);
+        }
         return insert;
     }
 
@@ -178,12 +153,16 @@ public class CoreEvaluatePlanServiceImpl extends ServiceImpl<CoreEvaluatePlanMap
      */
     @Override
     public int updateCoreEvaluatePlan(CoreEvaluatePlanDTO coreEvaluatePlanDTO) {
-        //todo
         //删除未完成任务
+        List status = new ArrayList();
+        status.add("0");
+        status.add("1");
+        coreEvaluateTaskService.deleteCoreEvaluateTaskByEvaluatePlanId(coreEvaluatePlanDTO.getId(), status);
         CoreEvaluatePlan coreEvaluatePlan = new CoreEvaluatePlan();
         BeanUtils.copyProperties(coreEvaluatePlanDTO, coreEvaluatePlan);
         coreEvaluatePlan.setUpdateTime(DateUtils.getNowDate());
         coreEvaluatePlan.setUpdateBy(SecurityUtils.getUsername());
+        coreEvaluatePlan.setIsDistribute("0");
         //主体
         int i = coreEvaluatePlanMapper.updateById(coreEvaluatePlan);
         //角色
@@ -213,6 +192,63 @@ public class CoreEvaluatePlanServiceImpl extends ServiceImpl<CoreEvaluatePlanMap
         return i;
     }
 
+    @Override
+    public int distribute(Long id) {
+        CoreEvaluatePlanVO coreEvaluatePlanVO = this.selectCoreEvaluatePlanById(id);
+        SysOrg org = new SysOrg();
+        org.setType(Integer.valueOf(coreEvaluatePlanVO.getOrgType()));
+        org.setPath(coreEvaluatePlanVO.getOrgPath());
+        List<SysOrg> list = remoteOrgService.listByParentIdAndType(org, SecurityConstants.INNER);
+        int time;
+        switch (coreEvaluatePlanVO.getEvaluateCycle()) {
+            case "0":
+                time = 2;
+                break;
+            case "1":
+                time = 4;
+                break;
+            default:
+                time = 13;
+                break;
+        }
+        int i = 1;
+        LocalDate localDate = getTime(time);
+        String firstDay = DateUtils.parseDateToStr("yyyy-MM-dd 23:59:59", Date.from(localDate.atStartOfDay().atZone(ZoneId.systemDefault()).toInstant()));
+        SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        Date endTime = null;
+        try {
+            endTime = ft.parse(firstDay);
+        } catch (Exception e) {
+            e.getMessage();
+        }
+        for (SysOrg l : list) {
+            CoreEvaluateTask coreEvaluateTask = new CoreEvaluateTask();
+            coreEvaluateTask.setPlanId(id);
+            coreEvaluateTask.setOrgId(l.getId());
+            coreEvaluateTask.setStatus("0");
+            coreEvaluateTask.setOrgName(l.getShortName());
+            coreEvaluateTask.setEvaluateName(coreEvaluatePlanVO.getEvaluateName());
+            coreEvaluateTask.setCreateTime(DateUtils.getNowDate());
+            coreEvaluateTask.setCreateBy(coreEvaluatePlanVO.getCreateBy());
+            coreEvaluateTask.setStartTime(DateUtils.getNowDate());
+            coreEvaluateTask.setEndTime(endTime);
+            i = coreEvaluateTaskService.insertCoreEvaluateTask(coreEvaluateTask);
+            if (i < 1) {
+                return i;
+            }
+        }
+        CoreEvaluatePlan coreEvaluatePlan = baseMapper.selectById(id);
+        coreEvaluatePlan.setIsDistribute("1");
+        baseMapper.updateById(coreEvaluatePlan);
+        return i;
+    }
+    public LocalDate getTime(int time) {
+        LocalDate localDate = LocalDate.now();
+        LocalDate nextMonthFirstDay = localDate.plusMonths(time).withDayOfMonth(1);
+        LocalDate lastDayOfMonth = nextMonthFirstDay.minusDays(1);
+        return lastDayOfMonth;
+    }
+
     /**
      * 批量删除外包评价计划
      *
@@ -223,6 +259,10 @@ public class CoreEvaluatePlanServiceImpl extends ServiceImpl<CoreEvaluatePlanMap
     public int deleteCoreEvaluatePlanByIds(Long[] ids) {
         int delete = 1;
         for (int i = 0; i < ids.length; i++) {
+            List status = new ArrayList();
+            status.add("0");
+            status.add("1");
+            coreEvaluateTaskService.deleteCoreEvaluateTaskByEvaluatePlanId(ids[i], status);
             CoreEvaluatePlan coreEvaluatePlan1 = coreEvaluatePlanMapper.selectById(ids[i]);
             coreEvaluatePlan1.setIsDeleted("1");
             delete = coreEvaluatePlanMapper.updateById(coreEvaluatePlan1);
@@ -255,7 +295,7 @@ public class CoreEvaluatePlanServiceImpl extends ServiceImpl<CoreEvaluatePlanMap
         }
         //下穿
         if (evaluateQueryDTO.getCheckSub()) {
-            SysOrg sysOrg = RemoteCallHandlerExecutor.executeRemoteCall(() -> orgService.selectSysOrgById(evaluateQueryDTO.getOrgId(), SecurityConstants.INNER), ErrorMsgConstants.QUERY_ORG_DATA_ERROR);
+            SysOrg sysOrg = orgService.selectSysOrgById(evaluateQueryDTO.getOrgId(), SecurityConstants.INNER);
             evaluateQueryDTO.setOrgPath(sysOrg.getPath());
             evaluateQueryDTO.setOrgId(null);
         }

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

@@ -0,0 +1,231 @@
+package com.xunmei.core.evaluate.service.impl;
+
+
+import com.alibaba.nacos.shaded.org.checkerframework.checker.units.qual.C;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+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.utils.DateUtils;
+import com.xunmei.common.core.utils.StringUtils;
+import com.xunmei.common.core.web.page.TableDataInfo;
+import com.xunmei.common.security.utils.SecurityUtils;
+import com.xunmei.core.evaluate.domain.CoreEvaluateContent;
+import com.xunmei.core.evaluate.domain.CoreEvaluateTask;
+import com.xunmei.core.evaluate.domain.CoreEvaluateTaskContent;
+import com.xunmei.core.evaluate.dto.EvaluateTaskContentDTO;
+import com.xunmei.core.evaluate.dto.EvaluateTaskDTO;
+import com.xunmei.core.evaluate.mapper.CoreEvaluateContentMapper;
+import com.xunmei.core.evaluate.mapper.CoreEvaluateRoleMapper;
+import com.xunmei.core.evaluate.mapper.CoreEvaluateTaskContentMapper;
+import com.xunmei.core.evaluate.mapper.CoreEvaluateTaskMapper;
+import com.xunmei.core.evaluate.service.ICoreEvaluatePlanService;
+import com.xunmei.core.evaluate.service.ICoreEvaluateTaskService;
+import com.xunmei.core.evaluate.vo.CoreEvaluatePlanListVO;
+import com.xunmei.core.evaluate.vo.CoreEvaluatePlanVO;
+import com.xunmei.core.evaluate.vo.CoreEvaluateTaskVO;
+import com.xunmei.system.api.RemoteOrgService;
+import com.xunmei.system.api.RemoteRoleService;
+import com.xunmei.system.api.RemoteUserService;
+import com.xunmei.system.api.domain.SysOrg;
+import com.xunmei.system.api.domain.SysRole;
+import com.xunmei.system.api.domain.SysUser;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+/**
+ * 外包评价任务Service业务层处理
+ *
+ * @author xunmei
+ * @date 2023-10-11
+ */
+@Service
+public class CoreEvaluateTaskServiceImpl extends ServiceImpl<CoreEvaluateTaskMapper, CoreEvaluateTask> implements ICoreEvaluateTaskService {
+    @Autowired
+    private CoreEvaluateTaskMapper coreEvaluateTaskMapper;
+    @Resource
+    private RemoteOrgService orgService;
+    @Autowired
+    private CoreEvaluateTaskContentMapper coreEvaluateTaskContentMapper;
+    @Autowired
+    private CoreEvaluateContentMapper coreEvaluateContentMapper;
+    @Autowired
+    private RemoteOrgService remoteOrgService;
+    @Autowired
+    private RemoteRoleService remoteRoleService;
+    @Autowired
+    private CoreEvaluateRoleMapper coreEvaluateRoleMapper;
+
+    @Override
+    public TableDataInfo<CoreEvaluateTask> selectPage(EvaluateTaskDTO evaluateTaskDTO) {
+        Page<CoreEvaluateTask> page;
+        //分页
+        if (evaluateTaskDTO.getPageNum() != null && evaluateTaskDTO.getPageSize() != null) {
+            page = new Page<>(evaluateTaskDTO.getPageNum(), evaluateTaskDTO.getPageSize());
+        } else {
+            page = new Page<>();
+        }
+        //下穿
+        if (evaluateTaskDTO.getCheckSub()) {
+            SysOrg sysOrg = orgService.selectSysOrgById(evaluateTaskDTO.getOrgId(), SecurityConstants.INNER);
+            evaluateTaskDTO.setOrgPath(sysOrg.getPath());
+            evaluateTaskDTO.setOrgId(null);
+        }
+        page = baseMapper.selectPageList(page, evaluateTaskDTO);
+        //抓换为TableDataInfo适配前端
+        return TableDataInfo.build(page);
+    }
+
+    /**
+     * 查询外包评价任务
+     *
+     * @param id 外包评价任务主键
+     * @return 外包评价任务
+     */
+    @Override
+    public CoreEvaluateTaskVO selectCoreEvaluateTaskById(Long id) {
+        String s = remoteRoleService.selectRoleNameByUserId(SecurityUtils.getUserId(), SecurityConstants.INNER);
+        boolean admin = false;
+        if (StringUtils.isNotEmpty(s)) {
+            int i = s.indexOf(",");
+            if (i >= 0) {
+                String[] split = s.split(",");
+                for (int l = 0; l < split.length; l++) {
+                    if (split[l].equals("省联社安全保卫管理人员") || split[l].equals("超级管理员")
+                            || split[l].equals("行社安全保卫管理人员") || split[l].equals("网点负责人") || split[l].equals("网点安全员")) {
+                        admin = true;
+                        break;
+                    }
+                }
+            } else if (s.equals("省联社安全保卫管理人员") || s.equals("超级管理员") || s.equals("行社安全保卫管理人员")
+                    || s.equals("网点负责人") || s.equals("网点安全员")) {
+                admin = true;
+            }
+        } else if (SecurityUtils.getUserId() == 1) {
+            admin = true;
+        }
+        if (!admin) {
+            throw new RuntimeException("该角色没有查看权限");
+        }
+        CoreEvaluateTaskVO coreEvaluateTaskVO = new CoreEvaluateTaskVO();
+        CoreEvaluateTask coreEvaluateTask = coreEvaluateTaskMapper.selectById(id);
+        BeanUtils.copyProperties(coreEvaluateTask, coreEvaluateTaskVO);
+        List<CoreEvaluateContent> coreEvaluateContentList = new ArrayList<>();
+        if (coreEvaluateTask.getStatus().equals("2")) {
+            List<CoreEvaluateTaskContent> coreEvaluateTaskContents = coreEvaluateTaskContentMapper.selectByTaskId(id);
+            for (CoreEvaluateTaskContent c : coreEvaluateTaskContents) {
+                CoreEvaluateContent coreEvaluateContent = new CoreEvaluateContent();
+                BeanUtils.copyProperties(c, coreEvaluateContent);
+                coreEvaluateContentList.add(coreEvaluateContent);
+            }
+        } else {
+            coreEvaluateContentList = coreEvaluateContentMapper.getByEvaluateId(coreEvaluateTask.getPlanId());
+        }
+        coreEvaluateTaskVO.setCoreEvaluateContentList(coreEvaluateContentList);
+        return coreEvaluateTaskVO;
+    }
+
+    /**
+     * 查询外包评价任务列表
+     *
+     * @param coreEvaluateTask 外包评价任务
+     * @return 外包评价任务
+     */
+    @Override
+    public List<CoreEvaluateTask> selectCoreEvaluateTaskList(CoreEvaluateTask coreEvaluateTask) {
+        return coreEvaluateTaskMapper.selectList(new QueryWrapper<>(coreEvaluateTask));
+    }
+
+    /**
+     * 新增外包评价任务
+     *
+     * @param coreEvaluateTask 外包评价任务
+     * @return 结果
+     */
+    @Override
+    public int insertCoreEvaluateTask(CoreEvaluateTask coreEvaluateTask) {
+        coreEvaluateTask.setCreateTime(DateUtils.getNowDate());
+        coreEvaluateTask.setCreateBy(SecurityUtils.getUsername());
+        return coreEvaluateTaskMapper.insert(coreEvaluateTask);
+    }
+
+    /**
+     * 修改外包评价任务
+     *
+     * @param evaluateTaskContentDTO 外包评价任务
+     * @return 结果
+     */
+    @Override
+    public int updateCoreEvaluateTask(EvaluateTaskContentDTO evaluateTaskContentDTO) {
+        CoreEvaluateTask coreEvaluateTask = coreEvaluateTaskMapper.selectById(evaluateTaskContentDTO.getId());
+        if (!SecurityUtils.getLoginUser().getOrgId().equals(coreEvaluateTask.getOrgId())) {
+            throw new RuntimeException("您没有该任务的评价权限");
+        }
+        // CoreEvaluatePlanVO coreEvaluatePlanVO = coreEvaluatePlanService.selectCoreEvaluatePlanById(coreEvaluateTask.getPlanId());
+        List<Long> roleByEvaluateId = coreEvaluateRoleMapper.getRoleByEvaluateId(coreEvaluateTask.getPlanId());
+        List<SysRole> roleByUserId = remoteRoleService.getRoleByUserId(SecurityUtils.getUserId(), SecurityConstants.INNER);
+        List<Long> collect = roleByUserId.stream().map(SysRole::getId).collect(Collectors.toList());
+        boolean admin = false;
+        if (null != roleByUserId || null != collect) {
+            for (Long l : collect) {
+                if (roleByEvaluateId.contains(l)) {
+                    admin = true;
+                    break;
+                }
+            }
+        }
+        if (!admin) {
+            throw new RuntimeException("您没有该任务的评价权限");
+        }
+        evaluateTaskContentDTO.getCoreEvaluateTaskContentList().forEach(e -> {
+            e.setTaskId(evaluateTaskContentDTO.getId());
+            coreEvaluateTaskContentMapper.insert(e);
+        });
+
+        coreEvaluateTask.setUpdateTime(DateUtils.getNowDate());
+        coreEvaluateTask.setEvaluateBy(SecurityUtils.getUsername());
+        coreEvaluateTask.setCompleteTime(DateUtils.getNowDate());
+        SysOrg sysOrg = remoteOrgService.selectSysOrgById(SecurityUtils.getLoginUser().getOrgId(), SecurityConstants.INNER);
+        coreEvaluateTask.setEvaluateOrg(sysOrg.getShortName());
+        coreEvaluateTask.setStatus("2");
+        return coreEvaluateTaskMapper.updateById(coreEvaluateTask);
+    }
+
+    /**
+     * 批量删除外包评价任务
+     *
+     * @param ids 需要删除的外包评价任务主键
+     * @return 结果
+     */
+    @Override
+    public int deleteCoreEvaluateTaskByIds(Long[] ids) {
+        return coreEvaluateTaskMapper.deleteBatchIds(Arrays.asList((ids)));
+    }
+
+    @Override
+    public int deleteCoreEvaluateTaskByEvaluatePlanId(Long evaluatePlanId, List status) {
+        QueryWrapper queryWrapper = new QueryWrapper();
+        queryWrapper.in("status", status);
+        queryWrapper.eq("plan_id", evaluatePlanId);
+        return baseMapper.delete(queryWrapper);
+    }
+
+    /**
+     * 删除外包评价任务信息
+     *
+     * @param id 外包评价任务主键
+     * @return 结果
+     */
+    @Override
+    public int deleteCoreEvaluateTaskById(Long id) {
+        return coreEvaluateTaskMapper.deleteById(id);
+    }
+}

+ 3 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/vo/CoreEvaluatePlanListVO.java

@@ -6,7 +6,7 @@ import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.util.Date;
-import java.util.List;
+
 
 /**
  * @author :LuoWei
@@ -17,6 +17,7 @@ public class CoreEvaluatePlanListVO {
     private Long id;
     private Long orgId;
     private String orgName;
+    private int buildTaskNow;
     /**
      * 外包评价名称
      */
@@ -33,6 +34,7 @@ public class CoreEvaluatePlanListVO {
      */
     @ApiModelProperty(value = "角色")
     private Long roleId;
+    private String roleName;
     /**
      * 周期
      */

+ 7 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/vo/CoreEvaluatePlanVO.java

@@ -13,16 +13,23 @@ import java.util.List;
 @Data
 public class CoreEvaluatePlanVO {
     private Long id;
+    private Boolean buildTaskNow;
     /**
      * 外包评价名称
      */
     @ApiModelProperty(value = "外包评价名称")
     private String evaluateName;
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
     /**
      * 机构类型
      */
     @ApiModelProperty(value = "机构类型")
     private String orgType;
+    @ApiModelProperty(value = "机构id")
+    private Long orgId;
+    @ApiModelProperty(value = "机构路径")
+    private String orgPath;
     /**
      * 角色
      */

+ 16 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/vo/CoreEvaluateTaskVO.java

@@ -0,0 +1,16 @@
+package com.xunmei.core.evaluate.vo;
+
+import com.xunmei.core.evaluate.domain.CoreEvaluateContent;
+import com.xunmei.core.evaluate.domain.CoreEvaluateTask;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @author :LuoWei
+ * @date : 2023/10/12
+ */
+@Data
+public class CoreEvaluateTaskVO extends CoreEvaluateTask {
+    List<CoreEvaluateContent> coreEvaluateContentList;
+}

+ 2 - 2
soc-modules/soc-modules-core/src/main/resources/bootstrap.yml

@@ -13,11 +13,11 @@ spring:
   cloud:
     nacos:
       discovery:
-        namespace: 489e15c5-b16f-4c78-87f8-f398f73b6103
+        namespace: 13d6af5d-c288-40d6-b1ee-4fc370665aba
         # 服务注册地址
         server-addr: 10.87.10.54:8848
       config:
-        namespace: 489e15c5-b16f-4c78-87f8-f398f73b6103
+        namespace: 13d6af5d-c288-40d6-b1ee-4fc370665aba
         # 配置中心地址
         server-addr: 10.87.10.54:8848
         # 配置文件格式

+ 1 - 1
soc-modules/soc-modules-core/src/main/resources/mapper/evaluate/CoreEvaluateContentMapper.xml

@@ -11,7 +11,7 @@
         <result property="contentType" column="content_type"/>
         <result property="content" column="content"/>
     </resultMap>
-    <select id="getByEvaluateId" resultType="com.xunmei.core.evaluate.domain.CoreEvaluatePlanContent">
+    <select id="getByEvaluateId" resultType="com.xunmei.core.evaluate.domain.CoreEvaluateContent">
         SELECT
             a.*
         FROM

+ 20 - 12
soc-modules/soc-modules-core/src/main/resources/mapper/evaluate/CoreEvaluatePlanMapper.xml

@@ -57,20 +57,26 @@
     </select>
     <select id="selectPageList" resultType="com.xunmei.core.evaluate.vo.CoreEvaluatePlanListVO">
         SELECT
-            a.id,
-            a.org_name,
-            a.evaluate_name,
-            a.org_type,
-            GROUP_CONCAT( c.role_name ),
-            a.evaluate_cycle,
-            a.create_by,
-            a.`status`
+        a.id,
+        a.org_name,
+        a.evaluate_name,
+               a.build_task_now,
+        d.dict_label AS orgType,
+        GROUP_CONCAT( c.role_name ) AS roleName,
+        e.dict_label AS evaluateCycle,
+        a.create_by,
+        a.`status`,
+        a.create_time
         FROM
-            core_evaluate_plan a
-                LEFT JOIN core_evaluate_role b ON a.id = b.evaluate_id
-                LEFT JOIN sys_role c ON c.id = b.role_id
+        core_evaluate_plan a
+        LEFT JOIN core_evaluate_role b ON a.id = b.evaluate_id
+        LEFT JOIN sys_role c ON c.id = b.role_id
+        LEFT JOIN sys_dict_data d ON d.dict_value = a.org_type
+        LEFT JOIN sys_dict_data e ON e.dict_value = a.evaluate_cycle
         WHERE
-            a.is_deleted =0
+        a.is_deleted = 0
+        AND d.dict_type = 'sys_org_type'
+        AND e.dict_type = 'evaluate_cycle'
         <if test="request.orgId != null ">
             and a.org_id = #{request.orgId}
         </if>
@@ -89,6 +95,8 @@
         <if test="request.roleId != null ">
             and b.role_id = #{request.roleId}
         </if>
+        GROUP BY
+        a.id
         ORDER BY a.create_time DESC
     </select>
 

+ 16 - 0
soc-modules/soc-modules-core/src/main/resources/mapper/evaluate/CoreEvaluateTaskContentMapper.xml

@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.xunmei.core.evaluate.mapper.CoreEvaluateTaskContentMapper">
+
+
+    <select id="selectByTaskId" resultType="com.xunmei.core.evaluate.domain.CoreEvaluateTaskContent">
+        SELECT
+            *
+        FROM
+            core_evaluate_task_content
+        WHERE
+            task_id=#{taskId}
+    </select>
+</mapper>

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

@@ -0,0 +1,222 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.xunmei.core.evaluate.mapper.CoreEvaluateTaskMapper">
+
+    <resultMap type="com.xunmei.core.evaluate.domain.CoreEvaluateTask" id="CoreEvaluateTaskResult">
+                <result property="id" column="id"/>
+                <result property="planId" column="plan_id"/>
+                <result property="orgId" column="org_id"/>
+        <result property="evaluateBy" column="evaluate_by"/>
+                <result property="status" column="status"/>
+                <result property="orgName" column="org_name"/>
+                <result property="evaluateName" column="evaluate_name"/>
+                <result property="createTime" column="create_time"/>
+                <result property="updateTime" column="update_time"/>
+                <result property="isDeleted" column="is_deleted"/>
+                <result property="startTime" column="start_time"/>
+                <result property="endTime" column="end_time"/>
+                <result property="completeTime" column="complete_time"/>
+                <result property="createBy" column="create_by"/>
+                <result property="updateBy" column="update_by"/>
+    </resultMap>
+
+    <sql id="selectCoreEvaluateTaskVo">
+        select id, plan_id, org_id, status, org_name, evaluate_name, create_time, update_time, is_deleted, start_time, end_time, complete_time, create_by, update_by
+        from core_evaluate_task
+    </sql>
+
+    <select id="selectCoreEvaluateTaskList" parameterType="com.xunmei.core.evaluate.domain.CoreEvaluateTask"
+            resultMap="CoreEvaluateTaskResult">
+        <include refid="selectCoreEvaluateTaskVo"/>
+        <where>
+                        <if test="planId != null ">
+                            and plan_id = #{planId}
+                        </if>
+                        <if test="orgId != null ">
+                            and org_id = #{orgId}
+                        </if>
+                        <if test="status != null  and status != ''">
+                            and status = #{status}
+                        </if>
+                        <if test="orgName != null  and orgName != ''">
+                            and org_name like concat('%', #{orgName}, '%')
+                        </if>
+                        <if test="evaluateName != null  and evaluateName != ''">
+                            and evaluate_name like concat('%', #{evaluateName}, '%')
+                        </if>
+                        <if test="isDeleted != null  and isDeleted != ''">
+                            and is_deleted = #{isDeleted}
+                        </if>
+                        <if test="startTime != null ">
+                            and start_time = #{startTime}
+                        </if>
+                        <if test="endTime != null ">
+                            and end_time = #{endTime}
+                        </if>
+                        <if test="completeTime != null ">
+                            and complete_time = #{completeTime}
+                        </if>
+        </where>
+    </select>
+
+    <select id="selectCoreEvaluateTaskById" parameterType="Long"
+            resultMap="CoreEvaluateTaskResult">
+            <include refid="selectCoreEvaluateTaskVo"/>
+            where id = #{id}
+    </select>
+    <select id="selectPageList" resultType="com.xunmei.core.evaluate.domain.CoreEvaluateTask">
+        SELECT
+            id,
+            org_name,
+            role_name,
+            evaluate_name,
+            start_time,
+            end_time,
+            evaluate_by,
+            complete_time,
+            `status`
+        FROM
+            core_evaluate_task
+        WHERE
+            is_deleted =0
+        <if test="request.orgId != null ">
+            and org_id = #{request.orgId}
+        </if>
+        <if test="request.orgPath != null  and request.orgPath != ''">
+            and org_path like concat( #{request.orgPath}, '%')
+        </if>
+        <if test="request.evaluateName != null  and request.evaluateName != ''">
+            and evaluate_name like concat('%', #{request.evaluateName}, '%')
+        </if>
+        <if test="request.status != null ">
+            and status = #{request.status}
+        </if>
+        <if test="request.startTime != null and request.endTime != null">
+            and start_time &gt;= #{request.startTime} AND end_time &lt;= #{request.endTime}
+        </if>
+    </select>
+
+    <insert id="insertCoreEvaluateTask" parameterType="com.xunmei.core.evaluate.domain.CoreEvaluateTask">
+        insert into core_evaluate_task
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+                    <if test="id != null">id,
+                    </if>
+                    <if test="planId != null">plan_id,
+                    </if>
+                    <if test="orgId != null">org_id,
+                    </if>
+                    <if test="status != null">status,
+                    </if>
+                    <if test="orgName != null">org_name,
+                    </if>
+                    <if test="evaluateName != null">evaluate_name,
+                    </if>
+                    <if test="createTime != null">create_time,
+                    </if>
+                    <if test="updateTime != null">update_time,
+                    </if>
+                    <if test="isDeleted != null">is_deleted,
+                    </if>
+                    <if test="startTime != null">start_time,
+                    </if>
+                    <if test="endTime != null">end_time,
+                    </if>
+                    <if test="completeTime != null">complete_time,
+                    </if>
+                    <if test="createBy != null">create_by,
+                    </if>
+                    <if test="updateBy != null">update_by,
+                    </if>
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+                    <if test="id != null">#{id},
+                    </if>
+                    <if test="planId != null">#{planId},
+                    </if>
+                    <if test="orgId != null">#{orgId},
+                    </if>
+                    <if test="status != null">#{status},
+                    </if>
+                    <if test="orgName != null">#{orgName},
+                    </if>
+                    <if test="evaluateName != null">#{evaluateName},
+                    </if>
+                    <if test="createTime != null">#{createTime},
+                    </if>
+                    <if test="updateTime != null">#{updateTime},
+                    </if>
+                    <if test="isDeleted != null">#{isDeleted},
+                    </if>
+                    <if test="startTime != null">#{startTime},
+                    </if>
+                    <if test="endTime != null">#{endTime},
+                    </if>
+                    <if test="completeTime != null">#{completeTime},
+                    </if>
+                    <if test="createBy != null">#{createBy},
+                    </if>
+                    <if test="updateBy != null">#{updateBy},
+                    </if>
+        </trim>
+    </insert>
+
+    <update id="updateCoreEvaluateTask" parameterType="com.xunmei.core.evaluate.domain.CoreEvaluateTask">
+        update core_evaluate_task
+        <trim prefix="SET" suffixOverrides=",">
+                    <if test="planId != null">plan_id =
+                        #{planId},
+                    </if>
+                    <if test="orgId != null">org_id =
+                        #{orgId},
+                    </if>
+                    <if test="status != null">status =
+                        #{status},
+                    </if>
+                    <if test="orgName != null">org_name =
+                        #{orgName},
+                    </if>
+                    <if test="evaluateName != null">evaluate_name =
+                        #{evaluateName},
+                    </if>
+                    <if test="createTime != null">create_time =
+                        #{createTime},
+                    </if>
+                    <if test="updateTime != null">update_time =
+                        #{updateTime},
+                    </if>
+                    <if test="isDeleted != null">is_deleted =
+                        #{isDeleted},
+                    </if>
+                    <if test="startTime != null">start_time =
+                        #{startTime},
+                    </if>
+                    <if test="endTime != null">end_time =
+                        #{endTime},
+                    </if>
+                    <if test="completeTime != null">complete_time =
+                        #{completeTime},
+                    </if>
+                    <if test="createBy != null">create_by =
+                        #{createBy},
+                    </if>
+                    <if test="updateBy != null">update_by =
+                        #{updateBy},
+                    </if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteCoreEvaluateTaskById" parameterType="Long">
+        delete
+        from core_evaluate_task where id = #{id}
+    </delete>
+
+    <delete id="deleteCoreEvaluateTaskByIds" parameterType="String">
+        delete from core_evaluate_task where id in
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>

+ 8 - 0
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/controller/SysRoleController.java

@@ -222,6 +222,14 @@ public class SysRoleController extends BaseController {
     public SysRole getRoleById(Long id) {
         return roleService.getById(id);
     }
+
+    @ApiOperation(value = "根据userid查询角色")
+    @InnerAuth
+    @GetMapping(value = "/getRoleByUserId")
+    public List<SysRole> getRoleByUserId(Long userId) {
+        return roleService.selectRolesByUserId(userId);
+    }
+
     @ApiOperation(value = "根据名称查询角色")
     @InnerAuth
     @GetMapping(value = "/getRoleByName")

+ 1 - 1
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/service/impl/SysDeviceServiceImpl.java

@@ -238,7 +238,7 @@ public class SysDeviceServiceImpl extends ServiceImpl<SysDeviceMapper, SysDevice
     }
 
     @Override
-    public void downInChargeOfTemplate(HttpServletResponse response) throws IOException{
+    public void downInChargeOfTemplate(HttpServletResponse response) throws IOException {
         response.setContentType("application/vnd.ms-excel");
         response.setCharacterEncoding("utf-8");
         String fileName = URLEncoder.encode("设备导入" + DateHelper.getDateString(new Date()), "UTF-8");