diff --git a/src/main/java/cn/palmte/work/bean/CashFlowBean.java b/src/main/java/cn/palmte/work/bean/CashFlowBean.java
index 081e1bd..b0ad788 100644
--- a/src/main/java/cn/palmte/work/bean/CashFlowBean.java
+++ b/src/main/java/cn/palmte/work/bean/CashFlowBean.java
@@ -187,6 +187,38 @@ public class CashFlowBean {
                 .add(financingCapitalCashflow);
     }
 
+    /**
+     * 获取所有现金流量决算总额
+     * @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);
+    }
+
     /**
      * 处理特殊值
      * null就返回0
diff --git a/src/main/java/cn/palmte/work/bean/IncomeCostBean.java b/src/main/java/cn/palmte/work/bean/IncomeCostBean.java
index 1288065..950a910 100644
--- a/src/main/java/cn/palmte/work/bean/IncomeCostBean.java
+++ b/src/main/java/cn/palmte/work/bean/IncomeCostBean.java
@@ -4,6 +4,7 @@ import java.math.BigDecimal;
 
 /**
  * 预算概算页面的公共属性
+ *
  * @author xiongshiyan at 2021/11/1 , contact me with email yanshixiong@126.com or phone 15208384257
  */
 public abstract class IncomeCostBean {
@@ -33,7 +34,7 @@ public abstract class IncomeCostBean {
      */
     private BigDecimal incomeServiceTaxExclude;
     /**
-     *设备采购成本含税
+     * 设备采购成本含税
      */
     private BigDecimal costPurchaseDeviceTaxInclude;
     /**
@@ -54,7 +55,7 @@ public abstract class IncomeCostBean {
      */
     private BigDecimal costOtherOtherTaxInclude;
     /**
-     *设备采购成本不含税
+     * 设备采购成本不含税
      */
     private BigDecimal costPurchaseDeviceTaxExclude;
     /**
@@ -83,7 +84,7 @@ public abstract class IncomeCostBean {
      */
     private BigDecimal costExpropriationTaxExclude;
     /**
-     *公司管理成本不含税
+     * 公司管理成本不含税
      */
     private BigDecimal costCompanyManageTaxExclude;
 
@@ -174,6 +175,7 @@ public abstract class IncomeCostBean {
     public BigDecimal getCostPurchaseOtherTaxInclude() {
         return handleSpecial(costPurchaseOtherTaxInclude);
     }
+
     public void setCostPurchaseOtherTaxInclude(BigDecimal costPurchaseOtherTaxInclude) {
         this.costPurchaseOtherTaxInclude = costPurchaseOtherTaxInclude;
     }
@@ -251,6 +253,20 @@ public abstract class IncomeCostBean {
         this.costCompanyManageTaxExclude = costCompanyManageTaxExclude;
     }
 
+    /**
+     * 计算管理成本不含税
+     *
+     * @return
+     */
+    public BigDecimal getCostManageExclude() {
+        BigDecimal costExpropriationTaxExclude = getCostExpropriationTaxExclude();
+        BigDecimal costCompanyManageTaxExclude = getCostCompanyManageTaxExclude();
+        if (null == costExpropriationTaxExclude || null == costCompanyManageTaxExclude) {
+            return handleSpecial(null);
+        }
+        return costExpropriationTaxExclude.add(costCompanyManageTaxExclude);
+    }
+
 
     /**
      * 计算所有的含税收入
@@ -259,7 +275,7 @@ public abstract class IncomeCostBean {
         BigDecimal incomeDeviceTaxInclude = getIncomeDeviceTaxInclude();
         BigDecimal incomeEngineerTaxInclude = getIncomeEngineerTaxInclude();
         BigDecimal incomeServiceTaxInclude = getIncomeServiceTaxInclude();
-        if(null == incomeDeviceTaxInclude || null == incomeEngineerTaxInclude || null == incomeServiceTaxInclude){
+        if (null == incomeDeviceTaxInclude || null == incomeEngineerTaxInclude || null == incomeServiceTaxInclude) {
             return handleSpecial(null);
         }
         return incomeDeviceTaxInclude.add(incomeEngineerTaxInclude)
@@ -273,7 +289,7 @@ public abstract class IncomeCostBean {
         BigDecimal incomeDeviceTaxExclude = getIncomeDeviceTaxExclude();
         BigDecimal incomeEngineerTaxExclude = getIncomeEngineerTaxExclude();
         BigDecimal incomeServiceTaxExclude = getIncomeServiceTaxExclude();
-        if(null == incomeDeviceTaxExclude || null == incomeEngineerTaxExclude || null == incomeServiceTaxExclude){
+        if (null == incomeDeviceTaxExclude || null == incomeEngineerTaxExclude || null == incomeServiceTaxExclude) {
             return handleSpecial(null);
         }
         return incomeDeviceTaxExclude.add(incomeEngineerTaxExclude)
@@ -290,12 +306,12 @@ public abstract class IncomeCostBean {
         BigDecimal costPurchaseOtherTaxInclude = getCostPurchaseOtherTaxInclude();
         BigDecimal costProjectManageTaxInclude = getCostProjectManageTaxInclude();
         BigDecimal costOtherOtherTaxInclude = getCostOtherOtherTaxInclude();
-        if(null == costPurchaseDeviceTaxInclude
+        if (null == costPurchaseDeviceTaxInclude
                 || null == costPurchaseBuildTaxInclude
                 || null == costPurchaseServiceTaxInclude
                 || null == costPurchaseOtherTaxInclude
                 || null == costProjectManageTaxInclude
-                || null == costOtherOtherTaxInclude){
+                || null == costOtherOtherTaxInclude) {
             return handleSpecial(null);
         }
         return costPurchaseDeviceTaxInclude
@@ -316,12 +332,12 @@ public abstract class IncomeCostBean {
         BigDecimal costPurchaseOtherTaxExclude = getCostPurchaseOtherTaxExclude();
         BigDecimal costProjectManageTaxExclude = getCostProjectManageTaxExclude();
         BigDecimal costOtherOtherTaxExclude = getCostOtherOtherTaxExclude();
-        if(null == costPurchaseDeviceTaxExclude
+        if (null == costPurchaseDeviceTaxExclude
                 || null == costPurchaseBuildTaxExclude
                 || null == costPurchaseServiceTaxExclude
                 || null == costPurchaseOtherTaxExclude
                 || null == costProjectManageTaxExclude
-                || null == costOtherOtherTaxExclude){
+                || null == costOtherOtherTaxExclude) {
             return handleSpecial(null);
         }
         return costPurchaseDeviceTaxExclude
@@ -340,7 +356,7 @@ public abstract class IncomeCostBean {
         BigDecimal incomeTotalTaxExclude = getIncomeTotalTaxExclude();
         BigDecimal costTotalTaxExclude = getCostTotalTaxExclude();
         BigDecimal costExpropriationTaxExclude = getCostExpropriationTaxExclude();
-        if(null == incomeTotalTaxExclude || null == costTotalTaxExclude || null == costExpropriationTaxExclude){
+        if (null == incomeTotalTaxExclude || null == costTotalTaxExclude || null == costExpropriationTaxExclude) {
             return handleSpecial(null);
         }
         return incomeTotalTaxExclude
@@ -355,16 +371,16 @@ public abstract class IncomeCostBean {
     public BigDecimal getProjectGrossProfitRate() {
         BigDecimal projectGrossProfit = getProjectGrossProfit();
         BigDecimal incomeTotalTaxExclude = getIncomeTotalTaxExclude();
-        if(null == projectGrossProfit || null == incomeTotalTaxExclude){
+        if (null == projectGrossProfit || null == incomeTotalTaxExclude) {
             return handleSpecial(null);
         }
         BigDecimal zero = new BigDecimal(0);
-        if(projectGrossProfit.compareTo(zero) == 0 || incomeTotalTaxExclude.compareTo(zero) == 0){
+        if (projectGrossProfit.compareTo(zero) == 0 || incomeTotalTaxExclude.compareTo(zero) == 0) {
             return handleSpecial(null);
         }
         return projectGrossProfit
                 .multiply(new BigDecimal(100))
-                .divide(incomeTotalTaxExclude,2,BigDecimal.ROUND_HALF_UP);
+                .divide(incomeTotalTaxExclude, 2, BigDecimal.ROUND_HALF_UP);
     }
 
     /**
@@ -374,11 +390,12 @@ public abstract class IncomeCostBean {
     public BigDecimal getProjectContributionProfit() {
         BigDecimal projectGrossProfit = getProjectGrossProfit();
         BigDecimal costCompanyManageTaxExclude = getCostCompanyManageTaxExclude();
-        if(null == projectGrossProfit || null == costCompanyManageTaxExclude){
+        if (null == projectGrossProfit || null == costCompanyManageTaxExclude) {
             return null;
         }
         return projectGrossProfit.subtract(costCompanyManageTaxExclude);
     }
+
     /**
      * 计算项目贡献利润率
      * 贡献利润(不含税)/收入总计(不含税)
@@ -386,20 +403,21 @@ public abstract class IncomeCostBean {
     public BigDecimal getProjectContributionProfitRate() {
         BigDecimal projectContributionProfit = getProjectContributionProfit();
         BigDecimal incomeTotalTaxExclude = getIncomeTotalTaxExclude();
-        if(null == projectContributionProfit || null == incomeTotalTaxExclude){
+        if (null == projectContributionProfit || null == incomeTotalTaxExclude) {
             return handleSpecial(null);
         }
         BigDecimal zero = new BigDecimal(0);
-        if(projectContributionProfit.compareTo(zero) == 0 || incomeTotalTaxExclude.compareTo(zero) == 0){
+        if (projectContributionProfit.compareTo(zero) == 0 || incomeTotalTaxExclude.compareTo(zero) == 0) {
             return handleSpecial(null);
         }
         return projectContributionProfit
                 .multiply(new BigDecimal(100))
-                .divide(incomeTotalTaxExclude, 2,BigDecimal.ROUND_HALF_UP);
+                .divide(incomeTotalTaxExclude, 2, BigDecimal.ROUND_HALF_UP);
     }
 
     /**
      * 对null值如何处理
+     *
      * @param src 原值
      * @return 特殊处理之后的值
      */
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 0a4c908..65a8c01 100644
--- a/src/main/java/cn/palmte/work/controller/backend/ProjectFinalController.java
+++ b/src/main/java/cn/palmte/work/controller/backend/ProjectFinalController.java
@@ -3,7 +3,8 @@ package cn.palmte.work.controller.backend;
 import cn.palmte.work.bean.*;
 import cn.palmte.work.model.Project;
 import cn.palmte.work.model.ProjectBudgetPlanDetail;
-import cn.palmte.work.model.ProjectRepository;
+import cn.palmte.work.model.ProjectSettleIncome;
+import cn.palmte.work.model.ProjectSettleIncomeRepository;
 import cn.palmte.work.service.*;
 import cn.palmte.work.utils.FreeMarkerUtil;
 import cn.palmte.work.utils.InterfaceUtil;
@@ -12,7 +13,6 @@ import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 
-import java.util.Date;
 import java.util.List;
 import java.util.Map;
 
@@ -33,17 +33,38 @@ public class ProjectFinalController extends BaseController{
     private ProjectBudgetService projectBudgetService;
 
     @Autowired
-    private ProjectInstanceService projectInstanceService;
+    private ProjectSettleIncomeRepository projectSettleIncomeRepository;
+
+    @Autowired
+    private ProjectSettleService projectSettleService;
+
+    @RequestMapping("/add")
+    public String add(@RequestParam("id") int id, Map<String, Object> model) {
+        Project project = projectService.getProject(id);
+        ProjectSettleIncome projectSettleIncome = projectSettleIncomeRepository.findNewByProjectId(id);
+        String time = projectSettleIncome.getTime();
+        List<ProjectBudgetPlanDetail> projectBudgetPlanDetails = projectBudgetService.getProjectBudgetPlanDetails(project);
+        model.put("project", project);
+        model.put("estimateBean", projectEstimateService.getEstimate(project));
+        model.put("budgetBean", projectBudgetService.getBudget(project));
+        model.put("settleBean",projectSettleService.getCurrentSettle(project, time));
+        model.put("finalBean",new FinalBean());
+        //现金表
+        model.put("cashFlowBean", projectBudgetService.getCashFlowBean(project, projectBudgetPlanDetails));
+        //freemarker可以利用的静态方法
+        model.put("Utils", FreeMarkerUtil.fromStaticPackage("cn.palmte.work.utils.Utils"));
+        return "admin/project_final_add";
+    }
 
     @RequestMapping("/edit")
-    public String budget(@RequestParam("id") int id, Map<String, Object> model) {
+    public String edit(@RequestParam("id") int id, Map<String, Object> model) {
         Project project = projectService.getProject(id);
         List<ProjectBudgetPlanDetail> projectBudgetPlanDetails = projectBudgetService.getProjectBudgetPlanDetails(project);
         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("finalBean",projectFinalSevice.getFinal(project));
         //现金表
         model.put("cashFlowBean", projectBudgetService.getCashFlowBean(project, projectBudgetPlanDetails));
         //freemarker可以利用的静态方法
@@ -54,7 +75,6 @@ public class ProjectFinalController extends BaseController{
     @RequestMapping("/save")
     public String estimateAddSave(Project project, FinalBean finalBean, Map<String, Object> model) {
         projectFinalSevice.save(project,finalBean);
-        projectService.updateStatusAndApproveStatus(project.getId(), StatusEnum.FINAL_ACCOUNTS, ApproveStatusEnum.APPROVAL_UNCOMMIT);
         return "redirect:/project/list";
     }
 
@@ -69,12 +89,7 @@ public class ProjectFinalController extends BaseController{
      */
     @RequestMapping("/saveAndApprove")
     public String saveAndApprove(Project project, FinalBean finalBean, Map<String, Object> model) throws Exception{
-        //保存
-        projectFinalSevice.save(project,finalBean);
-        //更新项目和审批状态
-        projectService.updateStatusAndApproveStatus(project.getId(), StatusEnum.FINAL_ACCOUNTS, ApproveStatusEnum.APPROVAL_PENDING);
-        //发起流程
-        projectInstanceService.startFinalProcessInstance(project.getId(), InterfaceUtil.getAdmin());
+        projectFinalSevice.saveAndApprove(project,finalBean);
         return "redirect:/project/list";
     }
 
diff --git a/src/main/java/cn/palmte/work/service/ProjectFinalSevice.java b/src/main/java/cn/palmte/work/service/ProjectFinalSevice.java
index cb43d38..d6b97ba 100644
--- a/src/main/java/cn/palmte/work/service/ProjectFinalSevice.java
+++ b/src/main/java/cn/palmte/work/service/ProjectFinalSevice.java
@@ -2,6 +2,7 @@ package cn.palmte.work.service;
 
 import cn.palmte.work.bean.*;
 import cn.palmte.work.model.*;
+import cn.palmte.work.utils.InterfaceUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -44,6 +45,12 @@ public class ProjectFinalSevice {
     @Autowired
     private ProjectSettleCashFlowRepository projectSettleCashFlowRepository;
 
+    @Autowired
+    private ProjectService projectService;
+
+    @Autowired
+    private ProjectInstanceService projectInstanceService;
+
     @Transactional
     public void save(Project project, FinalBean finalBean) {
         //预算表数据
@@ -66,6 +73,37 @@ public class ProjectFinalSevice {
         //保存项目结算现金流量信息
         saveProjectFinalCashFlux(project,finalBean,cashFlowBean);
 
+        projectService.updateStatusAndApproveStatus(project.getId(), StatusEnum.FINAL_ACCOUNTS, ApproveStatusEnum.APPROVAL_UNCOMMIT);
+
+    }
+
+    @Transactional
+    public void saveAndApprove(Project project, FinalBean finalBean) throws Exception {
+        //预算表数据
+        EstimateBean estimate = projectEstimateService.getEstimate(project);
+        //概算表数据
+        BudgetBean budget = projectBudgetService.getBudget(project);
+        //现金流量表数据
+        List<ProjectBudgetPlanDetail> projectBudgetPlanDetails = projectBudgetService.getProjectBudgetPlanDetails(project);
+        CashFlowBean cashFlowBean = projectBudgetService.getCashFlowBean(project, projectBudgetPlanDetails);
+
+        //保存项目决算收入信息
+        saveProjectFinalIncome(project,finalBean,estimate,budget);
+
+        //保存项目决算成本信息
+        saveProjectFinalCost(project,finalBean,estimate,budget);
+
+        //保存项目结算管理成本信息
+        saveProjectFinalCostManage(project,finalBean,estimate,budget);
+
+        //保存项目结算现金流量信息
+        saveProjectFinalCashFlux(project,finalBean,cashFlowBean);
+
+        //更新项目和审批状态
+        projectService.updateStatusAndApproveStatus(project.getId(), StatusEnum.FINAL_ACCOUNTS, ApproveStatusEnum.APPROVAL_PENDING);
+        //发起流程
+        projectInstanceService.startFinalProcessInstance(project.getId(), InterfaceUtil.getAdmin());
+
     }
 
     public void saveProjectFinalCostManage(Project project, FinalBean finalBean,EstimateBean estimate,BudgetBean budget){
diff --git a/src/main/resources/templates/admin/project_final_add.ftl b/src/main/resources/templates/admin/project_final_add.ftl
new file mode 100644
index 0000000..dec8984
--- /dev/null
+++ b/src/main/resources/templates/admin/project_final_add.ftl
@@ -0,0 +1,394 @@
+<#assign base=request.contextPath />
+
+<#import "../common/defaultLayout.ftl" as defaultLayout>
+<@defaultLayout.layout>
+
+<style type="text/css">
+    /**让所有的模态对话框都居中*/
+
+    .am-modal.am-modal-prompt.am-modal-active {
+        transform: translate(-50%, -50%) scale(1);
+        left: 50%;
+        top: 50%;
+        margin-left: 0;
+        margin-top: 0!important;
+    }
+
+    select[readonly] option {
+        display: none;
+    }
+</style>
+
+<div class="admin-content">
+    <div class="admin-content-body">
+        <div class="am-cf am-padding">
+            <div class="am-fl am-cf"><strong class="am-text-primary am-text-lg">项目决算表</strong> / <small>${project.name}</small></div>
+        </div>
+
+<form method="post" class="am-form" id="pmsForm" action="${base}/project/budgetEditSave">
+    <!--选项卡(tabs)begin-->
+    <div class="am-tabs am-margin" data-am-tabs>
+        <ul class="am-tabs-nav am-nav am-nav-tabs">
+            <li class="am-active"><a href="#tab1">项目决算表</a></li>
+        </ul>
+        <div class="am-tabs-bd">
+            <div class="am-tab-panel am-fade am-in am-active" id="tab1">
+                <input name="id" id="id" type="hidden" value="${project.id}" />
+                <span class="am-text-lg">收入</span>
+                <table class="am-table am-table-bordered am-table-radius table-main" style="padding:0;">
+                    <tbody>
+                    <tr class="am-text-xl">
+                        <td>类别</td>
+                        <td>费用</td>
+                        <td>概算总额(元)</td>
+                        <td>预算总额(元)</td>
+                        <td>结算总额(元)</td>
+                        <td>决算总额(元)</td>
+                    </tr>
+                    <tr>
+                        <td>收入</td>
+                        <td>设备类</td>
+                        <td><input name="incomeDeviceTaxExclude" type="number" value="${Utils.format(estimateBean.incomeDeviceTaxExclude,'0')}" required readonly title="设备类概算总额"></td>
+                        <td><input name="incomeDeviceTaxExclude" type="number" value="${Utils.format(budgetBean.incomeDeviceTaxExclude,'0')}" required readonly title="设备类预算总额"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.incomeDeviceTaxExclude,'0')}" required readonly title="设备类结算总额"></td>
+                        <td><input name="incomeDeviceFinalTotal" type="number" required title="设备类决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>收入</td>
+                        <td>工程类</td>
+                        <td><input name="incomeEngineerTaxExclude" type="number" value="${Utils.format(estimateBean.incomeEngineerTaxExclude,'0')}" required readonly title="工程类概算总额"></td>
+                        <td><input name="incomeEngineerTaxExclude" type="number" value="${Utils.format(budgetBean.incomeEngineerTaxExclude,'0')}" required readonly title="工程类预算总额"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.incomeEngineerTaxExclude,'0')}" required readonly title="工程类结算总额"></td>
+                        <td><input name="incomeEngineerFinalTotal" type="number"  required title="工程类决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>收入</td>
+                        <td>服务类</td>
+                        <td><input name="incomeServiceTaxExclude" type="number" value="${Utils.format(estimateBean.incomeServiceTaxExclude,'0')}" required readonly title="服务类概算总额"></td>
+                        <td><input name="incomeServiceTaxExclude" type="number" value="${Utils.format(budgetBean.incomeServiceTaxExclude,'0')}" required readonly title="服务类预算总额"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.incomeServiceTaxExclude,'0')}" required readonly title="服务类结算总额"></td>
+                        <td><input name="incomeServiceFinalTotal" type="number" required title="服务类决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>合计</td>
+                        <td></td>
+                        <td><input name="estimateIncomeTotalTaxExclude" type="number" value="${Utils.format(estimateBean.getIncomeTotalTaxExclude(),'0')}" readonly required title="此列累计"></td>
+                        <td><input name="budgetIncomeTotalTaxExclude" type="number"  value="${Utils.format(budgetBean.getIncomeTotalTaxExclude(),'0')}" readonly required title="此列累计"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.getIncomeTotalTaxExclude(),'0')}" readonly required title="此列累计"></td>
+                        <td><input name="incomeFinalTotal" type="number" readonly required title="此列累计"></td>
+                    </tr>
+                    </tbody>
+                </table>
+                <span class="am-text-lg">成本</span>
+                <table class="am-table am-table-bordered am-table-radius table-main" style="padding:0;">
+                    <tbody>
+                    <tr class="am-text-xl">
+                        <td>类别</td>
+                        <td>费用</td>
+                        <td>费用项目</td>
+                        <td>概算总额(元)</td>
+                        <td>预算总额(元)</td>
+                        <td>结算总额(元)</td>
+                        <td>决算总额(元)</td>
+                    </tr>
+                    <tr>
+                        <td>成本</td>
+                        <td>采购成本</td>
+                        <td>设备</td>
+                        <td><input name="costPurchaseDeviceTaxExclude" type="number" value="${Utils.format(estimateBean.costPurchaseDeviceTaxExclude,'0')}" readonly required title="购买设备概算总额"></td>
+                        <td><input name="costPurchaseDeviceTaxExclude" type="number" value="${Utils.format(budgetBean.costPurchaseDeviceTaxExclude,'0')}" readonly required title="购买设备预算总额"></td>
+                        <td><input  type="number" value="${Utils.format(settleBean.costPurchaseDeviceTaxExclude,'0')}" readonly required title="购买设备结算总额"></td>
+                        <td><input name="costPurchaseDeviceFinalTotal" type="number" required title="购买设备决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>成本</td>
+                        <td>采购成本</td>
+                        <td>施工</td>
+                        <td><input name="costPurchaseBuildTaxExclude" type="number" value="${Utils.format(estimateBean.costPurchaseBuildTaxExclude,'0')}" readonly required title="施工采购成本概算总额"></td>
+                        <td><input name="costPurchaseBuildTaxExclude" type="number" value="${Utils.format(budgetBean.costPurchaseBuildTaxExclude,'0')}" readonly required title="施工采购成本预算总额"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.costPurchaseBuildTaxExclude,'0')}" readonly required title="施工采购成本结算总额"></td>
+                        <td><input name="costPurchaseBuildFinalTotal" type="number" required title="施工采购成本决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>成本</td>
+                        <td>采购成本</td>
+                        <td>服务</td>
+                        <td><input name="costPurchaseServiceTaxExclude" type="number" value="${Utils.format(estimateBean.costPurchaseServiceTaxExclude,'0')}" readonly required title="服务采购成本概算总额"></td>
+                        <td><input name="costPurchaseServiceTaxExclude" type="number" value="${Utils.format(budgetBean.costPurchaseServiceTaxExclude,'0')}" readonly required title="服务采购成本预算总额"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.costPurchaseServiceTaxExclude,'0')}" readonly required title="服务采购成本结算总额"></td>
+                        <td><input name="costPurchaseServiceFinalTotal" type="number" required title="服务采购成本决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>成本</td>
+                        <td>采购成本</td>
+                        <td>其他</td>
+                        <td><input name="costPurchaseOtherTaxInclude" type="number" value="${Utils.format(estimateBean.costPurchaseOtherTaxInclude,'0')}" readonly required title="其他采购成本概算总额"></td>
+                        <td><input name="costPurchaseOtherTaxInclude" type="number" value="${Utils.format(budgetBean.costPurchaseOtherTaxInclude,'0')}" readonly required title="其他采购成本预算总额"></td>
+                        <td><input name="costPurchaseOtherSettleTotal" value="${Utils.format(settleBean.costPurchaseOtherTaxExclude,'0')}" type="number" readonly required title="其他采购成本结算总额"></td>
+                        <td><input name="costPurchaseOtherFinalTotal" type="number" required title="其他采购成本决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>成本</td>
+                        <td>项目管理成本</td>
+                        <td>项目管理成本</td>
+                        <td><input name="costProjectManageTaxExclude" type="number" value="${Utils.format(estimateBean.costProjectManageTaxExclude,'0')}" readonly required title="项目管理成本概算总额"></td>
+                        <td><input name="costProjectManageTaxExclude" type="number" value="${Utils.format(budgetBean.costProjectManageTaxExclude,'0')}" readonly required title="项目管理成本预算总额"></td>
+                        <td><input name="costProjectManageSettleTotal" value="${Utils.format(settleBean.costProjectManageTaxExclude,'0')}" type="number" readonly required title="项目管理成本结算总额"></td>
+                        <td><input name="costProjectManageFinalTotal" type="number" required title="项目管理成本决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>成本</td>
+                        <td>其他</td>
+                        <td>其他</td>
+                        <td><input name="costOtherOtherTaxExclude" type="number" value="${Utils.format(estimateBean.costOtherOtherTaxExclude,'0')}" readonly required title="其他成本概算总额"></td>
+                        <td><input name="costOtherOtherTaxExclude" type="number" value="${Utils.format(budgetBean.costOtherOtherTaxExclude,'0')}" readonly required title="其他成本预算总额"></td>
+                        <td><input name="costOtherSettleTotal" value="${Utils.format(settleBean.costOtherOtherTaxExclude,'0')}" type="number" type="number"readonly required title="其他成本结算总额"></td>
+                        <td><input name="costOtherFinalTotal" type="number" required title="其他成本决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>合计</td>
+                        <td></td>
+                        <td></td>
+                        <td><input name="incomeTotalTaxExclude" value="${Utils.format(estimateBean.getIncomeTotalTaxExclude(),'0')}" type="number" readonly required title="此列累计"></td>
+                        <td><input name="costTotalTaxExclude" value="${Utils.format(budgetBean.getCostTotalTaxExclude(),'0')}" type="number" readonly required title="此列累计"></td>
+                        <td><input name="costSettleTotal" value="${Utils.format(settleBean.getCostTotalTaxExclude(),'0')}" type="number" readonly required title="此列累计"></td>
+                        <td><input name="costFinalTotal" type="number" readonly required title="此列累计"></td>
+                    </tr>
+                    </tbody>
+                </table>
+                <span class="am-text-lg">管理</span>
+                <table class="am-table am-table-bordered am-table-radius table-main" style="padding:0;">
+                    <tbody>
+                    <tr class="am-text-xl">
+                        <td>类别</td>
+                        <td>费用项目</td>
+                        <td>概算总额(元)</td>
+                        <td>预算总额(元)</td>
+                        <td>结算总额(元)</td>
+                        <td>决算总额(元)</td>
+                    </tr>
+                    <tr>
+                        <td>财务费用</td>
+                        <td>资金占用成本</td>
+                        <td><input name="costExpropriationTaxExclude" type="number" value="${Utils.format(estimateBean.costExpropriationTaxExclude,'0')}" required readonly title="资金占用成本概算总额"></td>
+                        <td><input name="costExpropriationTaxExclude" type="number" value="${Utils.format(budgetBean.costExpropriationTaxExclude,'0')}" required readonly title="资金占用成本预算总额"></td>
+                        <td><input type="number"  value="${Utils.format(settleBean.costExpropriationTaxExclude,'0')}" required readonly title="资金占用成本结算总额"></td>
+                        <td><input name="costExpropriationFinalTotal" type="number" required title="资金占用成本决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>公司管理费用</td>
+                        <td></td>
+                        <td><input name="costCompanyManageTaxExclude" type="number" value="${Utils.format(estimateBean.costCompanyManageTaxExclude,'0')}" required readonly title="公司管理费用概算总额"></td>
+                        <td><input name="costCompanyManageTaxExclude" type="number" value="${Utils.format(budgetBean.costCompanyManageTaxExclude,'0')}" required readonly title="公司管理费用预算总额"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.costCompanyManageTaxExclude,'0')}" required readonly title="公司管理费用结算总额"></td>
+                        <td><input name="costCompanyManageFinalTotal" type="number" required title="公司管理费用决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>所得税费用</td>
+                        <td></td>
+                        <td>/</td>
+                        <td>/</td>
+                        <td><input name="costIncomeTaxSettleTotal" value="${Utils.format(settleBean.costIncomeTax,'0')}" type="number" required readonly title="所得税费用结算总额"></td>
+                        <td><input name="costIncomeTaxFinalTotal" type="number" required title="所得税费用决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>合计</td>
+                        <td></td>
+                        <td><input name="manageEstimateTotal" value="${Utils.format(estimateBean.getCostManageExclude(),'0')}" type="number" readonly required title="此列累计"></td>
+                        <td><input name="manageBudgetTotal" value="${Utils.format(budgetBean.getCostManageExclude(),'0')}" type="number" readonly required title="此列累计"></td>
+                        <td><input name="manageSettleTotal" value="${Utils.format(settleBean.getCostManageTotal(),'0')}" type="number" readonly required title="此列累计"></td>
+                        <td><input name="manageFinalTotal" type="number" readonly required title="此列累计"></td>
+                    </tr>
+                    </tbody>
+                </table>
+
+                <span class="am-text-lg">利润率计算</span>
+                <table class="am-table am-table-bordered am-table-radius table-main" style="padding:0;">
+                    <tbody>
+                    <tr class="am-text-xl">
+                        <td>类别</td>
+                        <td>概算总额(元)</td>
+                        <td>预算总额(元)</td>
+                        <td>结算总额(元)</td>
+                        <td>决算总额(元)</td>
+                        <td>利润率(%)</td>
+                    </tr>
+                    <tr>
+                        <td>项目毛利</td>
+                        <td><input name="projectGrossProfit" type="number" value="${Utils.format(estimateBean.getProjectGrossProfit(),'0')}" readonly required title="项目毛利概算总额"></td>
+                        <td><input name="projectGrossProfit" type="number" value="${Utils.format(budgetBean.getProjectGrossProfit(),'0')}" readonly required title="项目毛利预算总额"></td>
+                        <td><input name="grossProfitSettleTotal" type="number" value="${Utils.format(settleBean.grossProfit,'0')}" readonly required title="项目毛利结算总额"></td>
+                        <td><input name="grossProfitFinalTotal" required type="number" title="项目毛利决算总额"></td>
+                        <td><input name="grossProfitProfitMargin" type="number" required readonly title="项目毛利利润率"></td>
+                    </tr>
+                    <tr>
+                        <td>项目贡献利润</td>
+                        <td><input name="projectContributionProfit" type="number" value="${Utils.format(estimateBean.getProjectContributionProfit(),'0')}" readonly required title="项目贡献利润概算总额"></td>
+                        <td><input name="projectContributionProfit" type="number" value="${Utils.format(budgetBean.getProjectContributionProfit(),'0')}" readonly required title="项目贡献利润预算总额"></td>
+                        <td><input name="contributionMarginSettleTotal" type="number" value="${Utils.format(settleBean.contributionProfit,'0')}" readonly required title="项目贡献利润结算总额"></td>
+                        <td><input name="contributionMarginFinalTotal" type="number" required title="项目贡献利润决算总额"></td>
+                        <td><input name="contributionMarginProfitMargin" type="number" required readonly title="项目贡献利润利润率"></td>
+                    </tr>
+                    <tr>
+                        <td>项目净利润</td>
+                        <td>/</td>
+                        <td><input name="netMarginBudgetTotal" type="number" value="${Utils.format(finalBean.netMarginBudgetTotal,'0')}" readonly required title="项目净利润预算总额"></td>
+                        <td><input name="netMarginSettleTotal" type="number" value="${Utils.format(settleBean.netProfit,'0')}" readonly required title="项目净利润结算总额"></td>
+                        <td><input name="netMarginFinalTotal" type="number" required title="项目净利润决算总额"></td>
+                        <td><input name="netMarginProfitMargin" type="number" value="${Utils.format(finalBean.netMarginProfitMargin,'0')}" required readonly title="项目净利润利润率"></td>
+                    </tr>
+                    </tbody>
+                </table>
+
+                <span class="am-text-lg">现金流量表</span>
+                <table class="am-table am-table-bordered am-table-radius table-main" style="padding:0;">
+                    <tbody>
+                    <tr class="am-text-xl">
+                        <td>类别</td>
+                        <td>预算总额(元)</td>
+                        <td>结算总额(元)</td>
+                        <td>决算总额(元)</td>
+                    </tr>
+                    <tr>
+                        <td>销售商品、提供劳务收到的现金</td>
+                        <td><input name="budgetSaleIncomeCash" type="number" value="${Utils.format(cashFlowBean.saleIncomeCash,'0')}" readonly required title="预算总额"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.saleIncomeCash,'0')}" readonly required title="结算总额"></td>
+                        <td><input name="saleIncomeCash" type="number" required title="决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>收到的税费返还</td>
+                        <td>/</td>
+                        <td><input type="number" value="${Utils.format(settleBean.taxReturn,'0')}" readonly required title="结算总额"></td>
+                        <td><input name="taxReturn" type="number" required title="决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>收到其他与经营活动有关的现金</td>
+                        <td><input name="budgetEarnestMoneyIncome" type="number" value="${Utils.format(cashFlowBean.earnestMoneyIncome,'0')}" readonly required title="预算总额"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.earnestMoneyIncome,'0')}" readonly required title="结算总额"></td>
+                        <td><input name="earnestMoneyIncome" type="number" required title="决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>购买商品、接受劳务支付的现金</td>
+                        <td><input name="budgetPurchaseCost" type="number" value="${Utils.format(cashFlowBean.purchaseCost,'0')}" readonly required title="预算总额"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.purchaseCost,'0')}" readonly required title="结算总额"></td>
+                        <td><input name="purchaseCost" type="number" required title="决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>支付的各项税费</td>
+                        <td>/</td>
+                        <td><input type="number" value="${Utils.format(settleBean.taxCost,'0')}" readonly required title="结算总额"></td>
+                        <td><input name="taxCost" type="number" required title="决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>支付其他与经营活动有关的现金</td>
+                        <td><input name="budgetEarnestMoneyCost" type="number" value="${Utils.format(cashFlowBean.earnestMoneyCost,'0')}" readonly required title="预算总额"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.earnestMoneyCost,'0')}" readonly required title="结算总额"></td>
+                        <td><input name="earnestMoneyCost" type="number" required title="决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>经营活动产生的现金流量净额</td>
+                        <td><input name="budgetNetCashFlow" type="number" value="${Utils.format(cashFlowBean.getNetCashFlow(),'0')}" readonly required title="预算总额"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.netCashFlow,'0')}" readonly required title="结算总额"></td>
+                        <td><input name="netCashFlow" type="number" required title="决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>投资活动现金流入</td>
+                        <td>/</td>
+                        <td><input type="number" value="${Utils.format(settleBean.cashInflowFromInvestingActivities,'0')}" readonly required title="结算总额"></td>
+                        <td><input name="cashInflowFromInvestingActivities"  type="number" required title="决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>投资活动现金流出</td>
+                        <td>/</td>
+                        <td><input type="number" value="${Utils.format(settleBean.cashOutflowFromInvestingActivities,'0')}" readonly required title="结算总额"></td>
+                        <td><input name="cashOutflowFromInvestingActivities" type="number" required title="决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>投资活动产生的现金流量净额</td>
+                        <td>/</td>
+                        <td><input type="number" value="${Utils.format(settleBean.netCashFromInvestingActivities,'0')}" readonly required title="结算总额"></td>
+                        <td><input name="netCashFromInvestingActivities" type="number" required title="决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>融资资金流入</td>
+                        <td><input name="budgetFinancingCapitalInflow" type="number" value="${Utils.format(cashFlowBean.financingCapitalInflow,'0')}" readonly required title="预算总额"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.financingCapitalInflow,'0')}" readonly required title="结算总额"></td>
+                        <td><input name="financingCapitalInflow" type="number" required title="决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>还款资金流出</td>
+                        <td><input name="budgetFinancingCapitalOutflow" type="number" value="${Utils.format(cashFlowBean.financingCapitalOutflow,'0')}" readonly required title="预算总额"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.financingCapitalOutflow,'0')}" readonly required title="结算总额"></td>
+                        <td><input name="financingCapitalOutflow" type="number" required title="决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>筹资活动产生的现金流量净额</td>
+                        <td><input name="budgetFinancingCapitalCashflow" type="number" value="${Utils.format(cashFlowBean.getFinancingCapitalCashflow(),'0')}" readonly required title="预算总额"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.financingCapitalCashflow,'0')}" readonly required title="结算总额"></td>
+                        <td><input name="financingCapitalCashflow" type="number" required title="决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>货币资金净增加额</td>
+                        <td><input name="budgetNetIncreaseMonetaryFunds" type="number" value="${Utils.format(cashFlowBean.getNetIncreaseMonetaryFunds(),'0')}" readonly required title="预算总额"></td>
+                        <td><input name="type14SettleTotal" type="number" value="${Utils.format(settleBean.netIncreaseMonetaryFunds,'0')}" readonly required title="结算总额"></td>
+                        <td><input name="netIncreaseMonetaryFunds" type="number" required title="决算总额"></td>
+                    </tr>
+                    <tr>
+                        <td>合计</td>
+                        <td><input name="cashFluxBudgetTotal" type="number" value="${Utils.format(cashFlowBean.getCashFluxTotal(),'0')}" readonly required title="此列累计"></td>
+                        <td><input name="cashFluxSettleTotal" type="number" value="${Utils.format(settleBean.getCashFlowTotal(),'0')}" readonly required title="此列累计"></td>
+                        <td><input name="cashFluxFinalTotal" type="number" readonly required title="此列累计"></td>
+                    </tr>
+                    </tbody>
+                </table>
+            </div>
+            <!--验证表单元素(validate end-->
+        </div>
+    </div>
+
+    <!--选项卡(tabs)end-->
+    <div class="am-margin">
+        <button type="button" class="am-btn am-btn-warning am-btn-xs" onclick="javascript:history.go(-1);">返回上一级</button>
+        <button type="submit" class="am-btn am-btn-primary am-btn-xs" id="saveFinal">保存</button>
+        <button type="submit" class="am-btn am-btn-primary am-btn-xs" id="saveApprove">提交审核</button>
+    </div>
+</form>
+
+</div>
+</div>
+<script>
+    var base = "${base}";
+</script>
+<script src="${base}/assets/js/project_common.js"></script>
+    <script src="${base}/assets/js/project_final.js"></script>
+<script>
+    $(function () {
+        calculateFinal();
+            $("#saveFinal").click(function () {
+                $("#pmsForm").attr("action","${base}/project/final/save");
+                $("#pmsForm").submit();
+            });
+
+            $("#saveApprove").click(function () {
+                $("#pmsForm").attr("action",base+"/project/final/saveAndApprove");
+                $("#pmsForm").submit();
+            });
+        });
+
+</script>
+</@defaultLayout.layout>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/main/resources/templates/admin/project_final_edit.ftl b/src/main/resources/templates/admin/project_final_edit.ftl
index 4c397d5..796991a 100644
--- a/src/main/resources/templates/admin/project_final_edit.ftl
+++ b/src/main/resources/templates/admin/project_final_edit.ftl
@@ -50,7 +50,7 @@
                         <td>设备类</td>
                         <td><input name="incomeDeviceTaxExclude" type="number" value="${Utils.format(estimateBean.incomeDeviceTaxExclude,'0')}" required readonly title="设备类概算总额"></td>
                         <td><input name="incomeDeviceTaxExclude" type="number" value="${Utils.format(budgetBean.incomeDeviceTaxExclude,'0')}" required readonly title="设备类预算总额"></td>
-                        <td><input type="number" value="${Utils.format(settleBean.incomeDevice,'0')}" required readonly title="设备类结算总额"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.incomeDeviceTaxExclude,'0')}" required readonly title="设备类结算总额"></td>
                         <td><input name="incomeDeviceFinalTotal" type="number" value="${Utils.format(finalBean.incomeDeviceFinalTotal,'0')}" required title="设备类决算总额"></td>
                     </tr>
                     <tr>
