Merge branch 'release/2.15.1.2407.01' into release/个税版本
This commit is contained in:
commit
05a755c9b3
|
|
@ -1,5 +1,6 @@
|
||||||
package com.engine.salary.entity.salaryacct.bo;
|
package com.engine.salary.entity.salaryacct.bo;
|
||||||
|
|
||||||
|
import cn.hutool.core.util.NumberUtil;
|
||||||
import cn.hutool.core.util.ObjectUtil;
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
import com.engine.salary.annotation.SalaryFormulaVar;
|
import com.engine.salary.annotation.SalaryFormulaVar;
|
||||||
import com.engine.salary.component.WeaTableColumnGroup;
|
import com.engine.salary.component.WeaTableColumnGroup;
|
||||||
|
|
@ -35,6 +36,7 @@ import org.springframework.beans.BeanUtils;
|
||||||
import weaver.general.Util;
|
import weaver.general.Util;
|
||||||
|
|
||||||
import java.lang.reflect.Field;
|
import java.lang.reflect.Field;
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
|
@ -305,7 +307,7 @@ public class SalaryAcctResultBO {
|
||||||
} else if ("status".equals(salarySobEmpField.getFieldCode())) {
|
} else if ("status".equals(salarySobEmpField.getFieldCode())) {
|
||||||
map.put("status", e.getStatus());
|
map.put("status", e.getStatus());
|
||||||
} else if ("statusName".equals(salarySobEmpField.getFieldCode())) {
|
} else if ("statusName".equals(salarySobEmpField.getFieldCode())) {
|
||||||
map.put("statusName", UserStatusEnum.getDefaultLabelByValue(new Integer(Util.null2s(e.getStatus(),"1"))));
|
map.put("statusName", UserStatusEnum.getDefaultLabelByValue(new Integer(Util.null2s(e.getStatus(), "1"))));
|
||||||
} else {
|
} else {
|
||||||
map.put(salarySobEmpField.getFieldCode(), fieldValueMap.get(salarySobEmpField.getFieldCode()));
|
map.put(salarySobEmpField.getFieldCode(), fieldValueMap.get(salarySobEmpField.getFieldCode()));
|
||||||
}
|
}
|
||||||
|
|
@ -418,13 +420,20 @@ public class SalaryAcctResultBO {
|
||||||
// 薪资项目字段的字段类型
|
// 薪资项目字段的字段类型
|
||||||
map.put(salaryItem.getId() + DATA_TYPE_SUFFIX, salaryItem.getDataType());
|
map.put(salaryItem.getId() + DATA_TYPE_SUFFIX, salaryItem.getDataType());
|
||||||
SalaryDataTypeEnum dataTypeEnum = SalaryDataTypeEnum.parseByValue(salaryItem.getDataType());
|
SalaryDataTypeEnum dataTypeEnum = SalaryDataTypeEnum.parseByValue(salaryItem.getDataType());
|
||||||
if (dataTypeEnum == SalaryDataTypeEnum.STRING) {
|
if (dataTypeEnum == SalaryDataTypeEnum.NUMBER) {
|
||||||
if (!StringUtils.equals(acctResultValue, excelResultValue)) {
|
if (NumberUtil.isNumber(acctResultValue) && NumberUtil.isNumber(excelResultValue)) {
|
||||||
different = true;
|
if (new BigDecimal(acctResultValue).compareTo(new BigDecimal(excelResultValue)) != 0) {
|
||||||
includeSalaryItemIds.add(salaryItem.getId());
|
different = true;
|
||||||
|
includeSalaryItemIds.add(salaryItem.getId());
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (SalaryEntityUtil.empty2Zero(acctResultValue).compareTo(SalaryEntityUtil.empty2Zero(excelResultValue)) != 0) {
|
||||||
|
different = true;
|
||||||
|
includeSalaryItemIds.add(salaryItem.getId());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (SalaryEntityUtil.empty2Zero(acctResultValue).compareTo(SalaryEntityUtil.empty2Zero(excelResultValue)) != 0) {
|
if (!StringUtils.equals(acctResultValue, excelResultValue)) {
|
||||||
different = true;
|
different = true;
|
||||||
includeSalaryItemIds.add(salaryItem.getId());
|
includeSalaryItemIds.add(salaryItem.getId());
|
||||||
}
|
}
|
||||||
|
|
@ -499,7 +508,7 @@ public class SalaryAcctResultBO {
|
||||||
fieldValueMap.put("id", employeeFieldValueMap.getOrDefault(codeKey + "Id", StringUtils.EMPTY));
|
fieldValueMap.put("id", employeeFieldValueMap.getOrDefault(codeKey + "Id", StringUtils.EMPTY));
|
||||||
fieldValueMap.put("name", employeeFieldValueMap.getOrDefault(codeKey + "Name", StringUtils.EMPTY));
|
fieldValueMap.put("name", employeeFieldValueMap.getOrDefault(codeKey + "Name", StringUtils.EMPTY));
|
||||||
if (codeKey.equals("jobcall")) {
|
if (codeKey.equals("jobcall")) {
|
||||||
fieldValueMap.put("name", employeeFieldValueMap.getOrDefault( "jobcall", StringUtils.EMPTY));
|
fieldValueMap.put("name", employeeFieldValueMap.getOrDefault("jobcall", StringUtils.EMPTY));
|
||||||
}
|
}
|
||||||
dto.setFieldValue(fieldValueMap);
|
dto.setFieldValue(fieldValueMap);
|
||||||
}
|
}
|
||||||
|
|
@ -511,11 +520,11 @@ public class SalaryAcctResultBO {
|
||||||
// 过滤出是浏览框类型的且人员信息中同时存在名称和id的字段
|
// 过滤出是浏览框类型的且人员信息中同时存在名称和id的字段
|
||||||
employeeInfos.stream()
|
employeeInfos.stream()
|
||||||
.filter(e -> e.getFieldType().contains("Browser"))
|
.filter(e -> e.getFieldType().contains("Browser"))
|
||||||
.map(e -> SalaryAcctEmployeeInfoDTO.builder().fieldName(e.getFieldName().replace("ID","")).build())
|
.map(e -> SalaryAcctEmployeeInfoDTO.builder().fieldName(e.getFieldName().replace("ID", "")).build())
|
||||||
.collect(Collectors.groupingBy(SalaryAcctEmployeeInfoDTO::getFieldName))
|
.collect(Collectors.groupingBy(SalaryAcctEmployeeInfoDTO::getFieldName))
|
||||||
.forEach((k,v) -> {
|
.forEach((k, v) -> {
|
||||||
if (v.size() > 1) {
|
if (v.size() > 1) {
|
||||||
needRemoveFieldNames.add(k+"ID");
|
needRemoveFieldNames.add(k + "ID");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue