瀏覽代碼

绩效考核

lihui007 4 年之前
父節點
當前提交
4291555a7d
共有 30 個文件被更改,包括 891 次插入13 次删除
  1. 1 0
      operation_manager/src/main/java/com/huaxu/OperationManagerMain.java
  2. 10 4
      operation_manager/src/main/java/com/huaxu/evaluation/controller/EvaluationResultController.java
  3. 46 0
      operation_manager/src/main/java/com/huaxu/evaluation/controller/EvaluationResultDetailsController.java
  4. 39 0
      operation_manager/src/main/java/com/huaxu/evaluation/controller/EvaluationResultTaskDetailsController.java
  5. 22 0
      operation_manager/src/main/java/com/huaxu/evaluation/dao/EvaluationResultDetailsMapper.java
  6. 21 0
      operation_manager/src/main/java/com/huaxu/evaluation/dao/EvaluationResultMapper.java
  7. 19 0
      operation_manager/src/main/java/com/huaxu/evaluation/dao/EvaluationResultTaskMapper.java
  8. 25 0
      operation_manager/src/main/java/com/huaxu/evaluation/dto/EvaluationDetailsDto.java
  9. 26 0
      operation_manager/src/main/java/com/huaxu/evaluation/dto/EvaluationResultDetailsDto.java
  10. 26 0
      operation_manager/src/main/java/com/huaxu/evaluation/dto/EvaluationResultDto.java
  11. 3 1
      operation_manager/src/main/java/com/huaxu/evaluation/dto/EvaluationResultQueryDto.java
  12. 26 0
      operation_manager/src/main/java/com/huaxu/evaluation/enums/EvaluationResultStatus.java
  13. 22 0
      operation_manager/src/main/java/com/huaxu/evaluation/job/EvaluationResultJob.java
  14. 29 0
      operation_manager/src/main/java/com/huaxu/evaluation/service/EvaluationResultDetailsService.java
  15. 26 0
      operation_manager/src/main/java/com/huaxu/evaluation/service/EvaluationResultTaskDetailsService.java
  16. 88 0
      operation_manager/src/main/java/com/huaxu/evaluation/service/impl/EvaluationResultDetailsServiceImpl.java
  17. 85 2
      operation_manager/src/main/java/com/huaxu/evaluation/service/impl/EvaluationResultServiceImpl.java
  18. 56 0
      operation_manager/src/main/java/com/huaxu/evaluation/service/impl/EvaluationResultTaskDetailsServiceImpl.java
  19. 36 0
      operation_manager/src/main/java/com/huaxu/evaluation/vo/EvaluationResultDetailsVo.java
  20. 60 0
      operation_manager/src/main/java/com/huaxu/evaluation/vo/EvaluationResultTaskDetailsVo.java
  21. 18 6
      operation_manager/src/main/java/com/huaxu/evaluation/vo/EvaluationResultVo.java
  22. 46 0
      operation_manager/src/main/java/com/huaxu/order/controller/WorkOrderManageController.java
  23. 3 0
      operation_manager/src/main/java/com/huaxu/order/dao/WorkOrderManageMapper.java
  24. 4 0
      operation_manager/src/main/java/com/huaxu/order/service/WorkOrderManageService.java
  25. 6 0
      operation_manager/src/main/java/com/huaxu/order/service/impl/WorkOrderManageServiceImpl.java
  26. 36 0
      operation_manager/src/main/java/com/huaxu/utils/OperactionStringUtils.java
  27. 15 0
      operation_manager/src/main/resources/mapper/evaluation/EvaluationResultDetailsMapper.xml
  28. 33 0
      operation_manager/src/main/resources/mapper/evaluation/EvaluationResultMapper.xml
  29. 45 0
      operation_manager/src/main/resources/mapper/evaluation/EvaluationResultTaskMapper.xml
  30. 19 0
      operation_manager/src/main/resources/mapper/order/WorkOrderManageMapper.xml

+ 1 - 0
operation_manager/src/main/java/com/huaxu/OperationManagerMain.java

@@ -7,6 +7,7 @@ import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
 import org.springframework.cloud.openfeign.EnableFeignClients;
 import org.springframework.context.ApplicationContext;
 import org.springframework.core.env.Environment;
+import org.springframework.scheduling.annotation.EnableScheduling;
 
 import java.net.InetAddress;
 import java.net.UnknownHostException;

+ 10 - 4
operation_manager/src/main/java/com/huaxu/evaluation/controller/EvaluationResultController.java

@@ -1,6 +1,8 @@
 package com.huaxu.evaluation.controller;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.huaxu.evaluation.dto.EvaluationResultDto;
+import com.huaxu.evaluation.enums.EvaluationResultStatus;
 import com.huaxu.evaluation.service.EvaluationResultService;
 import com.huaxu.evaluation.vo.EvaluationResultVo;
 import com.huaxu.model.AjaxMessage;
@@ -15,24 +17,28 @@ import javax.validation.Valid;
 
 /**
  * @ClassName EvaluationResultController
- * @Description: 绩效考评结果控制层处理
+ * @Description: 考评结果
  * @Author lihui
  * @Date 2021/5/7
  * @Version V1.0
  **/
 @RestController
 @RequestMapping("/evaluation/result")
-@Api(tags = "绩效考评结果")
+@Api(tags = "考评结果")
 public class EvaluationResultController {
 
     @Autowired
     private EvaluationResultService evaluationResultService;
 
     @ApiOperation(value = "查询考评结果")
-    @RequestMapping(value = "/findPage", method = RequestMethod.POST)
+    @RequestMapping(value = "/find/page", method = RequestMethod.POST)
     @ResponseBody
     public AjaxMessage<Pagination<EvaluationResultVo>> findPage(@RequestBody @Valid EvaluationResultDto dto) {
-        return new AjaxMessage<>(ResultStatus.OK, new Pagination<>(evaluationResultService.findPage(dto)));
+        IPage<EvaluationResultVo> page = evaluationResultService.findPage(dto);
+        if (page == null) {
+            return new AjaxMessage<>(EvaluationResultStatus.DATA_NOT_FOUND.getStatus(), EvaluationResultStatus.DATA_NOT_FOUND.getMessage(),null);
+        }
+        return new AjaxMessage<>(ResultStatus.OK, new Pagination<>(page));
     }
 
 }

