From b16b717fe5758cbe8d444c90a0436b83f95a8626 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E2=80=98wangjiuyun?= <‘1595161655@qq.com>
Date: Fri, 25 Oct 2024 18:06:05 +0800
Subject: [PATCH] =?UTF-8?q?=E5=89=8D=E7=AB=AF=E9=83=A8=E5=88=86=E6=96=87?=
 =?UTF-8?q?=E6=9C=AC=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 build.gradle                                  |   2 +-
 gradle/wrapper/gradle-wrapper.properties      |   4 +-
 .../resources/application-local.properties    |   6 +-
 .../static/assets/js/project_budget.js        |   8 +-
 .../static/assets/js/project_budget_cost.js   |   2 +-
 .../static/assets/js/project_budget_income.js |  10 +-
 .../templates/admin/project_approve.ftl       | 100 ++++++------
 .../templates/admin/project_budget_edit.ftl   | 143 +++++++++---------
 .../templates/admin/project_estimate_add.ftl  |  36 ++---
 .../templates/admin/project_estimate_edit.ftl |  36 ++---
 10 files changed, 175 insertions(+), 172 deletions(-)

diff --git a/build.gradle b/build.gradle
index 945decc..c2060c1 100644
--- a/build.gradle
+++ b/build.gradle
@@ -50,7 +50,7 @@ dependencies {
 
     compile 'com.jfinal:jfinal:2.2'
     compile 'com.alibaba:druid:1.1.9'
-    compile 'mysql:mysql-connector-java:6.0.6'
+    compile 'mysql:mysql-connector-java:8.0.33'
     //compile group: 'org.apache.httpcomponents', name: 'httpclient', version: '4.5.3'
     //shiro
     compile group: 'org.apache.shiro', name: 'shiro-spring', version: '1.4.0'
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 95f84e8..cd0d3bf 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
-#Thu Oct 28 15:13:01 CST 2021
+#Fri Oct 25 15:43:46 CST 2024
 distributionBase=GRADLE_USER_HOME
 distributionPath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-4.5-bin.zip
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-3.5-rc-2-bin.zip
diff --git a/src/main/resources/application-local.properties b/src/main/resources/application-local.properties
index 7a5d2fb..90c2231 100644
--- a/src/main/resources/application-local.properties
+++ b/src/main/resources/application-local.properties
@@ -1,7 +1,7 @@
-spring.datasource.url=jdbc:mysql://127.0.0.1:3306/fourcal?\
+spring.datasource.url=jdbc:mysql://192.168.124.202:3306/fourcal?\
 characterEncoding=UTF8&zeroDateTimeBehavior=convertToNull&serverTimezone=GMT%2b8&rewriteBatchedStatements=true&useSSL=false
-spring.datasource.username=root
-spring.datasource.password=sagacity
+spring.datasource.username=fourcal
+spring.datasource.password=unissense@123
 
 spring.jpa.database-platform=org.hibernate.dialect.MySQLDialect
 #spring.jpa.properties.hibernate.hbm2ddl.auto=update
diff --git a/src/main/resources/static/assets/js/project_budget.js b/src/main/resources/static/assets/js/project_budget.js
index c1f0b4f..3b66599 100644
--- a/src/main/resources/static/assets/js/project_budget.js
+++ b/src/main/resources/static/assets/js/project_budget.js
@@ -134,12 +134,12 @@ $(function () {
 
         var dataManage = collectData("am-modal-prompt-input-cost-project-manage");
         if (dataManage.length <= 0) {
-            window.confirm('请填写项目管理成本表');
+            window.confirm('项目管理费用');
             $("#saveDraft").attr('disabled', false);
             return;
         }
 
-        var dataManageCheck = convertDetailVerifyCheck(dataManage, COST_PROJECT_MANAGE_DETAIL2, "项目管理成本表");
+        var dataManageCheck = convertDetailVerifyCheck(dataManage, COST_PROJECT_MANAGE_DETAIL2, "项目管理费用");
         if (dataManageCheck == null) {
             $("#saveDraft").attr('disabled', false);
             return;
@@ -252,12 +252,12 @@ $(function () {
         var dataManage = collectData("am-modal-prompt-input-cost-project-manage");
         console.log("dataManage: " + dataManage.length);
         if (dataManage.length <= 4) {
-            window.confirm('请填写项目管理成本表');
+            window.confirm('请填写项目管理费用');
             $("#saveApprove").attr('disabled', false);
             return;
         }
 
-        var dataManageCheck = convertDetailVerifyCheck(dataManage, COST_PROJECT_MANAGE_DETAIL, "项目管理成本表");
+        var dataManageCheck = convertDetailVerifyCheck(dataManage, COST_PROJECT_MANAGE_DETAIL, "项目管理费用");
         if (dataManageCheck == null) {
             $("#saveApprove").attr('disabled', false);
             return;
diff --git a/src/main/resources/static/assets/js/project_budget_cost.js b/src/main/resources/static/assets/js/project_budget_cost.js
index e9fc531..890fd82 100644
--- a/src/main/resources/static/assets/js/project_budget_cost.js
+++ b/src/main/resources/static/assets/js/project_budget_cost.js
@@ -199,7 +199,7 @@ function appendTrCost() {
         '<td width="70px"><select style="float: left;" class="am-modal-prompt-input am-modal-prompt-input-cost am-modal-prompt-input-cost-type">'+
         '<option value="xxxx" disabled selected>--请选择--</option>'+
         '<option value="1">设备</option>'+
-        '<option value="2">施工</option>'+
+        '<option value="2">工程</option>'+
         '<option value="3">服务</option>'+
         '<option value="4">其他</option>'+
         '</select>'+
diff --git a/src/main/resources/static/assets/js/project_budget_income.js b/src/main/resources/static/assets/js/project_budget_income.js
index 95ec060..6e5c54a 100644
--- a/src/main/resources/static/assets/js/project_budget_income.js
+++ b/src/main/resources/static/assets/js/project_budget_income.js
@@ -179,11 +179,11 @@ function appendTrIncome() {
         '                            </select>\n' +
         '                        </td>\n' +
         '                        <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income"></td>\n' +
-        '                        <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income"></td>\n' +
-        '                        <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income"></td>\n' +
-        '                        <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income"></td>\n' +
-        '                        <td><input type="text" maxlength="8" class="number am-modal-prompt-input am-modal-prompt-input-income input-changeable-amount input-changeable-amount-income"></td>\n' +
-        '                        <td><input type="text" min="0.00" max="9999999999.99" step="0.01" maxlength="19" class="price am-modal-prompt-input am-modal-prompt-input-income input-changeable-price input-changeable-price-income"></td>\n' +
+        // '                        <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income"></td>\n' +
+        // '                        <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income"></td>\n' +
+        // '                        <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income"></td>\n' +
+        // '                        <td><input type="text" maxlength="8" class="number am-modal-prompt-input am-modal-prompt-input-income input-changeable-amount input-changeable-amount-income"></td>\n' +
+        // '                        <td><input type="text" min="0.00" max="9999999999.99" step="0.01" maxlength="19" class="price am-modal-prompt-input am-modal-prompt-input-income input-changeable-price input-changeable-price-income"></td>\n' +
         '                        <td><input type="text" min="0.00" max="99.99" step="0.01" maxlength="5" class="number am-modal-prompt-input am-modal-prompt-input-income input-changeable-tax-rate input-changeable-tax-rate-income"></td>\n' +
         '                        <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income input-changeable-total-tax-include input-changeable-total-tax-include-income" readonly></td>\n' +
         '                        <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income input-changeable-total-tax-exclude input-changeable-total-tax-exclude-income" readonly></td>\n' +
diff --git a/src/main/resources/templates/admin/project_approve.ftl b/src/main/resources/templates/admin/project_approve.ftl
index 246105d..99e2c48 100644
--- a/src/main/resources/templates/admin/project_approve.ftl
+++ b/src/main/resources/templates/admin/project_approve.ftl
@@ -387,19 +387,19 @@
                                     </#if>
                                 </td>
                             </tr>
-                            <tr class="am-text-nowrap">
-                                <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同收款条款:</span></th>
-                                <td class="table-title" colspan="5" >
-                                    <textarea rows="3" cols="20" style="border-style:none;background-color: white;" disabled="disabled"
-                                    >${project.mainContractCollectionTerms!}</textarea>
-                                </td>
-                            </tr>
-                            <tr class="am-text-nowrap">
-                                <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同具体解决方案:</span></th>
-                                <td class="table-title" colspan="5" >
-                                    <textarea rows="3" cols="20" style="border-style:none;background-color: white;" disabled="disabled"
-                                    >${project.mainContractResolvePlan!}</textarea>
-                                </td>                                </tr>
+<#--                            <tr class="am-text-nowrap">-->
+<#--                                <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同收款条款:</span></th>-->
+<#--                                <td class="table-title" colspan="5" >-->
+<#--                                    <textarea rows="3" cols="20" style="border-style:none;background-color: white;" disabled="disabled"-->
+<#--                                    >${project.mainContractCollectionTerms!}</textarea>-->
+<#--                                </td>-->
+<#--                            </tr>-->
+<#--                            <tr class="am-text-nowrap">-->
+<#--                                <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同具体解决方案:</span></th>-->
+<#--                                <td class="table-title" colspan="5" >-->
+<#--                                    <textarea rows="3" cols="20" style="border-style:none;background-color: white;" disabled="disabled"-->
+<#--                                    >${project.mainContractResolvePlan!}</textarea>-->
+<#--                                </td>                                </tr>-->
                             <tr class="am-text-nowrap">
                                 <th class="table-title" colspan="1" ><span style="font-size: 15px">计收计划:</span></th>
                                 <td class="table-title" colspan="5" >
@@ -491,7 +491,7 @@
                                 <li><a href="#tab31">收入明细表</a></li>
                                 <li><a href="#tab36">收款计划表</a></li>
                                 <li><a href="#tab32">采购成本明细表</a></li>
-                                <li><a href="#tab33">项目管理成本表</a></li>
+                                <li><a href="#tab33">项目管理费用</a></li>
                                 <li><a href="#tab34">资金计划表</a></li>
                             </ul>
                         </div>
@@ -754,20 +754,20 @@
                                             </#if>
                                         </td>
                                     </tr>
-                                    <tr class="am-text-nowrap">
-                                        <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同收款条款:</span></th>
-                                        <td class="table-title" colspan="5" >
-                                            <textarea rows="3" cols="20" style="border-style:none;background-color: white;" disabled="disabled"
-                                            >${projectBudget.mainContractCollectionTermsBudget!}</textarea>
-                                        </td>
-                                    </tr>
-                                    <tr class="am-text-nowrap">
-                                        <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同具体解决方案:</span></th>
-                                        <td class="table-title" colspan="5" >
-                                            <textarea rows="3" cols="20" style="border-style:none;background-color: white;" disabled="disabled"
-                                            >${projectBudget.mainContractResolvePlanBudget!}</textarea>
-                                        </td>
-                                    </tr>
+<#--                                    <tr class="am-text-nowrap">-->
+<#--                                        <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同收款条款:</span></th>-->
+<#--                                        <td class="table-title" colspan="5" >-->
+<#--                                            <textarea rows="3" cols="20" style="border-style:none;background-color: white;" disabled="disabled"-->
+<#--                                            >${projectBudget.mainContractCollectionTermsBudget!}</textarea>-->
+<#--                                        </td>-->
+<#--                                    </tr>-->
+<#--                                    <tr class="am-text-nowrap">-->
+<#--                                        <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同具体解决方案:</span></th>-->
+<#--                                        <td class="table-title" colspan="5" >-->
+<#--                                            <textarea rows="3" cols="20" style="border-style:none;background-color: white;" disabled="disabled"-->
+<#--                                            >${projectBudget.mainContractResolvePlanBudget!}</textarea>-->
+<#--                                        </td>-->
+<#--                                    </tr>-->
                                     <tr class="am-text-nowrap">
                                         <th class="table-title" colspan="1" ><span style="font-size: 15px">计收计划:</span></th>
                                         <td class="table-title" colspan="5" >
@@ -798,13 +798,13 @@
                                                 <thead>
                                                 <tr>
                                                     <th>序号</th>
-                                                    <th>类别</th>
+                                                    <th>产品大类</th>
                                                     <th>名称</th>
-                                                    <th>规格类型</th>
-                                                    <th>参数</th>
-                                                    <th>单位</th>
-                                                    <th>数量</th>
-                                                    <th>单价</th>
+<#--                                                    <th>规格类型</th>-->
+<#--                                                    <th>参数</th>-->
+<#--                                                    <th>单位</th>-->
+<#--                                                    <th>数量</th>-->
+<#--                                                    <th>单价</th>-->
                                                     <th>税率(%)</th>
                                                     <th>含税总金额(元)</th>
                                                     <th>不含税金额(元)</th>
@@ -838,22 +838,22 @@
                                                             <td><input type="text" readonly
                                                                        class="am-modal-prompt-input am-modal-prompt-input-income"
                                                                        value="${incomeDetail.name!}"></td>
-                                                            <td><input type="text" readonly
-                                                                       class="am-modal-prompt-input am-modal-prompt-input-income"
-                                                                       value="${incomeDetail.spec!}"></td>
-                                                            <td><input type="text" readonly
-                                                                       class="am-modal-prompt-input am-modal-prompt-input-income"
-                                                                       value="${incomeDetail.param!}"></td>
-                                                            <td><input type="text" readonly
-                                                                       class="am-modal-prompt-input am-modal-prompt-input-income"
-                                                                       value="${incomeDetail.unit!}"></td>
-                                                            <td><input type="text" readonly
-                                                                       class="am-modal-prompt-input am-modal-prompt-input-income input-changeable-amount"
-                                                                       value="${Utils.format(incomeDetail.amount,'0.00')}"></td>
-                                                            <td><input type="text" readonly
-                                                                       class="am-modal-prompt-input am-modal-prompt-input-income input-changeable-price"
-                                                                       value="${Utils.format2(incomeDetail.price,'0.00')}"></td>
-                                                            <td> <input type="text" readonly
+<#--                                                            <td><input type="text" readonly-->
+<#--                                                                       class="am-modal-prompt-input am-modal-prompt-input-income"-->
+<#--                                                                       value="${incomeDetail.spec!}"></td>-->
+<#--                                                            <td><input type="text" readonly-->
+<#--                                                                       class="am-modal-prompt-input am-modal-prompt-input-income"-->
+<#--                                                                       value="${incomeDetail.param!}"></td>-->
+<#--                                                            <td><input type="text" readonly-->
+<#--                                                                       class="am-modal-prompt-input am-modal-prompt-input-income"-->
+<#--                                                                       value="${incomeDetail.unit!}"></td>-->
+<#--                                                            <td><input type="text" readonly-->
+<#--                                                                       class="am-modal-prompt-input am-modal-prompt-input-income input-changeable-amount"-->
+<#--                                                                       value="${Utils.format(incomeDetail.amount,'0.00')}"></td>-->
+<#--                                                            <td><input type="text" readonly-->
+<#--                                                                       class="am-modal-prompt-input am-modal-prompt-input-income input-changeable-price"-->
+<#--                                                                       value="${Utils.format2(incomeDetail.price,'0.00')}"></td>-->
+<#--                                                            <td> <input type="text" readonly-->
                                                                         class="am-modal-prompt-input am-modal-prompt-input-income input-changeable-tax-rate"
                                                                         value="${Utils.format(incomeDetail.taxRate,'0.00')}"></td>
                                                             <td><input type="text"
diff --git a/src/main/resources/templates/admin/project_budget_edit.ftl b/src/main/resources/templates/admin/project_budget_edit.ftl
index d8405cf..e95471f 100644
--- a/src/main/resources/templates/admin/project_budget_edit.ftl
+++ b/src/main/resources/templates/admin/project_budget_edit.ftl
@@ -108,7 +108,7 @@
                 <li><a href="#tab3">收入明细表</a></li>
                 <li><a href="#tab8">收款计划表</a></li>
                 <li><a href="#tab4">采购成本明细表</a></li>
-                <li><a href="#tab5">项目管理成本表</a></li>
+                <li><a href="#tab5">项目管理费用</a></li>
                 <li><a href="#tab6">资金计划表</a></li>
                 <li><a href="#tab7">项目预算信息</a></li>
             </ul>
@@ -304,19 +304,19 @@
                                 </#if>
                             </td>
                         </tr>
-                        <tr class="am-text-nowrap">
-                            <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同收款条款:</span></th>
-                            <td class="table-title" colspan="5" >
-                                    <textarea rows="3" cols="20" style="border-style:none;background-color: white;" disabled="disabled"
-                                    >${project.mainContractCollectionTerms!}</textarea>
-                            </td>
-                        </tr>
-                        <tr class="am-text-nowrap">
-                            <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同具体解决方案:</span></th>
-                            <td class="table-title" colspan="5" >
-                                    <textarea rows="3" cols="20" style="border-style:none;background-color: white;" disabled="disabled"
-                                    >${project.mainContractResolvePlan!}</textarea>
-                            </td>                                </tr>
+<#--                        <tr class="am-text-nowrap">-->
+<#--                            <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同收款条款:</span></th>-->
+<#--                            <td class="table-title" colspan="5" >-->
+<#--                                    <textarea rows="3" cols="20" style="border-style:none;background-color: white;" disabled="disabled"-->
+<#--                                    >${project.mainContractCollectionTerms!}</textarea>-->
+<#--                            </td>-->
+<#--                        </tr>-->
+<#--                        <tr class="am-text-nowrap">-->
+<#--                            <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同具体解决方案:</span></th>-->
+<#--                            <td class="table-title" colspan="5" >-->
+<#--                                    <textarea rows="3" cols="20" style="border-style:none;background-color: white;" disabled="disabled"-->
+<#--                                    >${project.mainContractResolvePlan!}</textarea>-->
+<#--                            </td>                                </tr>-->
                         <tr class="am-text-nowrap">
                             <th class="table-title" colspan="1" ><span style="font-size: 15px">计收计划:</span></th>
                             <td class="table-title" colspan="5" >
@@ -707,24 +707,24 @@
                                 </select>
                             </td>
                         </tr>
-                        <tr class="am-text-nowrap">
-                            <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同收款条款:</span></th>
-                            <td class="table-title" colspan="5" >
-                                    <textarea rows="3" cols="20" id="mainContractCollectionTermsBudget" name="mainContractCollectionTermsBudget" maxlength="1000"
-                                              class="am-input" style="border-style:none;" data-validate-async data-validation-message="请输入收款条款"
-                                              placeholder="请输入收款条款"
-                                    >${projectBudget.mainContractCollectionTermsBudget!}</textarea>
-                            </td>
-                        </tr>
-                        <tr class="am-text-nowrap">
-                            <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同具体解决方案:</span></th>
-                            <td class="table-title" colspan="5" >
-                                    <textarea rows="3" cols="20" id="mainContractResolvePlanBudget" name="mainContractResolvePlanBudget" maxlength="1000"
-                                              class="am-input" style="border-style:none;" data-validate-async data-validation-message="请输入具体解决方案"
-                                              placeholder="请输入具体解决方案"
-                                    >${projectBudget.mainContractResolvePlanBudget!}</textarea>
-                            </td>
-                        </tr>
+<#--                        <tr class="am-text-nowrap">-->
+<#--                            <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同收款条款:</span></th>-->
+<#--                            <td class="table-title" colspan="5" >-->
+<#--                                    <textarea rows="3" cols="20" id="mainContractCollectionTermsBudget" name="mainContractCollectionTermsBudget" maxlength="1000"-->
+<#--                                              class="am-input" style="border-style:none;" data-validate-async data-validation-message="请输入收款条款"-->
+<#--                                              placeholder="请输入收款条款"-->
+<#--                                    >${projectBudget.mainContractCollectionTermsBudget!}</textarea>-->
+<#--                            </td>-->
+<#--                        </tr>-->
+<#--                        <tr class="am-text-nowrap">-->
+<#--                            <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同具体解决方案:</span></th>-->
+<#--                            <td class="table-title" colspan="5" >-->
+<#--                                    <textarea rows="3" cols="20" id="mainContractResolvePlanBudget" name="mainContractResolvePlanBudget" maxlength="1000"-->
+<#--                                              class="am-input" style="border-style:none;" data-validate-async data-validation-message="请输入具体解决方案"-->
+<#--                                              placeholder="请输入具体解决方案"-->
+<#--                                    >${projectBudget.mainContractResolvePlanBudget!}</textarea>-->
+<#--                            </td>-->
+<#--                        </tr>-->
                         <tr class="am-text-nowrap">
                             <th class="table-title" colspan="1" ><span style="font-size: 15px">计收计划:</span></th>
                             <td class="table-title" colspan="5" >
@@ -761,13 +761,13 @@
                                     <thead>
                                     <tr>
                                         <th>序号</th>
-                                        <th width="100px">类别</th>
+                                        <th width="100px">产品大类</th>
                                         <th>名称</th>
-                                        <th>规格类型</th>
-                                        <th>参数</th>
-                                        <th>单位</th>
-                                        <th>数量</th>
-                                        <th>单价</th>
+<#--                                        <th>规格类型</th>-->
+<#--                                        <th>参数</th>-->
+<#--                                        <th>单位</th>-->
+<#--                                        <th>数量</th>-->
+<#--                                        <th>单价</th>-->
                                         <th>税率(%)</th>
                                         <th>含税总金额(元)</th>
                                         <th>不含税金额(元)</th>
@@ -788,11 +788,11 @@
                                                     </select>
                                                 </td>
                                                 <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income" value="${incomeDetail.name!}"></td>
-                                                <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income" value="${incomeDetail.spec!}"></td>
-                                                <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income" value="${incomeDetail.param!}"></td>
-                                                <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income" value="${incomeDetail.unit!}"></td>
-                                                <td><input type="text" maxlength="14" class="number am-modal-prompt-input am-modal-prompt-input-income input-changeable-amount input-changeable-amount-income" value="${Utils.format(incomeDetail.amount,'0')}" oninput="if(value.length>8)value=value.slice(0,8)" <#--onkeyup="integerNumber(this)"-->></td>
-                                                <td><input type="text" maxlength="19" class="price am-modal-prompt-input am-modal-prompt-input-income input-changeable-price input-changeable-price-income" value="${Utils.format2(incomeDetail.price,'0')}" oninput="if(value.length>19)value=value.slice(0,19)"></td>
+<#--                                                <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income" value="${incomeDetail.spec!}"></td>-->
+<#--                                                <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income" value="${incomeDetail.param!}"></td>-->
+<#--                                                <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income" value="${incomeDetail.unit!}"></td>-->
+<#--                                                <td><input type="text" maxlength="14" class="number am-modal-prompt-input am-modal-prompt-input-income input-changeable-amount input-changeable-amount-income" value="${Utils.format(incomeDetail.amount,'0')}" oninput="if(value.length>8)value=value.slice(0,8)" &lt;#&ndash;onkeyup="integerNumber(this)"&ndash;&gt;></td>-->
+<#--                                                <td><input type="text" maxlength="19" class="price am-modal-prompt-input am-modal-prompt-input-income input-changeable-price input-changeable-price-income" value="${Utils.format2(incomeDetail.price,'0')}" oninput="if(value.length>19)value=value.slice(0,19)"></td>-->
                                                 <td><input type="text" maxlength="5" class="number am-modal-prompt-input am-modal-prompt-input-income input-changeable-tax-rate input-changeable-tax-rate-income" value="${Utils.format(incomeDetail.taxRate,'0')}" oninput="if(value.length>5)value=value.slice(0,5)"></td>
                                                 <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income input-changeable-total-tax-include input-changeable-total-tax-include-income" value="${Utils.format(incomeDetail.totalTaxInclude,'0')}" readonly></td>
                                                 <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income input-changeable-total-tax-exclude input-changeable-total-tax-exclude-income" value="${Utils.format(incomeDetail.totalTaxExclude,'0')}" readonly></td>
@@ -805,11 +805,11 @@
                                         <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income" value="总计" readonly></td>
                                         <td width="100px"></td>
                                         <td></td>
-                                        <td></td>
-                                        <td></td>
-                                        <td></td>
-                                        <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income input-changeable-total-amount-income" value="${Utils.format(incomeTotalAmount,'0')}" readonly <#--onkeyup="integerNumber(this)"-->></td>
-                                        <td></td>
+<#--                                        <td></td>-->
+<#--                                        <td></td>-->
+<#--                                        <td></td>-->
+<#--                                        <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income input-changeable-total-amount-income" value="${Utils.format(incomeTotalAmount,'0')}" readonly &lt;#&ndash;onkeyup="integerNumber(this)"&ndash;&gt;></td>-->
+<#--                                        <td></td>-->
                                         <td></td>
                                         <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income input-changeable-total-total-tax-include-income" value="${Utils.format(budgetBean.incomeTotalTaxInclude,'0')}" readonly></td>
                                         <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income input-changeable-total-total-tax-exclude-income" value="${Utils.format(budgetBean.incomeTotalTaxExclude,'0')}" readonly></td>
@@ -927,7 +927,7 @@
                                                     <td width="70px">
                                                         <select style="float: left;" class="am-modal-prompt-input am-modal-prompt-input-cost am-modal-prompt-input-cost-type">
                                                             <option value="1" <#if costDetail.type == 1>selected</#if>>设备</option>
-                                                            <option value="2" <#if costDetail.type == 2>selected</#if>>施工</option>
+                                                            <option value="2" <#if costDetail.type == 2>selected</#if>>工程</option>
                                                             <option value="3" <#if costDetail.type == 3>selected</#if>>服务</option>
                                                             <option value="4" <#if costDetail.type == 4>selected</#if>>其他</option>
                                                         </select>
@@ -1273,7 +1273,7 @@
                         </tbody>
                         (备注:本表所用税率为:<span class="incomeTaxRates">${incomeTaxRates!}</span>)
                     </table>
-                    <span>成本</span>
+                    <span>采购成本</span>
                     <#-- <span class="am-text-primary"><a style="cursor: pointer"  id="cost-detail">采购成本明细表</a></span>
                      <span class="am-text-primary"><a style="cursor: pointer"  id="cost-project-manage-detail">项目管理成本表</a></span>-->
                     <table class="am-table am-table-bordered am-table-radius table-main" style="padding:0;">
@@ -1297,7 +1297,7 @@
                         <tr>
                             <td>成本</td>
                             <td>采购成本</td>
-                            <td>施工</td>
+                            <td>工程</td>
                             <td><input type="text" class="number" name="costPurchaseBuildTaxInclude" value="${Utils.format(budgetBean.costPurchaseBuildTaxInclude,'0')}" readonly  title="购买施工含税总额"></td>
                             <td><input type="text" class="number" name="costPurchaseBuildTaxExclude" value="${Utils.format(budgetBean.costPurchaseBuildTaxExclude,'0')}" readonly  title="购买施工不含税总额"></td>
                             <td><input type="text" class="number" name="costPurchaseBuildTax" value="${Utils.format(budgetBean.costPurchaseBuildTax,'0')}" readonly  title="购买施工税金"></td>
@@ -1318,14 +1318,7 @@
                             <td><input type="text" class="number" name="costPurchaseOtherTaxExclude" value="${Utils.format(budgetBean.costPurchaseOtherTaxExclude,'0')}" readonly  title="购买其他不含税总额"></td>
                             <td><input type="text" class="number" name="costPurchaseOtherTax" value="${Utils.format(budgetBean.costPurchaseOtherTax,'0')}" readonly  title="购买其他税金"></td>
                         </tr>
-                        <tr>
-                            <td>成本</td>
-                            <td>项目管理成本</td>
-                            <td>项目管理成本</td>
-                            <td><input type="text" class="number" name="costProjectManageTaxInclude" value="${Utils.format(budgetBean.costProjectManageTaxInclude,'0')}" readonly  title="项目管理成本总额含税"></td>
-                            <td><input type="text" class="number" name="costProjectManageTaxExclude" value="${Utils.format(budgetBean.costProjectManageTaxExclude,'0')}" readonly  title="项目管理成本总额不含税"></td>
-                            <td><input type="text" class="number" name="costProjectManageTax" value="财务计取以不含税方式核算" readonly  title="项目管理成本税金"></td>
-                        </tr>
+
                         <tr>
                             <td>成本</td>
                             <td>其他</td>
@@ -1355,15 +1348,25 @@
                             <td>费用项目</td>
                             <td>不含税金额(元)</td>
                         </tr>
+                        <tr>
+                            <td>成本</td>
+                            <td>项目管理成本</td>
+                         <td><input type="text" class="number" name="costProjectManageTaxExclude" value="${Utils.format(budgetBean.costProjectManageTaxExclude,'0')}" readonly  title="项目管理成本总额不含税"></td>
+                     </tr>
                         <tr>
                             <td>财务费用</td>
                             <td>资金占用成本</td>
                             <td><input type="text" class="number" name="costExpropriationTaxExclude" value="${Utils.format(budgetBean.costExpropriationTaxExclude,'0')}"  readonly title="资金占用成本不含税总额"></td>
                         </tr>
+<#--                        <tr>-->
+<#--                            <td>公司管理费用</td>-->
+<#--                            <td></td>-->
+<#--                            <td><input type="text" class="number" maxlength="16" name="costCompanyManageTaxExclude" value="${Utils.format(budgetBean.costCompanyManageTaxExclude,'0')}" readonly  title="公司管理费用不含税总额"></td>-->
+<#--                        </tr>-->
                         <tr>
-                            <td>公司管理费用</td>
+                            <td>合计</td>
                             <td></td>
-                            <td><input type="text" class="number" maxlength="16" name="costCompanyManageTaxExclude" value="${Utils.format(budgetBean.costCompanyManageTaxExclude,'0')}" readonly  title="公司管理费用不含税总额"></td>
+                     <td><input type="text" class="number" name="incomeTotalTax" value="${(Utils.format(budgetBean.costExpropriationTaxExclude,'0')+(Utils.format(budgetBean.costProjectManageTaxExclude,'0')))}"  readonly title="此列累计"></td>
                         </tr>
                         </tbody>
                         (备注:财务计取以不含税方式核算)
@@ -1382,20 +1385,20 @@
                             <td>项目毛利A(元)</td>
                             <td><input type="text" class="number" name="projectGrossProfitARate" value="${Utils.format(budgetBean.projectGrossProfitARate,'0')}" readonly  title="毛利A(不含税)/收入总计(不含税)"></td>
                             <td><input type="text" class="number" name="projectGrossProfitA" value="${Utils.format(budgetBean.projectGrossProfitA,'0')}" readonly  title="收入总计(不含税)-成本总计(不含税)"></td>
-                            <td>毛利A=收入明细表金额总计(不含税)-采购成本明细表金额总计(不含税)</td>
+                            <td>项目毛利A=收入合计(不含税)-采购成本合计(不含税)</td>
                         </tr>
                         <tr>
-                            <td>项目毛利(元)</td>
+                            <td>项目毛利B(元)</td>
                             <td><input type="text" class="number" name="projectGrossProfitRate" value="${Utils.format(budgetBean.projectGrossProfitRate,'0')}" readonly  title="毛利(不含税)/收入总计(不含税)"></td>
                             <td><input type="text" class="number" name="projectGrossProfit" value="${Utils.format(budgetBean.projectGrossProfit,'0')}" readonly  title="收入总计(不含税)-成本总计(不含税)-财务费用总计(不含税)"></td>
-                            <td>毛利=收入总计(不含税)-成本总计(不含税)-财务费用总计(不含税)</td>
-                        </tr>
-                        <tr>
-                            <td>项目贡献利润(元)</td>
-                            <td><input type="text" class="number" name="projectContributionProfitRate" value="${Utils.format(budgetBean.projectContributionProfitRate,'0')}" readonly  title="贡献利润(不含税)/收入总计(不含税)"></td>
-                            <td><input type="text" class="number" name="projectContributionProfit" value="${Utils.format(budgetBean.projectContributionProfit,'0')}" readonly  title="项目毛利(不含税)-公司管理费用总计(不含税)"></td>
-                            <td>贡献利润=项目毛利(不含税)-公司管理费用总计(不含税)</td>
+                            <td>项目毛利B=项目毛利A-财务费用-项目管理费用</td>
                         </tr>
+<#--                        <tr>-->
+<#--                            <td>项目贡献利润(元)</td>-->
+<#--                            <td><input type="text" class="number" name="projectContributionProfitRate" value="${Utils.format(budgetBean.projectContributionProfitRate,'0')}" readonly  title="贡献利润(不含税)/收入总计(不含税)"></td>-->
+<#--                            <td><input type="text" class="number" name="projectContributionProfit" value="${Utils.format(budgetBean.projectContributionProfit,'0')}" readonly  title="项目毛利(不含税)-公司管理费用总计(不含税)"></td>-->
+<#--                            <td>贡献利润=项目毛利(不含税)-公司管理费用总计(不含税)</td>-->
+<#--                        </tr>-->
                         </tbody>
                     </table>
 
diff --git a/src/main/resources/templates/admin/project_estimate_add.ftl b/src/main/resources/templates/admin/project_estimate_add.ftl
index 32a7145..ac00262 100644
--- a/src/main/resources/templates/admin/project_estimate_add.ftl
+++ b/src/main/resources/templates/admin/project_estimate_add.ftl
@@ -300,24 +300,24 @@
                                     </select>
                                 </td>
                             </tr>
-                            <tr class="am-text-nowrap">
-                                <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同收款条款:</span></th>
-                                <td class="table-title" colspan="5" >
-                                    <textarea rows="3" cols="20" id="mainContractCollectionTerms" name="mainContractCollectionTerms" maxlength="1000"
-                                          class="am-input" style="border-style:none;" data-validate-async data-validation-message="请输入收款条款"
-                                          placeholder="请输入收款条款"
-                                    ></textarea>
-                                </td>
-                            </tr>
-                            <tr class="am-text-nowrap">
-                                <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同具体解决方案:</span></th>
-                                <td class="table-title" colspan="5" >
-                                    <textarea rows="3" cols="20" id="mainContractResolvePlan" name="mainContractResolvePlan" maxlength="1000"
-                                           class="am-input" style="border-style:none;" data-validate-async data-validation-message="请输入具体解决方案"
-                                           placeholder="请输入具体解决方案"
-                                    ></textarea>
-                                </td>
-                            </tr>
+<#--                            <tr class="am-text-nowrap">-->
+<#--                                <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同收款条款:</span></th>-->
+<#--                                <td class="table-title" colspan="5" >-->
+<#--                                    <textarea rows="3" cols="20" id="mainContractCollectionTerms" name="mainContractCollectionTerms" maxlength="1000"-->
+<#--                                          class="am-input" style="border-style:none;" data-validate-async data-validation-message="请输入收款条款"-->
+<#--                                          placeholder="请输入收款条款"-->
+<#--                                    ></textarea>-->
+<#--                                </td>-->
+<#--                            </tr>-->
+<#--                            <tr class="am-text-nowrap">-->
+<#--                                <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同具体解决方案:</span></th>-->
+<#--                                <td class="table-title" colspan="5" >-->
+<#--                                    <textarea rows="3" cols="20" id="mainContractResolvePlan" name="mainContractResolvePlan" maxlength="1000"-->
+<#--                                           class="am-input" style="border-style:none;" data-validate-async data-validation-message="请输入具体解决方案"-->
+<#--                                           placeholder="请输入具体解决方案"-->
+<#--                                    ></textarea>-->
+<#--                                </td>-->
+<#--                            </tr>-->
                             <tr class="am-text-nowrap">
                                 <th class="table-title" colspan="1" ><span style="font-size: 15px">计收计划:</span></th>
                                 <td class="table-title" colspan="5" >
diff --git a/src/main/resources/templates/admin/project_estimate_edit.ftl b/src/main/resources/templates/admin/project_estimate_edit.ftl
index 6efafbb..2d1b7ea 100644
--- a/src/main/resources/templates/admin/project_estimate_edit.ftl
+++ b/src/main/resources/templates/admin/project_estimate_edit.ftl
@@ -347,24 +347,24 @@
                             </select>
                         </td>
                     </tr>
-                    <tr class="am-text-nowrap">
-                        <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同收款条款:</span></th>
-                        <td class="table-title" colspan="5" >
-                                    <textarea rows="3" cols="20" id="mainContractCollectionTerms" name="mainContractCollectionTerms" maxlength="1000"
-                                              class="am-input" style="border-style:none;" data-validate-async data-validation-message="请输入收款条款"
-                                              placeholder="请输入收款条款"
-                                    >${project.mainContractCollectionTerms!}</textarea>
-                        </td>
-                    </tr>
-                    <tr class="am-text-nowrap">
-                        <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同具体解决方案:</span></th>
-                        <td class="table-title" colspan="5" >
-                                    <textarea rows="3" cols="20" id="mainContractResolvePlan" name="mainContractResolvePlan" maxlength="1000"
-                                              class="am-input" style="border-style:none;" data-validate-async data-validation-message="请输入具体解决方案"
-                                              placeholder="请输入具体解决方案"
-                                    >${project.mainContractResolvePlan!}</textarea>
-                        </td>
-                    </tr>
+<#--                    <tr class="am-text-nowrap">-->
+<#--                        <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同收款条款:</span></th>-->
+<#--                        <td class="table-title" colspan="5" >-->
+<#--                                    <textarea rows="3" cols="20" id="mainContractCollectionTerms" name="mainContractCollectionTerms" maxlength="1000"-->
+<#--                                              class="am-input" style="border-style:none;" data-validate-async data-validation-message="请输入收款条款"-->
+<#--                                              placeholder="请输入收款条款"-->
+<#--                                    >${project.mainContractCollectionTerms!}</textarea>-->
+<#--                        </td>-->
+<#--                    </tr>-->
+<#--                    <tr class="am-text-nowrap">-->
+<#--                        <th class="table-title" colspan="1" ><span style="font-size: 15px">主合同具体解决方案:</span></th>-->
+<#--                        <td class="table-title" colspan="5" >-->
+<#--                                    <textarea rows="3" cols="20" id="mainContractResolvePlan" name="mainContractResolvePlan" maxlength="1000"-->
+<#--                                              class="am-input" style="border-style:none;" data-validate-async data-validation-message="请输入具体解决方案"-->
+<#--                                              placeholder="请输入具体解决方案"-->
+<#--                                    >${project.mainContractResolvePlan!}</textarea>-->
+<#--                        </td>-->
+<#--                    </tr>-->
                     <tr class="am-text-nowrap">
                         <th class="table-title" colspan="1" ><span style="font-size: 15px">计收计划:</span></th>
                         <td class="table-title" colspan="5" >