@@ -58,7 +58,7 @@
                         <td>工程类</td>
                         <td><input name="incomeEngineerTaxExclude" type="number" value="${Utils.format(estimateBean.incomeEngineerTaxExclude,'0')}" required readonly title="工程类概算总额"></td>
                         <td><input name="incomeEngineerTaxExclude" type="number" value="${Utils.format(budgetBean.incomeEngineerTaxExclude,'0')}" required readonly title="工程类预算总额"></td>
-                        <td><input type="number" value="${Utils.format(settleBean.incomeEngineer,'0')}" required readonly title="工程类结算总额"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.incomeEngineerTaxExclude,'0')}" required readonly title="工程类结算总额"></td>
                         <td><input name="incomeEngineerFinalTotal" type="number" value="${Utils.format(finalBean.incomeEngineerFinalTotal,'0')}" required title="工程类决算总额"></td>
                     </tr>
                     <tr>
@@ -66,7 +66,7 @@
                         <td>服务类</td>
                         <td><input name="incomeServiceTaxExclude" type="number" value="${Utils.format(estimateBean.incomeServiceTaxExclude,'0')}" required readonly title="服务类概算总额"></td>
                         <td><input name="incomeServiceTaxExclude" type="number" value="${Utils.format(budgetBean.incomeServiceTaxExclude,'0')}" required readonly title="服务类预算总额"></td>