+ 46 - 0
operation_manager/src/main/java/com/huaxu/evaluation/controller/EvaluationResultDetailsController.java

@@ -0,0 +1,46 @@
+package com.huaxu.evaluation.controller;
+
+import com.huaxu.evaluation.dto.EvaluationResultDetailsDto;
+import com.huaxu.evaluation.dto.EvaluationResultDto;
+import com.huaxu.evaluation.service.EvaluationResultDetailsService;
+import com.huaxu.evaluation.vo.EvaluationResultVo;
+import com.huaxu.exception.ServiceException;
+import com.huaxu.model.AjaxMessage;
+import com.huaxu.model.Pagination;
+import com.huaxu.model.ResultStatus;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+
+/**
+ * @ClassName EvaluationResultController
+ * @Description: 绩效考评结果详情
+ * @Author lihui
+ * @Date 2021/5/7
+ * @Version V1.0
+ **/
+@RestController
+@RequestMapping("/evaluation/details")
+@Api(tags = "考评结果详情")
+public class EvaluationResultDetailsController {
+
+    @Autowired
+    private EvaluationResultDetailsService evaluationResultDetailService;
+
+    @ApiOperation(value = "修改考评得分")
+    @RequestMapping(value = "/update/score", method = RequestMethod.POST)
+    @ResponseBody
+    public AjaxMessage<String> updateEvaluateScore(@RequestBody @Valid EvaluationResultDetailsDto dto) {
+        try {
+            evaluationResultDetailService.updateEvaluateScore(dto);
+            return new AjaxMessage<>(ResultStatus.OK);
+        } catch (ServiceException e) {
+            return new AjaxMessage<>(e.getStatus(), e.getMessage(), null);
+        }
+    }
+
+}
+

+ 39 - 0
operation_manager/src/main/java/com/huaxu/evaluation/controller/EvaluationResultTaskDetailsController.java

@@ -0,0 +1,39 @@
+package com.huaxu.evaluation.controller;
+
+import com.huaxu.evaluation.service.EvaluationResultTaskDetailsService;
+import com.huaxu.evaluation.vo.EvaluationResultTaskDetailsVo;
+import com.huaxu.model.AjaxMessage;
+import com.huaxu.model.ResultStatus;
+import com.huaxu.util.IntegerUtil;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * @ClassName EvaluationResultTaskDetailsController
+ * @Description: 绩效考评任务详情
+ * @Author lihui
+ * @Date 2021/5/7
+ * @Version V1.0
+ **/
+@RestController
+@RequestMapping("/evaluation/task")
+@Api(tags = "考评任务结果详情")
+public class EvaluationResultTaskDetailsController {
+
+    @Autowired
+    private EvaluationResultTaskDetailsService evaluationResultTaskDetailsService;
+
+    @ApiOperation(value = "查询考评结果任务详情")
+    @RequestMapping(value = "/find", method = RequestMethod.POST)
+    @ResponseBody
+    public AjaxMessage<EvaluationResultTaskDetailsVo> find(@RequestParam Integer evaluationResultId) {
+        if (IntegerUtil.isNullOrZero(evaluationResultId)) {
+            return new AjaxMessage<>(ResultStatus.PARAM_ERROR.getStatus(), "参数错误", null);
+        }
+        return new AjaxMessage<>(ResultStatus.OK, evaluationResultTaskDetailsService.findResultTaskDetail(evaluationResultId));
+    }
+
+}
+

+ 22 - 0
operation_manager/src/main/java/com/huaxu/evaluation/dao/EvaluationResultDetailsMapper.java

@@ -1,10 +1,14 @@
 package com.huaxu.evaluation.dao;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.huaxu.evaluation.dto.EvaluationDetailsDto;
+import com.huaxu.evaluation.dto.EvaluationResultDetailsDto;
 import com.huaxu.evaluation.entity.EvaluationResultDetailsEntity;
 import com.huaxu.evaluation.entity.EvaluationResultEntity;
 import org.apache.ibatis.annotations.Mapper;
 
+import java.util.List;
+
 /**
  * @ClassName EvaluationResultDetailsMapper
  * @Description: 考评结果详情
@@ -14,4 +18,22 @@ import org.apache.ibatis.annotations.Mapper;
  **/
 @Mapper
 public interface EvaluationResultDetailsMapper extends BaseMapper<EvaluationResultDetailsEntity> {
+
+    /**
+    * @Author lihui
+    * @Description 查询考评结果详情ids
+    * @Date 17:09 2021/5/8
+    * @Param [evaluationResultId]
+    * @return java.util.List<java.lang.Integer>
+    **/
+    List<Integer> findResultDetailsIds(Integer evaluationResultId);
+
+    /**
+    * @Author lihui
+    * @Description 修改分数
+    * @Date 17:13 2021/5/8
+    * @Param [dto]
+    * @return void
+    **/
+    int updateEvaluateScore(EvaluationDetailsDto dto);
 }

+ 21 - 0
operation_manager/src/main/java/com/huaxu/evaluation/dao/EvaluationResultMapper.java

@@ -4,9 +4,12 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.huaxu.evaluation.dto.EvaluationResultQueryDto;
 import com.huaxu.evaluation.vo.EvaluationResultVo;
+import io.swagger.models.auth.In;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.math.BigDecimal;
+
 /**
  * @ClassName EvaluationResultMapper
  * @Description: 考评结果
@@ -26,4 +29,22 @@ public interface EvaluationResultMapper {
     **/
     Page<EvaluationResultVo> findPage(@Param("page")IPage<EvaluationResultQueryDto> page, @Param("dto") EvaluationResultQueryDto dto);
 
+    /**
+    * @Author lihui
+    * @Description 查询考评状态
+    * @Date 17:16 2021/5/8
+    * @Param [evaluationResultId]
+    * @return java.lang.Integer
+    **/
+    Integer findEvaluationState(Integer evaluationResultId);
+
+    /**
+    * @Author lihui
+    * @Description 修改考评得分
+    * @Date 17:56 2021/5/8
+    * @Param [evaluationResultId, Score]
+    * @return java.lang.Integer
+    **/
+    Integer updateEvaluationScore(Integer evaluationResultId, BigDecimal score);
+
 }

