薪资账套修改回算公式后不生效问题
This commit is contained in:
parent
5f37281757
commit
4ed3f47b36
|
|
@ -401,10 +401,10 @@ public class SalaryAcctResultBO {
|
|||
.filter(salarySobItemPO -> salarySobItemPO.getFormulaId() <= 0)
|
||||
.map(salarySobItemPO -> convert2SalaryAcctResultDetailItemDTO(salarySobItemPO, salaryItemMap.get(salarySobItemPO.getSalaryItemId()), resultValueMap))
|
||||
.collect(Collectors.toList());
|
||||
// TODO 临时处理,后续删除,将已发补发加入输入、导入
|
||||
formulaItems.addAll(salarySobBackItemPOS.stream()
|
||||
.map(salarySobBackItemPO -> backItemConvert2SalaryAcctResultDetailItemDTO(salarySobBackItemPO, salaryBackItemMap.get(salarySobBackItemPO.getSalaryItemId()), resultValueMap, salaryBackItemFormula))
|
||||
.collect(Collectors.toList()));
|
||||
// // TODO 临时处理,后续删除,将已发补发加入输入、导入
|
||||
// formulaItems.addAll(salarySobBackItemPOS.stream()
|
||||
// .map(salarySobBackItemPO -> backItemConvert2SalaryAcctResultDetailItemDTO(salarySobBackItemPO, salaryBackItemMap.get(salarySobBackItemPO.getSalaryItemId()), resultValueMap, salaryBackItemFormula))
|
||||
// .collect(Collectors.toList()));
|
||||
// 已发/补发项目的值
|
||||
List<SalaryAcctResultDetailDTO.SalaryAcctResultDetailItemDTO> issuedAndReissueItems = salarySobBackItemPOS.stream()
|
||||
.map(salarySobBackItemPO -> backItemConvert2SalaryAcctResultDetailItemDTO(salarySobBackItemPO, salaryBackItemMap.get(salarySobBackItemPO.getSalaryItemId()), resultValueMap, salaryBackItemFormula))
|
||||
|
|
|
|||
|
|
@ -178,11 +178,19 @@ public class SalaryAcctCalculateServiceImpl extends Service implements SalaryAcc
|
|||
for (List<Long> salaryItemIds : salaryAcctCalculateBO.getSalaryItemIdWithPriorityList()) {
|
||||
// 同一运算优先级下的薪资项目逐个独立运算
|
||||
for (Long salaryItemId : salaryItemIds) {
|
||||
if(salaryItemId.equals(1670393570190L)){
|
||||
System.out.println("00");
|
||||
}
|
||||
String resultValue;
|
||||
SalaryItemPO salaryItemPO = salaryItemMap.get(salaryItemId);
|
||||
ExpressFormula expressFormula;
|
||||
// 如果薪资账套下重新定义了薪资项目的公式,则使用薪资账套下的公式,否则使用薪资项目本身的公式
|
||||
if (salaryItemIdKeySalarySobItemPOMap.containsKey(salaryItemId)) {
|
||||
if (salarySobBackItemMap.containsKey(salaryItemId)){
|
||||
// 如果薪资账套的回算项目中重新定义了回算项目公式,则使用薪资账套下的公式
|
||||
SalarySobBackItemPO salarySobBackItemPO = salarySobBackItemMap.get(salaryItemId);
|
||||
expressFormula = expressFormulaMap.get(salarySobBackItemPO.getFormulaId());
|
||||
}
|
||||
else if (salaryItemIdKeySalarySobItemPOMap.containsKey(salaryItemId)) {
|
||||
// 如果薪资账套下重新定义了薪资项目的公式,则使用薪资账套下的公式,否则使用薪资项目本身的公式
|
||||
SalarySobItemPO salarySobItemPO = salaryItemIdKeySalarySobItemPOMap.get(salaryItemId);
|
||||
expressFormula = expressFormulaMap.get(salarySobItemPO.getFormulaId());
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -641,6 +641,7 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
|
|||
// 8、查询公式详情
|
||||
Set<Long> formulaIds = SalaryEntityUtil.properties(salarySobItemPOS, SalarySobItemPO::getFormulaId);
|
||||
formulaIds.addAll(SalaryEntityUtil.properties(salaryItemPOS, SalaryItemPO::getFormulaId));
|
||||
formulaIds.addAll(SalaryEntityUtil.properties(salarySobBackItems,SalarySobBackItemPO::getFormulaId));
|
||||
List<ExpressFormula> expressFormulas = getSalaryFormulaService(user).listExpressFormula(formulaIds);
|
||||
// 本次运算的回算薪资项目所涉及的变量
|
||||
Set<String> issuedFieldIds = new HashSet<>();
|
||||
|
|
|
|||
Loading…
Reference in New Issue