-                        <td><input type="number" value="${Utils.format(settleBean.incomeService,'0')}" required readonly title="服务类结算总额"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.incomeServiceTaxExclude,'0')}" required readonly title="服务类结算总额"></td>
                         <td><input name="incomeServiceFinalTotal" type="number" value="${Utils.format(finalBean.incomeServiceFinalTotal,'0')}" required title="服务类决算总额"></td>
                     </tr>
                     <tr>
@@ -74,8 +74,8 @@
                         <td></td>
                         <td><input name="estimateIncomeTotalTaxExclude" type="number" value="${Utils.format(estimateBean.getIncomeTotalTaxExclude(),'0')}" readonly required title="此列累计"></td>
                         <td><input name="budgetIncomeTotalTaxExclude" type="number"  value="${Utils.format(budgetBean.getIncomeTotalTaxExclude(),'0')}" readonly required title="此列累计"></td>
-                        <td><input type="number" value="${Utils.format(settleBean.incomeTotal,'0')}" readonly required title="此列累计"></td>
-                        <td><input name="incomeFinalTotal" type="number" readonly required title="此列累计"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.getIncomeTotalTaxExclude(),'0')}" readonly required title="此列累计"></td>
+                        <td><input name="incomeFinalTotal" type="number" value="${Utils.format(finalBean.getIncomeTotal(),'0')}" readonly required title="此列累计"></td>
                     </tr>
                     </tbody>
                 </table>