+ 19 - 0
operation_manager/src/main/java/com/huaxu/evaluation/dao/EvaluationResultTaskMapper.java

@@ -0,0 +1,19 @@
+package com.huaxu.evaluation.dao;
+
+import com.huaxu.evaluation.vo.EvaluationResultTaskDetailsVo;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * @ClassName EvaluationResultMapper
+ * @Description: 考评结果
+ * @Author lihui
+ * @Date 2021/5/7
+ * @Version V1.0
+ **/
+@Mapper
+public interface EvaluationResultTaskMapper {
+
+
+    EvaluationResultTaskDetailsVo findResultTaskDetail(Integer evaluationResultId);
+
+}

+ 25 - 0
operation_manager/src/main/java/com/huaxu/evaluation/dto/EvaluationDetailsDto.java

@@ -0,0 +1,25 @@
+package com.huaxu.evaluation.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * @ClassName EvaluationDetailsDto
+ * @Description: 考评任务结果详情
+ * @Author lihui
+ * @Date 2021/5/7
+ * @Version V1.0
+ **/
+@Data
+@ApiModel(value = "考评任务结果详情")
+public class EvaluationDetailsDto {
+
+    @ApiModelProperty(value = "考评结果详情Id")
+    private Integer detailId;
+
+    @ApiModelProperty(value = "修改的分数")
+    private BigDecimal score;
+}

+ 26 - 0
operation_manager/src/main/java/com/huaxu/evaluation/dto/EvaluationResultDetailsDto.java

@@ -0,0 +1,26 @@
+package com.huaxu.evaluation.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+/**
+ * @ClassName EvaluationResultDetailsDto
+ * @Description: 考评结果详情
+ * @Author lihui
+ * @Date 2021/5/7
+ * @Version V1.0
+ **/
+@Data
+@ApiModel(value = "考评结果详情")
+public class EvaluationResultDetailsDto {
+
+    @ApiModelProperty(value = "考评结果Id")
+    private Integer resultDetailsId;
+
+    @ApiModelProperty(value = "考评结果详情Id")
+    private List<EvaluationDetailsDto> detailsDtoList;
+}

+ 26 - 0
operation_manager/src/main/java/com/huaxu/evaluation/dto/EvaluationResultDto.java

@@ -4,6 +4,8 @@ import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import java.util.List;
+
 /**
  * @ClassName EvaluationResultDto
  * @Description: 考评结果入参
@@ -15,4 +17,28 @@ import lombok.Data;
 @ApiModel(value = "考评结果")
 public class EvaluationResultDto extends  BasePageDto{
 
+
+    @ApiModelProperty(value="用户名")
+    private String userName;
+
+    @ApiModelProperty(value="公司ID")
+    private Integer companyOrgId;
+
+    @ApiModelProperty(value="部门ID")
+    private Integer deptOrgId;
+
+    @ApiModelProperty(value="考评状态:0未考评 1已考评")
+    private Integer state;
+
+    @ApiModelProperty(value="类型:1月度,2季度,3年度")
+    private Integer cycle;
+
+    @ApiModelProperty(value="年")
+    private Integer year;
+
+    @ApiModelProperty(value="月/季度")
+    private Integer month;
+
+    @ApiModelProperty(value="1:考评,2:得分")
+    private Integer sort;
 }

+ 3 - 1
operation_manager/src/main/java/com/huaxu/evaluation/dto/EvaluationResultQueryDto.java

@@ -19,7 +19,7 @@ import java.util.List;
 @ApiModel(value = "考评结果")
 public class EvaluationResultQueryDto extends EvaluationResultDto{
 
-    @ApiModelProperty(value = "页码")
+    @ApiModelProperty(value = "租户")
     private String tenantId;
 
     @ApiModelProperty(value ="权限",hidden = true)
@@ -31,4 +31,6 @@ public class EvaluationResultQueryDto extends EvaluationResultDto{
     @ApiModelProperty(value="用户权限类型")
     private Integer permissonType;
 
+
+
 }

+ 26 - 0
operation_manager/src/main/java/com/huaxu/evaluation/enums/EvaluationResultStatus.java

@@ -0,0 +1,26 @@
+package com.huaxu.evaluation.enums;
+
+import com.huaxu.model.ResultStatus;
+import lombok.Getter;
+
+@Getter
+public enum EvaluationResultStatus {
+
+    DATA_NOT_FOUND(920000,"未找到相关的数据"),
+
+    PARAM_ERROR(920001,"请求参数错误"),
+
+    IS_ASSESSED(920002,"已考核,不能修改")
+
+    ,
+    ;
+
+    private final int status;
+
+    private final String message;
+
+    EvaluationResultStatus(int status, String message) {
+        this.status = status;
+        this.message = message;
+    }
+}

+ 22 - 0
operation_manager/src/main/java/com/huaxu/evaluation/job/EvaluationResultJob.java

@@ -1,5 +1,12 @@
 package com.huaxu.evaluation.job;
 
+import com.huaxu.order.dao.WorkOrderManageMapper;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
 /**
  * @ClassName EvaluationResultJob
  * @Description: TODO
@@ -7,5 +14,20 @@ package com.huaxu.evaluation.job;
  * @Date 2021/5/7
  * @Version V1.0
  **/
+@Component
+@Slf4j
+@EnableScheduling
 public class EvaluationResultJob {
+
+    @Autowired
+    private WorkOrderManageMapper workOrderManageMapper;
+
+    @Scheduled(cron = "0/5 * * * * ?")
+    public void run(){
+        log.info("开始了");
+
+        // 首先查询设置表
+
+        // workOrderManageMapper.selectByTime();
+    }
 }

+ 29 - 0
operation_manager/src/main/java/com/huaxu/evaluation/service/EvaluationResultDetailsService.java

