From c8169c50930aab9363175b79e59ecc349634121d Mon Sep 17 00:00:00 2001 From: chenhao <852066789@qq.com> Date: Mon, 28 Oct 2024 11:30:42 +0800 Subject: [PATCH] =?UTF-8?q?refactor(budget):=20=E8=B0=83=E6=95=B4=E9=A2=84?= =?UTF-8?q?=E7=AE=97=E7=BB=9F=E8=AE=A1=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 移除 IncomeCostBean 中的成本项目管理税金相关计算 - 在 ProjectBudgetPlanDetail 中添加服务支出和其他支出的 transient 字段 - 更新 ProjectBudgetService 中的月度预算统计逻辑,增加项目管理成本和定金成本的计算 --- src/main/java/cn/palmte/work/bean/IncomeCostBean.java | 6 +++--- .../java/cn/palmte/work/model/ProjectBudgetPlanDetail.java | 3 +++ .../java/cn/palmte/work/service/ProjectBudgetService.java | 6 ++++++ 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/src/main/java/cn/palmte/work/bean/IncomeCostBean.java b/src/main/java/cn/palmte/work/bean/IncomeCostBean.java index ddda8bb..09f418b 100644 --- a/src/main/java/cn/palmte/work/bean/IncomeCostBean.java +++ b/src/main/java/cn/palmte/work/bean/IncomeCostBean.java @@ -425,13 +425,13 @@ public abstract class IncomeCostBean { BigDecimal costPurchaseBuildTaxInclude = getCostPurchaseBuildTaxInclude(); BigDecimal costPurchaseServiceTaxInclude = getCostPurchaseServiceTaxInclude(); BigDecimal costPurchaseOtherTaxInclude = getCostPurchaseOtherTaxInclude(); - BigDecimal costProjectManageTaxInclude = getCostProjectManageTaxInclude(); + // BigDecimal costProjectManageTaxInclude = getCostProjectManageTaxInclude(); BigDecimal costOtherOtherTaxInclude = getCostOtherOtherTaxInclude(); if (null == costPurchaseDeviceTaxInclude || null == costPurchaseBuildTaxInclude || null == costPurchaseServiceTaxInclude || null == costPurchaseOtherTaxInclude - || null == costProjectManageTaxInclude + // || null == costProjectManageTaxInclude || null == costOtherOtherTaxInclude) { return handleSpecial(null); } @@ -439,7 +439,7 @@ public abstract class IncomeCostBean { .add(costPurchaseBuildTaxInclude) .add(costPurchaseServiceTaxInclude) .add(costPurchaseOtherTaxInclude) - .add(costProjectManageTaxInclude) + // .add(costProjectManageTaxInclude) .add(costOtherOtherTaxInclude); } diff --git a/src/main/java/cn/palmte/work/model/ProjectBudgetPlanDetail.java b/src/main/java/cn/palmte/work/model/ProjectBudgetPlanDetail.java index 20a20be..9ef6a9c 100644 --- a/src/main/java/cn/palmte/work/model/ProjectBudgetPlanDetail.java +++ b/src/main/java/cn/palmte/work/model/ProjectBudgetPlanDetail.java @@ -12,12 +12,15 @@ import java.math.BigDecimal; @Table(name = "project_budget_plan_detail") @Data public class ProjectBudgetPlanDetail extends ProjectBudgetPlanDetailBase{ + //服务支出 + @Transient private BigDecimal serviceCost; // private BigDecimal deviceCost; // private BigDecimal projectCost; //其它支出 + @Transient private BigDecimal otherCost; } \ No newline at end of file diff --git a/src/main/java/cn/palmte/work/service/ProjectBudgetService.java b/src/main/java/cn/palmte/work/service/ProjectBudgetService.java index d73a5dc..fa2ce87 100644 --- a/src/main/java/cn/palmte/work/service/ProjectBudgetService.java +++ b/src/main/java/cn/palmte/work/service/ProjectBudgetService.java @@ -674,6 +674,8 @@ public class ProjectBudgetService { ) ) )); + BigDecimal projectManageCost = new BigDecimal(0); + BigDecimal earnestMoneyCost = new BigDecimal(0); BigDecimal deviceCost = new BigDecimal(0); BigDecimal engineerCost = new BigDecimal(0); BigDecimal serviceCost = new BigDecimal(0); @@ -694,6 +696,8 @@ public class ProjectBudgetService { Map projectPayments = monthlyProjectPaymentSum.getOrDefault(month, Collections.emptyMap()); + projectManageCost = projectManageCost.add(budgetPlan.getProjectManageCost()); + earnestMoneyCost = earnestMoneyCost.add(budgetPlan.getEarnestMoneyCost()); deviceCost = deviceCost.add(projectPayments.getOrDefault("设备成本", BigDecimal.ZERO)); engineerCost = engineerCost.add(projectPayments.getOrDefault("工程成本", BigDecimal.ZERO)); serviceCost = serviceCost.add(projectPayments.getOrDefault("服务成本", BigDecimal.ZERO)); @@ -719,6 +723,8 @@ public class ProjectBudgetService { projectBudgetPlanDetail.setEngineerCost(engineerCost); projectBudgetPlanDetail.setServiceCost(serviceCost); // 设置服务成本 projectBudgetPlanDetail.setOtherCost(otherCost); // 设置其他成本 + projectBudgetPlanDetail.setProjectManageCost(projectManageCost); + projectBudgetPlanDetail.setEarnestMoneyCost(earnestMoneyCost); projectBudgetPlanDetail.setTotalCost(totalCost); projectBudgetPlanDetail.setSaleIncome(saleIncome); projectBudgetPlanDetail.setEarnestMoneyIncome(earnestMoneyIncome);