@@ -97,7 +97,7 @@
                         <td>设备</td>
                         <td><input name="costPurchaseDeviceTaxExclude" type="number" value="${Utils.format(estimateBean.costPurchaseDeviceTaxExclude,'0')}" readonly required title="购买设备概算总额"></td>
                         <td><input name="costPurchaseDeviceTaxExclude" type="number" value="${Utils.format(budgetBean.costPurchaseDeviceTaxExclude,'0')}" readonly required title="购买设备预算总额"></td>
-                        <td><input  type="number" value="${Utils.format(settleBean.costPurchaseDevice,'0')}" readonly required title="购买设备结算总额"></td>
+                        <td><input  type="number" value="${Utils.format(settleBean.costPurchaseDeviceTaxExclude,'0')}" readonly required title="购买设备结算总额"></td>
                         <td><input name="costPurchaseDeviceFinalTotal" type="number" value="${Utils.format(finalBean.costPurchaseDeviceFinalTotal,'0')}" required title="购买设备决算总额"></td>
                     </tr>
                     <tr>
@@ -106,7 +106,7 @@
                         <td>施工</td>
                         <td><input name="costPurchaseBuildTaxExclude" type="number" value="${Utils.format(estimateBean.costPurchaseBuildTaxExclude,'0')}" readonly required title="施工采购成本概算总额"></td>
                         <td><input name="costPurchaseBuildTaxExclude" type="number" value="${Utils.format(budgetBean.costPurchaseBuildTaxExclude,'0')}" readonly required title="施工采购成本预算总额"></td>