@@ -0,0 +1,29 @@
+package com.huaxu.evaluation.service;
+
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.huaxu.evaluation.dto.EvaluationResultDetailsDto;
+import com.huaxu.evaluation.dto.EvaluationResultDto;
+import com.huaxu.evaluation.vo.EvaluationResultVo;
+import com.huaxu.exception.ServiceException;
+
+import java.util.List;
+
+/**
+ * @ClassName EvaluationResultService
+ * @Description: 考评结果业务处理
+ * @Author lihui
+ * @Date 2021/5/7
+ * @Version V1.0
+ **/
+public interface EvaluationResultDetailsService {
+
+    /**
+     * @Author lihui
+     * @Description 修改分数
+     * @Date 17:13 2021/5/8
+     * @Param [dto]
+     * @return void
+     **/
+    void updateEvaluateScore(EvaluationResultDetailsDto dto) throws ServiceException;
+}

+ 26 - 0
operation_manager/src/main/java/com/huaxu/evaluation/service/EvaluationResultTaskDetailsService.java

@@ -0,0 +1,26 @@
+package com.huaxu.evaluation.service;
+
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.huaxu.evaluation.dto.EvaluationResultDto;
+import com.huaxu.evaluation.vo.EvaluationResultTaskDetailsVo;
+import com.huaxu.evaluation.vo.EvaluationResultVo;
+
+/**
+ * @ClassName EvaluationResultTaskDetailsService
+ * @Description: 考评结果任务详情
+ * @Author lihui
+ * @Date 2021/5/7
+ * @Version V1.0
+ **/
+public interface EvaluationResultTaskDetailsService {
+
+    /**
+    * @Author lihui
+    * @Description 查看任务结果详情
+    * @Date 16:36 2021/5/8
+    * @Param [evaluationResultId]
+    * @return com.huaxu.evaluation.vo.EvaluationResultTaskDetailsVo
+    **/
+    EvaluationResultTaskDetailsVo findResultTaskDetail(Integer evaluationResultId);
+}

+ 88 - 0
operation_manager/src/main/java/com/huaxu/evaluation/service/impl/EvaluationResultDetailsServiceImpl.java

@@ -0,0 +1,88 @@
+package com.huaxu.evaluation.service.impl;
+
+import cn.hutool.core.collection.CollectionUtil;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.huaxu.client.UserCenterClient;
+import com.huaxu.evaluation.dao.EvaluationResultDetailsMapper;
+import com.huaxu.evaluation.dao.EvaluationResultMapper;
+import com.huaxu.evaluation.dto.EvaluationDetailsDto;
+import com.huaxu.evaluation.dto.EvaluationResultDetailsDto;
+import com.huaxu.evaluation.dto.EvaluationResultDto;
+import com.huaxu.evaluation.dto.EvaluationResultQueryDto;
+import com.huaxu.evaluation.enums.EvaluationResultStatus;
+import com.huaxu.evaluation.service.EvaluationResultDetailsService;
+import com.huaxu.evaluation.vo.EvaluationResultVo;
+import com.huaxu.exception.ServiceException;
+import com.huaxu.model.LoginUser;
+import com.huaxu.model.ResultStatus;
+import com.huaxu.org.OrgInfoUtil;
+import com.huaxu.util.IntegerUtil;
+import com.huaxu.util.UserUtil;
+import com.huaxu.utils.OperactionStringUtils;
+import io.swagger.models.auth.In;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.math.BigDecimal;
+import java.util.Comparator;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+/**
+ * @ClassName EvaluationResultServiceImpl
+ * @Description: 考评结果业务处理
+ * @Author lihui
+ * @Date 2021/5/7
+ * @Version V1.0
+ **/
+@Slf4j
+@Service
+public class EvaluationResultDetailsServiceImpl  implements EvaluationResultDetailsService {
+
+    @Autowired
+    private EvaluationResultDetailsMapper evaluationResultDetailsMapper;
+
+    @Autowired
+    private EvaluationResultMapper evaluationResultMapper;
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void updateEvaluateScore(EvaluationResultDetailsDto dto) {
+        Integer resultDetailsId = dto.getResultDetailsId();
+        if (IntegerUtil.isNullOrZero(resultDetailsId)){
+            throw new ServiceException(EvaluationResultStatus.PARAM_ERROR.getStatus(), EvaluationResultStatus.PARAM_ERROR.getMessage());
+        }
+        Integer state = evaluationResultMapper.findEvaluationState(resultDetailsId);
+        if (state == null){
+            throw new ServiceException(EvaluationResultStatus.DATA_NOT_FOUND.getStatus(), EvaluationResultStatus.DATA_NOT_FOUND.getMessage());
+        }
+        if (state == 1) {
+            throw new ServiceException(EvaluationResultStatus.IS_ASSESSED.getStatus(), EvaluationResultStatus.IS_ASSESSED.getMessage());
+        }
+        List<Integer> ids = evaluationResultDetailsMapper.findResultDetailsIds(resultDetailsId);
+        List<EvaluationDetailsDto>  evaluationDetailsDtos =  dto.getDetailsDtoList();
+        List<Integer> detailIds = evaluationDetailsDtos.stream().map(EvaluationDetailsDto::getDetailId).collect(Collectors.toList());
+        if (!OperactionStringUtils.checkDifferent(ids, detailIds)){
+            throw new ServiceException(EvaluationResultStatus.PARAM_ERROR.getStatus(), EvaluationResultStatus.PARAM_ERROR.getMessage());
+        }
+        // 记录总得分
+        BigDecimal score = new BigDecimal(0);
+        // 修改得分详情
+        for (EvaluationDetailsDto detailsDto : evaluationDetailsDtos) {
+             evaluationResultDetailsMapper.updateEvaluateScore(detailsDto);
+             score = score.add(detailsDto.getScore());
+        }
+        // 修改最终得分
+        evaluationResultMapper.updateEvaluationScore(resultDetailsId, score);
+    }
+
+
+
+}

+ 85 - 2
operation_manager/src/main/java/com/huaxu/evaluation/service/impl/EvaluationResultServiceImpl.java

@@ -1,20 +1,30 @@
 package com.huaxu.evaluation.service.impl;
 
+import cn.hutool.core.collection.CollectionUtil;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.huaxu.client.UserCenterClient;
 import com.huaxu.evaluation.dao.EvaluationResultMapper;
 import com.huaxu.evaluation.dto.EvaluationResultDto;
 import com.huaxu.evaluation.dto.EvaluationResultQueryDto;
