From e63c385be125b97403ab0ddeee973388f5af640f Mon Sep 17 00:00:00 2001 From: hanbo <2608504783@qq.com> Date: Wed, 10 Nov 2021 15:49:13 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=91=E8=B5=B7=E5=86=B3=E7=AE=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/cn/palmte/work/bean/FinalBean.java | 1359 +++++++++++++++++ .../backend/ProjectFinalController.java | 34 + .../ProjectEstimateIncomeRepository.java | 2 + .../work/model/ProjectFinalCashFlux.java | 107 ++ .../model/ProjectFinalCashFluxRepository.java | 7 + .../palmte/work/model/ProjectFinalCost.java | 125 ++ .../work/model/ProjectFinalCostManage.java | 109 ++ .../ProjectFinalCostManageRepository.java | 7 + .../model/ProjectFinalCostRepository.java | 7 + .../palmte/work/model/ProjectFinalIncome.java | 110 ++ .../model/ProjectFinalIncomeReposiry.java | 7 + .../work/model/ProjectFinalProfitMargin.java | 81 + .../ProjectFinalProfitMarginRepository.java | 7 + .../work/service/ProjectFinalSevice.java | 45 + .../templates/admin/project_final_edit.ftl | 381 +++++ .../templates/admin/project_list.ftl | 5 + .../resources/templates/admin/role_list.ftl | 4 +- .../resources/templates/common/header.ftl | 3 +- 18 files changed, 2397 insertions(+), 3 deletions(-) create mode 100644 src/main/java/cn/palmte/work/bean/FinalBean.java create mode 100644 src/main/java/cn/palmte/work/controller/backend/ProjectFinalController.java create mode 100644 src/main/java/cn/palmte/work/model/ProjectFinalCashFlux.java create mode 100644 src/main/java/cn/palmte/work/model/ProjectFinalCashFluxRepository.java create mode 100644 src/main/java/cn/palmte/work/model/ProjectFinalCost.java create mode 100644 src/main/java/cn/palmte/work/model/ProjectFinalCostManage.java create mode 100644 src/main/java/cn/palmte/work/model/ProjectFinalCostManageRepository.java create mode 100644 src/main/java/cn/palmte/work/model/ProjectFinalCostRepository.java create mode 100644 src/main/java/cn/palmte/work/model/ProjectFinalIncome.java create mode 100644 src/main/java/cn/palmte/work/model/ProjectFinalIncomeReposiry.java create mode 100644 src/main/java/cn/palmte/work/model/ProjectFinalProfitMargin.java create mode 100644 src/main/java/cn/palmte/work/model/ProjectFinalProfitMarginRepository.java create mode 100644 src/main/java/cn/palmte/work/service/ProjectFinalSevice.java create mode 100644 src/main/resources/templates/admin/project_final_edit.ftl diff --git a/src/main/java/cn/palmte/work/bean/FinalBean.java b/src/main/java/cn/palmte/work/bean/FinalBean.java new file mode 100644 index 0000000..9270c08 --- /dev/null +++ b/src/main/java/cn/palmte/work/bean/FinalBean.java @@ -0,0 +1,1359 @@ +package cn.palmte.work.bean; + +import java.math.BigDecimal; + +public class FinalBean { + + + //========================收入表================================ + /** + * 设备类概算总额 + */ + private BigDecimal incomeDeviceEstimateTotal; + + /** + * 设备类预算总额 + */ + private BigDecimal incomeDeviceBudgetTotal; + + /** + * 设备类结算总额 + */ + private BigDecimal incomeDeviceSettleTotal; + + /** + * 设备类决算总额 + */ + private BigDecimal incomeDeviceFinalTotal; + + /** + * 工程类概算总额 + */ + private BigDecimal incomeEngineerEstimateTotal; + + /** + * 工程类预算总额 + */ + private BigDecimal incomeEngineerBudgetTotal; + + /** + * 工程类结算总额 + */ + private BigDecimal incomeEngineerSettleTotal; + + /** + * 工程类决算总额 + */ + private BigDecimal incomeEngineerFinalTotal; + + /** + * 服务类概算总额 + */ + private BigDecimal incomeServiceEstimateTotal; + + /** + * 服务类预算总额 + */ + private BigDecimal incomeServiceBudgetTotal; + + /** + * 服务类结算总额 + */ + private BigDecimal incomeServiceSettleTotal; + + /** + * 服务类决算总额 + */ + private BigDecimal incomeServiceFinalTotal; + + + //========================成本表================================ + + /** + *设备采购成本概算总额 + */ + private BigDecimal costPurchaseDeviceEstimateTotal; + + /** + *设备采购成本预算总额 + */ + private BigDecimal costPurchaseDeviceBudgetTotal; + + /** + *设备采购成本结算总额 + */ + private BigDecimal costPurchaseDeviceSettleTotal; + + /** + *设备采购成本决算总额 + */ + private BigDecimal costPurchaseDeviceFinalTotal; + + /** + *施工采购成本概算总额 + */ + private BigDecimal costPurchaseBuildEstimateTotal; + + /** + *施工采购成本预算总额 + */ + private BigDecimal costPurchaseBuildBudgetTotal; + + /** + *施工采购成本结算总额 + */ + private BigDecimal costPurchaseBuildSettleTotal; + + /** + *施工采购成本决算总额 + */ + private BigDecimal costPurchaseBuildFinalTotal; + + /** + *服务采购成本概算总额 + */ + private BigDecimal costPurchaseServiceEstimateTotal; + + /** + *服务采购成本预算总额 + */ + private BigDecimal costPurchaseServiceBudgetTotal; + + /** + *服务采购成本结算总额 + */ + private BigDecimal costPurchaseServiceSettleTotal; + + /** + *服务采购成本决算总额 + */ + private BigDecimal costPurchaseServiceFinalTotal; + + /** + *其他采购成本概算总额 + */ + private BigDecimal costPurchaseOtherEstimateTotal; + + /** + *其他采购成本预算总额 + */ + private BigDecimal costPurchaseOtherBudgetTotal; + + /** + *其他采购成本结算总额 + */ + private BigDecimal costPurchaseOtherSettleTotal; + + /** + *其他采购成本决算总额 + */ + private BigDecimal costPurchaseOtherFinalTotal; + + /** + * 项目管理成本概算总额 + */ + private BigDecimal costProjectManageEstimateTotal; + + /** + * 项目管理成本预算总额 + */ + private BigDecimal costProjectManageBudgetTotal; + + /** + * 项目管理成本结算总额 + */ + private BigDecimal costProjectManageSettleTotal; + + /** + * 项目管理成本决算总额 + */ + private BigDecimal costProjectManageFinalTotal; + + /** + * 其他成本概算总额 + */ + private BigDecimal costOtherEstimateTotal; + + /** + * 其他成本预算总额 + */ + private BigDecimal costOtherBudgetTotal; + + /** + * 其他成本结算总额 + */ + private BigDecimal costOtherSettleTotal; + + /** + * 其他成本决算总额 + */ + private BigDecimal costOtherFinalTotal; + + + //========================管理表================================ + + /** + * 财务费用概算总额 + */ + private BigDecimal costExpropriationEstimateTotal; + + /** + * 财务费用预算总额 + */ + private BigDecimal costExpropriationBudgetTotal; + + /** + * 财务费用结算总额 + */ + private BigDecimal costExpropriationSettleTotal; + + /** + * 财务费用决算总额 + */ + private BigDecimal costExpropriationFinalTotal; + + /** + * 公司管理费用概算总额 + */ + private BigDecimal costCompanyManageEstimateTotal; + + /** + * 公司管理费用预算总额 + */ + private BigDecimal costCompanyManageBudgetTotal; + + /** + * 公司管理费用结算总额 + */ + private BigDecimal costCompanyManageSettleTotal; + + /** + * 公司管理费用决算总额 + */ + private BigDecimal costCompanyManageFinalTotal; + + /** + * 所得税费用结算总额 + */ + private BigDecimal costIncomeTaxSettleTotal; + + /** + * 所得税费用决算总额 + */ + private BigDecimal costIncomeTaxFinalTotal; + + + //========================利润率计算表================================ + + /** + * 项目毛利概算总额 + */ + private BigDecimal grossProfitEstimateTotal; + + /** + * 项目毛利预算总额 + */ + private BigDecimal grossProfitBudgetTotal; + + /** + * 项目毛利结算总额 + */ + private BigDecimal grossProfitSettleTotal; + + /** + * 项目毛利决算总额 + */ + private BigDecimal grossProfitFinalTotal; + + /** + * 项目毛利利润率 + */ + private BigDecimal grossProfitProfitMargin; + + /** + * 项目贡献利润概算总额 + */ + private BigDecimal contributionMarginEstimateTotal; + + /** + * 项目贡献利润预算总额 + */ + private BigDecimal contributionMarginBudgetTotal; + + /** + * 项目贡献利润结算总额 + */ + private BigDecimal contributionMarginSettleTotal; + + /** + * 项目贡献利润决算总额 + */ + private BigDecimal contributionMarginFinalTotal; + + /** + * 项目贡献利润利润率 + */ + private BigDecimal contributionMarginProfitMargin; + + /** + * 项目净利润概算总额 + */ + private BigDecimal netMarginEstimateTotal; + + /** + * 项目净利润预算总额 + */ + private BigDecimal netMarginBudgetTotal; + + /** + * 项目净利润结算总额 + */ + private BigDecimal netMarginSettleTotal; + + /** + * 项目净利润决算总额 + */ + private BigDecimal netMarginFinalTotal; + + /** + * 项目净利润利润率 + */ + private BigDecimal netMarginProfitMargin; + + + //========================结算现金流量表================================ + + /** + * 销售商品、提供劳务收到的现金 预算总额 + */ + private BigDecimal type1BudgetTotal; + + /** + * 销售商品、提供劳务收到的现金 结算总额 + */ + private BigDecimal type1SettleTotal; + + /** + * 销售商品、提供劳务收到的现金 决算总额 + */ + private BigDecimal type1FinalTotal; + + /** + * 收到的税费返还 预算总额 + */ + private BigDecimal type2BudgetTotal; + + /** + * 收到的税费返还 结算总额 + */ + private BigDecimal type2SettleTotal; + + /** + * 收到的税费返还 决算总额 + */ + private BigDecimal type2FinalTotal; + + /** + * 收到其他与经营活动有关的现金 预算总额 + */ + private BigDecimal type3BudgetTotal; + + /** + * 收到其他与经营活动有关的现金 结算总额 + */ + private BigDecimal type3SettleTotal; + + /** + * 收到其他与经营活动有关的现金 决算总额 + */ + private BigDecimal type3FinalTotal; + + /** + * 购买商品、接受劳务支付的现金 预算总额 + */ + private BigDecimal type4BudgetTotal; + + /** + * 购买商品、接受劳务支付的现金 结算总额 + */ + private BigDecimal type4SettleTotal; + + /** + * 购买商品、接受劳务支付的现金 决算总额 + */ + private BigDecimal type4FinalTotal; + + /** + * 支付的各项税费 预算总额 + */ + private BigDecimal type5BudgetTotal; + + /** + * 支付的各项税费 结算总额 + */ + private BigDecimal type5SettleTotal; + + /** + * 支付的各项税费 决算总额 + */ + private BigDecimal type5FinalTotal; + + /** + * 支付其他与经营活动有关的现金 预算总额 + */ + private BigDecimal type6BudgetTotal; + + /** + * 支付其他与经营活动有关的现金 结算总额 + */ + private BigDecimal type6SettleTotal; + + /** + * 支付其他与经营活动有关的现金 决算总额 + */ + private BigDecimal type6FinalTotal; + + /** + * 经营活动产生的现金流量净额 预算总额 + */ + private BigDecimal type7BudgetTotal; + + /** + * 经营活动产生的现金流量净额 结算总额 + */ + private BigDecimal type7SettleTotal; + + /** + * 经营活动产生的现金流量净额 决算总额 + */ + private BigDecimal type7FinalTotal; + + /** + * 投资活动现金流入 预算总额 + */ + private BigDecimal type8BudgetTotal; + + /** + * 投资活动现金流入 结算总额 + */ + private BigDecimal type8SettleTotal; + + /** + * 投资活动现金流入 决算总额 + */ + private BigDecimal type8FinalTotal; + + /** + * 投资活动现金流出 预算总额 + */ + private BigDecimal type9BudgetTotal; + + /** + * 投资活动现金流出 结算总额 + */ + private BigDecimal type9SettleTotal; + + /** + * 投资活动现金流出 决算总额 + */ + private BigDecimal type9FinalTotal; + + /** + * 投资活动产生的现金流量净额 预算总额 + */ + private BigDecimal type10BudgetTotal; + + /** + * 投资活动产生的现金流量净额 结算总额 + */ + private BigDecimal type10SettleTotal; + + /** + * 投资活动产生的现金流量净额 决算总额 + */ + private BigDecimal type10FinalTotal; + + /** + * 融资资金流入 预算总额 + */ + private BigDecimal type11BudgetTotal; + + /** + * 融资资金流入 结算总额 + */ + private BigDecimal type11SettleTotal; + + /** + * 融资资金流入 决算总额 + */ + private BigDecimal type11FinalTotal; + + /** + * 还款资金流出 预算总额 + */ + private BigDecimal type12BudgetTotal; + + /** + * 还款资金流出 结算总额 + */ + private BigDecimal type12SettleTotal; + + /** + * 还款资金流出 决算总额 + */ + private BigDecimal type12FinalTotal; + + /** + * 筹资活动产生的现金流量净额 预算总额 + */ + private BigDecimal type13BudgetTotal; + + /** + * 筹资活动产生的现金流量净额 结算总额 + */ + private BigDecimal type13SettleTotal; + + /** + * 筹资活动产生的现金流量净额 决算总额 + */ + private BigDecimal type13FinalTotal; + + /** + * 货币资金净增加额 预算总额 + */ + private BigDecimal type14BudgetTotal; + + /** + * 货币资金净增加额 结算总额 + */ + private BigDecimal type14SettleTotal; + + /** + * 货币资金净增加额 决算总额 + */ + private BigDecimal type14FinalTotal; + + public BigDecimal getIncomeDeviceEstimateTotal() { + return incomeDeviceEstimateTotal; + } + + public void setIncomeDeviceEstimateTotal(BigDecimal incomeDeviceEstimateTotal) { + this.incomeDeviceEstimateTotal = incomeDeviceEstimateTotal; + } + + public BigDecimal getIncomeDeviceBudgetTotal() { + return incomeDeviceBudgetTotal; + } + + public void setIncomeDeviceBudgetTotal(BigDecimal incomeDeviceBudgetTotal) { + this.incomeDeviceBudgetTotal = incomeDeviceBudgetTotal; + } + + public BigDecimal getIncomeDeviceSettleTotal() { + return incomeDeviceSettleTotal; + } + + public void setIncomeDeviceSettleTotal(BigDecimal incomeDeviceSettleTotal) { + this.incomeDeviceSettleTotal = incomeDeviceSettleTotal; + } + + public BigDecimal getIncomeDeviceFinalTotal() { + return incomeDeviceFinalTotal; + } + + public void setIncomeDeviceFinalTotal(BigDecimal incomeDeviceFinalTotal) { + this.incomeDeviceFinalTotal = incomeDeviceFinalTotal; + } + + public BigDecimal getIncomeEngineerEstimateTotal() { + return incomeEngineerEstimateTotal; + } + + public void setIncomeEngineerEstimateTotal(BigDecimal incomeEngineerEstimateTotal) { + this.incomeEngineerEstimateTotal = incomeEngineerEstimateTotal; + } + + public BigDecimal getIncomeEngineerBudgetTotal() { + return incomeEngineerBudgetTotal; + } + + public void setIncomeEngineerBudgetTotal(BigDecimal incomeEngineerBudgetTotal) { + this.incomeEngineerBudgetTotal = incomeEngineerBudgetTotal; + } + + public BigDecimal getIncomeEngineerSettleTotal() { + return incomeEngineerSettleTotal; + } + + public void setIncomeEngineerSettleTotal(BigDecimal incomeEngineerSettleTotal) { + this.incomeEngineerSettleTotal = incomeEngineerSettleTotal; + } + + public BigDecimal getIncomeEngineerFinalTotal() { + return incomeEngineerFinalTotal; + } + + public void setIncomeEngineerFinalTotal(BigDecimal incomeEngineerFinalTotal) { + this.incomeEngineerFinalTotal = incomeEngineerFinalTotal; + } + + public BigDecimal getIncomeServiceEstimateTotal() { + return incomeServiceEstimateTotal; + } + + public void setIncomeServiceEstimateTotal(BigDecimal incomeServiceEstimateTotal) { + this.incomeServiceEstimateTotal = incomeServiceEstimateTotal; + } + + public BigDecimal getIncomeServiceBudgetTotal() { + return incomeServiceBudgetTotal; + } + + public void setIncomeServiceBudgetTotal(BigDecimal incomeServiceBudgetTotal) { + this.incomeServiceBudgetTotal = incomeServiceBudgetTotal; + } + + public BigDecimal getIncomeServiceSettleTotal() { + return incomeServiceSettleTotal; + } + + public void setIncomeServiceSettleTotal(BigDecimal incomeServiceSettleTotal) { + this.incomeServiceSettleTotal = incomeServiceSettleTotal; + } + + public BigDecimal getIncomeServiceFinalTotal() { + return incomeServiceFinalTotal; + } + + public void setIncomeServiceFinalTotal(BigDecimal incomeServiceFinalTotal) { + this.incomeServiceFinalTotal = incomeServiceFinalTotal; + } + + public BigDecimal getCostPurchaseDeviceEstimateTotal() { + return costPurchaseDeviceEstimateTotal; + } + + public void setCostPurchaseDeviceEstimateTotal(BigDecimal costPurchaseDeviceEstimateTotal) { + this.costPurchaseDeviceEstimateTotal = costPurchaseDeviceEstimateTotal; + } + + public BigDecimal getCostPurchaseDeviceBudgetTotal() { + return costPurchaseDeviceBudgetTotal; + } + + public void setCostPurchaseDeviceBudgetTotal(BigDecimal costPurchaseDeviceBudgetTotal) { + this.costPurchaseDeviceBudgetTotal = costPurchaseDeviceBudgetTotal; + } + + public BigDecimal getCostPurchaseDeviceSettleTotal() { + return costPurchaseDeviceSettleTotal; + } + + public void setCostPurchaseDeviceSettleTotal(BigDecimal costPurchaseDeviceSettleTotal) { + this.costPurchaseDeviceSettleTotal = costPurchaseDeviceSettleTotal; + } + + public BigDecimal getCostPurchaseDeviceFinalTotal() { + return costPurchaseDeviceFinalTotal; + } + + public void setCostPurchaseDeviceFinalTotal(BigDecimal costPurchaseDeviceFinalTotal) { + this.costPurchaseDeviceFinalTotal = costPurchaseDeviceFinalTotal; + } + + public BigDecimal getCostPurchaseBuildEstimateTotal() { + return costPurchaseBuildEstimateTotal; + } + + public void setCostPurchaseBuildEstimateTotal(BigDecimal costPurchaseBuildEstimateTotal) { + this.costPurchaseBuildEstimateTotal = costPurchaseBuildEstimateTotal; + } + + public BigDecimal getCostPurchaseBuildBudgetTotal() { + return costPurchaseBuildBudgetTotal; + } + + public void setCostPurchaseBuildBudgetTotal(BigDecimal costPurchaseBuildBudgetTotal) { + this.costPurchaseBuildBudgetTotal = costPurchaseBuildBudgetTotal; + } + + public BigDecimal getCostPurchaseBuildSettleTotal() { + return costPurchaseBuildSettleTotal; + } + + public void setCostPurchaseBuildSettleTotal(BigDecimal costPurchaseBuildSettleTotal) { + this.costPurchaseBuildSettleTotal = costPurchaseBuildSettleTotal; + } + + public BigDecimal getCostPurchaseBuildFinalTotal() { + return costPurchaseBuildFinalTotal; + } + + public void setCostPurchaseBuildFinalTotal(BigDecimal costPurchaseBuildFinalTotal) { + this.costPurchaseBuildFinalTotal = costPurchaseBuildFinalTotal; + } + + public BigDecimal getCostPurchaseServiceEstimateTotal() { + return costPurchaseServiceEstimateTotal; + } + + public void setCostPurchaseServiceEstimateTotal(BigDecimal costPurchaseServiceEstimateTotal) { + this.costPurchaseServiceEstimateTotal = costPurchaseServiceEstimateTotal; + } + + public BigDecimal getCostPurchaseServiceBudgetTotal() { + return costPurchaseServiceBudgetTotal; + } + + public void setCostPurchaseServiceBudgetTotal(BigDecimal costPurchaseServiceBudgetTotal) { + this.costPurchaseServiceBudgetTotal = costPurchaseServiceBudgetTotal; + } + + public BigDecimal getCostPurchaseServiceSettleTotal() { + return costPurchaseServiceSettleTotal; + } + + public void setCostPurchaseServiceSettleTotal(BigDecimal costPurchaseServiceSettleTotal) { + this.costPurchaseServiceSettleTotal = costPurchaseServiceSettleTotal; + } + + public BigDecimal getCostPurchaseServiceFinalTotal() { + return costPurchaseServiceFinalTotal; + } + + public void setCostPurchaseServiceFinalTotal(BigDecimal costPurchaseServiceFinalTotal) { + this.costPurchaseServiceFinalTotal = costPurchaseServiceFinalTotal; + } + + public BigDecimal getCostPurchaseOtherEstimateTotal() { + return costPurchaseOtherEstimateTotal; + } + + public void setCostPurchaseOtherEstimateTotal(BigDecimal costPurchaseOtherEstimateTotal) { + this.costPurchaseOtherEstimateTotal = costPurchaseOtherEstimateTotal; + } + + public BigDecimal getCostPurchaseOtherBudgetTotal() { + return costPurchaseOtherBudgetTotal; + } + + public void setCostPurchaseOtherBudgetTotal(BigDecimal costPurchaseOtherBudgetTotal) { + this.costPurchaseOtherBudgetTotal = costPurchaseOtherBudgetTotal; + } + + public BigDecimal getCostPurchaseOtherSettleTotal() { + return costPurchaseOtherSettleTotal; + } + + public void setCostPurchaseOtherSettleTotal(BigDecimal costPurchaseOtherSettleTotal) { + this.costPurchaseOtherSettleTotal = costPurchaseOtherSettleTotal; + } + + public BigDecimal getCostPurchaseOtherFinalTotal() { + return costPurchaseOtherFinalTotal; + } + + public void setCostPurchaseOtherFinalTotal(BigDecimal costPurchaseOtherFinalTotal) { + this.costPurchaseOtherFinalTotal = costPurchaseOtherFinalTotal; + } + + public BigDecimal getCostProjectManageEstimateTotal() { + return costProjectManageEstimateTotal; + } + + public void setCostProjectManageEstimateTotal(BigDecimal costProjectManageEstimateTotal) { + this.costProjectManageEstimateTotal = costProjectManageEstimateTotal; + } + + public BigDecimal getCostProjectManageBudgetTotal() { + return costProjectManageBudgetTotal; + } + + public void setCostProjectManageBudgetTotal(BigDecimal costProjectManageBudgetTotal) { + this.costProjectManageBudgetTotal = costProjectManageBudgetTotal; + } + + public BigDecimal getCostProjectManageSettleTotal() { + return costProjectManageSettleTotal; + } + + public void setCostProjectManageSettleTotal(BigDecimal costProjectManageSettleTotal) { + this.costProjectManageSettleTotal = costProjectManageSettleTotal; + } + + public BigDecimal getCostProjectManageFinalTotal() { + return costProjectManageFinalTotal; + } + + public void setCostProjectManageFinalTotal(BigDecimal costProjectManageFinalTotal) { + this.costProjectManageFinalTotal = costProjectManageFinalTotal; + } + + public BigDecimal getCostOtherEstimateTotal() { + return costOtherEstimateTotal; + } + + public void setCostOtherEstimateTotal(BigDecimal costOtherEstimateTotal) { + this.costOtherEstimateTotal = costOtherEstimateTotal; + } + + public BigDecimal getCostOtherBudgetTotal() { + return costOtherBudgetTotal; + } + + public void setCostOtherBudgetTotal(BigDecimal costOtherBudgetTotal) { + this.costOtherBudgetTotal = costOtherBudgetTotal; + } + + public BigDecimal getCostOtherSettleTotal() { + return costOtherSettleTotal; + } + + public void setCostOtherSettleTotal(BigDecimal costOtherSettleTotal) { + this.costOtherSettleTotal = costOtherSettleTotal; + } + + public BigDecimal getCostOtherFinalTotal() { + return costOtherFinalTotal; + } + + public void setCostOtherFinalTotal(BigDecimal costOtherFinalTotal) { + this.costOtherFinalTotal = costOtherFinalTotal; + } + + public BigDecimal getCostExpropriationEstimateTotal() { + return costExpropriationEstimateTotal; + } + + public void setCostExpropriationEstimateTotal(BigDecimal costExpropriationEstimateTotal) { + this.costExpropriationEstimateTotal = costExpropriationEstimateTotal; + } + + public BigDecimal getCostExpropriationBudgetTotal() { + return costExpropriationBudgetTotal; + } + + public void setCostExpropriationBudgetTotal(BigDecimal costExpropriationBudgetTotal) { + this.costExpropriationBudgetTotal = costExpropriationBudgetTotal; + } + + public BigDecimal getCostExpropriationSettleTotal() { + return costExpropriationSettleTotal; + } + + public void setCostExpropriationSettleTotal(BigDecimal costExpropriationSettleTotal) { + this.costExpropriationSettleTotal = costExpropriationSettleTotal; + } + + public BigDecimal getCostExpropriationFinalTotal() { + return costExpropriationFinalTotal; + } + + public void setCostExpropriationFinalTotal(BigDecimal costExpropriationFinalTotal) { + this.costExpropriationFinalTotal = costExpropriationFinalTotal; + } + + public BigDecimal getCostCompanyManageEstimateTotal() { + return costCompanyManageEstimateTotal; + } + + public void setCostCompanyManageEstimateTotal(BigDecimal costCompanyManageEstimateTotal) { + this.costCompanyManageEstimateTotal = costCompanyManageEstimateTotal; + } + + public BigDecimal getCostCompanyManageBudgetTotal() { + return costCompanyManageBudgetTotal; + } + + public void setCostCompanyManageBudgetTotal(BigDecimal costCompanyManageBudgetTotal) { + this.costCompanyManageBudgetTotal = costCompanyManageBudgetTotal; + } + + public BigDecimal getCostCompanyManageSettleTotal() { + return costCompanyManageSettleTotal; + } + + public void setCostCompanyManageSettleTotal(BigDecimal costCompanyManageSettleTotal) { + this.costCompanyManageSettleTotal = costCompanyManageSettleTotal; + } + + public BigDecimal getCostCompanyManageFinalTotal() { + return costCompanyManageFinalTotal; + } + + public void setCostCompanyManageFinalTotal(BigDecimal costCompanyManageFinalTotal) { + this.costCompanyManageFinalTotal = costCompanyManageFinalTotal; + } + + public BigDecimal getCostIncomeTaxSettleTotal() { + return costIncomeTaxSettleTotal; + } + + public void setCostIncomeTaxSettleTotal(BigDecimal costIncomeTaxSettleTotal) { + this.costIncomeTaxSettleTotal = costIncomeTaxSettleTotal; + } + + public BigDecimal getCostIncomeTaxFinalTotal() { + return costIncomeTaxFinalTotal; + } + + public void setCostIncomeTaxFinalTotal(BigDecimal costIncomeTaxFinalTotal) { + this.costIncomeTaxFinalTotal = costIncomeTaxFinalTotal; + } + + public BigDecimal getGrossProfitEstimateTotal() { + return grossProfitEstimateTotal; + } + + public void setGrossProfitEstimateTotal(BigDecimal grossProfitEstimateTotal) { + this.grossProfitEstimateTotal = grossProfitEstimateTotal; + } + + public BigDecimal getGrossProfitBudgetTotal() { + return grossProfitBudgetTotal; + } + + public void setGrossProfitBudgetTotal(BigDecimal grossProfitBudgetTotal) { + this.grossProfitBudgetTotal = grossProfitBudgetTotal; + } + + public BigDecimal getGrossProfitSettleTotal() { + return grossProfitSettleTotal; + } + + public void setGrossProfitSettleTotal(BigDecimal grossProfitSettleTotal) { + this.grossProfitSettleTotal = grossProfitSettleTotal; + } + + public BigDecimal getGrossProfitFinalTotal() { + return grossProfitFinalTotal; + } + + public void setGrossProfitFinalTotal(BigDecimal grossProfitFinalTotal) { + this.grossProfitFinalTotal = grossProfitFinalTotal; + } + + public BigDecimal getGrossProfitProfitMargin() { + return grossProfitProfitMargin; + } + + public void setGrossProfitProfitMargin(BigDecimal grossProfitProfitMargin) { + this.grossProfitProfitMargin = grossProfitProfitMargin; + } + + public BigDecimal getContributionMarginEstimateTotal() { + return contributionMarginEstimateTotal; + } + + public void setContributionMarginEstimateTotal(BigDecimal contributionMarginEstimateTotal) { + this.contributionMarginEstimateTotal = contributionMarginEstimateTotal; + } + + public BigDecimal getContributionMarginBudgetTotal() { + return contributionMarginBudgetTotal; + } + + public void setContributionMarginBudgetTotal(BigDecimal contributionMarginBudgetTotal) { + this.contributionMarginBudgetTotal = contributionMarginBudgetTotal; + } + + public BigDecimal getContributionMarginSettleTotal() { + return contributionMarginSettleTotal; + } + + public void setContributionMarginSettleTotal(BigDecimal contributionMarginSettleTotal) { + this.contributionMarginSettleTotal = contributionMarginSettleTotal; + } + + public BigDecimal getContributionMarginFinalTotal() { + return contributionMarginFinalTotal; + } + + public void setContributionMarginFinalTotal(BigDecimal contributionMarginFinalTotal) { + this.contributionMarginFinalTotal = contributionMarginFinalTotal; + } + + public BigDecimal getContributionMarginProfitMargin() { + return contributionMarginProfitMargin; + } + + public void setContributionMarginProfitMargin(BigDecimal contributionMarginProfitMargin) { + this.contributionMarginProfitMargin = contributionMarginProfitMargin; + } + + public BigDecimal getNetMarginEstimateTotal() { + return netMarginEstimateTotal; + } + + public void setNetMarginEstimateTotal(BigDecimal netMarginEstimateTotal) { + this.netMarginEstimateTotal = netMarginEstimateTotal; + } + + public BigDecimal getNetMarginBudgetTotal() { + return netMarginBudgetTotal; + } + + public void setNetMarginBudgetTotal(BigDecimal netMarginBudgetTotal) { + this.netMarginBudgetTotal = netMarginBudgetTotal; + } + + public BigDecimal getNetMarginSettleTotal() { + return netMarginSettleTotal; + } + + public void setNetMarginSettleTotal(BigDecimal netMarginSettleTotal) { + this.netMarginSettleTotal = netMarginSettleTotal; + } + + public BigDecimal getNetMarginFinalTotal() { + return netMarginFinalTotal; + } + + public void setNetMarginFinalTotal(BigDecimal netMarginFinalTotal) { + this.netMarginFinalTotal = netMarginFinalTotal; + } + + public BigDecimal getNetMarginProfitMargin() { + return netMarginProfitMargin; + } + + public void setNetMarginProfitMargin(BigDecimal netMarginProfitMargin) { + this.netMarginProfitMargin = netMarginProfitMargin; + } + + public BigDecimal getType1BudgetTotal() { + return type1BudgetTotal; + } + + public void setType1BudgetTotal(BigDecimal type1BudgetTotal) { + this.type1BudgetTotal = type1BudgetTotal; + } + + public BigDecimal getType1SettleTotal() { + return type1SettleTotal; + } + + public void setType1SettleTotal(BigDecimal type1SettleTotal) { + this.type1SettleTotal = type1SettleTotal; + } + + public BigDecimal getType1FinalTotal() { + return type1FinalTotal; + } + + public void setType1FinalTotal(BigDecimal type1FinalTotal) { + this.type1FinalTotal = type1FinalTotal; + } + + public BigDecimal getType2BudgetTotal() { + return type2BudgetTotal; + } + + public void setType2BudgetTotal(BigDecimal type2BudgetTotal) { + this.type2BudgetTotal = type2BudgetTotal; + } + + public BigDecimal getType2SettleTotal() { + return type2SettleTotal; + } + + public void setType2SettleTotal(BigDecimal type2SettleTotal) { + this.type2SettleTotal = type2SettleTotal; + } + + public BigDecimal getType2FinalTotal() { + return type2FinalTotal; + } + + public void setType2FinalTotal(BigDecimal type2FinalTotal) { + this.type2FinalTotal = type2FinalTotal; + } + + public BigDecimal getType3BudgetTotal() { + return type3BudgetTotal; + } + + public void setType3BudgetTotal(BigDecimal type3BudgetTotal) { + this.type3BudgetTotal = type3BudgetTotal; + } + + public BigDecimal getType3SettleTotal() { + return type3SettleTotal; + } + + public void setType3SettleTotal(BigDecimal type3SettleTotal) { + this.type3SettleTotal = type3SettleTotal; + } + + public BigDecimal getType3FinalTotal() { + return type3FinalTotal; + } + + public void setType3FinalTotal(BigDecimal type3FinalTotal) { + this.type3FinalTotal = type3FinalTotal; + } + + public BigDecimal getType4BudgetTotal() { + return type4BudgetTotal; + } + + public void setType4BudgetTotal(BigDecimal type4BudgetTotal) { + this.type4BudgetTotal = type4BudgetTotal; + } + + public BigDecimal getType4SettleTotal() { + return type4SettleTotal; + } + + public void setType4SettleTotal(BigDecimal type4SettleTotal) { + this.type4SettleTotal = type4SettleTotal; + } + + public BigDecimal getType4FinalTotal() { + return type4FinalTotal; + } + + public void setType4FinalTotal(BigDecimal type4FinalTotal) { + this.type4FinalTotal = type4FinalTotal; + } + + public BigDecimal getType5BudgetTotal() { + return type5BudgetTotal; + } + + public void setType5BudgetTotal(BigDecimal type5BudgetTotal) { + this.type5BudgetTotal = type5BudgetTotal; + } + + public BigDecimal getType5SettleTotal() { + return type5SettleTotal; + } + + public void setType5SettleTotal(BigDecimal type5SettleTotal) { + this.type5SettleTotal = type5SettleTotal; + } + + public BigDecimal getType5FinalTotal() { + return type5FinalTotal; + } + + public void setType5FinalTotal(BigDecimal type5FinalTotal) { + this.type5FinalTotal = type5FinalTotal; + } + + public BigDecimal getType6BudgetTotal() { + return type6BudgetTotal; + } + + public void setType6BudgetTotal(BigDecimal type6BudgetTotal) { + this.type6BudgetTotal = type6BudgetTotal; + } + + public BigDecimal getType6SettleTotal() { + return type6SettleTotal; + } + + public void setType6SettleTotal(BigDecimal type6SettleTotal) { + this.type6SettleTotal = type6SettleTotal; + } + + public BigDecimal getType6FinalTotal() { + return type6FinalTotal; + } + + public void setType6FinalTotal(BigDecimal type6FinalTotal) { + this.type6FinalTotal = type6FinalTotal; + } + + public BigDecimal getType7BudgetTotal() { + return type7BudgetTotal; + } + + public void setType7BudgetTotal(BigDecimal type7BudgetTotal) { + this.type7BudgetTotal = type7BudgetTotal; + } + + public BigDecimal getType7SettleTotal() { + return type7SettleTotal; + } + + public void setType7SettleTotal(BigDecimal type7SettleTotal) { + this.type7SettleTotal = type7SettleTotal; + } + + public BigDecimal getType7FinalTotal() { + return type7FinalTotal; + } + + public void setType7FinalTotal(BigDecimal type7FinalTotal) { + this.type7FinalTotal = type7FinalTotal; + } + + public BigDecimal getType8BudgetTotal() { + return type8BudgetTotal; + } + + public void setType8BudgetTotal(BigDecimal type8BudgetTotal) { + this.type8BudgetTotal = type8BudgetTotal; + } + + public BigDecimal getType8SettleTotal() { + return type8SettleTotal; + } + + public void setType8SettleTotal(BigDecimal type8SettleTotal) { + this.type8SettleTotal = type8SettleTotal; + } + + public BigDecimal getType8FinalTotal() { + return type8FinalTotal; + } + + public void setType8FinalTotal(BigDecimal type8FinalTotal) { + this.type8FinalTotal = type8FinalTotal; + } + + public BigDecimal getType9BudgetTotal() { + return type9BudgetTotal; + } + + public void setType9BudgetTotal(BigDecimal type9BudgetTotal) { + this.type9BudgetTotal = type9BudgetTotal; + } + + public BigDecimal getType9SettleTotal() { + return type9SettleTotal; + } + + public void setType9SettleTotal(BigDecimal type9SettleTotal) { + this.type9SettleTotal = type9SettleTotal; + } + + public BigDecimal getType9FinalTotal() { + return type9FinalTotal; + } + + public void setType9FinalTotal(BigDecimal type9FinalTotal) { + this.type9FinalTotal = type9FinalTotal; + } + + public BigDecimal getType10BudgetTotal() { + return type10BudgetTotal; + } + + public void setType10BudgetTotal(BigDecimal type10BudgetTotal) { + this.type10BudgetTotal = type10BudgetTotal; + } + + public BigDecimal getType10SettleTotal() { + return type10SettleTotal; + } + + public void setType10SettleTotal(BigDecimal type10SettleTotal) { + this.type10SettleTotal = type10SettleTotal; + } + + public BigDecimal getType10FinalTotal() { + return type10FinalTotal; + } + + public void setType10FinalTotal(BigDecimal type10FinalTotal) { + this.type10FinalTotal = type10FinalTotal; + } + + public BigDecimal getType11BudgetTotal() { + return type11BudgetTotal; + } + + public void setType11BudgetTotal(BigDecimal type11BudgetTotal) { + this.type11BudgetTotal = type11BudgetTotal; + } + + public BigDecimal getType11SettleTotal() { + return type11SettleTotal; + } + + public void setType11SettleTotal(BigDecimal type11SettleTotal) { + this.type11SettleTotal = type11SettleTotal; + } + + public BigDecimal getType11FinalTotal() { + return type11FinalTotal; + } + + public void setType11FinalTotal(BigDecimal type11FinalTotal) { + this.type11FinalTotal = type11FinalTotal; + } + + public BigDecimal getType12BudgetTotal() { + return type12BudgetTotal; + } + + public void setType12BudgetTotal(BigDecimal type12BudgetTotal) { + this.type12BudgetTotal = type12BudgetTotal; + } + + public BigDecimal getType12SettleTotal() { + return type12SettleTotal; + } + + public void setType12SettleTotal(BigDecimal type12SettleTotal) { + this.type12SettleTotal = type12SettleTotal; + } + + public BigDecimal getType12FinalTotal() { + return type12FinalTotal; + } + + public void setType12FinalTotal(BigDecimal type12FinalTotal) { + this.type12FinalTotal = type12FinalTotal; + } + + public BigDecimal getType13BudgetTotal() { + return type13BudgetTotal; + } + + public void setType13BudgetTotal(BigDecimal type13BudgetTotal) { + this.type13BudgetTotal = type13BudgetTotal; + } + + public BigDecimal getType13SettleTotal() { + return type13SettleTotal; + } + + public void setType13SettleTotal(BigDecimal type13SettleTotal) { + this.type13SettleTotal = type13SettleTotal; + } + + public BigDecimal getType13FinalTotal() { + return type13FinalTotal; + } + + public void setType13FinalTotal(BigDecimal type13FinalTotal) { + this.type13FinalTotal = type13FinalTotal; + } + + public BigDecimal getType14BudgetTotal() { + return type14BudgetTotal; + } + + public void setType14BudgetTotal(BigDecimal type14BudgetTotal) { + this.type14BudgetTotal = type14BudgetTotal; + } + + public BigDecimal getType14SettleTotal() { + return type14SettleTotal; + } + + public void setType14SettleTotal(BigDecimal type14SettleTotal) { + this.type14SettleTotal = type14SettleTotal; + } + + public BigDecimal getType14FinalTotal() { + return type14FinalTotal; + } + + public void setType14FinalTotal(BigDecimal type14FinalTotal) { + this.type14FinalTotal = type14FinalTotal; + } +} diff --git a/src/main/java/cn/palmte/work/controller/backend/ProjectFinalController.java b/src/main/java/cn/palmte/work/controller/backend/ProjectFinalController.java new file mode 100644 index 0000000..3a04df7 --- /dev/null +++ b/src/main/java/cn/palmte/work/controller/backend/ProjectFinalController.java @@ -0,0 +1,34 @@ +package cn.palmte.work.controller.backend; + +import cn.palmte.work.model.Project; +import cn.palmte.work.service.ProjectFinalSevice; +import cn.palmte.work.service.ProjectService; +import cn.palmte.work.utils.FreeMarkerUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.Map; + +@Controller +@RequestMapping("/project/final") +public class ProjectFinalController extends BaseController{ + + @Autowired + private ProjectFinalSevice projectFinalSevice; + + @Autowired + private ProjectService projectService; + + @RequestMapping("/edit") + public String budget(@RequestParam("id") int id, Map model) { + Project project = projectService.getProject(id); + model.put("project", project); + model.put("finalBean", projectFinalSevice.getFinal(project)); + //freemarker可以利用的静态方法 + model.put("Utils", FreeMarkerUtil.fromStaticPackage("cn.palmte.work.utils.Utils")); + return "admin/project_final_edit"; + } + +} diff --git a/src/main/java/cn/palmte/work/model/ProjectEstimateIncomeRepository.java b/src/main/java/cn/palmte/work/model/ProjectEstimateIncomeRepository.java index 2b51c2b..8d87e8b 100644 --- a/src/main/java/cn/palmte/work/model/ProjectEstimateIncomeRepository.java +++ b/src/main/java/cn/palmte/work/model/ProjectEstimateIncomeRepository.java @@ -6,4 +6,6 @@ import java.util.List; public interface ProjectEstimateIncomeRepository extends JpaRepository { List findAllByProjectIdEquals(int id); + + List findAllByProjectIdEqualsAndTypeEquals(int id,int type); } diff --git a/src/main/java/cn/palmte/work/model/ProjectFinalCashFlux.java b/src/main/java/cn/palmte/work/model/ProjectFinalCashFlux.java new file mode 100644 index 0000000..8707c4d --- /dev/null +++ b/src/main/java/cn/palmte/work/model/ProjectFinalCashFlux.java @@ -0,0 +1,107 @@ +package cn.palmte.work.model; + +import org.hibernate.annotations.GenericGenerator; + +import javax.persistence.*; +import java.math.BigDecimal; + +/** + * 项目决算现金流量表 + */ +@Entity +@Table(name = "project_final_cash_flux") +public class ProjectFinalCashFlux { + public static final int TYPE1 = 1;//销售商品、提供劳务收到的现金 + public static final int TYPE2 = 2;//收到的税费返还 + public static final int TYPE3 = 3;//收到其他与经营活动有关的现金 + public static final int TYPE4 = 4;//购买商品、接受劳务支付的现金 + public static final int TYPE5 = 5;//支付的各项税费 + public static final int TYPE6 = 6;//支付其他与经营活动有关的现金 + public static final int TYPE7 = 7;//经营活动产生的现金流量净额 + public static final int TYPE8 = 8;//投资活动现金流入 + public static final int TYPE9 = 9;//投资活动现金流出 + public static final int TYPE10 = 10;//投资活动产生的现金流量净额 + public static final int TYPE11 = 11;//融资资金流入 + public static final int TYPE12 = 12;//还款资金流出 + public static final int TYPE13 = 13;//筹资活动产生的现金流量净额 + public static final int TYPE14 = 14;//货币资金净增加额 + + /** + * id + */ + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @GenericGenerator(name = "persistenceGenerator", strategy = "increment") + private Integer id; + + @Column(name = "project_id") + private int projectId; + + private int type; + + /** + * 预算总额(不含税) + */ + @Column(name = "budget_total_cash_flux") + private BigDecimal budgetTotalCashFlux; + + /** + * 结算总额(不含税) + */ + @Column(name = "settle_total_cash_flux") + private BigDecimal settleTotalCashFlux; + + /** + * 决算总额(不含税) + */ + @Column(name = "final_total_cash_flux") + private BigDecimal finalTotalCashFlux; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public int getProjectId() { + return projectId; + } + + public void setProjectId(int projectId) { + this.projectId = projectId; + } + + public int getType() { + return type; + } + + public void setType(int type) { + this.type = type; + } + + public BigDecimal getBudgetTotalCashFlux() { + return budgetTotalCashFlux; + } + + public void setBudgetTotalCashFlux(BigDecimal budgetTotalCashFlux) { + this.budgetTotalCashFlux = budgetTotalCashFlux; + } + + public BigDecimal getSettleTotalCashFlux() { + return settleTotalCashFlux; + } + + public void setSettleTotalCashFlux(BigDecimal settleTotalCashFlux) { + this.settleTotalCashFlux = settleTotalCashFlux; + } + + public BigDecimal getFinalTotalCashFlux() { + return finalTotalCashFlux; + } + + public void setFinalTotalCashFlux(BigDecimal finalTotalCashFlux) { + this.finalTotalCashFlux = finalTotalCashFlux; + } +} \ No newline at end of file diff --git a/src/main/java/cn/palmte/work/model/ProjectFinalCashFluxRepository.java b/src/main/java/cn/palmte/work/model/ProjectFinalCashFluxRepository.java new file mode 100644 index 0000000..684891a --- /dev/null +++ b/src/main/java/cn/palmte/work/model/ProjectFinalCashFluxRepository.java @@ -0,0 +1,7 @@ +package cn.palmte.work.model; + +import org.springframework.data.jpa.repository.JpaRepository; + +public interface ProjectFinalCashFluxRepository extends JpaRepository { + +} diff --git a/src/main/java/cn/palmte/work/model/ProjectFinalCost.java b/src/main/java/cn/palmte/work/model/ProjectFinalCost.java new file mode 100644 index 0000000..4e00eb8 --- /dev/null +++ b/src/main/java/cn/palmte/work/model/ProjectFinalCost.java @@ -0,0 +1,125 @@ +package cn.palmte.work.model; + +import org.hibernate.annotations.GenericGenerator; + +import javax.persistence.*; +import java.math.BigDecimal; + +/** + * 项目决算成本表 + */ +@Entity +@Table(name = "project_final_cost") +public class ProjectFinalCost { + public static final int FEE_PURCHASE = 1; + public static final int FEE_PROJECT_MANAGE = 2; + public static final int FEE_OTHER = 3; + + public static final int TYPE_DEVICE = 1; + public static final int TYPE_BUILDING = 2; + public static final int TYPE_SERVICE = 3; + public static final int TYPE_OTHER = 4; + public static final int TYPE_PROJECT_MANAGE = 5; + public static final int TYPE_OTHER_OTHER = 6; + /** + * id + */ + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @GenericGenerator(name = "persistenceGenerator", strategy = "increment") + private Integer id; + + @Column(name = "project_id") + private int projectId; + + private int fee; + private int type; + + /** + * 概算总额(不含税) + */ + @Column(name = "estimate_total_cost") + private BigDecimal estimateTotalCost; + + /** + * 预算总额(不含税) + */ + @Column(name = "budget_total_cost") + private BigDecimal budgetTotalCost; + + /** + * 结算总额(不含税) + */ + @Column(name = "settle_total_cost") + private BigDecimal settleTotalCost; + + /** + * 决算总额(不含税) + */ + @Column(name = "final_total_cost") + private BigDecimal finalTotalCost; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public int getProjectId() { + return projectId; + } + + public void setProjectId(int projectId) { + this.projectId = projectId; + } + + public int getType() { + return type; + } + + public void setType(int type) { + this.type = type; + } + + public int getFee() { + return fee; + } + + public void setFee(int fee) { + this.fee = fee; + } + + public BigDecimal getEstimateTotalCost() { + return estimateTotalCost; + } + + public void setEstimateTotalCost(BigDecimal estimateTotalCost) { + this.estimateTotalCost = estimateTotalCost; + } + + public BigDecimal getBudgetTotalCost() { + return budgetTotalCost; + } + + public void setBudgetTotalCost(BigDecimal budgetTotalCost) { + this.budgetTotalCost = budgetTotalCost; + } + + public BigDecimal getSettleTotalCost() { + return settleTotalCost; + } + + public void setSettleTotalCost(BigDecimal settleTotalCost) { + this.settleTotalCost = settleTotalCost; + } + + public BigDecimal getFinalTotalCost() { + return finalTotalCost; + } + + public void setFinalTotalCost(BigDecimal finalTotalCost) { + this.finalTotalCost = finalTotalCost; + } +} \ No newline at end of file diff --git a/src/main/java/cn/palmte/work/model/ProjectFinalCostManage.java b/src/main/java/cn/palmte/work/model/ProjectFinalCostManage.java new file mode 100644 index 0000000..c56f571 --- /dev/null +++ b/src/main/java/cn/palmte/work/model/ProjectFinalCostManage.java @@ -0,0 +1,109 @@ +package cn.palmte.work.model; + +import org.hibernate.annotations.GenericGenerator; + +import javax.persistence.*; +import java.math.BigDecimal; + +/** + * 项目决算管理成本表 + */ +@Entity +@Table(name = "project_estimate_cost_manage") +public class ProjectFinalCostManage { + public static final int TYPE_EXPROPRIATION = 1; + public static final int TYPE_COMPANY_MANAGE = 2; + public static final int TYPE_INCOME_TAX = 3; + /** + * id + */ + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @GenericGenerator(name = "persistenceGenerator", strategy = "increment") + private Integer id; + + @Column(name = "project_id") + private int projectId; + + private int type; + + /** + * 概算总额(不含税) + */ + @Column(name = "estimate_total_manage_cost") + private BigDecimal estimateTotalManageCost; + + /** + * 预算总额(不含税) + */ + @Column(name = "budget_total_manage_cost") + private BigDecimal budgetTotalManageCost; + + /** + * 结算总额(不含税) + */ + @Column(name = "settle_total_manage_cost") + private BigDecimal settleTotalManageCost; + + /** + * 决算总额(不含税) + */ + @Column(name = "final_total_manage_cost") + private BigDecimal finalTotalManageCost; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public int getProjectId() { + return projectId; + } + + public void setProjectId(int projectId) { + this.projectId = projectId; + } + + public int getType() { + return type; + } + + public void setType(int type) { + this.type = type; + } + + public BigDecimal getEstimateTotalManageCost() { + return estimateTotalManageCost; + } + + public void setEstimateTotalManageCost(BigDecimal estimateTotalManageCost) { + this.estimateTotalManageCost = estimateTotalManageCost; + } + + public BigDecimal getBudgetTotalManageCost() { + return budgetTotalManageCost; + } + + public void setBudgetTotalManageCost(BigDecimal budgetTotalManageCost) { + this.budgetTotalManageCost = budgetTotalManageCost; + } + + public BigDecimal getSettleTotalManageCost() { + return settleTotalManageCost; + } + + public void setSettleTotalManageCost(BigDecimal settleTotalManageCost) { + this.settleTotalManageCost = settleTotalManageCost; + } + + public BigDecimal getFinalTotalManageCost() { + return finalTotalManageCost; + } + + public void setFinalTotalManageCost(BigDecimal finalTotalManageCost) { + this.finalTotalManageCost = finalTotalManageCost; + } +} \ No newline at end of file diff --git a/src/main/java/cn/palmte/work/model/ProjectFinalCostManageRepository.java b/src/main/java/cn/palmte/work/model/ProjectFinalCostManageRepository.java new file mode 100644 index 0000000..cee64f2 --- /dev/null +++ b/src/main/java/cn/palmte/work/model/ProjectFinalCostManageRepository.java @@ -0,0 +1,7 @@ +package cn.palmte.work.model; + +import org.springframework.data.jpa.repository.JpaRepository; + +public interface ProjectFinalCostManageRepository extends JpaRepository { + +} diff --git a/src/main/java/cn/palmte/work/model/ProjectFinalCostRepository.java b/src/main/java/cn/palmte/work/model/ProjectFinalCostRepository.java new file mode 100644 index 0000000..99da84c --- /dev/null +++ b/src/main/java/cn/palmte/work/model/ProjectFinalCostRepository.java @@ -0,0 +1,7 @@ +package cn.palmte.work.model; + +import org.springframework.data.jpa.repository.JpaRepository; + +public interface ProjectFinalCostRepository extends JpaRepository { + +} diff --git a/src/main/java/cn/palmte/work/model/ProjectFinalIncome.java b/src/main/java/cn/palmte/work/model/ProjectFinalIncome.java new file mode 100644 index 0000000..82a2fcb --- /dev/null +++ b/src/main/java/cn/palmte/work/model/ProjectFinalIncome.java @@ -0,0 +1,110 @@ +package cn.palmte.work.model; + +import org.hibernate.annotations.GenericGenerator; + +import javax.persistence.*; +import java.math.BigDecimal; + +/** + * 项目决算收入表 + */ +@Entity +@Table(name = "project_budget_income") +public class ProjectFinalIncome { + public static final int TYPE_DEVICE = 1; + public static final int TYPE_ENGINEER = 2; + public static final int TYPE_SERVICE = 3; + + /** + * id + */ + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @GenericGenerator(name = "persistenceGenerator", strategy = "increment") + private Integer id; + + @Column(name = "project_id") + private int projectId; + + private int type; + + /** + * 概算总额(不含税) + */ + @Column(name = "estimate_total_income") + private BigDecimal estimateTotalIncome; + + /** + * 预算总额(不含税) + */ + @Column(name = "budget_total_income") + private BigDecimal budgetTotalIncome; + + /** + * 结算总额(不含税) + */ + @Column(name = "settle_total_income") + private BigDecimal settleTotalIncome; + + /** + * 决算总额(不含税) + */ + @Column(name = "final_total_income") + private BigDecimal finalTotalIncome; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public int getProjectId() { + return projectId; + } + + public void setProjectId(int projectId) { + this.projectId = projectId; + } + + public int getType() { + return type; + } + + public void setType(int type) { + this.type = type; + } + + public BigDecimal getEstimateTotalIncome() { + return estimateTotalIncome; + } + + public void setEstimateTotalIncome(BigDecimal estimateTotalIncome) { + this.estimateTotalIncome = estimateTotalIncome; + } + + public BigDecimal getBudgetTotalIncome() { + return budgetTotalIncome; + } + + public void setBudgetTotalIncome(BigDecimal budgetTotalIncome) { + this.budgetTotalIncome = budgetTotalIncome; + } + + public BigDecimal getSettleTotalIncome() { + return settleTotalIncome; + } + + public void setSettleTotalIncome(BigDecimal settleTotalIncome) { + this.settleTotalIncome = settleTotalIncome; + } + + public BigDecimal getFinalTotalIncome() { + return finalTotalIncome; + } + + public void setFinalTotalIncome(BigDecimal finalTotalIncome) { + this.finalTotalIncome = finalTotalIncome; + } +} \ No newline at end of file diff --git a/src/main/java/cn/palmte/work/model/ProjectFinalIncomeReposiry.java b/src/main/java/cn/palmte/work/model/ProjectFinalIncomeReposiry.java new file mode 100644 index 0000000..509ca31 --- /dev/null +++ b/src/main/java/cn/palmte/work/model/ProjectFinalIncomeReposiry.java @@ -0,0 +1,7 @@ +package cn.palmte.work.model; + +import org.springframework.data.jpa.repository.JpaRepository; + +public interface ProjectFinalIncomeReposiry extends JpaRepository { + +} diff --git a/src/main/java/cn/palmte/work/model/ProjectFinalProfitMargin.java b/src/main/java/cn/palmte/work/model/ProjectFinalProfitMargin.java new file mode 100644 index 0000000..62b545e --- /dev/null +++ b/src/main/java/cn/palmte/work/model/ProjectFinalProfitMargin.java @@ -0,0 +1,81 @@ +package cn.palmte.work.model; + +import org.hibernate.annotations.GenericGenerator; + +import javax.persistence.*; +import java.math.BigDecimal; + +/** + * 项目决算利润率表 + */ +@Entity +@Table(name = "project_final_profit_margin") +public class ProjectFinalProfitMargin { + + public static final int TYPE_GROSS_PROFIT = 1;//项目毛利 + public static final int TYPE_CONTRIBUTION_MARGIN = 2;//项目贡献利润 + public static final int TYPE_NET_MARGIN = 3;//项目净利润 + + /** + * id + */ + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @GenericGenerator(name = "persistenceGenerator", strategy = "increment") + private Integer id; + + @Column(name = "project_id") + private int projectId; + + private int type; + + /** + * 概算总额(不含税) + */ + @Column(name = "estimate_total_profit_margin") + private BigDecimal estimateTotalProfitMargin; + + /** + * 预算总额(不含税) + */ + @Column(name = "budget_total_profit_margin") + private BigDecimal budgetTotalProfitMargin; + + /** + * 结算总额(不含税) + */ + @Column(name = "settle_total_profit_margin") + private BigDecimal settleTotalProfitMargin; + + /** + * 决算总额(不含税) + */ + @Column(name = "final_total_profit_margin") + private BigDecimal finalTotalProfitMargin; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public int getProjectId() { + return projectId; + } + + public void setProjectId(int projectId) { + this.projectId = projectId; + } + + public int getType() { + return type; + } + + public void setType(int type) { + this.type = type; + } + + +} \ No newline at end of file diff --git a/src/main/java/cn/palmte/work/model/ProjectFinalProfitMarginRepository.java b/src/main/java/cn/palmte/work/model/ProjectFinalProfitMarginRepository.java new file mode 100644 index 0000000..10ac434 --- /dev/null +++ b/src/main/java/cn/palmte/work/model/ProjectFinalProfitMarginRepository.java @@ -0,0 +1,7 @@ +package cn.palmte.work.model; + +import org.springframework.data.jpa.repository.JpaRepository; + +public interface ProjectFinalProfitMarginRepository extends JpaRepository { + +} diff --git a/src/main/java/cn/palmte/work/service/ProjectFinalSevice.java b/src/main/java/cn/palmte/work/service/ProjectFinalSevice.java new file mode 100644 index 0000000..714115a --- /dev/null +++ b/src/main/java/cn/palmte/work/service/ProjectFinalSevice.java @@ -0,0 +1,45 @@ +package cn.palmte.work.service; + +import cn.palmte.work.bean.FinalBean; +import cn.palmte.work.model.*; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +@Service +public class ProjectFinalSevice { + + @Autowired + private ProjectFinalCostRepository projectFinalCostRepository; + + @Autowired + private ProjectFinalCashFluxRepository projectFinalCashFluxRepository; + + @Autowired + private ProjectFinalCostManageRepository projectFinalCostManageRepository; + + @Autowired + private ProjectFinalIncomeReposiry projectFinalIncomeReposiry; + + @Autowired + private ProjectEstimateIncomeRepository projectEstimateIncomeRepository; + + @Autowired + private ProjectBudgetCostRepository projectBudgetCostRepository; + + @Autowired + private ProjectBudgetIncomeRepository projectBudgetIncomeRepository; + + + public FinalBean getFinal(Project project) { + FinalBean finalBean = new FinalBean(); + //收入设备类总额 + + //工程类总额 + + + //服务类总额 + + + return finalBean; + } +} diff --git a/src/main/resources/templates/admin/project_final_edit.ftl b/src/main/resources/templates/admin/project_final_edit.ftl new file mode 100644 index 0000000..ab5028e --- /dev/null +++ b/src/main/resources/templates/admin/project_final_edit.ftl @@ -0,0 +1,381 @@ +<#assign base=request.contextPath /> + +<#import "../common/defaultLayout.ftl" as defaultLayout> +<@defaultLayout.layout> + + + +
+
+
+
项目决算表 / ${project.name}
+
+ +
+ +
+ +
+
+ 收入 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
类别费用概算总额(元)预算总额(元)结算总额(元)决算总额(元)
收入设备类
收入工程类
收入服务类
合计
+ 成本 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
类别费用费用项目概算总额(元)预算总额(元)结算总额(元)决算总额(元)
成本采购成本设备
成本采购成本施工
成本采购成本服务
成本采购成本其他
成本项目管理成本项目管理成本
成本其他其他
合计
+ 管理 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
类别费用项目概算总额(元)预算总额(元)结算总额(元)决算总额(元)
财务费用资金占用成本
公司管理费用
所得税费用//
合计
+ + 利润率计算 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
类别概算总额(元)预算总额(元)结算总额(元)决算总额(元)利润率(%)
项目毛利
项目贡献利润
项目净利润
+ + 现金流量表 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
类别预算总额(元)结算总额(元)决算总额(元)
销售商品、提供劳务收到的现金
收到的税费返还/
收到其他与经营活动有关的现金
购买商品、接受劳务支付的现
支付的各项税费/
支付其他与经营活动有关的现金
经营活动产生的现金流量净额
投资活动现金流入/
投资活动现金流出/
投资活动产生的现金流量净额/
融资资金流入
还款资金流出
筹资活动产生的现金流量净额
货币资金净增加额
合计
+
+ +
+
+ + +
+ + +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/main/resources/templates/admin/project_list.ftl b/src/main/resources/templates/admin/project_list.ftl index a7babe6..2bd115e 100644 --- a/src/main/resources/templates/admin/project_list.ftl +++ b/src/main/resources/templates/admin/project_list.ftl @@ -214,6 +214,11 @@ class="am-icon-pencil-square-o">填写预算表 + diff --git a/src/main/resources/templates/admin/role_list.ftl b/src/main/resources/templates/admin/role_list.ftl index 9b35738..81fffcf 100644 --- a/src/main/resources/templates/admin/role_list.ftl +++ b/src/main/resources/templates/admin/role_list.ftl @@ -22,13 +22,13 @@ 新增 - <@shiro.hasPermission name="ROLE_DELRTE"> + <#--<@shiro.hasPermission name="ROLE_DELRTE"> - + --> diff --git a/src/main/resources/templates/common/header.ftl b/src/main/resources/templates/common/header.ftl index e01f4ae..f17ad9c 100644 --- a/src/main/resources/templates/common/header.ftl +++ b/src/main/resources/templates/common/header.ftl @@ -20,9 +20,10 @@