Commit 08df0045f7275354561fe9d8eeea2c93cbad3946

Authored by 姜超
1 parent 7e7c92a1

feature(*): 考评排名组计算修改

考评排名组计算修改
fw-morax-domain/src/main/java/cn/fw/morax/domain/dto/query/SettingDraftQueryDTO.java
... ... @@ -20,12 +20,12 @@ public class SettingDraftQueryDTO extends BasePageQuery {
20 20 @EnumValue(enumClass = SettingDraftStatusEnum.class, valueMethod = "getValue", message = "状态枚举值不正确")
21 21 private Integer status;
22 22  
23   - /**
24   - * 草稿类型; 1:考评 2: 绩效 3: 薪酬 4 :绩效排名组
25   - */
26   - @NotNull(message = "草稿类型不能为空")
27   - @EnumValue(enumClass = SettingDraftTypeEnum.class, valueMethod = "getValue", message = "类型枚举值不正确")
28   - private Integer type;
  23 +// /**
  24 +// * 草稿类型; 1:考评 2: 绩效 3: 薪酬 4 :绩效排名组
  25 +// */
  26 +// @NotNull(message = "草稿类型不能为空")
  27 +// @EnumValue(enumClass = SettingDraftTypeEnum.class, valueMethod = "getValue", message = "类型枚举值不正确")
  28 +// private Integer type;
29 29  
30 30 /**
31 31 * 考评类型; 1:活动考评 2:其他考评
... ...
fw-morax-service/src/main/java/cn/fw/morax/service/biz/SettingDraftBizService.java
... ... @@ -60,14 +60,14 @@ public class SettingDraftBizService {
60 60 PageData<SettingDraft> pageData = settingDraftService.page(new PageData<>(dto.getCurrent(), dto.getPageSize()),
61 61 Wrappers.<SettingDraft>lambdaQuery()
62 62 .eq(SettingDraft::getGroupId, dto.getGroupId())
63   - .eq(SettingDraft::getType, dto.getType())
  63 + .eq(SettingDraft::getType, SettingDraftTypeEnum.KPI)
64 64 .eq(PublicUtil.isNotEmpty(dto.getPostId()), SettingDraft::getPostId, dto.getPostId())
65 65 .eq(PublicUtil.isNotEmpty(dto.getStatus()), SettingDraft::getStatus, dto.getStatus())
66 66 .eq(SettingDraft::getYn, Boolean.TRUE)
67 67 .last("ORDER BY id DESC")
68 68 );
69 69  
70   - Map<Long, String> finalApprovalRecordMap = getApprovalNo(pageData, dto.getType());
  70 + Map<Long, String> finalApprovalRecordMap = getApprovalNo(pageData, SettingDraftTypeEnum.KPI.getValue());
71 71 return PublicUtil.toPage(pageData, settingDraft -> {
72 72 KpiGroupDTO kpiGroupDTO = JSON.parseObject(settingDraft.getContent(), KpiGroupDTO.class);
73 73 kpiGroupDTO.setApprovalNo(finalApprovalRecordMap.getOrDefault(settingDraft.getId(), ""));
... ... @@ -86,7 +86,7 @@ public class SettingDraftBizService {
86 86 PageData<SettingDraft> pageData = settingDraftService.page(new PageData<>(dto.getCurrent(), dto.getPageSize()),
87 87 Wrappers.<SettingDraft>lambdaQuery()
88 88 .eq(SettingDraft::getGroupId, dto.getGroupId())
89   - .eq(SettingDraft::getType, dto.getType())
  89 + .eq(SettingDraft::getType, SettingDraftTypeEnum.KPI_GROUP_RANK)
90 90 .apply(PublicUtil.isNotEmpty(dto.getPostId()), MessageFormatUtil.transferWithQuotationMarks("FIND_IN_SET({0}, post_ids)", dto.getPostId()))
91 91 .apply(PublicUtil.isNotEmpty(dto.getShopId()), MessageFormatUtil.transferWithQuotationMarks("FIND_IN_SET({0}, shop_ids)", dto.getShopId()))
92 92 .eq(PublicUtil.isNotEmpty(dto.getStatus()), SettingDraft::getStatus, dto.getStatus())
... ... @@ -95,7 +95,7 @@ public class SettingDraftBizService {
95 95 .last("ORDER BY id DESC")
96 96 );
97 97  
98   - Map<Long, String> finalApprovalRecordMap = getApprovalNo(pageData, dto.getType());
  98 + Map<Long, String> finalApprovalRecordMap = getApprovalNo(pageData, SettingDraftTypeEnum.KPI_GROUP_RANK.getValue());
99 99 return PublicUtil.toPage(pageData, settingDraft -> {
100 100 KpiGroupRankDTO kpiGroupRankDTO = JSON.parseObject(settingDraft.getContent(), KpiGroupRankDTO.class);
101 101 kpiGroupRankDTO.setApprovalNo(finalApprovalRecordMap.getOrDefault(settingDraft.getId(), ""));
... ... @@ -121,7 +121,7 @@ public class SettingDraftBizService {
121 121 PageData<SettingDraft> pageData = settingDraftService.page(new PageData<>(dto.getCurrent(), dto.getPageSize()),
122 122 Wrappers.<SettingDraft>lambdaQuery()
123 123 .eq(SettingDraft::getGroupId, dto.getGroupId())
124   - .eq(SettingDraft::getType, dto.getType())
  124 + .eq(SettingDraft::getType, SettingDraftTypeEnum.EVAL_GROUP_RANK)
125 125 .apply(PublicUtil.isNotEmpty(dto.getPostId()), MessageFormatUtil.transferWithQuotationMarks("FIND_IN_SET({0}, post_ids)", dto.getPostId()))
126 126 .apply(PublicUtil.isNotEmpty(dto.getShopId()), MessageFormatUtil.transferWithQuotationMarks("FIND_IN_SET({0}, shop_ids)", dto.getShopId()))
127 127 .eq(PublicUtil.isNotEmpty(dto.getStatus()), SettingDraft::getStatus, dto.getStatus())
... ... @@ -130,7 +130,7 @@ public class SettingDraftBizService {
130 130 .last("ORDER BY id DESC")
131 131 );
132 132  
133   - Map<Long, String> finalApprovalRecordMap = getApprovalNo(pageData, dto.getType());
  133 + Map<Long, String> finalApprovalRecordMap = getApprovalNo(pageData, SettingDraftTypeEnum.EVAL_GROUP_RANK.getValue());
134 134 return PublicUtil.toPage(pageData, settingDraft -> {
135 135 EvalGroupRankDTO evalGroupRankDTO = JSON.parseObject(settingDraft.getContent(), EvalGroupRankDTO.class);
136 136 evalGroupRankDTO.setApprovalNo(finalApprovalRecordMap.getOrDefault(settingDraft.getId(), ""));
... ... @@ -156,14 +156,14 @@ public class SettingDraftBizService {
156 156 PageData<SettingDraft> pageData = settingDraftService.page(new PageData<>(dto.getCurrent(), dto.getPageSize()),
157 157 Wrappers.<SettingDraft>lambdaQuery()
158 158 .eq(SettingDraft::getGroupId, dto.getGroupId())
159   - .eq(SettingDraft::getType, dto.getType())
  159 + .eq(SettingDraft::getType, SettingDraftTypeEnum.SALARY)
160 160 .eq(PublicUtil.isNotEmpty(dto.getPostId()), SettingDraft::getPostId, dto.getPostId())
161 161 .eq(PublicUtil.isNotEmpty(dto.getStatus()), SettingDraft::getStatus, dto.getStatus())
162 162 .eq(SettingDraft::getYn, Boolean.TRUE)
163 163 .last("ORDER BY id DESC")
164 164 );
165 165  
166   - Map<Long, String> finalApprovalRecordMap = getApprovalNo(pageData, dto.getType());
  166 + Map<Long, String> finalApprovalRecordMap = getApprovalNo(pageData, SettingDraftTypeEnum.SALARY.getValue());
167 167 return PublicUtil.toPage(pageData, settingDraft -> {
168 168 SalaryGroupDTO salaryGroupDTO = JSON.parseObject(settingDraft.getContent(), SalaryGroupDTO.class);
169 169 salaryGroupDTO.setApprovalNo(finalApprovalRecordMap.getOrDefault(settingDraft.getId(), ""));
... ... @@ -188,7 +188,7 @@ public class SettingDraftBizService {
188 188 .last("ORDER BY id DESC")
189 189 );
190 190  
191   - Map<Long, String> finalApprovalRecordMap = getApprovalNo(pageData, dto.getType());
  191 + Map<Long, String> finalApprovalRecordMap = getApprovalNo(pageData, SettingDraftTypeEnum.EVAL.getValue());
192 192 return PublicUtil.toPage(pageData, settingDraft -> {
193 193 EvalDTO evalDTO = JSON.parseObject(settingDraft.getContent(), EvalDTO.class);
194 194 evalDTO.setApprovalNo(finalApprovalRecordMap.getOrDefault(settingDraft.getId(), ""));
... ...
fw-morax-service/src/main/java/cn/fw/morax/service/biz/calculator/eval/kpi/EvalKpiBaseCalculator.java
... ... @@ -157,8 +157,9 @@ public abstract class EvalKpiBaseCalculator implements Calculator&lt;EvalGroupUserS
157 157 BigDecimal targetValue = param.getTargetValue();
158 158 TargetCalcTypeEnum targetCalcType = param.getTargetCalcType();
159 159 indicatorValue = calcTarget(targetCalcType, indicatorValue, targetValue);
  160 + //额外计算类型值 原始计算类型值 用大的那个值
160 161 if (PublicUtil.isNotEmpty(extraTargetType) && (!TargetTypeEnum.NO.equals(extraTargetType))) {
161   - BigDecimal extraIndicatorValue = calcTarget(param.getExtraTargetCalcType(), indicatorValue, targetValue);
  162 + BigDecimal extraIndicatorValue = calcTarget(param.getExtraTargetCalcType(), originValue, param.getExtraTargetValue());
162 163 if (extraIndicatorValue.compareTo(indicatorValue) > 0) {
163 164 indicatorValue = extraIndicatorValue;
164 165 }
... ...