+import com.huaxu.evaluation.enums.EvaluationResultStatus;
 import com.huaxu.evaluation.service.EvaluationResultService;
 import com.huaxu.evaluation.vo.EvaluationResultVo;
+import com.huaxu.exception.ServiceException;
 import com.huaxu.model.LoginUser;
 import com.huaxu.org.OrgInfoUtil;
 import com.huaxu.util.UserUtil;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
 /**
  * @ClassName EvaluationResultServiceImpl
  * @Description: 考评结果业务处理
@@ -32,18 +42,91 @@ public class EvaluationResultServiceImpl implements EvaluationResultService {
     @Autowired
     private OrgInfoUtil orgInfoUtil;
 
+    @Autowired
+    private UserCenterClient userCenterClient;
+
+
     @Override
     public IPage<EvaluationResultVo> findPage(EvaluationResultDto dto) {
         EvaluationResultQueryDto queryDto = new EvaluationResultQueryDto();
         BeanUtils.copyProperties(dto, queryDto);
         // 获取用户权限
         LoginUser currentUser = UserUtil.getCurrentUser();
+        if (StringUtils.isEmpty(currentUser.getTenantId())){
+            return null;
+        }
         queryDto.setTenantId(currentUser.getTenantId());
         queryDto.setProgramItems(currentUser.getProgramItemList());
         queryDto.setUserType("3");
         queryDto.setPermissonType(currentUser.getPermissonType());
-        System.out.println(orgInfoUtil.getOrgName(266));
-        return evaluationResultMapper.findPage(new Page<>(dto.getPageNum(), dto.getPageSize()), queryDto);
+        // 格式化
+        format(queryDto);
+        Page<EvaluationResultVo> page =  evaluationResultMapper.findPage(new Page<>(dto.getPageNum(), dto.getPageSize()), queryDto);
+        List<EvaluationResultVo> list = page.getRecords();
+        if (CollectionUtil.isEmpty(list)) {
+            return page;
+        }
+        Map<String,String> stateMap = userCenterClient.selectListByPCodes("SC_EVALUATION_STATE");
+        Map<String,String> gradMap  = userCenterClient.selectListByPCodes("SC_EVALUATION_GRADE");
+        // 避免相同的id去缓存取
+        Map<String, String> companyOrgNameMap = new HashMap<>();
+        Map<String, String> deptOrgNameMap    = new HashMap<>();
+        for (EvaluationResultVo vo : list) {
+            if (StringUtils.isNotEmpty(vo.getCompanyOrgId())){
+                vo.setCompanyOrgName(getOrgName(companyOrgNameMap, vo.getCompanyOrgId()));
+            }
+            if (StringUtils.isNotEmpty(vo.getDeptOrgId())) {
+                vo.setDeptOrgName(getOrgName(deptOrgNameMap, vo.getDeptOrgId()));
+            }
+            vo.setState(stateMap.get(vo.getState()));
+            vo.setEvaluationGrade(gradMap.get(vo.getEvaluationGrade()));
+            vo.setCycle(vo.getYear() + "年" + vo.getMonth() + "月");
+        }
+        return page;
+    }
+
+
+
+    /**
+    * @Author lihui
+    * @Description 避免相同的id去缓存取
+    * @Date 14:39 2021/5/8
+    * @Param [map, id]
+    * @return java.lang.String
+    **/
+    private String getOrgName(Map<String, String> map, String id){
+        String value = map.get(id);
+        value = value != null ? value : orgInfoUtil.getOrgName(Integer.parseInt(id));
+        map.put(id, value);
+        return value;
+    }
+
+
+    private void format(EvaluationResultQueryDto dto){
+        Integer cycle = dto.getCycle();
+        if (cycle == null) {
+            throw new ServiceException(EvaluationResultStatus.PARAM_ERROR.getStatus(), EvaluationResultStatus.PARAM_ERROR.getMessage());
+        }
+        // 季度需要格式化
+        if (cycle == 2){
+            Integer month = dto.getMonth();
+            if (month == null){
+                throw new ServiceException(EvaluationResultStatus.PARAM_ERROR.getStatus(), EvaluationResultStatus.PARAM_ERROR.getMessage());
+            }
+            if (month == 1) {
+                dto.setMonth(3);
+            } else if (month == 2 ){
+                dto.setMonth(6);
+            } else if (month == 3) {
+                dto.setMonth(9);
+            } else if (month == 4) {
+                dto.setMonth(12);
+            } else {
+                throw new ServiceException(EvaluationResultStatus.PARAM_ERROR.getStatus(), EvaluationResultStatus.PARAM_ERROR.getMessage());
+            }
+        }
+        // dto.setSort(dto.getSort() == null ? 1 : dto.getSort());
     }
 
+
 }

+ 56 - 0
operation_manager/src/main/java/com/huaxu/evaluation/service/impl/EvaluationResultTaskDetailsServiceImpl.java

@@ -0,0 +1,56 @@
+package com.huaxu.evaluation.service.impl;
+
+import cn.hutool.core.collection.CollectionUtil;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.huaxu.client.UserCenterClient;
+import com.huaxu.evaluation.dao.EvaluationResultMapper;
+import com.huaxu.evaluation.dao.EvaluationResultTaskMapper;
+import com.huaxu.evaluation.dto.EvaluationResultDto;
+import com.huaxu.evaluation.dto.EvaluationResultQueryDto;
+import com.huaxu.evaluation.service.EvaluationResultService;
+import com.huaxu.evaluation.service.EvaluationResultTaskDetailsService;
+import com.huaxu.evaluation.vo.EvaluationResultTaskDetailsVo;
+import com.huaxu.evaluation.vo.EvaluationResultVo;
+import com.huaxu.model.LoginUser;
+import com.huaxu.org.OrgInfoUtil;
+import com.huaxu.util.UserUtil;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @ClassName EvaluationResultServiceImpl
+ * @Description: 考评结果业务处理
+ * @Author lihui
+ * @Date 2021/5/7
+ * @Version V1.0
+ **/
+@Slf4j
+@Service
+public class EvaluationResultTaskDetailsServiceImpl implements EvaluationResultTaskDetailsService {
+
+    @Autowired
+    private UserCenterClient userCenterClient;
+
+    @Autowired
+    private EvaluationResultTaskMapper evaluationResultTaskMapper;
+
+    @Override
+    public EvaluationResultTaskDetailsVo findResultTaskDetail(Integer evaluationResultId) {
+        EvaluationResultTaskDetailsVo vo =  evaluationResultTaskMapper.findResultTaskDetail(evaluationResultId);
+        if (vo == null) {
+            return vo;
+        }
+        Map<String,String> gradMap  = userCenterClient.selectListByPCodes("SC_EVALUATION_GRADE");
+        vo.setEvaluationGrade(gradMap.get(vo.getEvaluationGrade()));
+        vo.setCycle(vo.getYear() + "年" + vo.getMonth() + "月");
+        return vo;
+    }
+}