-                        <td><input type="number" value="${Utils.format(settleBean.costPurchaseBuild,'0')}" readonly required title="施工采购成本结算总额"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.costPurchaseBuildTaxExclude,'0')}" readonly required title="施工采购成本结算总额"></td>
                         <td><input name="costPurchaseBuildFinalTotal" type="number" value="${Utils.format(finalBean.costPurchaseBuildFinalTotal,'0')}" required title="施工采购成本决算总额"></td>
                     </tr>
                     <tr>
@@ -115,7 +115,7 @@
                         <td>服务</td>
                         <td><input name="costPurchaseServiceTaxExclude" type="number" value="${Utils.format(estimateBean.costPurchaseServiceTaxExclude,'0')}" readonly required title="服务采购成本概算总额"></td>
                         <td><input name="costPurchaseServiceTaxExclude" type="number" value="${Utils.format(budgetBean.costPurchaseServiceTaxExclude,'0')}" readonly required title="服务采购成本预算总额"></td>
-                        <td><input type="number" value="${Utils.format(settleBean.costPurchaseService,'0')}" readonly required title="服务采购成本结算总额"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.costPurchaseServiceTaxExclude,'0')}" readonly required title="服务采购成本结算总额"></td>
                         <td><input name="costPurchaseServiceFinalTotal" type="number" value="${Utils.format(finalBean.costPurchaseServiceFinalTotal,'0')}" required title="服务采购成本决算总额"></td>
                     </tr>
                     <tr>
