Commit dad803db152f30ee3cc56796564c26a12b6155be
1 parent
16ee250d
feature(*): 修改展示查询
修改展示查询
Showing
4 changed files
with
18 additions
and
2 deletions
fw-morax-domain/src/main/java/cn/fw/morax/domain/vo/salary/SalaryGroupIndicatorDetailVO.java
1 | 1 | package cn.fw.morax.domain.vo.salary; |
2 | 2 | |
3 | +import cn.fw.morax.domain.enums.DataTypeEnum; | |
3 | 4 | import cn.fw.morax.domain.enums.SalaryCalMethodEnum; |
4 | 5 | import cn.fw.morax.domain.enums.StarLevelEnum; |
5 | 6 | import cn.fw.morax.domain.vo.kpi.KpiGroupIndicatorLaddersVO; |
... | ... | @@ -69,6 +70,11 @@ public class SalaryGroupIndicatorDetailVO { |
69 | 70 | public String preconditionAlias; |
70 | 71 | |
71 | 72 | /** |
73 | + * 数据类型;1:数量 2:百分比 3:金额 | |
74 | + */ | |
75 | + private DataTypeEnum laddersType; | |
76 | + | |
77 | + /** | |
72 | 78 | * 薪酬阶梯 |
73 | 79 | */ |
74 | 80 | private List<SalaryGroupProjectSettinVO> settings; | ... | ... |
fw-morax-service/src/main/java/cn/fw/morax/service/biz/kpi/KpiGroupIndicatorBizService.java
... | ... | @@ -494,7 +494,12 @@ public class KpiGroupIndicatorBizService { |
494 | 494 | if (! staff.getInclusion()) { |
495 | 495 | continue; |
496 | 496 | } |
497 | - if (PublicUtil.isNotEmpty(lastIndicatorValue) && (lastIndicatorValue.compareTo(staff.getOriginValue()) != 0)) { | |
497 | + if (PublicUtil.isEmpty(lastIndicatorValue) || PublicUtil.isEmpty(staff.getOriginValue()) ) { | |
498 | + staff.setIndicatorRank(rank); | |
499 | + lastIndicatorValue = staff.getOriginValue(); | |
500 | + continue; | |
501 | + } | |
502 | + if (lastIndicatorValue.compareTo(staff.getOriginValue()) != 0) { | |
498 | 503 | rank++; |
499 | 504 | } |
500 | 505 | staff.setIndicatorRank(rank); | ... | ... |
fw-morax-service/src/main/java/cn/fw/morax/service/biz/kpi/KpiPoolBizService.java
... | ... | @@ -518,7 +518,7 @@ public class KpiPoolBizService { |
518 | 518 | .eq(KpiPool::getUserId, userId) |
519 | 519 | .eq(KpiPool::getInclusion, Boolean.TRUE) |
520 | 520 | .eq(KpiPool::getYn, Boolean.TRUE) |
521 | - .orderByAsc(KpiPool::getMonthly) | |
521 | + .orderByDesc(KpiPool::getMonthly) | |
522 | 522 | ); |
523 | 523 | if (PublicUtil.isNotEmpty(kpiPools)) { |
524 | 524 | List<KpiPoolDetailVO> kpis = PublicUtil.copyList(kpiPools, KpiPoolDetailVO.class); | ... | ... |
fw-morax-service/src/main/java/cn/fw/morax/service/biz/salary/SalaryPoolBizService.java
... | ... | @@ -533,6 +533,7 @@ public class SalaryPoolBizService { |
533 | 533 | SalaryGroupIndicatorDetailVO detailVO = new SalaryGroupIndicatorDetailVO(); |
534 | 534 | SalaryGroupProject salaryGroupProject = salaryGroupProjectService.getById(salaryGroupProjectId); |
535 | 535 | BV.notNull(salaryGroupProject, "薪酬项目不存在"); |
536 | + detailVO.setLaddersType(salaryGroupProject.getLaddersType()); | |
536 | 537 | |
537 | 538 | |
538 | 539 | CountDownLatch countDownLatch = new CountDownLatch(3); |
... | ... | @@ -621,12 +622,16 @@ public class SalaryPoolBizService { |
621 | 622 | SalaryGroupProjectHitLog salaryProjectHitLog = salaryProjectHitLogs.stream().findFirst().get(); |
622 | 623 | Long hitSettingId = salaryProjectHitLog.getSalaryGroupProjectSettinId(); |
623 | 624 | |
625 | + Boolean ratio = PublicUtil.isNotEmpty(detailVO.getLaddersType()) && DataTypeEnum.RATIO.equals(detailVO.getLaddersType()); | |
624 | 626 | detailVO.setSettings(settings.stream().map(setting -> { |
625 | 627 | SalaryGroupProjectSettinVO settingVO = PublicUtil.copy(setting, SalaryGroupProjectSettinVO.class); |
626 | 628 | settingVO.setHit((hitSettingId.equals(settingVO.getId()) ? Boolean.TRUE : Boolean.FALSE)); |
627 | 629 | if (hitSettingId.equals(settingVO.getId())) { |
628 | 630 | settingVO.setHitCommissionValue(salaryProjectHitLog.getHitCommissionValue()); |
629 | 631 | } |
632 | + if (ratio) { | |
633 | + settingVO.processPercent(); | |
634 | + } | |
630 | 635 | return settingVO; |
631 | 636 | }).collect(Collectors.toList())); |
632 | 637 | detailVO.setSalaryValue(salaryProjectHitLog.getSalaryValue()); | ... | ... |