+ 36 - 0
operation_manager/src/main/java/com/huaxu/evaluation/vo/EvaluationResultDetailsVo.java

@@ -0,0 +1,36 @@
+package com.huaxu.evaluation.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * @ClassName EvaluationResultVo
+ * @Description: 考核结果出参
+ * @Author lihui
+ * @Date 2021/5/7
+ * @Version V1.0
+ **/
+@Data
+@ApiModel(value = "考评结果详情")
+public class EvaluationResultDetailsVo {
+
+    @ApiModelProperty(value = "考评结果详情ID")
+    private Integer resultDetailsId;
+
+    @ApiModelProperty(value = "考评项名字")
+    private Integer itemName;
+
+    @ApiModelProperty(value = "考评项总分值")
+    private BigDecimal itemScore;
+
+    @ApiModelProperty(value = "考评得分")
+    private BigDecimal score;
+
+    @ApiModelProperty(value = "评分标准")
+    private String remarks;
+
+
+}

+ 60 - 0
operation_manager/src/main/java/com/huaxu/evaluation/vo/EvaluationResultTaskDetailsVo.java

@@ -0,0 +1,60 @@
+package com.huaxu.evaluation.vo;
+
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.models.auth.In;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+/**
+ * @ClassName EvaluationResultVo
+ * @Description: 考核结果出参
+ * @Author lihui
+ * @Date 2021/5/7
+ * @Version V1.0
+ **/
+@Data
+@ApiModel(value = "考核结果返回信息")
+public class EvaluationResultTaskDetailsVo {
+
+    @ApiModelProperty(value = "任务总数")
+    private Integer totalCount;
+
+    @ApiModelProperty(value = "已完成")
+    private Integer completeCount;
+
+    @ApiModelProperty(value = "待完成")
+    private Integer noCompleteCount;
+
+    @ApiModelProperty(value = "延期完成")
+    private Integer delayCompleteCount;
+
+    @ApiModelProperty(value = "完成率")
+    private BigDecimal completionRate;
+
+    @ApiModelProperty(value = "延期率")
+    private BigDecimal delayRate;
+
+    @ApiModelProperty(value = "绩效得分")
+    private BigDecimal performanceScore;
+
+    @ApiModelProperty(value = "绩效等级")
+    private String evaluationGrade;
+
+    @ApiModelProperty(value = "考评周期")
+    private String cycle;
+
+    @JsonIgnore
+    @ApiModelProperty(value = "考评年份")
+    private String year;
+
+    @JsonIgnore
+    @ApiModelProperty(value = "考评月份")
+    private String month;
+
+    @ApiModelProperty(value = "考评项详情")
+    List<EvaluationResultDetailsVo> detailsVoList;
+}

+ 18 - 6
operation_manager/src/main/java/com/huaxu/evaluation/vo/EvaluationResultVo.java

@@ -1,5 +1,6 @@
 package com.huaxu.evaluation.vo;
 
+import com.fasterxml.jackson.annotation.JsonIgnore;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
@@ -23,15 +24,9 @@ public class EvaluationResultVo {
     @ApiModelProperty(value = "被考评人")
     private String evaluationBe;
 
-    @ApiModelProperty(value = "所属公司ID")
-    private String companyOrgId;
-
     @ApiModelProperty(value = "所属公司名字")
     private String companyOrgName;
 
-    @ApiModelProperty(value = "所属部门ID")
-    private String deptOrgId;
-
     @ApiModelProperty(value = "所属部门名字")
     private String deptOrgName;
 
@@ -47,5 +42,22 @@ public class EvaluationResultVo {
     @ApiModelProperty(value = "绩效等级")
     private String evaluationGrade;
 
+    // 以下是不需要返回给前端的数据
+
+    @JsonIgnore
+    @ApiModelProperty(value = "考评年份")
+    private String year;
+
+    @JsonIgnore
+    @ApiModelProperty(value = "考评月份")
+    private String month;
+
+    @JsonIgnore
+    @ApiModelProperty(value = "所属部门ID")
+    private String deptOrgId;
+
+    @JsonIgnore
+    @ApiModelProperty(value = "所属公司ID")
+    private String companyOrgId;
 
 }

+ 46 - 0
operation_manager/src/main/java/com/huaxu/order/controller/WorkOrderManageController.java

@@ -9,6 +9,8 @@ import com.huaxu.common.ConvertXY;
 import com.huaxu.common.FileUploadUtil;
 import com.huaxu.common.MyPoint;
 import com.huaxu.entity.Message;
+import com.huaxu.evaluation.enums.EvaluationResultStatus;
+import com.huaxu.exception.ServiceException;
 import com.huaxu.model.AjaxMessage;
 import com.huaxu.model.LoginUser;
 import com.huaxu.model.Pagination;
@@ -1018,5 +1020,49 @@ public class WorkOrderManageController {
         List<WorkOrderManageDto> result=workOrderManageService.selectOrderStatus(workOrderManageDto);
         return new AjaxMessage<>(ResultStatus.OK, result );
     }
+
+    /**
+     * APP运维管理全部查询
+     * @return Response对象
+     */
+    @RequestMapping(value = "findWorkOrderPage", method = RequestMethod.GET)
+    @ApiOperation(value = "APP运维管理全部查询")
+    public AjaxMessage<Pagination<WorkOrderManageDto>> findWorkOrderPage(@ApiParam(value = "用户Id")@RequestParam(required = false) Integer userId,
+                                                              @ApiParam(value = "周期类型:1月度,2季度,3年度")@RequestParam(required = false) Integer cycle,
+                                                              @ApiParam(value = "年份")@RequestParam(required = false) Integer year,
+                                                              @ApiParam(value = "月份")@RequestParam(required = false) Integer month,
+                                                              @ApiParam(value = "页数", required = true)@RequestParam Integer pageNum,
+                                                              @ApiParam(value = "条数", required = true)@RequestParam Integer pageSize) {
+        String startTime = null;
+        String endTime   = null;
+        if (cycle == 2) {
+            if (month == 1) {
+                startTime = year + "-1-1 00:00:00";
+                endTime   = year + "-3";
+            } else if (month == 2 ){
+                startTime = year + "-4-1 00:00:00";
+                endTime   = year + "-6";
+            } else if (month == 3) {
+                startTime = year + "-7-1 00:00:00";
+                endTime   = year + "-9";
+            } else if (month == 4) {
+                startTime = year + "-10-1 00:00:00";
+                endTime   = year + "-12";
+            }
+        } else if (cycle == 1) {
+            startTime = year + "-" + month + "-1 00:00:00";
+            endTime   = year + "-" + month;
+        } else if (cycle == 3) {
+            startTime = year + "-1-1 00:00:00";
+            endTime   = year + "-12";
+        }
+        endTime = endTime + "-" + DatesUtil.getMouthDays(endTime) + " 23:59:59";
+        IPage<WorkOrderManageDto> iPage = new Page<>(pageNum, pageSize);
+        iPage = workOrderManageService.selectByTime(iPage, userId, startTime, endTime);
+        Pagination<WorkOrderManageDto> pages = new Pagination<>(iPage);
+        setName(pages.getList());
+        return new AjaxMessage<>(ResultStatus.OK, pages);
+    }
 }
 
