|
@@ -25,13 +25,19 @@ import org.springframework.stereotype.Component;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
-import java.math.RoundingMode;
|
|
|
import java.time.LocalDate;
|
|
|
import java.util.*;
|
|
|
|
|
|
/**
|
|
|
- * @ClassName EvaluationResultJob
|
|
|
- * @Description: TODO
|
|
|
+ * 生成绩效考评数据,每天启动一次脚本
|
|
|
+ * 1.检查考评日期是否是当天
|
|
|
+ * 2.季度数据需要在1月、4月、7月、10月生成对应的季度数据:
|
|
|
+ * 1月对应10、11、12
|
|
|
+ * 4月对应1、2、3
|
|
|
+ * 7月对应4、5、6
|
|
|
+ * 10月对应7、8、9
|
|
|
+ * 3.年度数据在1月生成去年整年数据
|
|
|
+ * 4.按照上面指定的月、季度、年度得出具体时间并查询运维人员的工单情况,计算出工单/任务的一个完成情况,根据设置的考评项目得出对应的分数
|
|
|
* @Author lihui
|
|
|
* @Date 2021/5/7
|
|
|
* @Version V1.0
|
|
@@ -83,6 +89,7 @@ public class EvaluationResultJob {
|
|
|
|
|
|
/***
|
|
|
*
|
|
|
+ * @Scheduled(cron = "0/5 * * * * ?")
|
|
|
* 异步启动定时任务,每天凌晨4点
|
|
|
* @Author lihui
|
|
|
* @Date 18:26 2021/5/17
|
|
@@ -334,13 +341,16 @@ public class EvaluationResultJob {
|
|
|
}
|
|
|
|
|
|
|
|
|
- /**
|
|
|
- * @Author lihui
|
|
|
- * @Description 组装考评结果数据
|
|
|
- * @Date 15:03 2021/5/11
|
|
|
- * @Param [userEntity, calendar, cycle, startTime, endTime]
|
|
|
- * @return com.huaxu.evaluation.entity.EvaluationResultEntity
|
|
|
- **/
|
|
|
+ /***
|
|
|
+ * 组装考评结果数据
|
|
|
+ * @author lihui
|
|
|
+ * @date 11:47 2021/5/11
|
|
|
+ * @param userEntity : 用户信息
|
|
|
+ * @param cycle : 月度、季度、年度
|
|
|
+ * @param startTime : 开始时间
|
|
|
+ * @param endTime : 结束时间
|
|
|
+ * @return com.huaxu.evaluation.entity.EvaluationResultEntity
|
|
|
+ **/
|
|
|
private EvaluationResultEntity packagesEvaluationResultEntity(UserEntity userEntity, Integer cycle, String startTime, String endTime){
|
|
|
LocalDate localDate = EvaluationUtil.getLocalDateByCycle(startTime, endTime, cycle);
|
|
|
EvaluationResultEntity resultEntity = new EvaluationResultEntity();
|
|
@@ -362,11 +372,11 @@ public class EvaluationResultJob {
|
|
|
|
|
|
/***
|
|
|
* 获取对应的分数
|
|
|
- * @Author lihui
|
|
|
+ * @author lihui
|
|
|
* @Date 10:32 2021/5/19
|
|
|
* @param item : 考评项目设置内容
|
|
|
* @param evaluationValue : 统计到的分值
|
|
|
- * @return java.math.BigDecimal
|
|
|
+ * @return java.math.BigDecimal 分数
|
|
|
**/
|
|
|
private BigDecimal getScore (EvaluationItemVo item, BigDecimal evaluationValue){
|
|
|
// 如果是自定义直接返回默认分数
|
|
@@ -407,7 +417,7 @@ public class EvaluationResultJob {
|
|
|
**/
|
|
|
private BigDecimal getValueCondition(List<EvaluationItemVo> itemEntityList){
|
|
|
for (EvaluationItemVo evaluationItemVo: itemEntityList) {
|
|
|
- if (evaluationItemVo.getType() == 2) {
|
|
|
+ if (evaluationItemVo.getType() == EvaluationItemEnums.COMPLETION_RATE.getType()) {
|
|
|
return evaluationItemVo.getValueCondition();
|
|
|
}
|
|
|
}
|