Commit 2d28e4ad57fa445fea30e6fa628212dbe83e5d98
Merge branch 'test' into 'main'
feature(*): 定时任务修改 定时任务修改 See merge request !37
Showing
4 changed files
with
47 additions
and
3 deletions
fw-morax-domain/src/main/java/cn/fw/morax/domain/db/kpi/KpiRatio.java
... | ... | @@ -155,14 +155,19 @@ public class KpiRatio extends BaseEntity<KpiRatio, Long> { |
155 | 155 | private BigDecimal b2; |
156 | 156 | |
157 | 157 | /** |
158 | + * 绩效上月得分率 | |
159 | + */ | |
160 | + private BigDecimal b3; | |
161 | + | |
162 | + /** | |
158 | 163 | * 绩效前两月得分率 |
159 | 164 | */ |
160 | 165 | private BigDecimal b4; |
161 | 166 | |
162 | 167 | /** |
163 | - * 绩效上月得分率 | |
168 | + * 人员数量 | |
164 | 169 | */ |
165 | - private BigDecimal b3; | |
170 | + private BigDecimal b7; | |
166 | 171 | |
167 | 172 | /** |
168 | 173 | * 是否纳入绩效考核 | ... | ... |
fw-morax-domain/src/main/java/cn/fw/morax/domain/db/salary/SalaryReward.java
fw-morax-server/src/main/java/cn/fw/morax/server/task/KpiReportRatioTask.java
... | ... | @@ -284,6 +284,7 @@ public class KpiReportRatioTask { |
284 | 284 | kpiRatio.setB2(monthRatio(curMonthPools, predicate)); |
285 | 285 | kpiRatio.setB3(monthRatio(preMonthPools, predicate)); |
286 | 286 | kpiRatio.setB4(monthRatio(preTwoMonthPools, predicate)); |
287 | + kpiRatio.setB7(countStaffNum(curMonthPools, predicate)); | |
287 | 288 | kpiRatios.add(kpiRatio); |
288 | 289 | }); |
289 | 290 | |
... | ... | @@ -354,6 +355,7 @@ public class KpiReportRatioTask { |
354 | 355 | kpiRatio.setL2(shopId); |
355 | 356 | kpiRatio.setS2(shop.getShopName()); |
356 | 357 | kpiRatio.setB1(averageRatio(curMonthPools, predicate)); |
358 | + kpiRatio.setB7(countStaffNum(curMonthPools, predicate)); | |
357 | 359 | kpiRatio.setB2(monthRatio(curMonthPools, predicate)); |
358 | 360 | kpiRatio.setB3(monthRatio(preMonthPools, predicate)); |
359 | 361 | kpiRatio.setB4(monthRatio(preTwoMonthPools, predicate)); |
... | ... | @@ -403,6 +405,7 @@ public class KpiReportRatioTask { |
403 | 405 | kpiRatio.setL2(shopId); |
404 | 406 | kpiRatio.setS2(shop.getShopName()); |
405 | 407 | kpiRatio.setB1(averageRatio(curMonthPools, predicate)); |
408 | + kpiRatio.setB7(countStaffNum(curMonthPools, predicate)); | |
406 | 409 | kpiRatio.setB2(monthRatio(curMonthPools, predicate)); |
407 | 410 | kpiRatio.setB3(monthRatio(preMonthPools, predicate)); |
408 | 411 | kpiRatio.setB4(monthRatio(preTwoMonthPools, predicate)); |
... | ... | @@ -515,7 +518,21 @@ public class KpiReportRatioTask { |
515 | 518 | } |
516 | 519 | } |
517 | 520 | |
518 | - | |
521 | + /** | |
522 | + * 绩效池平均绩效得分率 | |
523 | + * | |
524 | + * @param pools | |
525 | + * @return | |
526 | + */ | |
527 | + public BigDecimal countStaffNum(Collection<KpiPool> pools, Predicate<KpiPool> predicate) { | |
528 | + if (CollectionUtils.isEmpty(pools)) { | |
529 | + return BigDecimal.ZERO; | |
530 | + } | |
531 | + Long staffNum = pools.stream() | |
532 | + .filter(predicate) | |
533 | + .count(); | |
534 | + return new BigDecimal(staffNum); | |
535 | + } | |
519 | 536 | |
520 | 537 | /** |
521 | 538 | * 绩效池平均绩效得分率 | ... | ... |
fw-morax-server/src/main/java/cn/fw/morax/server/task/SalaryReportTask.java
... | ... | @@ -249,6 +249,7 @@ public class SalaryReportTask { |
249 | 249 | return shopId.equals(pool.getShopId()) && manageStaffIds.contains(pool.getUserId()); |
250 | 250 | }; |
251 | 251 | salary.setB1(totalSalary(pools, predicate)); |
252 | + salary.setB5(countStaffNum(pools, predicate)); | |
252 | 253 | salary.setB2(averageSalary(pools, predicate)); |
253 | 254 | salary.setB3(null); |
254 | 255 | salary.setB4(null); |
... | ... | @@ -376,6 +377,7 @@ public class SalaryReportTask { |
376 | 377 | salary.setL2(shopId); |
377 | 378 | salary.setS2(shopName); |
378 | 379 | salary.setB1(totalSalary(pools, predicate)); |
380 | + salary.setB5(countStaffNum(pools, predicate)); | |
379 | 381 | salary.setB2(averageSalary(pools, predicate)); |
380 | 382 | salary.setB3(null); |
381 | 383 | salary.setB4(null); |
... | ... | @@ -458,6 +460,7 @@ public class SalaryReportTask { |
458 | 460 | salaryShop.setL3(postId); |
459 | 461 | salaryShop.setS3(postMap.getOrDefault(postId, "")); |
460 | 462 | salaryShop.setB1(totalSalary(pools, predicateShop)); |
463 | + salaryShop.setB5(countStaffNum(pools, predicateShop)); | |
461 | 464 | salaryShop.setB2(averageSalary(pools, predicateShop)); |
462 | 465 | salaryShop.setB3(null); |
463 | 466 | salaryShop.setB4(null); |
... | ... | @@ -468,6 +471,21 @@ public class SalaryReportTask { |
468 | 471 | |
469 | 472 | } |
470 | 473 | |
474 | + /** | |
475 | + * 绩效池平均绩效得分率 | |
476 | + * | |
477 | + * @param pools | |
478 | + * @return | |
479 | + */ | |
480 | + public BigDecimal countStaffNum(Collection<SalaryPool> pools, Predicate<SalaryPool> predicate) { | |
481 | + if (CollectionUtils.isEmpty(pools)) { | |
482 | + return BigDecimal.ZERO; | |
483 | + } | |
484 | + Long staffNum = pools.stream() | |
485 | + .filter(predicate) | |
486 | + .count(); | |
487 | + return new BigDecimal(staffNum); | |
488 | + } | |
471 | 489 | |
472 | 490 | /** |
473 | 491 | * 绩效池平均绩效得分率 | ... | ... |