@@ -124,7 +124,7 @@
                         <td>其他</td>
                         <td><input name="costPurchaseOtherTaxInclude" type="number" value="${Utils.format(estimateBean.costPurchaseOtherTaxInclude,'0')}" readonly required title="其他采购成本概算总额"></td>
                         <td><input name="costPurchaseOtherTaxInclude" type="number" value="${Utils.format(budgetBean.costPurchaseOtherTaxInclude,'0')}" readonly required title="其他采购成本预算总额"></td>
-                        <td><input name="costPurchaseOtherSettleTotal" value="${Utils.format(settleBean.costPurchaseOther,'0')}" type="number" readonly required title="其他采购成本结算总额"></td>
+                        <td><input name="costPurchaseOtherSettleTotal" value="${Utils.format(settleBean.costPurchaseOtherTaxExclude,'0')}" type="number" readonly required title="其他采购成本结算总额"></td>
                         <td><input name="costPurchaseOtherFinalTotal" type="number" value="${Utils.format(finalBean.costPurchaseOtherFinalTotal,'0')}" required title="其他采购成本决算总额"></td>
                     </tr>
                     <tr>
@@ -133,7 +133,7 @@
                         <td>项目管理成本</td>
                         <td><input name="costProjectManageTaxExclude" type="number" value="${Utils.format(estimateBean.costProjectManageTaxExclude,'0')}" readonly required title="项目管理成本概算总额"></td>
                         <td><input name="costProjectManageTaxExclude" type="number" value="${Utils.format(budgetBean.costProjectManageTaxExclude,'0')}" readonly required title="项目管理成本预算总额"></td>
