diff --git a/src/com/engine/salary/entity/datacollection/dto/AddUpDeductionDTO.java b/src/com/engine/salary/entity/datacollection/dto/AddUpDeductionDTO.java index 78b0d8676..d2b923a3e 100644 --- a/src/com/engine/salary/entity/datacollection/dto/AddUpDeductionDTO.java +++ b/src/com/engine/salary/entity/datacollection/dto/AddUpDeductionDTO.java @@ -23,7 +23,7 @@ import lombok.NoArgsConstructor; @Builder @NoArgsConstructor @AllArgsConstructor -@SalaryTable(pageId = "a4f85287-e3f9-4275-adn9-7d06e54y6rj8", tableType = WeaTableType.CHECKBOX, operates = { +@SalaryTable(pageId = "a4f85287-e3f9-4275-adn9-7d06e54y67j8", tableType = WeaTableType.CHECKBOX, operates = { @SalaryTableOperate(text = "查看明细") }) public class AddUpDeductionDTO { diff --git a/src/com/engine/salary/entity/taxdeclaration/bo/TaxDeclarationBO.java b/src/com/engine/salary/entity/taxdeclaration/bo/TaxDeclarationBO.java index 5bfe09b17..6afae5f96 100644 --- a/src/com/engine/salary/entity/taxdeclaration/bo/TaxDeclarationBO.java +++ b/src/com/engine/salary/entity/taxdeclaration/bo/TaxDeclarationBO.java @@ -16,11 +16,12 @@ import com.engine.salary.util.SalaryEntityUtil; import com.engine.salary.util.SalaryI18nUtil; import com.engine.salary.util.page.PageInfo; import com.google.common.collect.Lists; -import com.google.common.collect.Maps; import dm.jdbc.util.IdGenerator; import lombok.Data; import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.lang3.math.NumberUtils; import weaver.hrm.User; + import java.math.BigDecimal; import java.time.LocalDateTime; import java.util.*; @@ -157,7 +158,8 @@ public class TaxDeclarationBO { // 核算结果按照人员id分类 Map> acctResultMap = SalaryEntityUtil.group2Map(salaryAcctResults, SalaryAcctResultPO::getEmployeeId); acctResultMap.forEach((k, v) -> { - Map valueMap = Maps.newHashMapWithExpectedSize(32); + Long employeeId = k; + Map valueMap = new HashMap<>(); Map> resultMap = SalaryEntityUtil.group2Map(v, SalaryAcctResultPO::getSalaryItemId); // 收入 BigDecimal income = SalaryEntityUtil.reduce(resultMap.get(salaryItemMap.getOrDefault("income", 0L)), e -> SalaryEntityUtil.empty2Zero(e.getResultValue())); @@ -204,6 +206,9 @@ public class TaxDeclarationBO { // 累计收入 BigDecimal addUpIncome = findAddUpValue("addUpIncome", resultMap, salaryItemMap); valueMap.put("addUpIncome", addUpIncome); + // 累计免税收入 + BigDecimal addUpTaxFreeIncome = findAddUpValue("addUpTaxFreeIncome", resultMap, salaryItemMap); + valueMap.put("addUpTaxFreeIncome", addUpTaxFreeIncome); // 累计减除费用 BigDecimal addUpSubtraction = findAddUpValue("addUpSubtraction", resultMap, salaryItemMap); valueMap.put("addUpSubtraction", addUpSubtraction); @@ -225,6 +230,12 @@ public class TaxDeclarationBO { // 累计赡养老人 BigDecimal addUpSupportElderly = findAddUpValue("addUpSupportElderly", resultMap, salaryItemMap); valueMap.put("addUpSupportElderly", addUpSupportElderly); + // 累计大病医疗 + BigDecimal addUpIllnessMedical = findAddUpValue("addUpIllnessMedical", resultMap, salaryItemMap); + valueMap.put("addUpIllnessMedical", addUpIllnessMedical); + // 累计婴幼儿照护 + BigDecimal addUpInfantCare = findAddUpValue("addUpInfantCare", resultMap, salaryItemMap); + valueMap.put("addUpInfantCare", addUpInfantCare); // 累计其他扣除 BigDecimal addUpOtherDeduction = findAddUpValue("addUpOtherDeduction", resultMap, salaryItemMap); valueMap.put("addUpOtherDeduction", addUpOtherDeduction); @@ -249,6 +260,9 @@ public class TaxDeclarationBO { // 减免税额 BigDecimal addUpTaxDeduction = BigDecimal.ZERO; valueMap.put("addUpTaxDeduction", addUpTaxDeduction); + // 减免税额 + BigDecimal taxDeduction = findValue("taxDeduction", resultMap, salaryItemMap); + valueMap.put("taxDeduction", taxDeduction); // 应补缴税额 BigDecimal refundedOrSupplementedTax = SalaryEntityUtil.reduce(resultMap.get(salaryItemMap.getOrDefault("refundedOrSupplementedTax", 0L)), e -> SalaryEntityUtil.empty2Zero(e.getResultValue())); @@ -281,9 +295,9 @@ public class TaxDeclarationBO { // 更新累计情况 AddUpSituation accumulatedSituation = AddUpSituation.builder() .id(IdGenerator.generate()) - .employeeId(k) + .employeeId(employeeId) .taxAgentId(taxDeclaration.getTaxAgentId()) - .taxYearMonth((taxDeclaration.getSalaryMonth())) + .taxYearMonth(taxDeclaration.getSalaryMonth()) .year(taxDeclaration.getSalaryMonth().getYear()) .addUpIncome(addUpIncome.toPlainString()) .addUpSocialSecurityTotal(addUpSocialSecurityTotal.toPlainString()) @@ -295,15 +309,18 @@ public class TaxDeclarationBO { .addUpHousingLoanInterest(addUpHousingLoanInterest.toPlainString()) .addUpHousingRent(addUpHousingRent.toPlainString()) .addUpSupportElderly(addUpSupportElderly.toPlainString()) + .addUpIllnessMedical(addUpIllnessMedical.toPlainString()) + .addUpInfantCare(addUpInfantCare.toPlainString()) .addUpOtherDeduction(addUpOtherDeduction.toPlainString()) - .addUpTaxExemptIncome("0") + .addUpTaxExemptIncome(addUpTaxFreeIncome.toPlainString()) .addUpAllowedDonation(addUpAllowedDonation.toPlainString()) .addUpAdvanceTax(addUpTaxPayable.toPlainString()) +// .addUpTaxSavings(taxDeduction.toPlainString()) .creator(taxDeclaration.getCreator()) .createTime(taxDeclaration.getCreateTime()) .updateTime(taxDeclaration.getUpdateTime()) .tenantKey(taxDeclaration.getTenantKey()) - .deleteType(0) + .deleteType(NumberUtils.INTEGER_ZERO) .build(); result.getNeedInsertAccumulatedSituations().add(accumulatedSituation); });