+

+ 3 - 0
operation_manager/src/main/java/com/huaxu/order/dao/WorkOrderManageMapper.java

@@ -68,5 +68,8 @@ public interface WorkOrderManageMapper {
 
     List<WorkOrderManageDto> selectOrderStatus(WorkOrderManageDto workOrderManageDto);
 
+    Page<WorkOrderManageDto> selectByTime( IPage<WorkOrderManageDto> page, @Param("userId")Integer userId, @Param("tenantId")String tenantId ,
+                                           @Param("startTime")String startTime, @Param("endTime")String endTime);
+
 
 }

+ 4 - 0
operation_manager/src/main/java/com/huaxu/order/service/WorkOrderManageService.java

@@ -101,4 +101,8 @@ public interface WorkOrderManageService {
 
 
     List<WorkOrderManageDto> selectMaintainOrder(WorkOrderManageDto workOrderManageDto);
+
+    Page<WorkOrderManageDto> selectByTime(IPage<WorkOrderManageDto> page, Integer userId, String startTime, String endTime);
+
+
 }

+ 6 - 0
operation_manager/src/main/java/com/huaxu/order/service/impl/WorkOrderManageServiceImpl.java

@@ -168,4 +168,10 @@ public class WorkOrderManageServiceImpl implements WorkOrderManageService {
     public List<WorkOrderManageDto> selectMaintainOrder(WorkOrderManageDto workOrderManageDto) {
         return workOrderManageMapper.selectMaintainOrder(workOrderManageDto);
     }
+
+    @Override
+    public Page<WorkOrderManageDto> selectByTime(IPage<WorkOrderManageDto> page, Integer userId, String startTime, String endTime) {
+        LoginUser currentUser = UserUtil.getCurrentUser();
+        return workOrderManageMapper.selectByTime(page, userId, currentUser.getTenantId(), startTime, endTime);
+    }
 }

+ 36 - 0
operation_manager/src/main/java/com/huaxu/utils/OperactionStringUtils.java

@@ -0,0 +1,36 @@
+package com.huaxu.utils;
+
+import java.util.List;
+
+/**
+ * @ClassName OperactionStringUtils
+ * @Description: TODO
+ * @Author lihui
+ * @Date 2021/5/8
+ * @Version V1.0
+ **/
+public class OperactionStringUtils {
+
+    /**
+     * @Author lihui
+     * @Description 检查值是否相同
+     * @Date 18:11 2021/5/8
+     * @Param [diffrent, list]
+     * @return boolean
+     **/
+    public static <T> boolean checkDifferent(List<T> different, List<T> list) {
+        if (different == null || list == null) {
+            return false;
+        }
+        if (different.size() != list.size() ){
+            return false;
+        }
+        for (T diff : different) {
+            if (!list.contains(diff)){
+                return false;
+            }
+        }
+        return true;
+    }
+
+}

+ 15 - 0
operation_manager/src/main/resources/mapper/evaluation/EvaluationResultDetailsMapper.xml

@@ -1,4 +1,19 @@
 <?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.huaxu.evaluation.dao.EvaluationResultDetailsMapper" >
+
+    <select id="findResultDetailsIds" resultType="java.lang.Integer">
+        select  d.id
+        from  sc_evaluation_result r
+        INNER JOIN sc_evaluation_result_details d  on d.EVALUATION_RESULT_ID = r.ID
+        where
+            r.id = #{evaluationResultId}
+            and r.status = 1 and d.status = 1
+    </select>
+
+    <update id="updateEvaluateScore">
+        update sc_evaluation_result_details
+        set `VALUE` = #{score}
+        where id = #{detailId}
+    </update>
 </mapper>

+ 33 - 0
operation_manager/src/main/resources/mapper/evaluation/EvaluationResultMapper.xml

@@ -51,7 +51,40 @@
                     </foreach>
                     and (a.DEPT_ORG_ID is null or a.DEPT_ORG_ID = 0)
                 </if>