-                        <td><input name="costProjectManageSettleTotal" value="${Utils.format(settleBean.costProjectManage,'0')}" type="number" readonly required title="项目管理成本结算总额"></td>
+                        <td><input name="costProjectManageSettleTotal" value="${Utils.format(settleBean.costProjectManageTaxExclude,'0')}" type="number" readonly required title="项目管理成本结算总额"></td>
                         <td><input name="costProjectManageFinalTotal" type="number" value="${Utils.format(finalBean.costProjectManageFinalTotal,'0')}" required title="项目管理成本决算总额"></td>
                     </tr>
                     <tr>
@@ -142,7 +142,7 @@
                         <td>其他</td>
                         <td><input name="costOtherOtherTaxExclude" type="number" value="${Utils.format(estimateBean.costOtherOtherTaxExclude,'0')}" readonly required title="其他成本概算总额"></td>
                         <td><input name="costOtherOtherTaxExclude" type="number" value="${Utils.format(budgetBean.costOtherOtherTaxExclude,'0')}" readonly required title="其他成本预算总额"></td>
-                        <td><input name="costOtherSettleTotal" value="${Utils.format(settleBean.costOther,'0')}" type="number" type="number"readonly required title="其他成本结算总额"></td>
+                        <td><input name="costOtherSettleTotal" value="${Utils.format(settleBean.costOtherOtherTaxExclude,'0')}" type="number" type="number"readonly required title="其他成本结算总额"></td>
                         <td><input name="costOtherFinalTotal" type="number" value="${Utils.format(finalBean.costOtherFinalTotal,'0')}" required title="其他成本决算总额"></td>
                     </tr>
                     <tr>
@@ -151,8 +151,8 @@
                         <td></td>
                         <td><input name="incomeTotalTaxExclude" value="${Utils.format(estimateBean.getIncomeTotalTaxExclude(),'0')}" type="number" readonly required title="此列累计"></td>
                         <td><input name="costTotalTaxExclude" value="${Utils.format(budgetBean.getCostTotalTaxExclude(),'0')}" type="number" readonly required title="此列累计"></td>
-                        <td><input name="costSettleTotal" value="${Utils.format(settleBean.costTotal,'0')}" type="number" readonly required title="此列累计"></td>
-                        <td><input name="costFinalTotal" type="number" readonly required title="此列累计"></td>
+                        <td><input name="costSettleTotal" value="${Utils.format(settleBean.getCostTotalTaxExclude(),'0')}" type="number" readonly required title="此列累计"></td>
+                        <td><input name="costFinalTotal" type="number" value="${Utils.format(finalBean.getCostTotal(),'0')}" readonly required title="此列累计"></td>
                     </tr>
                     </tbody>
                 </table>
