路维光电 社保根据方案取数

This commit is contained in:
Harryxzy 2025-07-25 14:56:37 +08:00
parent 365e88c76e
commit 13b4dc3efd
3 changed files with 346 additions and 142 deletions

View File

@ -1,6 +1,5 @@
package com.engine.salary.entity.salaryacct.bo;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.NumberUtil;
import com.engine.salary.annotation.SalaryFormulaVar;
import com.engine.salary.common.LocalDateRange;
@ -32,6 +31,7 @@ import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import lombok.Data;
import lombok.experimental.Accessors;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.math.NumberUtils;
import weaver.general.Util;
@ -504,19 +504,32 @@ public class CalculateFormulaVarBO {
private void handleWelfareData(SalaryAcctCalculateBO salaryAcctCalculateBO, Map<String, List<FormulaVarValue>> resultMap) {
// 社保福利可选字段
List<String> fieldNames = Lists.newArrayList(salaryAcctCalculateBO.getWelfareColumns().values());
Map<String, List<String>> fieldNameMap = fieldNames.stream().collect(Collectors.groupingBy(fieldName -> fieldName.split("_")[0]));
// Map<String, List<String>> fieldNameMap = fieldNames.stream().collect(Collectors.groupingBy(fieldName -> fieldName.split("_")[0]));
// 社保福利数据
Map<String, List<FormulaVarValue>> tempMap = new HashMap<>();
welfareData.forEach(map -> {
// String key = map.getOrDefault("employeeId", StringUtils.EMPTY) + "_" + map.getOrDefault("taxAgentId", StringUtils.EMPTY);
String taxAgentId = Utils.null2String(map.getOrDefault("taxAgentId", StringUtils.EMPTY));
// String taxAgentIdKey = taxAgentId + "_";
List<String> fieldNamesKeys = map.keySet().stream().filter(k -> k != null).map(k -> {
String[] split = k.split("_");
if (split != null && split.length > 1) {
return split[0];
}
return "";
}).filter(k -> NumberUtils.isCreatable(k)).distinct().collect(Collectors.toList());
List<String> finalFieldNames = fieldNames.stream().filter(name -> {
if (StringUtils.isBlank(name)) {
return false;
}
String[] split = name.split("_");
if (split != null && split.length > 1) {
return fieldNamesKeys.contains(split[0]);
}
return false;
}).collect(Collectors.toList());
String key = Utils.null2String(map.getOrDefault("employeeId", StringUtils.EMPTY));
List<FormulaVarValue> formulaVarValues = tempMap.computeIfAbsent(key, k -> Lists.newArrayList());
List<String> fieldNameList = fieldNameMap.get(taxAgentId);
if (CollectionUtil.isNotEmpty(fieldNameList)) {
formulaVarValues.addAll(fieldNameList.stream().map(fieldName -> {
if (CollectionUtils.isNotEmpty(fieldNamesKeys)) {
formulaVarValues.addAll(finalFieldNames.stream().filter(fieldName -> map.get(fieldName) != null).map(fieldName -> {
String fieldId = SalaryFormulaReferenceEnum.WELFARE.getValue()
+ SalaryFormulaFieldConstant.FIELD_ID_SEPARATOR
+ fieldName;

View File

@ -573,6 +573,7 @@
t.fund_per_sum,t.fund_com_sum,t.other_per_sum,
t.other_com_sum,t.per_sum,t.com_sum,t.payment_status,
t.social_payment_base_string,t.fund_payment_base_string,t.other_payment_base_string
,t.social_scheme_id, t.fund_scheme_id, t.other_scheme_id,t.status
FROM
hrsa_bill_detail t
WHERE t.delete_type = 0

View File

@ -941,38 +941,45 @@ public class SIAccountServiceImpl extends Service implements SIAccountService {
Map<String, Object> record = new HashMap<>();
record.put("employeeId", item.getEmployeeId());
record.put("taxAgentId", taxAgentId);
// 社保方案id
String socialSchemeKey = item.getSocialSchemeId() + "_";
if (StringUtils.isNotEmpty(item.getSocialPerJson())) {
Map<String, Object> socialJson = JSON.parseObject(item.getSocialPerJson(), new HashMap<String, Object>().getClass());
socialJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "socialPer", v);
record.put(socialSchemeKey + k + "socialPer", v);
});
}
if (StringUtils.isNotEmpty(item.getSocialComJson())) {
Map<String, Object> socialJson = JSON.parseObject(item.getSocialComJson(), new HashMap<String, Object>().getClass());
socialJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "socialCom", v);
record.put(socialSchemeKey + k + "socialCom", v);
});
}
record.put(taxAgentIdKey + "socialPerSum", item.getSocialPerSum());
record.put(taxAgentIdKey + "socialComSum", item.getSocialComSum());
record.put(socialSchemeKey + "socialPerSum", item.getSocialPerSum());
record.put(socialSchemeKey + "socialComSum", item.getSocialComSum());
// 公积金方案id
String fundSchemeKey = item.getFundSchemeId() + "_";
if (StringUtils.isNotEmpty(item.getFundPerJson())) {
Map<String, Object> fundPerJson = JSON.parseObject(item.getFundPerJson(), new HashMap<String, Object>().getClass());
fundPerJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "fundPer", v);
record.put(fundSchemeKey + k + "fundPer", v);
});
}
if (StringUtils.isNotEmpty(item.getFundComJson())) {
Map<String, Object> fundPerJson = JSON.parseObject(item.getFundComJson(), new HashMap<String, Object>().getClass());
fundPerJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "fundCom", v);
record.put(fundSchemeKey + k + "fundCom", v);
});
}
record.put(taxAgentIdKey + "fundPerSum", item.getFundPerSum());
record.put(taxAgentIdKey + "fundComSum", item.getFundComSum());
record.put(fundSchemeKey + "fundPerSum", item.getFundPerSum());
record.put(fundSchemeKey + "fundComSum", item.getFundComSum());
// 其他方案id
String otherSchemeKey = item.getOtherSchemeId() + "_";
if (StringUtils.isNotEmpty(item.getOtherPerJson())) {
Map<String, Object> fundPerJson = JSON.parseObject(item.getOtherPerJson(), new HashMap<String, Object>().getClass());
fundPerJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "otherPer", v);
record.put(otherSchemeKey + k + "otherPer", v);
});
}
if (StringUtils.isNotEmpty(item.getOtherComJson())) {
@ -981,13 +988,13 @@ public class SIAccountServiceImpl extends Service implements SIAccountService {
}
fundComJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "otherCom", v);
record.put(otherSchemeKey + k + "otherCom", v);
});
}
record.put(taxAgentIdKey + "otherPerSum", item.getOtherPerSum());
record.put(taxAgentIdKey + "otherComSum", item.getOtherComSum());
record.put(taxAgentIdKey + "perSum", item.getPerSum());
record.put(taxAgentIdKey + "comSum", item.getComSum());
record.put(otherSchemeKey + "otherPerSum", item.getOtherPerSum());
record.put(otherSchemeKey + "otherComSum", item.getOtherComSum());
record.put(socialSchemeKey + "perSum", item.getPerSum());
record.put(socialSchemeKey + "comSum", item.getComSum());
//20230707增加福利核算明细中的缴纳状态+合计的数据项缴纳状态+福利项的数据项
InsuranceAccountDetailPO commonSiAcct = siAcctResultWithEmpAndPayStatus.get(item.getEmployeeId() + "_" + PaymentStatusEnum.COMMON.getValue());
@ -997,165 +1004,165 @@ public class SIAccountServiceImpl extends Service implements SIAccountService {
if (commonSiAcct != null && StringUtils.isNotEmpty(commonSiAcct.getSocialPaymentBaseString())) {
Map<String, Object> socialBaseJson = JSON.parseObject(commonSiAcct.getSocialPaymentBaseString(), new HashMap<String, Object>().getClass());
socialBaseJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "socialBase", v);
record.put(socialSchemeKey + k + "socialBase", v);
});
}
if (commonSiAcct != null && StringUtils.isNotEmpty(commonSiAcct.getFundPaymentBaseString())) {
Map<String, Object> fundBaseJson = JSON.parseObject(commonSiAcct.getFundPaymentBaseString(), new HashMap<String, Object>().getClass());
fundBaseJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "fundBase", v);
record.put(fundSchemeKey + k + "fundBase", v);
});
}
if (commonSiAcct != null && StringUtils.isNotEmpty(commonSiAcct.getOtherPaymentBaseString())) {
Map<String, Object> otherBaseJson = JSON.parseObject(commonSiAcct.getOtherPaymentBaseString(), new HashMap<String, Object>().getClass());
otherBaseJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "otherBase", v);
record.put(otherSchemeKey + k + "otherBase", v);
});
}
//社保-正常缴纳
if (commonSiAcct != null && StringUtils.isNotEmpty(commonSiAcct.getSocialPerJson())) {
Map<String, Object> socialJson = JSON.parseObject(commonSiAcct.getSocialPerJson(), new HashMap<String, Object>().getClass());
socialJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "socialCommonPer", v);
record.put(socialSchemeKey + k + "socialCommonPer", v);
});
}
if (commonSiAcct != null && StringUtils.isNotEmpty(commonSiAcct.getSocialComJson())) {
Map<String, Object> socialJson = JSON.parseObject(commonSiAcct.getSocialComJson(), new HashMap<String, Object>().getClass());
socialJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "socialCommonCom", v);
record.put(socialSchemeKey + k + "socialCommonCom", v);
});
}
record.put(taxAgentIdKey + "socialPerCommonSum", commonSiAcct != null ? commonSiAcct.getSocialPerSum() : new BigDecimal("0"));
record.put(taxAgentIdKey + "socialComCommonSum", commonSiAcct != null ? commonSiAcct.getSocialComSum() : new BigDecimal("0"));
record.put(socialSchemeKey + "socialPerCommonSum", commonSiAcct != null ? commonSiAcct.getSocialPerSum() : new BigDecimal("0"));
record.put(socialSchemeKey + "socialComCommonSum", commonSiAcct != null ? commonSiAcct.getSocialComSum() : new BigDecimal("0"));
//社保-补缴
if (repairSiAcct != null && StringUtils.isNotEmpty(repairSiAcct.getSocialPerJson())) {
Map<String, Object> socialJson = JSON.parseObject(repairSiAcct.getSocialPerJson(), new HashMap<String, Object>().getClass());
socialJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "socialRepairPer", v);
record.put(socialSchemeKey + k + "socialRepairPer", v);
});
}
if (repairSiAcct != null && StringUtils.isNotEmpty(repairSiAcct.getSocialComJson())) {
Map<String, Object> socialJson = JSON.parseObject(repairSiAcct.getSocialComJson(), new HashMap<String, Object>().getClass());
socialJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "socialRepairCom", v);
record.put(socialSchemeKey + k + "socialRepairCom", v);
});
}
record.put(taxAgentIdKey + "socialPerRepairSum", repairSiAcct != null ? repairSiAcct.getSocialPerSum() : new BigDecimal("0"));
record.put(taxAgentIdKey + "socialComRepairSum", repairSiAcct != null ? repairSiAcct.getSocialComSum() : new BigDecimal("0"));
record.put(socialSchemeKey + "socialPerRepairSum", repairSiAcct != null ? repairSiAcct.getSocialPerSum() : new BigDecimal("0"));
record.put(socialSchemeKey + "socialComRepairSum", repairSiAcct != null ? repairSiAcct.getSocialComSum() : new BigDecimal("0"));
//社保-补差
if (balanceSiAcct != null && StringUtils.isNotEmpty(balanceSiAcct.getSocialPerJson())) {
Map<String, Object> socialJson = JSON.parseObject(balanceSiAcct.getSocialPerJson(), new HashMap<String, Object>().getClass());
socialJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "socialBalancePer", v);
record.put(socialSchemeKey + k + "socialBalancePer", v);
});
}
if (balanceSiAcct != null && StringUtils.isNotEmpty(balanceSiAcct.getSocialComJson())) {
Map<String, Object> socialJson = JSON.parseObject(balanceSiAcct.getSocialComJson(), new HashMap<String, Object>().getClass());
socialJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "socialBalanceCom", v);
record.put(socialSchemeKey + k + "socialBalanceCom", v);
});
}
record.put(taxAgentIdKey + "socialPerBalanceSum", balanceSiAcct != null ? balanceSiAcct.getSocialPerSum() : new BigDecimal("0"));
record.put(taxAgentIdKey + "socialComBalanceSum", balanceSiAcct != null ? balanceSiAcct.getSocialComSum() : new BigDecimal("0"));
record.put(socialSchemeKey + "socialPerBalanceSum", balanceSiAcct != null ? balanceSiAcct.getSocialPerSum() : new BigDecimal("0"));
record.put(socialSchemeKey + "socialComBalanceSum", balanceSiAcct != null ? balanceSiAcct.getSocialComSum() : new BigDecimal("0"));
//公积金-正常缴纳
if (commonSiAcct != null && StringUtils.isNotEmpty(commonSiAcct.getFundPerJson())) {
Map<String, Object> socialJson = JSON.parseObject(commonSiAcct.getFundPerJson(), new HashMap<String, Object>().getClass());
socialJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "fundCommonPer", v);
record.put(fundSchemeKey + k + "fundCommonPer", v);
});
}
if (commonSiAcct != null && StringUtils.isNotEmpty(commonSiAcct.getFundComJson())) {
Map<String, Object> socialJson = JSON.parseObject(commonSiAcct.getFundComJson(), new HashMap<String, Object>().getClass());
socialJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "fundCommonCom", v);
record.put(fundSchemeKey + k + "fundCommonCom", v);
});
}
record.put(taxAgentIdKey + "fundPerCommonSum", commonSiAcct != null ? commonSiAcct.getFundPerSum() : new BigDecimal("0"));
record.put(taxAgentIdKey + "fundComCommonSum", commonSiAcct != null ? commonSiAcct.getFundComSum() : new BigDecimal("0"));
record.put(fundSchemeKey + "fundPerCommonSum", commonSiAcct != null ? commonSiAcct.getFundPerSum() : new BigDecimal("0"));
record.put(fundSchemeKey + "fundComCommonSum", commonSiAcct != null ? commonSiAcct.getFundComSum() : new BigDecimal("0"));
//公积金-补缴
if (repairSiAcct != null && StringUtils.isNotEmpty(repairSiAcct.getFundPerJson())) {
Map<String, Object> fundJson = JSON.parseObject(repairSiAcct.getFundPerJson(), new HashMap<String, Object>().getClass());
fundJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "fundRepairPer", v);
record.put(fundSchemeKey + k + "fundRepairPer", v);
});
}
if (repairSiAcct != null && StringUtils.isNotEmpty(repairSiAcct.getFundComJson())) {
Map<String, Object> fundJson = JSON.parseObject(repairSiAcct.getFundComJson(), new HashMap<String, Object>().getClass());
fundJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "fundRepairCom", v);
record.put(fundSchemeKey + k + "fundRepairCom", v);
});
}
record.put(taxAgentIdKey + "fundPerRepairSum", repairSiAcct != null ? repairSiAcct.getFundPerSum() : new BigDecimal("0"));
record.put(taxAgentIdKey + "fundComRepairSum", repairSiAcct != null ? repairSiAcct.getFundComSum() : new BigDecimal("0"));
record.put(fundSchemeKey + "fundPerRepairSum", repairSiAcct != null ? repairSiAcct.getFundPerSum() : new BigDecimal("0"));
record.put(fundSchemeKey + "fundComRepairSum", repairSiAcct != null ? repairSiAcct.getFundComSum() : new BigDecimal("0"));
//公积金-补差
if (balanceSiAcct != null && StringUtils.isNotEmpty(balanceSiAcct.getFundPerJson())) {
Map<String, Object> fundJson = JSON.parseObject(balanceSiAcct.getFundPerJson(), new HashMap<String, Object>().getClass());
fundJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "fundBalancePer", v);
record.put(fundSchemeKey + k + "fundBalancePer", v);
});
}
if (balanceSiAcct != null && StringUtils.isNotEmpty(balanceSiAcct.getFundComJson())) {
Map<String, Object> fundJson = JSON.parseObject(balanceSiAcct.getFundComJson(), new HashMap<String, Object>().getClass());
fundJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "fundBalanceCom", v);
record.put(fundSchemeKey + k + "fundBalanceCom", v);
});
}
record.put(taxAgentIdKey + "fundPerBalanceSum", balanceSiAcct != null ? balanceSiAcct.getFundPerSum() : new BigDecimal("0"));
record.put(taxAgentIdKey + "fundComBalanceSum", balanceSiAcct != null ? balanceSiAcct.getFundComSum() : new BigDecimal("0"));
record.put(fundSchemeKey + "fundPerBalanceSum", balanceSiAcct != null ? balanceSiAcct.getFundPerSum() : new BigDecimal("0"));
record.put(fundSchemeKey + "fundComBalanceSum", balanceSiAcct != null ? balanceSiAcct.getFundComSum() : new BigDecimal("0"));
//其他福利-正常缴纳
if (commonSiAcct != null && StringUtils.isNotEmpty(commonSiAcct.getOtherPerJson())) {
Map<String, Object> otherJson = JSON.parseObject(commonSiAcct.getOtherPerJson(), new HashMap<String, Object>().getClass());
otherJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "otherCommonPer", v);
record.put(otherSchemeKey + k + "otherCommonPer", v);
});
}
if (commonSiAcct != null && StringUtils.isNotEmpty(commonSiAcct.getOtherComJson())) {
Map<String, Object> otherJson = JSON.parseObject(commonSiAcct.getOtherComJson(), new HashMap<String, Object>().getClass());
otherJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "otherCommonCom", v);
record.put(otherSchemeKey + k + "otherCommonCom", v);
});
}
record.put(taxAgentIdKey + "otherPerCommonSum", commonSiAcct != null ? commonSiAcct.getOtherPerSum() : new BigDecimal("0"));
record.put(taxAgentIdKey + "otherComCommonSum", commonSiAcct != null ? commonSiAcct.getOtherComSum() : new BigDecimal("0"));
record.put(otherSchemeKey + "otherPerCommonSum", commonSiAcct != null ? commonSiAcct.getOtherPerSum() : new BigDecimal("0"));
record.put(otherSchemeKey + "otherComCommonSum", commonSiAcct != null ? commonSiAcct.getOtherComSum() : new BigDecimal("0"));
//其他福利-补缴
if (repairSiAcct != null && StringUtils.isNotEmpty(repairSiAcct.getOtherPerJson())) {
Map<String, Object> otherJson = JSON.parseObject(repairSiAcct.getOtherPerJson(), new HashMap<String, Object>().getClass());
otherJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "otherRepairPer", v);
record.put(otherSchemeKey + k + "otherRepairPer", v);
});
}
if (repairSiAcct != null && StringUtils.isNotEmpty(repairSiAcct.getOtherComJson())) {
Map<String, Object> otherJson = JSON.parseObject(repairSiAcct.getOtherComJson(), new HashMap<String, Object>().getClass());
otherJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "otherRepairCom", v);
record.put(otherSchemeKey + k + "otherRepairCom", v);
});
}
record.put(taxAgentIdKey + "otherPerRepairSum", repairSiAcct != null ? repairSiAcct.getOtherPerSum() : new BigDecimal("0"));
record.put(taxAgentIdKey + "otherComRepairSum", repairSiAcct != null ? repairSiAcct.getOtherComSum() : new BigDecimal("0"));
record.put(otherSchemeKey + "otherPerRepairSum", repairSiAcct != null ? repairSiAcct.getOtherPerSum() : new BigDecimal("0"));
record.put(otherSchemeKey + "otherComRepairSum", repairSiAcct != null ? repairSiAcct.getOtherComSum() : new BigDecimal("0"));
//其他福利-补差
if (balanceSiAcct != null && StringUtils.isNotEmpty(balanceSiAcct.getOtherPerJson())) {
Map<String, Object> otherJson = JSON.parseObject(balanceSiAcct.getOtherPerJson(), new HashMap<String, Object>().getClass());
otherJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "otherBalancePer", v);
record.put(otherSchemeKey + k + "otherBalancePer", v);
});
}
if (balanceSiAcct != null && StringUtils.isNotEmpty(balanceSiAcct.getOtherComJson())) {
Map<String, Object> otherJson = JSON.parseObject(balanceSiAcct.getOtherComJson(), new HashMap<String, Object>().getClass());
otherJson.forEach((k, v) -> {
record.put(taxAgentIdKey + k + "otherBalanceCom", v);
record.put(otherSchemeKey + k + "otherBalanceCom", v);
});
}
record.put(taxAgentIdKey + "otherPerBalanceSum", balanceSiAcct != null ? balanceSiAcct.getOtherPerSum() : new BigDecimal("0"));
record.put(taxAgentIdKey + "otherComBalanceSum", balanceSiAcct != null ? balanceSiAcct.getOtherComSum() : new BigDecimal("0"));
record.put(otherSchemeKey + "otherPerBalanceSum", balanceSiAcct != null ? balanceSiAcct.getOtherPerSum() : new BigDecimal("0"));
record.put(otherSchemeKey + "otherComBalanceSum", balanceSiAcct != null ? balanceSiAcct.getOtherComSum() : new BigDecimal("0"));
record.put(taxAgentIdKey + "perCommonSum", commonSiAcct != null ? commonSiAcct.getPerSum() : new BigDecimal("0"));
record.put(taxAgentIdKey + "comCommonSum", commonSiAcct != null ? commonSiAcct.getComSum() : new BigDecimal("0"));
record.put(taxAgentIdKey + "perRepairSum", repairSiAcct != null ? repairSiAcct.getPerSum() : new BigDecimal("0"));
record.put(taxAgentIdKey + "comRepairSum", repairSiAcct != null ? repairSiAcct.getComSum() : new BigDecimal("0"));
record.put(taxAgentIdKey + "perBalanceSum", balanceSiAcct != null ? balanceSiAcct.getPerSum() : new BigDecimal("0"));
record.put(taxAgentIdKey + "comBalanceSum", balanceSiAcct != null ? balanceSiAcct.getComSum() : new BigDecimal("0"));
record.put(socialSchemeKey + "perCommonSum", commonSiAcct != null ? commonSiAcct.getPerSum() : new BigDecimal("0"));
record.put(socialSchemeKey + "comCommonSum", commonSiAcct != null ? commonSiAcct.getComSum() : new BigDecimal("0"));
record.put(socialSchemeKey + "perRepairSum", repairSiAcct != null ? repairSiAcct.getPerSum() : new BigDecimal("0"));
record.put(socialSchemeKey + "comRepairSum", repairSiAcct != null ? repairSiAcct.getComSum() : new BigDecimal("0"));
record.put(socialSchemeKey + "perBalanceSum", balanceSiAcct != null ? balanceSiAcct.getPerSum() : new BigDecimal("0"));
record.put(socialSchemeKey + "comBalanceSum", balanceSiAcct != null ? balanceSiAcct.getComSum() : new BigDecimal("0"));
result.add(record);
});
@ -1176,100 +1183,74 @@ public class SIAccountServiceImpl extends Service implements SIAccountService {
// 获取所有个税扣缴义务人
List<TaxAgentPO> allTaxAgentList = getTaxAgentService(user).listAll();
for (TaxAgentPO taxAgentPO : allTaxAgentList) {
// 获取所有社保方案
List<InsuranceSchemePO> socialSchemeList = getInsuranceSchemeMapper().listByWelfareType(WelfareTypeEnum.SOCIAL_SECURITY.getValue());
List<InsuranceSchemePO> fundSchemeList = getInsuranceSchemeMapper().listByWelfareType(WelfareTypeEnum.ACCUMULATION_FUND.getValue());
List<InsuranceSchemePO> otherSchemeList = getInsuranceSchemeMapper().listByWelfareType(WelfareTypeEnum.OTHER.getValue());
for (InsuranceSchemePO socialScheme : socialSchemeList) {
Map<String, String> commonResult = new LinkedHashMap<>();
Map<String, String> repairResult = new LinkedHashMap<>();
Map<String, String> balanceResult = new LinkedHashMap<>();
Map<String, String> baseResult = new LinkedHashMap<>();
String taxAgentNameFlag = taxAgentPO.getName() + "_";
String taxAgentIdFlag = taxAgentPO.getId() + "_";
String socialSchemeNameFlag = socialScheme.getSchemeName() + "_";
String socialSchemeIdFlag = socialScheme.getId() + "_";
result.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(100393, "个人合计"), taxAgentIdFlag + "perSum");
result.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(100388, "社保个人合计"), taxAgentIdFlag + "socialPerSum");
result.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(100390, "公积金个人合计"), taxAgentIdFlag + "fundPerSum");
result.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(100392, "其他福利个人合计"), taxAgentIdFlag + "otherPerSum");
result.put(socialSchemeNameFlag + SalaryI18nUtil.getI18nLabel(100393, "个人合计"), socialSchemeIdFlag + "perSum");
result.put(socialSchemeNameFlag + SalaryI18nUtil.getI18nLabel(100388, "社保个人合计"), socialSchemeIdFlag + "socialPerSum");
// result.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(100390, "公积金个人合计"), taxAgentIdFlag + "fundPerSum");
// result.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(100392, "其他福利个人合计"), taxAgentIdFlag + "otherPerSum");
commonResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "个人正常缴纳合计"), taxAgentIdFlag + "perCommonSum");
commonResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "社保个人正常缴纳合计"), taxAgentIdFlag + "socialPerCommonSum");
commonResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金个人正常缴纳合计"), taxAgentIdFlag + "fundPerCommonSum");
commonResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利个人正常缴纳合计"), taxAgentIdFlag + "otherPerCommonSum");
repairResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "个人补缴合计"), taxAgentIdFlag + "perRepairSum");
repairResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "社保个人补缴合计"), taxAgentIdFlag + "socialPerRepairSum");
repairResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金个人补缴合计"), taxAgentIdFlag + "fundPerRepairSum");
repairResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利个人补缴合计"), taxAgentIdFlag + "otherPerRepairSum");
balanceResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "个人补差合计"), taxAgentIdFlag + "perBalanceSum");
balanceResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "社保个人补差合计"), taxAgentIdFlag + "socialPerBalanceSum");
balanceResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金个人补差合计"), taxAgentIdFlag + "fundPerBalanceSum");
balanceResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利个人补差合计"), taxAgentIdFlag + "otherPerBalanceSum");
commonResult.put(socialSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "个人正常缴纳合计"), socialSchemeIdFlag + "perCommonSum");
commonResult.put(socialSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "社保个人正常缴纳合计"), socialSchemeIdFlag + "socialPerCommonSum");
// commonResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金个人正常缴纳合计"), taxAgentIdFlag + "fundPerCommonSum");
// commonResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利个人正常缴纳合计"), taxAgentIdFlag + "otherPerCommonSum");
repairResult.put(socialSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "个人补缴合计"), socialSchemeIdFlag + "perRepairSum");
repairResult.put(socialSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "社保个人补缴合计"), socialSchemeIdFlag + "socialPerRepairSum");
// repairResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金个人补缴合计"), taxAgentIdFlag + "fundPerRepairSum");
// repairResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利个人补缴合计"), taxAgentIdFlag + "otherPerRepairSum");
balanceResult.put(socialSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "个人补差合计"), socialSchemeIdFlag + "perBalanceSum");
balanceResult.put(socialSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "社保个人补差合计"), socialSchemeIdFlag + "socialPerBalanceSum");
// balanceResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金个人补差合计"), taxAgentIdFlag + "fundPerBalanceSum");
// balanceResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利个人补差合计"), taxAgentIdFlag + "otherPerBalanceSum");
Map<String, String> categoryIdNameMap = getSICategoryService(user).categoryIdNameMap();
list.stream().forEach(item -> {
if (Objects.equals(WelfareTypeEnum.SOCIAL_SECURITY.getValue(), item.getWelfareType())) {
if (Objects.equals(DataTypeEnum.SYSTEM.getValue(), item.getDataType())) {
baseResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "申报基数"), taxAgentIdFlag + item.getId() + "socialBase");
baseResult.put(socialSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "申报基数"), socialSchemeIdFlag + item.getId() + "socialBase");
}
result.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(87159, "个人"), taxAgentIdFlag + item.getId() + "socialPer");
commonResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "正常缴纳个人"), taxAgentIdFlag + item.getId() + "socialCommonPer");
repairResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补缴个人"), taxAgentIdFlag + item.getId() + "socialRepairPer");
balanceResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补差个人"), taxAgentIdFlag + item.getId() + "socialBalancePer");
result.put(socialSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(87159, "个人"), socialSchemeIdFlag + item.getId() + "socialPer");
commonResult.put(socialSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "正常缴纳个人"), socialSchemeIdFlag + item.getId() + "socialCommonPer");
repairResult.put(socialSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补缴个人"), socialSchemeIdFlag + item.getId() + "socialRepairPer");
balanceResult.put(socialSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补差个人"), socialSchemeIdFlag + item.getId() + "socialBalancePer");
}
if (Objects.equals(WelfareTypeEnum.ACCUMULATION_FUND.getValue(), item.getWelfareType())) {
if (Objects.equals(DataTypeEnum.SYSTEM.getValue(), item.getDataType())) {
baseResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "申报基数"), taxAgentIdFlag + item.getId() + "fundBase");
}
result.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(87159, "个人"), taxAgentIdFlag + item.getId() + "fundPer");
commonResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "正常缴纳个人"), taxAgentIdFlag + item.getId() + "fundCommonPer");
repairResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补缴个人"), taxAgentIdFlag + item.getId() + "fundRepairPer");
balanceResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补差个人"), taxAgentIdFlag + item.getId() + "fundBalancePer");
}
if (Objects.equals(WelfareTypeEnum.OTHER.getValue(), item.getWelfareType())) {
if (Objects.equals(DataTypeEnum.SYSTEM.getValue(), item.getDataType())) {
baseResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "申报基数"),taxAgentIdFlag + item.getId() + "otherBase");
}
result.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(87159, "个人"), taxAgentIdFlag + item.getId() + "otherPer");
commonResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "正常缴纳个人"), taxAgentIdFlag + item.getId() + "otherCommonPer");
repairResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补缴个人"), taxAgentIdFlag + item.getId() + "otherRepairPer");
balanceResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补差个人"), taxAgentIdFlag + item.getId() + "otherBalancePer");
}
});
result.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(100397, "单位合计"), taxAgentIdFlag + "comSum");
result.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(100394, "社保单位合计"), taxAgentIdFlag + "socialComSum");
result.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(100395, "公积金单位合计"), taxAgentIdFlag + "fundComSum");
result.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(100396, "其他福利单位合计"), taxAgentIdFlag + "otherComSum");
result.put(socialSchemeNameFlag + SalaryI18nUtil.getI18nLabel(100397, "单位合计"), socialSchemeIdFlag + "comSum");
result.put(socialSchemeNameFlag + SalaryI18nUtil.getI18nLabel(100394, "社保单位合计"), socialSchemeIdFlag + "socialComSum");
// result.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(100395, "公积金单位合计"), taxAgentIdFlag + "fundComSum");
// result.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(100396, "其他福利单位合计"), taxAgentIdFlag + "otherComSum");
commonResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "单位正常缴纳合计"), taxAgentIdFlag + "comCommonSum");
commonResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "社保单位正常缴纳合计"), taxAgentIdFlag + "socialComCommonSum");
commonResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金单位正常缴纳合计"), taxAgentIdFlag + "fundComCommonSum");
commonResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利单位正常缴纳合计"), taxAgentIdFlag + "otherComCommonSum");
repairResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "单位补缴合计"), taxAgentIdFlag + "comRepairSum");
repairResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "社保单位补缴合计"), taxAgentIdFlag + "socialComRepairSum");
repairResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金单位补缴合计"), taxAgentIdFlag + "fundComRepairSum");
repairResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利单位补缴合计"), taxAgentIdFlag + "otherComRepairSum");
balanceResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "单位补差合计"), taxAgentIdFlag + "comBalanceSum");
balanceResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "社保单位补差合计"), taxAgentIdFlag + "socialComBalanceSum");
balanceResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金单位补差合计"), taxAgentIdFlag + "fundComBalanceSum");
balanceResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利单位补差合计"), taxAgentIdFlag + "otherComBalanceSum");
commonResult.put(socialSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "单位正常缴纳合计"), socialSchemeIdFlag + "comCommonSum");
commonResult.put(socialSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "社保单位正常缴纳合计"), socialSchemeIdFlag + "socialComCommonSum");
// commonResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金单位正常缴纳合计"), taxAgentIdFlag + "fundComCommonSum");
// commonResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利单位正常缴纳合计"), taxAgentIdFlag + "otherComCommonSum");
repairResult.put(socialSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "单位补缴合计"), socialSchemeIdFlag + "comRepairSum");
repairResult.put(socialSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "社保单位补缴合计"), socialSchemeIdFlag + "socialComRepairSum");
// repairResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金单位补缴合计"), taxAgentIdFlag + "fundComRepairSum");
// repairResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利单位补缴合计"), taxAgentIdFlag + "otherComRepairSum");
balanceResult.put(socialSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "单位补差合计"), socialSchemeIdFlag + "comBalanceSum");
balanceResult.put(socialSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "社保单位补差合计"), socialSchemeIdFlag + "socialComBalanceSum");
// balanceResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金单位补差合计"), taxAgentIdFlag + "fundComBalanceSum");
// balanceResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利单位补差合计"), taxAgentIdFlag + "otherComBalanceSum");
list.stream().forEach(item -> {
if (Objects.equals(WelfareTypeEnum.SOCIAL_SECURITY.getValue(), item.getWelfareType())) {
result.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(100289, "单位"), taxAgentIdFlag + item.getId() + "socialCom");
commonResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "正常缴纳单位"), taxAgentIdFlag + item.getId() + "socialCommonCom");
repairResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补缴单位"), taxAgentIdFlag + item.getId() + "socialRepairCom");
balanceResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补差单位"), taxAgentIdFlag + item.getId() + "socialBalanceCom");
}
if (Objects.equals(WelfareTypeEnum.ACCUMULATION_FUND.getValue(), item.getWelfareType())) {
result.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(100289, "单位"), taxAgentIdFlag + item.getId() + "fundCom");
commonResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "正常缴纳单位"), taxAgentIdFlag + item.getId() + "fundCommonCom");
repairResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补缴单位"), taxAgentIdFlag + item.getId() + "fundRepairCom");
balanceResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补差单位"), taxAgentIdFlag + item.getId() + "fundBalanceCom");
}
if (Objects.equals(WelfareTypeEnum.OTHER.getValue(), item.getWelfareType())) {
result.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(100289, "单位"), taxAgentIdFlag + item.getId() + "otherCom");
commonResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "正常缴纳单位"), taxAgentIdFlag + item.getId() + "otherCommonCom");
repairResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补缴单位"), taxAgentIdFlag + item.getId() + "otherRepairCom");
balanceResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补差单位"), taxAgentIdFlag + item.getId() + "otherBalanceCom");
result.put(socialSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(100289, "单位"), socialSchemeIdFlag + item.getId() + "socialCom");
commonResult.put(socialSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "正常缴纳单位"), socialSchemeIdFlag + item.getId() + "socialCommonCom");
repairResult.put(socialSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补缴单位"), socialSchemeIdFlag + item.getId() + "socialRepairCom");
balanceResult.put(socialSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补差单位"), socialSchemeIdFlag + item.getId() + "socialBalanceCom");
}
});
@ -1278,6 +1259,204 @@ public class SIAccountServiceImpl extends Service implements SIAccountService {
result.putAll(repairResult);
result.putAll(balanceResult);
}
for (InsuranceSchemePO fundScheme : fundSchemeList) {
Map<String, String> commonResult = new LinkedHashMap<>();
Map<String, String> repairResult = new LinkedHashMap<>();
Map<String, String> balanceResult = new LinkedHashMap<>();
Map<String, String> baseResult = new LinkedHashMap<>();
String fundSchemeNameFlag = fundScheme.getSchemeName() + "_";
String fundSchemeIdFlag = fundScheme.getId() + "_";
result.put(fundSchemeNameFlag + SalaryI18nUtil.getI18nLabel(100390, "公积金个人合计"), fundSchemeIdFlag + "fundPerSum");
commonResult.put(fundSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金个人正常缴纳合计"), fundSchemeIdFlag + "fundPerCommonSum");
repairResult.put(fundSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金个人补缴合计"), fundSchemeIdFlag + "fundPerRepairSum");
balanceResult.put(fundSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金个人补差合计"), fundSchemeIdFlag + "fundPerBalanceSum");
Map<String, String> categoryIdNameMap = getSICategoryService(user).categoryIdNameMap();
list.stream().forEach(item -> {
if (Objects.equals(WelfareTypeEnum.ACCUMULATION_FUND.getValue(), item.getWelfareType())) {
if (Objects.equals(DataTypeEnum.SYSTEM.getValue(), item.getDataType())) {
baseResult.put(fundSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "申报基数"), fundSchemeIdFlag + item.getId() + "fundBase");
}
result.put(fundSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(87159, "个人"), fundSchemeIdFlag + item.getId() + "fundPer");
commonResult.put(fundSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "正常缴纳个人"), fundSchemeIdFlag + item.getId() + "fundCommonPer");
repairResult.put(fundSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补缴个人"), fundSchemeIdFlag + item.getId() + "fundRepairPer");
balanceResult.put(fundSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补差个人"), fundSchemeIdFlag + item.getId() + "fundBalancePer");
}
});
result.put(fundSchemeNameFlag + SalaryI18nUtil.getI18nLabel(100395, "公积金单位合计"), fundSchemeIdFlag + "fundComSum");
commonResult.put(fundSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金单位正常缴纳合计"), fundSchemeIdFlag + "fundComCommonSum");
repairResult.put(fundSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金单位补缴合计"), fundSchemeIdFlag + "fundComRepairSum");
balanceResult.put(fundSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金单位补差合计"), fundSchemeIdFlag + "fundComBalanceSum");
list.stream().forEach(item -> {
if (Objects.equals(WelfareTypeEnum.ACCUMULATION_FUND.getValue(), item.getWelfareType())) {
result.put(fundSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(100289, "单位"), fundSchemeIdFlag + item.getId() + "fundCom");
commonResult.put(fundSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "正常缴纳单位"), fundSchemeIdFlag + item.getId() + "fundCommonCom");
repairResult.put(fundSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补缴单位"), fundSchemeIdFlag + item.getId() + "fundRepairCom");
balanceResult.put(fundSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补差单位"), fundSchemeIdFlag + item.getId() + "fundBalanceCom");
}
});
result.putAll(baseResult);
result.putAll(commonResult);
result.putAll(repairResult);
result.putAll(balanceResult);
}
for (InsuranceSchemePO otherScheme : otherSchemeList) {
Map<String, String> commonResult = new LinkedHashMap<>();
Map<String, String> repairResult = new LinkedHashMap<>();
Map<String, String> balanceResult = new LinkedHashMap<>();
Map<String, String> baseResult = new LinkedHashMap<>();
String otherSchemeNameFlag = otherScheme.getSchemeName() + "_";
String otherSchemeIdFlag = otherScheme.getId() + "_";
result.put(otherSchemeNameFlag + SalaryI18nUtil.getI18nLabel(100392, "其他福利个人合计"), otherSchemeIdFlag + "otherPerSum");
commonResult.put(otherSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利个人正常缴纳合计"), otherSchemeIdFlag + "otherPerCommonSum");
repairResult.put(otherSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利个人补缴合计"), otherSchemeIdFlag + "otherPerRepairSum");
balanceResult.put(otherSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利个人补差合计"), otherSchemeIdFlag + "otherPerBalanceSum");
Map<String, String> categoryIdNameMap = getSICategoryService(user).categoryIdNameMap();
list.stream().forEach(item -> {
if (Objects.equals(WelfareTypeEnum.OTHER.getValue(), item.getWelfareType())) {
if (Objects.equals(DataTypeEnum.SYSTEM.getValue(), item.getDataType())) {
baseResult.put(otherSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "申报基数"),otherSchemeIdFlag + item.getId() + "otherBase");
}
result.put(otherSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(87159, "个人"), otherSchemeIdFlag + item.getId() + "otherPer");
commonResult.put(otherSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "正常缴纳个人"), otherSchemeIdFlag + item.getId() + "otherCommonPer");
repairResult.put(otherSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补缴个人"), otherSchemeIdFlag + item.getId() + "otherRepairPer");
balanceResult.put(otherSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补差个人"), otherSchemeIdFlag + item.getId() + "otherBalancePer");
}
});
result.put(otherSchemeNameFlag + SalaryI18nUtil.getI18nLabel(100396, "其他福利单位合计"), otherSchemeIdFlag + "otherComSum");
commonResult.put(otherSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利单位正常缴纳合计"), otherSchemeIdFlag + "otherComCommonSum");
repairResult.put(otherSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利单位补缴合计"), otherSchemeIdFlag + "otherComRepairSum");
balanceResult.put(otherSchemeNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利单位补差合计"), otherSchemeIdFlag + "otherComBalanceSum");
list.stream().forEach(item -> {
if (Objects.equals(WelfareTypeEnum.OTHER.getValue(), item.getWelfareType())) {
result.put(otherSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(100289, "单位"), otherSchemeIdFlag + item.getId() + "otherCom");
commonResult.put(otherSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "正常缴纳单位"), otherSchemeIdFlag + item.getId() + "otherCommonCom");
repairResult.put(otherSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补缴单位"), otherSchemeIdFlag + item.getId() + "otherRepairCom");
balanceResult.put(otherSchemeNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补差单位"), otherSchemeIdFlag + item.getId() + "otherBalanceCom");
}
});
result.putAll(baseResult);
result.putAll(commonResult);
result.putAll(repairResult);
result.putAll(balanceResult);
}
// for (TaxAgentPO taxAgentPO : allTaxAgentList) {
// Map<String, String> commonResult = new LinkedHashMap<>();
// Map<String, String> repairResult = new LinkedHashMap<>();
// Map<String, String> balanceResult = new LinkedHashMap<>();
// Map<String, String> baseResult = new LinkedHashMap<>();
//
// String taxAgentNameFlag = taxAgentPO.getName() + "_";
// String taxAgentIdFlag = taxAgentPO.getId() + "_";
//
// result.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(100393, "个人合计"), taxAgentIdFlag + "perSum");
// result.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(100388, "社保个人合计"), taxAgentIdFlag + "socialPerSum");
// result.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(100390, "公积金个人合计"), taxAgentIdFlag + "fundPerSum");
// result.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(100392, "其他福利个人合计"), taxAgentIdFlag + "otherPerSum");
//
// commonResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "个人正常缴纳合计"), taxAgentIdFlag + "perCommonSum");
// commonResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "社保个人正常缴纳合计"), taxAgentIdFlag + "socialPerCommonSum");
// commonResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金个人正常缴纳合计"), taxAgentIdFlag + "fundPerCommonSum");
// commonResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利个人正常缴纳合计"), taxAgentIdFlag + "otherPerCommonSum");
// repairResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "个人补缴合计"), taxAgentIdFlag + "perRepairSum");
// repairResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "社保个人补缴合计"), taxAgentIdFlag + "socialPerRepairSum");
// repairResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金个人补缴合计"), taxAgentIdFlag + "fundPerRepairSum");
// repairResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利个人补缴合计"), taxAgentIdFlag + "otherPerRepairSum");
// balanceResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "个人补差合计"), taxAgentIdFlag + "perBalanceSum");
// balanceResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "社保个人补差合计"), taxAgentIdFlag + "socialPerBalanceSum");
// balanceResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金个人补差合计"), taxAgentIdFlag + "fundPerBalanceSum");
// balanceResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利个人补差合计"), taxAgentIdFlag + "otherPerBalanceSum");
//
// Map<String, String> categoryIdNameMap = getSICategoryService(user).categoryIdNameMap();
// list.stream().forEach(item -> {
// if (Objects.equals(WelfareTypeEnum.SOCIAL_SECURITY.getValue(), item.getWelfareType())) {
// if (Objects.equals(DataTypeEnum.SYSTEM.getValue(), item.getDataType())) {
// baseResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "申报基数"), taxAgentIdFlag + item.getId() + "socialBase");
// }
// result.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(87159, "个人"), taxAgentIdFlag + item.getId() + "socialPer");
// commonResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "正常缴纳个人"), taxAgentIdFlag + item.getId() + "socialCommonPer");
// repairResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补缴个人"), taxAgentIdFlag + item.getId() + "socialRepairPer");
// balanceResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补差个人"), taxAgentIdFlag + item.getId() + "socialBalancePer");
// }
// if (Objects.equals(WelfareTypeEnum.ACCUMULATION_FUND.getValue(), item.getWelfareType())) {
// if (Objects.equals(DataTypeEnum.SYSTEM.getValue(), item.getDataType())) {
// baseResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "申报基数"), taxAgentIdFlag + item.getId() + "fundBase");
// }
// result.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(87159, "个人"), taxAgentIdFlag + item.getId() + "fundPer");
// commonResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "正常缴纳个人"), taxAgentIdFlag + item.getId() + "fundCommonPer");
// repairResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补缴个人"), taxAgentIdFlag + item.getId() + "fundRepairPer");
// balanceResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补差个人"), taxAgentIdFlag + item.getId() + "fundBalancePer");
// }
// if (Objects.equals(WelfareTypeEnum.OTHER.getValue(), item.getWelfareType())) {
// if (Objects.equals(DataTypeEnum.SYSTEM.getValue(), item.getDataType())) {
// baseResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "申报基数"),taxAgentIdFlag + item.getId() + "otherBase");
// }
// result.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(87159, "个人"), taxAgentIdFlag + item.getId() + "otherPer");
// commonResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "正常缴纳个人"), taxAgentIdFlag + item.getId() + "otherCommonPer");
// repairResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补缴个人"), taxAgentIdFlag + item.getId() + "otherRepairPer");
// balanceResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补差个人"), taxAgentIdFlag + item.getId() + "otherBalancePer");
// }
//
// });
// result.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(100397, "单位合计"), taxAgentIdFlag + "comSum");
// result.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(100394, "社保单位合计"), taxAgentIdFlag + "socialComSum");
// result.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(100395, "公积金单位合计"), taxAgentIdFlag + "fundComSum");
// result.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(100396, "其他福利单位合计"), taxAgentIdFlag + "otherComSum");
//
// commonResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "单位正常缴纳合计"), taxAgentIdFlag + "comCommonSum");
// commonResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "社保单位正常缴纳合计"), taxAgentIdFlag + "socialComCommonSum");
// commonResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金单位正常缴纳合计"), taxAgentIdFlag + "fundComCommonSum");
// commonResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利单位正常缴纳合计"), taxAgentIdFlag + "otherComCommonSum");
// repairResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "单位补缴合计"), taxAgentIdFlag + "comRepairSum");
// repairResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "社保单位补缴合计"), taxAgentIdFlag + "socialComRepairSum");
// repairResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金单位补缴合计"), taxAgentIdFlag + "fundComRepairSum");
// repairResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利单位补缴合计"), taxAgentIdFlag + "otherComRepairSum");
// balanceResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "单位补差合计"), taxAgentIdFlag + "comBalanceSum");
// balanceResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "社保单位补差合计"), taxAgentIdFlag + "socialComBalanceSum");
// balanceResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "公积金单位补差合计"), taxAgentIdFlag + "fundComBalanceSum");
// balanceResult.put(taxAgentNameFlag + SalaryI18nUtil.getI18nLabel(0, "其他福利单位补差合计"), taxAgentIdFlag + "otherComBalanceSum");
//
// list.stream().forEach(item -> {
// if (Objects.equals(WelfareTypeEnum.SOCIAL_SECURITY.getValue(), item.getWelfareType())) {
// result.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(100289, "单位"), taxAgentIdFlag + item.getId() + "socialCom");
// commonResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "正常缴纳单位"), taxAgentIdFlag + item.getId() + "socialCommonCom");
// repairResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补缴单位"), taxAgentIdFlag + item.getId() + "socialRepairCom");
// balanceResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补差单位"), taxAgentIdFlag + item.getId() + "socialBalanceCom");
// }
// if (Objects.equals(WelfareTypeEnum.ACCUMULATION_FUND.getValue(), item.getWelfareType())) {
// result.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(100289, "单位"), taxAgentIdFlag + item.getId() + "fundCom");
// commonResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "正常缴纳单位"), taxAgentIdFlag + item.getId() + "fundCommonCom");
// repairResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补缴单位"), taxAgentIdFlag + item.getId() + "fundRepairCom");
// balanceResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补差单位"), taxAgentIdFlag + item.getId() + "fundBalanceCom");
// }
// if (Objects.equals(WelfareTypeEnum.OTHER.getValue(), item.getWelfareType())) {
// result.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(100289, "单位"), taxAgentIdFlag + item.getId() + "otherCom");
// commonResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "正常缴纳单位"), taxAgentIdFlag + item.getId() + "otherCommonCom");
// repairResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补缴单位"), taxAgentIdFlag + item.getId() + "otherRepairCom");
// balanceResult.put(taxAgentNameFlag + categoryIdNameMap.get(String.valueOf(item.getId())) + SalaryI18nUtil.getI18nLabel(0, "补差单位"), taxAgentIdFlag + item.getId() + "otherBalanceCom");
// }
// });
//
// result.putAll(baseResult);
// result.putAll(commonResult);
// result.putAll(repairResult);
// result.putAll(balanceResult);
// }
return result;
}
@ -1485,6 +1664,17 @@ public class SIAccountServiceImpl extends Service implements SIAccountService {
insuranceAccountDetailPO.setOtherComSum(otherCom.toPlainString());
insuranceAccountDetailPO.setPerSum(perSum.toPlainString());
insuranceAccountDetailPO.setComSum(comSum.toPlainString());
// 取正常缴纳的id
List<InsuranceAccountDetailPO> commonList = v.stream().filter(item -> item.getStatus().equals(PaymentStatusEnum.COMMON.getValue())).collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(commonList)) {
insuranceAccountDetailPO.setSocialSchemeId(commonList.get(0).getSocialSchemeId());
insuranceAccountDetailPO.setFundSchemeId(commonList.get(0).getFundSchemeId());
insuranceAccountDetailPO.setOtherSchemeId(commonList.get(0).getOtherSchemeId());
} else {
insuranceAccountDetailPO.setSocialSchemeId(v.get(0).getSocialSchemeId());
insuranceAccountDetailPO.setFundSchemeId(v.get(0).getFundSchemeId());
insuranceAccountDetailPO.setOtherSchemeId(v.get(0).getOtherSchemeId());
}
newList.add(insuranceAccountDetailPO);
}
return newList;