diff --git a/src/main/java/cn/palmte/work/bean/SettleBean.java b/src/main/java/cn/palmte/work/bean/SettleBean.java index fb366e7..1caeb29 100644 --- a/src/main/java/cn/palmte/work/bean/SettleBean.java +++ b/src/main/java/cn/palmte/work/bean/SettleBean.java @@ -21,6 +21,21 @@ public class SettleBean { */ private BigDecimal incomeService; + /** + * 获取所有收入总额 + * + * @return + */ + public BigDecimal getIncomeTotal() { + BigDecimal incomeDevice = getIncomeDevice(); + BigDecimal incomeEngineer = getIncomeEngineer(); + BigDecimal incomeService = getIncomeService(); + if (null == incomeDevice || null == incomeEngineer || null == incomeService) { + return new BigDecimal(0); + } + return incomeDevice.add(incomeEngineer).add(incomeService); + } + //========================成本表================================ @@ -55,6 +70,28 @@ public class SettleBean { private BigDecimal costOther; + /** + * 获取所有成本总额 + * + * @return + */ + public BigDecimal getCostTotal() { + BigDecimal costPurchaseDevice = getCostPurchaseDevice(); + BigDecimal costPurchaseBuild = getCostPurchaseBuild(); + BigDecimal costPurchaseService = getCostPurchaseService(); + BigDecimal costPurchaseOther = getCostPurchaseOther(); + BigDecimal costProjectManage = getCostProjectManage(); + BigDecimal costOther = getCostOther(); + + if (null == costPurchaseDevice || null == costPurchaseBuild || null == costPurchaseService + || null == costPurchaseOther || null == costProjectManage || null == costOther) { + return new BigDecimal(0); + } + + return costPurchaseDevice.add(costPurchaseBuild).add(costPurchaseService) + .add(costPurchaseOther).add(costProjectManage).add(costOther); + } + //========================管理表================================ /** @@ -72,6 +109,18 @@ public class SettleBean { */ private BigDecimal costIncomeTax; + public BigDecimal getCostManageTotal() { + BigDecimal costExpropriation = getCostExpropriation(); + BigDecimal costCompanyManage = getCostCompanyManage(); + BigDecimal costIncomeTax = getCostIncomeTax(); + + if (null == costExpropriation || null == costCompanyManage || null == costIncomeTax) { + return new BigDecimal(0); + } + + return costExpropriation.add(costCompanyManage).add(costIncomeTax); + } + //========================利润率计算表================================ @@ -167,6 +216,38 @@ public class SettleBean { */ private BigDecimal netIncreaseMonetaryFunds; + /** + * 获取所有现金流量总额 + * @return + */ + public BigDecimal getCashFluxTotal() { + BigDecimal saleIncomeCash = getSaleIncomeCash(); + BigDecimal taxReturn = getTaxReturn(); + BigDecimal earnestMoneyIncome = getEarnestMoneyIncome(); + BigDecimal purchaseCost = getPurchaseCost(); + BigDecimal taxCost = getTaxCost(); + BigDecimal earnestMoneyCost = getEarnestMoneyCost(); + BigDecimal netCashFlow = getNetCashFlow(); + BigDecimal cashInflowFromInvestingActivities = getCashInflowFromInvestingActivities(); + BigDecimal cashOutflowFromInvestingActivities = getCashOutflowFromInvestingActivities(); + BigDecimal netCashFromInvestingActivities = getNetCashFromInvestingActivities(); + BigDecimal financingCapitalInflow = getFinancingCapitalInflow(); + BigDecimal financingCapitalOutflow = getFinancingCapitalOutflow(); + BigDecimal financingCapitalCashflow = getFinancingCapitalCashflow(); + BigDecimal netIncreaseMonetaryFunds = getNetIncreaseMonetaryFunds(); + + if (null == saleIncomeCash || null == taxReturn || null == earnestMoneyIncome || null == purchaseCost || null == taxCost + || null == earnestMoneyCost || null == netCashFlow || null == cashInflowFromInvestingActivities || + null == cashOutflowFromInvestingActivities || null == netCashFromInvestingActivities || + null == financingCapitalInflow || null == financingCapitalOutflow || null == financingCapitalCashflow || null == netIncreaseMonetaryFunds) { + return new BigDecimal(0); + } + + return saleIncomeCash.add(taxReturn).add(earnestMoneyIncome).add(purchaseCost).add(taxCost).add(earnestMoneyCost) + .add(netCashFlow).add(cashInflowFromInvestingActivities).add(cashOutflowFromInvestingActivities).add(netCashFromInvestingActivities) + .add(financingCapitalInflow).add(financingCapitalOutflow).add(financingCapitalCashflow).add(netIncreaseMonetaryFunds); + } + public BigDecimal getIncomeDevice() { return incomeDevice; } diff --git a/src/main/java/cn/palmte/work/controller/backend/ActTaskDefController.java b/src/main/java/cn/palmte/work/controller/backend/ActTaskDefController.java index c7c5bb6..882a093 100644 --- a/src/main/java/cn/palmte/work/controller/backend/ActTaskDefController.java +++ b/src/main/java/cn/palmte/work/controller/backend/ActTaskDefController.java @@ -101,6 +101,7 @@ public class ActTaskDefController extends BaseController { public String taskList(@PathVariable String procInsId, Map model) { List list = actTaskDefService.hisTaskList(procInsId); model.put("taskList", list); + model.put("procInsId", procInsId); return "/admin/act_his_task_list"; } diff --git a/src/main/java/cn/palmte/work/controller/backend/ProjectController.java b/src/main/java/cn/palmte/work/controller/backend/ProjectController.java index 80d6e24..7c6b4fb 100644 --- a/src/main/java/cn/palmte/work/controller/backend/ProjectController.java +++ b/src/main/java/cn/palmte/work/controller/backend/ProjectController.java @@ -63,6 +63,8 @@ public class ProjectController extends BaseController { private HistoryService historyService; @Autowired private ActTaskDefService actTaskDefService; + @Autowired + private ProjectSettleService projectSettleService; /** * 项目列表 @@ -350,9 +352,11 @@ public class ProjectController extends BaseController { @RequestMapping("/detail") public String detail(@RequestParam("id") int id, Map model) { Project project = projectService.getProject(id); + String time = "2021-11"; EstimateBean estimateBean = projectEstimateService.getEstimate(project); model.put("estimateBean", estimateBean); model.put("project", project); + model.put("formerBean", projectSettleService.getFormerSettle(project, time)); BudgetBean budgetBean = projectBudgetService.getBudget(project); //预算主页面数据 model.put("budgetBean", budgetBean); @@ -387,10 +391,12 @@ public class ProjectController extends BaseController { */ @RequestMapping("/approve") public String approve(@RequestParam("id") int id, @RequestParam String listFrom, Map model) { + String time = "2021-11"; Project project = projectService.getProject(id); EstimateBean estimateBean = projectEstimateService.getEstimate(project); model.put("estimateBean", estimateBean); model.put("project", project); + model.put("formerBean", projectSettleService.getFormerSettle(project, time)); model.put("listFrom", listFrom); BudgetBean budgetBean = projectBudgetService.getBudget(project); //预算主页面数据 diff --git a/src/main/java/cn/palmte/work/controller/backend/ProjectFinalController.java b/src/main/java/cn/palmte/work/controller/backend/ProjectFinalController.java index 312102f..0a4c908 100644 --- a/src/main/java/cn/palmte/work/controller/backend/ProjectFinalController.java +++ b/src/main/java/cn/palmte/work/controller/backend/ProjectFinalController.java @@ -42,6 +42,7 @@ public class ProjectFinalController extends BaseController{ model.put("project", project); model.put("estimateBean", projectEstimateService.getEstimate(project)); model.put("budgetBean", projectBudgetService.getBudget(project)); + model.put("settleBean",projectFinalSevice.getSettle(project)); model.put("finalBean",new FinalBean()); //现金表 model.put("cashFlowBean", projectBudgetService.getCashFlowBean(project, projectBudgetPlanDetails)); diff --git a/src/main/java/cn/palmte/work/model/ProjectSettleCashFlowRepository.java b/src/main/java/cn/palmte/work/model/ProjectSettleCashFlowRepository.java index 57d57ed..cc5260c 100644 --- a/src/main/java/cn/palmte/work/model/ProjectSettleCashFlowRepository.java +++ b/src/main/java/cn/palmte/work/model/ProjectSettleCashFlowRepository.java @@ -15,4 +15,7 @@ public interface ProjectSettleCashFlowRepository extends JpaRepository findAllByProjectIdBefore(int id, String time); + + @Query(value = "select sum(amount) from project_settle_cash_flow where project_id = ? and type = ?", nativeQuery = true) + long costAmountSum(int projectId,int type); } diff --git a/src/main/java/cn/palmte/work/model/ProjectSettleCostManageRepository.java b/src/main/java/cn/palmte/work/model/ProjectSettleCostManageRepository.java index 766e1ca..d6d71a1 100644 --- a/src/main/java/cn/palmte/work/model/ProjectSettleCostManageRepository.java +++ b/src/main/java/cn/palmte/work/model/ProjectSettleCostManageRepository.java @@ -15,4 +15,7 @@ public interface ProjectSettleCostManageRepository extends JpaRepository findAllByProjectIdBefore(int id, String time); + + @Query(value = "select sum(cost_tax_exclude) from project_settle_cost_manage where project_id = ? and type = ?", nativeQuery = true) + long costTaxExcludeSum(int projectId,int type); } diff --git a/src/main/java/cn/palmte/work/model/ProjectSettleCostRepository.java b/src/main/java/cn/palmte/work/model/ProjectSettleCostRepository.java index 11979ea..f73df6f 100644 --- a/src/main/java/cn/palmte/work/model/ProjectSettleCostRepository.java +++ b/src/main/java/cn/palmte/work/model/ProjectSettleCostRepository.java @@ -15,4 +15,7 @@ public interface ProjectSettleCostRepository extends JpaRepository findAllByProjectIdBefore(int id, String time); + + @Query(value = "select sum(cost_tax_exclude) from project_settle_cost where project_id = ? and type = ?", nativeQuery = true) + long costTaxExcludeSum(int projectId,int type); } diff --git a/src/main/java/cn/palmte/work/model/ProjectSettleIncomeRepository.java b/src/main/java/cn/palmte/work/model/ProjectSettleIncomeRepository.java index 4ac982f..1458909 100644 --- a/src/main/java/cn/palmte/work/model/ProjectSettleIncomeRepository.java +++ b/src/main/java/cn/palmte/work/model/ProjectSettleIncomeRepository.java @@ -15,4 +15,9 @@ public interface ProjectSettleIncomeRepository extends JpaRepository findAllByProjectIdBefore(int id, String time); + + @Query(value = "select sum(income_tax_exclude) from project_settle_income where project_id = ? and type = ?", nativeQuery = true) + long incomeTaxExcludeSum(int projectId,int type); + + } diff --git a/src/main/java/cn/palmte/work/service/ProjectFinalSevice.java b/src/main/java/cn/palmte/work/service/ProjectFinalSevice.java index ecb1aa4..708ee9f 100644 --- a/src/main/java/cn/palmte/work/service/ProjectFinalSevice.java +++ b/src/main/java/cn/palmte/work/service/ProjectFinalSevice.java @@ -1,9 +1,6 @@ package cn.palmte.work.service; -import cn.palmte.work.bean.BudgetBean; -import cn.palmte.work.bean.CashFlowBean; -import cn.palmte.work.bean.EstimateBean; -import cn.palmte.work.bean.FinalBean; +import cn.palmte.work.bean.*; import cn.palmte.work.model.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -35,6 +32,18 @@ public class ProjectFinalSevice { @Autowired private ProjectBudgetService projectBudgetService; + @Autowired + private ProjectSettleIncomeRepository projectSettleIncomeRepository; + + @Autowired + private ProjectSettleCostRepository projectSettleCostRepository; + + @Autowired + private ProjectSettleCostManageRepository projectSettleCostManageRepository; + + @Autowired + private ProjectSettleCashFlowRepository projectSettleCashFlowRepository; + @Transactional public void save(Project project, FinalBean finalBean) { //预算表数据 @@ -396,4 +405,68 @@ public class ProjectFinalSevice { } return finalBean; } + + public SettleBean getSettle(Project project) { + SettleBean settleBean = new SettleBean(); + long incomeDivice = projectSettleIncomeRepository.incomeTaxExcludeSum(project.getId(), ProjectSettleIncome.TYPE_DEVICE); + long incomeEngineer = projectSettleIncomeRepository.incomeTaxExcludeSum(project.getId(), ProjectSettleIncome.TYPE_ENGINEER); + long incomeService = projectSettleIncomeRepository.incomeTaxExcludeSum(project.getId(), ProjectSettleIncome.TYPE_SERVICE); + + settleBean.setIncomeDevice(new BigDecimal(incomeDivice)); + settleBean.setIncomeEngineer(new BigDecimal(incomeEngineer)); + settleBean.setIncomeService(new BigDecimal(incomeService)); + + long costDevice = projectSettleCostRepository.costTaxExcludeSum(project.getId(), ProjectSettleCost.TYPE_DEVICE); + long costBuilding = projectSettleCostRepository.costTaxExcludeSum(project.getId(), ProjectSettleCost.TYPE_BUILDING); + long costService = projectSettleCostRepository.costTaxExcludeSum(project.getId(), ProjectSettleCost.TYPE_SERVICE); + long costOther = projectSettleCostRepository.costTaxExcludeSum(project.getId(), ProjectSettleCost.TYPE_OTHER); + long costProjectManage = projectSettleCostRepository.costTaxExcludeSum(project.getId(), ProjectSettleCost.TYPE_PROJECT_MANAGE); + long costOtherOther = projectSettleCostRepository.costTaxExcludeSum(project.getId(), ProjectSettleCost.TYPE_OTHER_OTHER); + + settleBean.setCostPurchaseDevice(new BigDecimal(costDevice)); + settleBean.setCostPurchaseBuild(new BigDecimal(costBuilding)); + settleBean.setCostPurchaseService(new BigDecimal(costService)); + settleBean.setCostOther(new BigDecimal(costOther)); + settleBean.setCostProjectManage(new BigDecimal(costProjectManage)); + settleBean.setCostPurchaseOther(new BigDecimal(costOtherOther)); + + long costExpropriation = projectSettleCostManageRepository.costTaxExcludeSum(project.getId(), ProjectSettleCostManage.TYPE_EXPROPRIATION); + long costCompanyMange = projectSettleCostManageRepository.costTaxExcludeSum(project.getId(), ProjectSettleCostManage.TYPE_COMPANY_MANAGE); + long costIncomeTax = projectSettleCostManageRepository.costTaxExcludeSum(project.getId(), ProjectSettleCostManage.TYPE_INCOME_TAX); + + settleBean.setCostExpropriation(new BigDecimal(costExpropriation)); + settleBean.setCostCompanyManage(new BigDecimal(costCompanyMange)); + settleBean.setCostIncomeTax(new BigDecimal(costIncomeTax)); + + long type1 = projectSettleCashFlowRepository.costAmountSum(project.getId(), ProjectSettleCashFlow.SALE_INCOME_CASH); + long type2 = projectSettleCashFlowRepository.costAmountSum(project.getId(), ProjectSettleCashFlow.TAX_RETURN); + long type3 = projectSettleCashFlowRepository.costAmountSum(project.getId(), ProjectSettleCashFlow.EARNEST_MONEY_INCOME); + long type4 = projectSettleCashFlowRepository.costAmountSum(project.getId(), ProjectSettleCashFlow.PURCHASE_COST); + long type5 = projectSettleCashFlowRepository.costAmountSum(project.getId(), ProjectSettleCashFlow.TAX_COST); + long type6 = projectSettleCashFlowRepository.costAmountSum(project.getId(), ProjectSettleCashFlow.EARNEST_MONEY_COST); + long type7 = projectSettleCashFlowRepository.costAmountSum(project.getId(), ProjectSettleCashFlow.NET_CASH_FLOW); + long type8 = projectSettleCashFlowRepository.costAmountSum(project.getId(), ProjectSettleCashFlow.CASH_INFLOW_FROM_INVESTING_ACTIVITIES); + long type9 = projectSettleCashFlowRepository.costAmountSum(project.getId(), ProjectSettleCashFlow.CASH_OUTFLOW_FROM_INVESTING_ACTIVITIES); + long type10 = projectSettleCashFlowRepository.costAmountSum(project.getId(), ProjectSettleCashFlow.NET_CASH_FROM_INVESTING_ACTIVITIES); + long type11 = projectSettleCashFlowRepository.costAmountSum(project.getId(), ProjectSettleCashFlow.FINANCING_CAPITAL_INFLOW); + long type12 = projectSettleCashFlowRepository.costAmountSum(project.getId(), ProjectSettleCashFlow.FINANCING_CAPITAL_OUTFLOW); + long type13 = projectSettleCashFlowRepository.costAmountSum(project.getId(), ProjectSettleCashFlow.FINANCING_CAPITAL_CASHFLOW); + long type14 = projectSettleCashFlowRepository.costAmountSum(project.getId(), ProjectSettleCashFlow.NET_INCREASE_MONETARY_FUNDS); + + settleBean.setSaleIncomeCash(new BigDecimal(type1)); + settleBean.setTaxReturn(new BigDecimal(type2)); + settleBean.setEarnestMoneyIncome(new BigDecimal(type3)); + settleBean.setPurchaseCost(new BigDecimal(type4)); + settleBean.setTaxCost(new BigDecimal(type5)); + settleBean.setEarnestMoneyCost(new BigDecimal(type6)); + settleBean.setNetCashFlow(new BigDecimal(type7)); + settleBean.setCashInflowFromInvestingActivities(new BigDecimal(type8)); + settleBean.setCashOutflowFromInvestingActivities(new BigDecimal(type9)); + settleBean.setNetCashFromInvestingActivities(new BigDecimal(type10)); + settleBean.setFinancingCapitalInflow(new BigDecimal(type11)); + settleBean.setFinancingCapitalOutflow(new BigDecimal(type12)); + settleBean.setFinancingCapitalCashflow(new BigDecimal(type13)); + settleBean.setNetIncreaseMonetaryFunds(new BigDecimal(type14)); + return settleBean; + } } diff --git a/src/main/resources/templates/admin/act_his_task_list.ftl b/src/main/resources/templates/admin/act_his_task_list.ftl index c63137d..d723d59 100644 --- a/src/main/resources/templates/admin/act_his_task_list.ftl +++ b/src/main/resources/templates/admin/act_his_task_list.ftl @@ -6,85 +6,66 @@
工作流程 / - 审批过程 + 审批过程和流程图
-
-
- - - - - - - - - - - - - - - - <#if (taskList)?exists> - <#list taskList as list> - - - - - - - - + +
+
+
+ +
序号任务节点处理人开始时间结束时间用时意见操作
${list_index+1!}${list.taskName!}${list.assign!}${list.startTime?datetime}<#if list.endTime??> - ${list.endTime?datetime} - ${list.duration!}${list.comments!} - - <#if !list.endTime??> - - - - - - -
+ + + + + + + + + - - - -
序号任务节点处理人开始时间结束时间用时意见
- -
- - <#if (pager.list)?exists && (pager.list?size>0) > -
- <#include "../common/common_pager.ftl"> -
- <#else> -
-

没有找到任何记录!

-
- + + + <#if (taskList)?exists> + <#list taskList as list> + + ${list_index+1!} + ${list.taskName!} + ${list.assign!} + ${list.startTime?datetime} + <#if list.endTime??> + ${list.endTime?datetime} + + ${list.duration!} + ${list.comments!} + + + + + +
+ +
+
+ +
+
+ +
- <#----> diff --git a/src/main/resources/templates/admin/act_proc_ins_list.ftl b/src/main/resources/templates/admin/act_proc_ins_list.ftl index ede550a..1fde6f3 100644 --- a/src/main/resources/templates/admin/act_proc_ins_list.ftl +++ b/src/main/resources/templates/admin/act_proc_ins_list.ftl @@ -49,13 +49,6 @@ - -