@@ -172,7 +172,7 @@
                         <td>资金占用成本</td>
                         <td><input name="costExpropriationTaxExclude" type="number" value="${Utils.format(estimateBean.costExpropriationTaxExclude,'0')}" required readonly title="资金占用成本概算总额"></td>
                         <td><input name="costExpropriationTaxExclude" type="number" value="${Utils.format(budgetBean.costExpropriationTaxExclude,'0')}" required readonly title="资金占用成本预算总额"></td>
-                        <td><input type="number"  value="${Utils.format(settleBean.costExpropriation,'0')}" required readonly title="资金占用成本结算总额"></td>
+                        <td><input type="number"  value="${Utils.format(settleBean.costExpropriationTaxExclude,'0')}" required readonly title="资金占用成本结算总额"></td>
                         <td><input name="costExpropriationFinalTotal" type="number" value="${Utils.format(finalBean.costExpropriationFinalTotal,'0')}" required title="资金占用成本决算总额"></td>
                     </tr>
                     <tr>
@@ -180,7 +180,7 @@
                         <td></td>
                         <td><input name="costCompanyManageTaxExclude" type="number" value="${Utils.format(estimateBean.costCompanyManageTaxExclude,'0')}" required readonly title="公司管理费用概算总额"></td>
                         <td><input name="costCompanyManageTaxExclude" type="number" value="${Utils.format(budgetBean.costCompanyManageTaxExclude,'0')}" required readonly title="公司管理费用预算总额"></td>
-                        <td><input type="number" value="${Utils.format(settleBean.costCompanyManage,'0')}" required readonly title="公司管理费用结算总额"></td>
+                        <td><input type="number" value="${Utils.format(settleBean.costCompanyManageTaxExclude,'0')}" required readonly title="公司管理费用结算总额"></td>
                         <td><input name="costCompanyManageFinalTotal" type="number" value="${Utils.format(finalBean.costCompanyManageFinalTotal,'0')}" required title="公司管理费用决算总额"></td>
                     </tr>
                     <tr>
@@ -194,10 +194,10 @@
                     <tr>
                         <td>合计</td>
                         <td></td>
-                        <td><input name="manageEstimateTotal" type="number" readonly required title="此列累计"></td>
-                        <td><input name="manageBudgetTotal" type="number" readonly required title="此列累计"></td>
+                        <td><input name="manageEstimateTotal" value="${Utils.format(estimateBean.getCostManageExclude(),'0')}" type="number" readonly required title="此列累计"></td>
+                        <td><input name="manageBudgetTotal" value="${Utils.format(budgetBean.getCostManageExclude(),'0')}" type="number" readonly required title="此列累计"></td>
                         <td><input name="manageSettleTotal" value="${Utils.format(settleBean.getCostManageTotal(),'0')}" type="number" readonly required title="此列累计"></td>
-                        <td><input name="manageFinalTotal" type="number" readonly required title="此列累计"></td>
+                        <td><input name="manageFinalTotal" type="number" value="${Utils.format(finalBean.getCostManageTotal(),'0')}" readonly required title="此列累计"></td>
                     </tr>
                     </tbody>
                 </table>
@@ -225,7 +225,7 @@
                         <td>项目贡献利润</td>
                         <td><input name="projectContributionProfit" type="number" value="${Utils.format(estimateBean.getProjectContributionProfit(),'0')}" readonly required title="项目贡献利润概算总额"></td>
                         <td><input name="projectContributionProfit" type="number" value="${Utils.format(budgetBean.getProjectContributionProfit(),'0')}" readonly required title="项目贡献利润预算总额"></td>
-                        <td><input name="contributionMarginSettleTotal" type="number" value="${Utils.format(finalBean.contributionMarginSettleTotal,'0')}" readonly required title="项目贡献利润结算总额"></td>
+                        <td><input name="contributionMarginSettleTotal" type="number" value="${Utils.format(settleBean.contributionProfit,'0')}" readonly required title="项目贡献利润结算总额"></td>
                         <td><input name="contributionMarginFinalTotal" type="number" value="${Utils.format(finalBean.contributionMarginFinalTotal,'0')}" required title="项目贡献利润决算总额"></td>
                         <td><input name="contributionMarginProfitMargin" type="number" value="${Utils.format(finalBean.contributionMarginProfitMargin,'0')}" required readonly title="项目贡献利润利润率"></td>
                     </tr>
@@ -233,7 +233,7 @@
                         <td>项目净利润</td>
                         <td>/</td>
                         <td><input name="netMarginBudgetTotal" type="number" value="${Utils.format(finalBean.netMarginBudgetTotal,'0')}" readonly required title="项目净利润预算总额"></td>
-                        <td><input name="netMarginSettleTotal" type="number" value="${Utils.format(finalBean.netMarginSettleTotal,'0')}" readonly required title="项目净利润结算总额"></td>
+                        <td><input name="netMarginSettleTotal" type="number" value="${Utils.format(settleBean.netProfit,'0')}" readonly required title="项目净利润结算总额"></td>
                         <td><input name="netMarginFinalTotal" type="number" value="${Utils.format(finalBean.netMarginFinalTotal,'0')}" required title="项目净利润决算总额"></td>
                         <td><input name="netMarginProfitMargin" type="number" value="${Utils.format(finalBean.netMarginProfitMargin,'0')}" required readonly title="项目净利润利润率"></td>
                     </tr>
@@ -335,9 +335,9 @@
                     </tr>
                     <tr>
                         <td>合计</td>
-                        <td><input name="cashFluxBudgetTotal" type="number" readonly required title="此列累计"></td>
+                        <td><input name="cashFluxBudgetTotal" type="number" value="${Utils.format(cashFlowBean.getCashFluxTotal(),'0')}" readonly required title="此列累计"></td>
                         <td><input name="cashFluxSettleTotal" type="number" value="${Utils.format(settleBean.getCashFlowTotal(),'0')}" readonly required title="此列累计"></td>
-                        <td><input name="cashFluxFinalTotal" type="number" readonly required title="此列累计"></td>
+                        <td><input name="cashFluxFinalTotal" type="number" value="${Utils.format(finalBean.getCashFluxTotal(),'0')}" readonly required title="此列累计"></td>
                     </tr>
                     </tbody>
                 </table>
diff --git a/src/main/resources/templates/admin/project_list.ftl b/src/main/resources/templates/admin/project_list.ftl
index 4f63189..92c0ec2 100644
--- a/src/main/resources/templates/admin/project_list.ftl
+++ b/src/main/resources/templates/admin/project_list.ftl
@@ -243,11 +243,17 @@
                                             <#if (list.status== 10 && list.approveStatusSettle== 2) ||  (list.status== 15 && list.approveStatusFinal== 0) || (list.status== 15 && list.approveStatusFinal== 3)>
                                                 <button type="button"
                                                         class="am-btn am-btn-default am-btn-xs am-text-secondary"
-                                                        onclick="location.href='${base}/project/final/edit?id=${list.id}'"><span
+                                                        onclick="location.href='${base}/project/final/add?id=${list.id}'"><span
                                                             class="am-icon-pencil-square-o"></span>发起决算
                                                 </button>
                                             </#if>
 
+                                            <button type="button"
+                                                    class="am-btn am-btn-default am-btn-xs am-text-secondary"
+                                                    onclick="location.href='${base}/project/final/edit?id=${list.id}'"><span
+                                                        class="am-icon-pencil-square-o"></span>编辑决算
+                                            </button>
+
                                             <button type="button"
                                                     class="am-btn am-btn-default am-btn-xs am-text-secondary"
                                                     onclick="location.href='${base}/project/detail?id=${list.id}'"><span