+                <if test="dto.userName != null">
+                    and a.EVALUATION_BE like CONCAT('%',#{dto.userName,jdbcType=VARCHAR},'%')
+                </if>
+                <if test="dto.companyOrgId != null">
+                    and a.COMPANY_ORG_ID = #{dto.companyOrgId}
+                </if>
+                <if test="dto.deptOrgId != null">
+                    and a.DEPT_ORG_ID = #{dto.deptOrgId}
+                </if>
+                <if test="dto.state != null">
+                    and a.`STATE` = #{dto.state}
+                </if>
+                and a.`cycle` = #{dto.cycle}
+                and a.`YEAR`  = #{dto.year}
+                <if test="dto.cycle == 3">
+                    and a.`month` = #{dto.year}
+                </if>
             </if>
         </where>
+        <if test="dto.sort != null and dto.sort == 1">
+            order by a.`YEAR` desc,a.`MONTH` desc, a.`state`
+        </if>
+        <if test="dto.sort != null and dto.sort == 2">
+            order by a.`YEAR` desc,a.`MONTH` desc,a.`VALUE` desc
+        </if>
+    </select>
+
+    <select id="findEvaluationState" resultType="java.lang.Integer">
+        select `state` from sc_evaluation_result where id =#{evaluationResultId}
     </select>
+
+    <update id="updateEvaluationScore">
+        update  sc_evaluation_result
+        set `VALUE` = #{score}, `state` = 1
+        where id = #{evaluationResultId}
+    </update>
 </mapper>

+ 45 - 0
operation_manager/src/main/resources/mapper/evaluation/EvaluationResultTaskMapper.xml

@@ -0,0 +1,45 @@
+<?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.huaxu.evaluation.dao.EvaluationResultTaskMapper" >
+
+
+    <resultMap id="evaluationResultTaskDetailsVo" type="com.huaxu.evaluation.vo.EvaluationResultTaskDetailsVo">
+        <result property="totalCount" column="TOTAL_COUNT" jdbcType="INTEGER"/>
+        <result property="completeCount" column="COMPLETE_COUNT" jdbcType="INTEGER"/>
+        <result property="noCompleteCount" column="NO_COMPLETE_COUNT" jdbcType="INTEGER"/>
+        <result property="delayCompleteCount" column="DELAY_COMPLETE_COUNT" jdbcType="INTEGER"/>
+        <result property="completionRate" column="COMPLETION_RATE" jdbcType="INTEGER"/>
+        <result property="delayRate" column="DELAY_RATE" jdbcType="INTEGER"/>
+        <result property="performanceScore" column="performanceScore" jdbcType="INTEGER"/>
+        <result property="evaluationGrade" column="EVALUATION_GRADE" jdbcType="INTEGER"/>
+        <result property="year" column="YEAR" jdbcType="INTEGER"/>
+        <result property="month" column="MONTH" jdbcType="INTEGER"/>
+        <result property="delayCompleteCount" column="DELAY_COMPLETE_COUNT" jdbcType="INTEGER"/>
+
+        <collection property="detailsVoList"  resultMap="detailsVoMap"></collection>
+    </resultMap>
+
+    <resultMap id="detailsVoMap" type="com.huaxu.evaluation.vo.EvaluationResultDetailsVo">
+        <result property="resultDetailsId" column="resultDetailsId" jdbcType="INTEGER"/>
+        <result property="itemName" column="itemName" jdbcType="INTEGER"/>
+        <result property="itemScore" column="itemScore" jdbcType="INTEGER"/>
+        <result property="score" column="score" jdbcType="INTEGER"/>
+        <result property="remarks" column="remarks" jdbcType="INTEGER"/>
+    </resultMap>
+
+
+    <select id="findResultTaskDetail" resultMap="evaluationResultTaskDetailsVo">
+        select
+            r.`YEAR`, r.`MONTH`,r.`VALUE` as "performanceScore",r.EVALUATION_GRADE,
+            t.TOTAL_COUNT,t.COMPLETE_COUNT,t.NO_COMPLETE_COUNT,t.DELAY_COMPLETE_COUNT,t.COMPLETION_RATE,t.DELAY_RATE,
+            d.ID as "resultDetailsId", d.`VALUE` as "score",
+            i.`NAME` as "itemName",i.`VALUE` as "itemScore",i.REMARKS
+        from
+            sc_evaluation_result r
+        INNER JOIN sc_evaluation_result_task t     on t.EVALUATION_RESULT_ID = r.ID
+        INNER JOIN sc_evaluation_result_details d  on d.EVALUATION_RESULT_ID = r.ID
+        INNER JOIN sc_evaluation_item i            on i.id = d.EVALUATION_ITEM_ID
+        where
+              r.id = #{evaluationResultId} and r.status = 1 and t.status =1 and d.status = 1 and i.status = 1
+    </select>
+</mapper>

+ 19 - 0
operation_manager/src/main/resources/mapper/order/WorkOrderManageMapper.xml

@@ -862,4 +862,23 @@
       order by t1.date_create desc
     </where>
   </select>
+
+  <select id="selectByTime" resultMap="BaseResultMap">
+    select distinct t1.id,task_no,send_time,address,order_type_id,current_task_name,t1.create_by,t1.update_by,task_desc,order_status,in_process_status
+    from sc_work_order_manage t1
+           left join sc_work_flow_log t2 ON t1.id=t2.flow_id and flow_type=2 and find_in_set(#{userId},handle_user_id) and left(flow_result,2)='拒单'
+    where (find_in_set(#{userId},current_users)
+       or t1.id in(select flow_id from sc_work_flow_log where flow_type=2 and find_in_set(#{userId},handle_user_id)))
+      and tenant_id = #{tenantId}
+      and (t2.id is null or t1.order_user_id=t2.handle_user_id)
+      and t1.date_create between #{startTime} and #{endTime}
+    union
+    select id,plan_id,plan_date,task_area_name,task_type,current_task_name,create_by,update_by,task_content,plan_status,in_process_status
+    from sc_plan_manage
+    where (find_in_set(#{userId},current_users)
+      or id in(select flow_id from sc_work_flow_log where flow_type=1 and find_in_set(#{userId},handle_user_id)))
+      and tenant_id = #{tenantId}
+      and date_create between #{startTime} and #{endTime}
+    order by send_time desc
+  </select>
 </mapper>