Commit b7c28a4a15ce6fec18b5672c2556b42077d232d5
1 parent
08af6e93
feature(*): 注释校验,系统会自动将重复绩效组禁用
注释校验,系统会自动将重复绩效组禁用
Showing
2 changed files
with
13 additions
and
10 deletions
fw-morax-server/src/main/java/cn/fw/morax/server/task/SalaryReportTask.java
... | ... | @@ -226,7 +226,10 @@ public class SalaryReportTask { |
226 | 226 | List<ReportSalaryDimValue> reportSalaryValues = new ArrayList<>(); |
227 | 227 | //人的维度为基础,计算各个指标信息对应的数据 |
228 | 228 | for (SalaryPool pool : pools) { |
229 | - ReportSalaryDim reportSalaryDim = saveStaffDim(pool, date, reportSalaryId); | |
229 | + //如果计算日期 与 报表数据抽取日期不一致,使用计算日期(计算日期每个人都可能不一致) | |
230 | + LocalDate dataDate = (pool.getDataDate().compareTo(date) == 0) ? date : pool.getDataDate(); | |
231 | + | |
232 | + ReportSalaryDim reportSalaryDim = saveStaffDim(pool, dataDate, reportSalaryId); | |
230 | 233 | userDims.add(reportSalaryDim); |
231 | 234 | final Long userId = pool.getUserId(); |
232 | 235 | final Long reportSalaryDimId = reportSalaryDim.getId(); |
... | ... | @@ -236,7 +239,7 @@ public class SalaryReportTask { |
236 | 239 | continue; |
237 | 240 | } |
238 | 241 | final Long salaryGroupProjectId = salaryGroupProject.getId(); |
239 | - reportSalaryValues.add(this.convertDB(salaryGroupProject, reportSalaryDimId, date, userSalaryMap.get(userId, salaryGroupProjectId))); | |
242 | + reportSalaryValues.add(this.convertDB(salaryGroupProject, reportSalaryDimId, dataDate, userSalaryMap.get(userId, salaryGroupProjectId))); | |
240 | 243 | List<SalaryGroupProjectParamVO> salaryGroupProjectParamVos = salaryGroupProjectParamService.getSalaryGroupProjectParamVO(salaryGroupProject.getId()); |
241 | 244 | |
242 | 245 | if (salaryGroupProject.getCalMethod().equals(SalaryCalMethodEnum.CAR_SERIES)) { |
... | ... | @@ -251,15 +254,15 @@ public class SalaryReportTask { |
251 | 254 | } |
252 | 255 | if (TargetTypeEnum.NO.equals(salaryGroupProjectParam.getTargetType())) { |
253 | 256 | //无目标 |
254 | - Map<Long, BigDecimal> userValueMap = queryUserOriginValue(salaryGroupProjectParam.getIndicatorCode(), userId, date); | |
257 | + Map<Long, BigDecimal> userValueMap = queryUserOriginValue(salaryGroupProjectParam.getIndicatorCode(), userId, dataDate); | |
255 | 258 | BigDecimal value = userValueMap.getOrDefault(userId, BigDecimal.ZERO); |
256 | - reportSalaryValues.add(this.convertNoTargetDB(salaryGroupProject, salaryGroupProjectParam, date, reportSalaryDimId, value)); | |
259 | + reportSalaryValues.add(this.convertNoTargetDB(salaryGroupProject, salaryGroupProjectParam, dataDate, reportSalaryDimId, value)); | |
257 | 260 | } else { |
258 | 261 | //有目标 |
259 | - Map<Long, SalaryGroupProjectTargetHitLog> targetHitLogMap = queryUserTargetValue(salaryGroupProjectParam.getId(), userId, date); | |
262 | + Map<Long, SalaryGroupProjectTargetHitLog> targetHitLogMap = queryUserTargetValue(salaryGroupProjectParam.getId(), userId, dataDate); | |
260 | 263 | SalaryGroupProjectTargetHitLog hitLog = targetHitLogMap.get(userId); |
261 | 264 | BigDecimal value = Optional.ofNullable(hitLog).map(SalaryGroupProjectTargetHitLog::getReachValue).orElse(BigDecimal.ZERO); |
262 | - reportSalaryValues.add(this.convertTargetDB(salaryGroupProject, salaryGroupProjectParam, date, reportSalaryDimId, value)); | |
265 | + reportSalaryValues.add(this.convertTargetDB(salaryGroupProject, salaryGroupProjectParam, dataDate, reportSalaryDimId, value)); | |
263 | 266 | } |
264 | 267 | } |
265 | 268 | } | ... | ... |
fw-morax-service/src/main/java/cn/fw/morax/service/biz/kpi/KpiGroupBizService.java
... | ... | @@ -549,10 +549,10 @@ public class KpiGroupBizService { |
549 | 549 | .eq(KpiGroup::getStatus, SettingStatusEnum.EFFECTIVE) |
550 | 550 | ); |
551 | 551 | // BV.isTrue(count <= 0, "绩效组名称重复,请重新输入"); |
552 | - if (count > 0) { | |
553 | - log.info("绩效组名称重复,name:{},id:{}: ", name, Optional.ofNullable(id).orElse(0L).toString()); | |
554 | - throw new BusinessException("绩效组名称重复,请重新输入"); | |
555 | - } | |
552 | +// if (count > 0) { | |
553 | +// log.info("绩效组名称重复,name:{},id:{}: ", name, Optional.ofNullable(id).orElse(0L).toString()); | |
554 | +// throw new BusinessException("绩效组名称重复,请重新输入"); | |
555 | +// } | |
556 | 556 | |
557 | 557 | List<SettingDraft> drafts = commonService.getEditDraftByName(name, SettingDraftTypeEnum.KPI, draftId); |
558 | 558 | BV.isTrue(drafts.size() <= 0, "绩效组名称在草稿中存在,请重新输入"); | ... | ... |