From 1a6e4564c2594186e28ec87137e090bae41d1d7b Mon Sep 17 00:00:00 2001
From: lshwy817 <lshwy817@163.com>
Date: Wed, 9 Nov 2022 19:14:10 +0800
Subject: [PATCH 1/9] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=8F=90=E4=BA=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 WebSite/src/api/first.js                      |  3 +++
 .../department/components/List.vue            | 10 +++++++---
 .../FindPuplicFundApply/components/List.vue   | 20 ++++++++++++++-----
 3 files changed, 25 insertions(+), 8 deletions(-)

diff --git a/WebSite/src/api/first.js b/WebSite/src/api/first.js
index 708ba7a0..54571f95 100644
--- a/WebSite/src/api/first.js
+++ b/WebSite/src/api/first.js
@@ -132,5 +132,8 @@ export default {
   // },
   getUserName() {
     return request.post('/baseinfo/queryCurrentUserName');
+  },
+  syncPiFuPublicProjectPlan(data) {
+    return request.post( `/projectLibrary/syncPiFuPublicProjectPlan`, data)
   }
 };
diff --git a/WebSite/src/views/main/project-library/department/components/List.vue b/WebSite/src/views/main/project-library/department/components/List.vue
index 67d52321..69cddda5 100644
--- a/WebSite/src/views/main/project-library/department/components/List.vue
+++ b/WebSite/src/views/main/project-library/department/components/List.vue
@@ -96,6 +96,12 @@
         </el-table-column>
         <el-table-column label="鎵瑰" prop="replyName">
           <template #default="scope">
+            <el-button
+              v-if="scope.row.replyState == 1"
+              @click="toDetail(scope.row, 1)"
+              type="primary"
+              >缂栬緫</el-button
+            >
             <el-button :type="scope.row.replyState == 2 ? 'text' : 'primary'" @click="toDetailNew(scope.row)">
             {{
               scope.row.replyName
@@ -330,7 +336,7 @@ export default {
     };
     const toDetail = row => {
       sessionStorage.setItem('checkInfo1', JSON.stringify(state.checkInfo));
-      cxt.emit('switch-page', 'Detail', true, row.projectLibraryID);
+      cxt.emit('switch-page', 'Detail', true, row.replyBookID);
     };
     const toOne = (row, index) => {
       sessionStorage.setItem('checkInfo1', JSON.stringify(state.checkInfo));
@@ -415,8 +421,6 @@ export default {
           getDepartPageInfo();
         })
       }
-      
-      
     }
     return {
       ...toRefs(state),
diff --git a/WebSite/src/views/yo-dept-bz/find/FindPuplicFundApply/components/List.vue b/WebSite/src/views/yo-dept-bz/find/FindPuplicFundApply/components/List.vue
index e355ecfa..7d3e61a6 100644
--- a/WebSite/src/views/yo-dept-bz/find/FindPuplicFundApply/components/List.vue
+++ b/WebSite/src/views/yo-dept-bz/find/FindPuplicFundApply/components/List.vue
@@ -18,10 +18,13 @@
     </el-card>
 
     <el-card class="mt-20">
-      <!-- <template #header>
+      <template #header>
         <el-row type="flex" justify="start">
           <div>
-            <el-button plain type="primary" @click="createPublicApply"
+            <el-button plain type="primary" @click="connet()"
+              >鍚屾浜屼笂</el-button
+            >
+            <!-- <el-button plain type="primary" @click="createPublicApply"
               >鏂板缓</el-button
             >
             <el-button disabled plain type="primary">鎵归噺鎻愪氦</el-button>
@@ -32,10 +35,10 @@
               type="danger"
               @click="deletePubliic"
               >鍒犻櫎</el-button
-            >
+            > -->
           </div>
         </el-row>
-      </template> -->
+      </template>
 
       <page-query
         v-model:pageNO="pageNO"
@@ -125,13 +128,20 @@ export default {
         ElMessage.success('鎵归噺鍒犻櫎鎴愬姛');
       });
     };
+    const connet = () => {
+      Api.syncPiFuPublicProjectPlan().then(res => {
+        console.log(res);
+        getPublicList();
+      });
+    };
     return {
       ...toRefs(data),
       getPublicList,
       navToDetail,
       pageInfoChange,
       createPublicApply,
-      deletePubliic
+      deletePubliic,
+      connet
     };
   }
 };
-- 
GitLab


From 82342ca3cb73b967b1b08ef31b1a0de32d86ce51 Mon Sep 17 00:00:00 2001
From: lshwy817 <lshwy817@163.com>
Date: Fri, 11 Nov 2022 14:14:35 +0800
Subject: [PATCH 2/9] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=8F=90=E4=BA=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../department/components/List.vue            |  61 ++--
 .../yo-common/ProjectFundApply/index.vue      | 287 +++++++++---------
 .../views/yo-common/PublicFundApply/index.vue |   1 +
 .../ProjectFundApply/components/Detail.vue    |  73 ++++-
 .../PuplicFundApply/components/Detail.vue     |  62 +++-
 .../yo-dept-bz/secondmk/project/index.vue     |   2 +-
 6 files changed, 315 insertions(+), 171 deletions(-)

diff --git a/WebSite/src/views/main/project-library/department/components/List.vue b/WebSite/src/views/main/project-library/department/components/List.vue
index 69cddda5..e583058e 100644
--- a/WebSite/src/views/main/project-library/department/components/List.vue
+++ b/WebSite/src/views/main/project-library/department/components/List.vue
@@ -102,10 +102,11 @@
               type="primary"
               >缂栬緫</el-button
             >
-            <el-button :type="scope.row.replyState == 2 ? 'text' : 'primary'" @click="toDetailNew(scope.row)">
-            {{
-              scope.row.replyName
-            }}
+            <el-button
+              :type="scope.row.replyState == 2 ? 'text' : 'primary'"
+              @click="toDetail(scope.row, 2)"
+            >
+              {{ scope.row.replyName }}
             </el-button>
           </template>
         </el-table-column>
@@ -334,9 +335,25 @@ export default {
         getDepartPageInfo();
       });
     };
-    const toDetail = row => {
-      sessionStorage.setItem('checkInfo1', JSON.stringify(state.checkInfo));
-      cxt.emit('switch-page', 'Detail', true, row.replyBookID);
+    const toDetail = (row, index) => {
+      console.log('row', row);
+      if (row.replyState == 0) {
+        ProjectLibrary.enterPiFuProjectPlan(row.id).then(() => {
+          getDepartPageInfo();
+        });
+      } else if (row.replyState == 1) {
+        if (index == 1) {
+          sessionStorage.setItem('checkInfo1', JSON.stringify(state.checkInfo));
+          cxt.emit('switch-page', 'Detail', true, row.replyBookID);
+        } else {
+          ProjectLibrary.cancelEnterPiFuProjectPlan(row.id).then(() => {
+            getDepartPageInfo();
+          });
+        }
+      } else {
+        sessionStorage.setItem('checkInfo1', JSON.stringify(state.checkInfo));
+        cxt.emit('switch-page', 'Detail', true, row.replyBookID);
+      }
     };
     const toOne = (row, index) => {
       sessionStorage.setItem('checkInfo1', JSON.stringify(state.checkInfo));
@@ -410,18 +427,20 @@ export default {
     const downloadImportTemplate = () => {
       ProjectLibrary.downLoadInfoTemplate();
     };
-    const toDetailNew = (row) => {
-      console.log('row', row);
-      if (row.replyState == 0) {
-        ProjectLibrary.enterPiFuProjectPlan(row.id).then(() => {
-          getDepartPageInfo();
-        })
-      } else if (row.replyState == 1) {
-        ProjectLibrary.cancelEnterPiFuProjectPlan(row.id).then(() => {
-          getDepartPageInfo();
-        })
-      }
-    }
+    // const toDetailNew = (row, index) => {
+    //   console.log('row', row);
+    //   if (row.replyState == 0) {
+    //     ProjectLibrary.enterPiFuProjectPlan(row.id).then(() => {
+    //       getDepartPageInfo();
+    //     })
+    //   } else if (row.replyState == 1) {
+    //     ProjectLibrary.cancelEnterPiFuProjectPlan(row.id).then(() => {
+    //       getDepartPageInfo();
+    //     })
+    //   } else if (index == 1) {
+    //     toDetail(row)
+    //   }
+    // }
     return {
       ...toRefs(state),
       handleAdd,
@@ -445,8 +464,8 @@ export default {
       handleSelectionProject,
       getDepartPageInfoFirst,
       handleSelectionChange,
-      getmoneyInfo,
-      toDetailNew
+      getmoneyInfo
+      // toDetailNew
     };
   }
 };
diff --git a/WebSite/src/views/yo-common/ProjectFundApply/index.vue b/WebSite/src/views/yo-common/ProjectFundApply/index.vue
index 6391b05c..cc579937 100644
--- a/WebSite/src/views/yo-common/ProjectFundApply/index.vue
+++ b/WebSite/src/views/yo-common/ProjectFundApply/index.vue
@@ -101,7 +101,7 @@
               >
                 <el-input
                   readonly
-                  v-model="applyInfo.summaryJson.oneProjectName"
+                  v-model="applyInfo.summary.oneProjectName"
                   placeholder="璇疯緭鍏ヤ竴绾ч」鐩悕绉�"
                 >
                 </el-input>
@@ -114,7 +114,7 @@
               >
                 <el-input
                   readonly
-                  v-model="applyInfo.summaryJson.twoProjectName"
+                  v-model="applyInfo.summary.twoProjectName"
                   placeholder="璇疯緭鍏ヤ簩绾ч」鐩悕绉�"
                 >
                 </el-input>
@@ -187,7 +187,7 @@
               <el-form-item label="褰掑彛閮ㄩ棬">
                 <el-input
                   disabled
-                  v-model="applyInfo.summaryJson.centraDept"
+                  v-model="applyInfo.summary.centraDept"
                   placeholder="璇疯緭鍏ュ綊鍙i儴闂�"
                 ></el-input>
               </el-form-item>
@@ -220,7 +220,7 @@
               <el-form-item label="椤圭洰鑱旂郴浜�">
                 <el-input
                   disabled
-                  v-model="applyInfo.summaryJson.contactsPeo"
+                  v-model="applyInfo.summary.contactsPeo"
                   placeholder="璇疯緭鍏ラ」鐩仈绯讳汉"
                 ></el-input>
               </el-form-item>
@@ -228,7 +228,7 @@
             <el-col :xs="6" :sm="6" :md="6" :lg="6">
               <el-form-item label="椤圭洰寮€濮嬫椂闂�">
                 <el-date-picker
-                  v-model="applyInfo.summaryJson.startTime"
+                  v-model="applyInfo.summary.startTime"
                   type="date"
                   placeholder="璇烽€夋嫨寮€濮嬫椂闂�"
                 />
@@ -237,7 +237,7 @@
             <el-col :xs="6" :sm="6" :md="6" :lg="6">
               <el-form-item label="椤圭洰缁撴潫鏃堕棿">
                 <el-date-picker
-                  v-model="applyInfo.summaryJson.endTime"
+                  v-model="applyInfo.summary.endTime"
                   type="date"
                   placeholder="璇烽€夋嫨缁撴潫鏃堕棿"
                 />
@@ -253,7 +253,7 @@
             >
               <el-form-item label="鐢虫姤鎬婚噾棰�">
                 <InputNumber
-                  v-model="applyInfo.summaryJson.totalMoney"
+                  v-model="applyInfo.summary.totalMoney"
                   placeholder="璇疯緭鐢虫姤鎬婚噾棰�"
                   disabled
                 ></InputNumber>
@@ -268,7 +268,7 @@
             >
               <el-form-item label="涓嬭揪鎬婚噾棰�">
                 <InputNumber
-                  v-model="applyInfo.summaryJson.downMoney"
+                  v-model="applyInfo.summary.downMoney"
                   placeholder="璇疯緭涓嬭揪鎬婚噾棰�"
                   disabled
                 ></InputNumber>
@@ -277,7 +277,7 @@
             <el-col :xs="6" :sm="6" :md="6" :lg="6">
               <el-form-item label="椤圭洰鑱旂郴浜虹數璇�">
                 <el-input
-                  v-model="applyInfo.summaryJson.telphone"
+                  v-model="applyInfo.summary.telphone"
                   placeholder="璇疯緭鍏ョ數璇�"
                   oninput="value=value.replace(/[^0-9]/gi,'')"
                   maxlength="11"
@@ -289,7 +289,7 @@
                 label="椤圭洰灞炴€�1"
                 style="display: flex;align-items: center;"
               >
-                <el-radio-group v-model="applyInfo.summaryJson.target1">
+                <el-radio-group v-model="applyInfo.summary.target1">
                   <el-radio label="0">鏂板椤圭洰</el-radio>
                   <el-radio label="1" @click="!canEdit ? '' : onYxm()"
                     >寤剁画椤圭洰</el-radio
@@ -303,7 +303,7 @@
                 style="display: flex;align-items: center;"
               >
                 <el-radio-group
-                  v-model="applyInfo.summaryJson.target2"
+                  v-model="applyInfo.summary.target2"
                   @change="radioChange"
                 >
                   <el-radio label="0" :disabled="isDIS">鏃ュ父鎬ч」鐩�</el-radio>
@@ -312,7 +312,7 @@
               </el-form-item>
             </el-col>
             <el-col :xs="10" :sm="10" :md="10" :lg="10">
-              <div v-if="applyInfo.summaryJson.target1 === '1' ? true : false">
+              <div v-if="applyInfo.summary.target1 === '1' ? true : false">
                 {{ historyProjectInfo }}
               </div>
             </el-col>
@@ -339,13 +339,13 @@
           >
         </el-card>
 
-        <el-card class="mt-20" :id="'proIntro' + uid">
+        <el-card class="mt-20" :id="'proIntro' + uid" v-if="applyInfo.summary">
           <template #header>
             椤圭洰姒傝堪
           </template>
           <el-form
             :disabled="!canEdit"
-            :model="applyInfo.summaryJson"
+            :model="applyInfo.summary"
             :rules="rules"
             label-position="left"
             label-width="200px"
@@ -355,27 +355,27 @@
             <div class="formRef">
               <el-form-item label="1銆侀」鐩珛椤逛緷鎹�" prop="basis">
                 <el-input
-                  v-model="applyInfo.summaryJson.basis"
+                  v-model="applyInfo.summary.basis"
                   type="textarea"
                 ></el-input>
               </el-form-item>
               <el-form-item label="2銆佸繀瑕佹€у拰鍙鎬ф杩�:" prop="terminfo">
                 <el-input
-                  v-model="applyInfo.summaryJson.terminfo"
+                  v-model="applyInfo.summary.terminfo"
                   type="textarea"
                 ></el-input>
               </el-form-item>
 
               <el-form-item label="3銆侀」鐩杩�" prop="plan">
                 <el-input
-                  v-model="applyInfo.summaryJson.plan"
+                  v-model="applyInfo.summary.plan"
                   type="textarea"
                 ></el-input>
               </el-form-item>
 
               <el-form-item label="4銆佷繚闅滄帾鏂�" prop="budget">
                 <el-input
-                  v-model="applyInfo.summaryJson.budget"
+                  v-model="applyInfo.summary.budget"
                   type="textarea"
                 ></el-input>
               </el-form-item>
@@ -405,7 +405,7 @@
             >
               <el-table-column type="selection" width="55" />
               <el-table-column label="骞村害" prop="area">
-                <template #default="scope">
+                <!-- <template #default="scope">
                   <el-date-picker
                     type="year"
                     placeholder="璇疯緭鍏�..."
@@ -413,7 +413,7 @@
                     v-model.number="scope.row.area"
                     :readonly="!canEdit"
                   ></el-date-picker>
-                </template>
+                </template> -->
               </el-table-column>
               <el-table-column
                 label="鐢虫姤閲戦"
@@ -421,14 +421,14 @@
                 align="right"
                 header-align="left"
               >
-                <template #default="scope">
+                <!-- <template #default="scope">
                   <InputNumber
                     placeholder="璇疯緭鍏�..."
                     v-model="scope.row.publicCar"
                     :readonly="!canEdit"
                     @change="getSummaries"
                   ></InputNumber>
-                </template>
+                </template> -->
               </el-table-column>
               <el-table-column
                 label="涓嬭揪閲戦"
@@ -436,7 +436,6 @@
                 align="right"
                 header-align="left"
               >
-                <!-- :disabled="applyInfo.summaryJson.target1 == 0" -->
                 <template #default="scope">
                   <InputNumber
                     placeholder="璇疯緭鍏�..."
@@ -464,14 +463,16 @@
         </el-card>
         <el-card class="mt-20" :id="'fundUsePlan' + uid">
           <template #header>
-            璧勯噾浣跨敤璁″垝
-            <div style="margin-top: 10px;">
-              <el-button type="primary" plain @click="addBudget"
-                >鏂板</el-button
-              >
-              <el-button type="danger" plain @click="removeBudget"
-                >鍒犻櫎</el-button
-              >
+            <div>
+              璧勯噾浣跨敤璁″垝
+              <div style="margin-top: 10px;">
+                <el-button type="primary" plain @click="addBudget"
+                  >鏂板</el-button
+                >
+                <el-button type="danger" plain @click="removeBudget"
+                  >鍒犻櫎</el-button
+                >
+              </div>
             </div>
           </template>
           <el-form label-width="200px" label-position="left">
@@ -943,7 +944,7 @@
             鍏朵粬闇€璇存槑浜嬮」
           </template>
           <el-input
-            v-model="applyInfo.summaryJson.otherRemark"
+            v-model="applyInfo.summary.otherRemark"
             type="textarea"
             :autosize="{ minRows: 2 }"
           ></el-input>
@@ -963,7 +964,7 @@
                       applyInfo.flowCanShowOut.state != '褰掑彛閮ㄩ棬瀹℃牳'
                   )
                 "
-                v-model="applyInfo.summaryJson.opinion"
+                v-model="applyInfo.summary.opinion"
                 type="textarea"
                 :autosize="{ minRows: 2 }"
               ></el-input
@@ -980,7 +981,7 @@
                       applyInfo.flowCanShowOut.state != '褰掑彛閮ㄩ棬瀹℃牳'
                   )
                 "
-                v-model="applyInfo.summaryJson.allOpinion"
+                v-model="applyInfo.summary.allOpinion"
                 type="textarea"
                 :autosize="{ minRows: 2 }"
               ></el-input
@@ -991,7 +992,7 @@
               v-if="route == '/i/project-library/declaretwo'"
             >
               <el-input
-                v-model="applyInfo.summaryJson.leaderOpinion"
+                v-model="applyInfo.summary.leaderOpinion"
                 :readonly="
                   Boolean(
                     applyInfo.flowCanShowOut &&
@@ -1257,7 +1258,9 @@ export default {
       type: Object,
       default: () => {
         return {
-          summaryJson: {}, //椤圭洰姒傝堪
+          summaryJson: {
+            basis: ''
+          }, //椤圭洰姒傝堪
           projectTargetCmd: {
             //椤圭洰缁╂晥
             summaryJson: {},
@@ -1314,12 +1317,6 @@ export default {
       return callback();
     };
     const onInputChangeNew = (rule, value, callback) => {
-      console.log(
-        'nnn',
-        rule,
-        value,
-        data.applyInfo.projectTargetCmd.subOtherArrayJson
-      );
       const newList = data.applyInfo.projectTargetCmd.subOtherArrayJson;
       for (let i = 0; i < newList.length; i++) {
         if (
@@ -1352,17 +1349,17 @@ export default {
         ]
       },
       rules: {
-        basis: [
-          {
-            required: true,
-            trigger: 'blur',
-            message: '椤圭洰渚濇嵁涓嶈兘涓虹┖'
-          },
-          {
-            validator: onInputChange,
-            trigger: ['change', 'blur']
-          }
-        ],
+          basis: [
+            {
+              required: true,
+              trigger: 'blur',
+              message: '椤圭洰渚濇嵁涓嶈兘涓虹┖'
+            },
+            {
+              validator: onInputChange,
+              trigger: ['change', 'blur']
+            }
+          ],
         budget: [
           {
             required: true,
@@ -1498,7 +1495,9 @@ export default {
       //   title: '绉戠洰姹囨€�',
       //   id: 'proBudget2'
       // },
+      // applyInfo1: JSON.parse(JSON.stringify(props.row))
     });
+
     const handleCancel = () => {
       context.emit('handleCancel');
     };
@@ -1619,9 +1618,9 @@ export default {
         }
       });
       if (sums.length === 5) {
-        data.applyInfo.summaryJson.totalMoney =
+        data.applyInfo.summary.totalMoney =
           sums[2] != '0.00' ? sums[2] : '0.00';
-        data.applyInfo.summaryJson.downMoney =
+        data.applyInfo.summary.downMoney =
           sums[3] != '0.00' ? sums[3] : '0.00';
       }
       return sums;
@@ -1631,83 +1630,83 @@ export default {
       context.emit('handleBack');
     };
     const handleSave = () => {
-      data.applyInfo.startTime = Moment(data.applyInfo.startTime).format(
-        'YYYY-MM-DD'
-      );
-      data.applyInfo.endTime = Moment(data.applyInfo.endTime).format(
-        'YYYY-MM-DD'
-      );
-      if (
-        data.applyInfo.summaryJson.startTime >
-        data.applyInfo.summaryJson.endTime
-      ) {
-        return ElMessage.warning('寮€濮嬫椂闂村簲灏忎簬绛変簬椤圭洰缁撴潫鏃堕棿!');
-      }
       data.formRef.validate(valid => {
-        let falgs = 0;
-        if (!valid) return ElMessage.warning('璇峰皢淇℃伅琛ュ厖瀹屾暣');
-        if (!data.applyInfo.departmentName) {
-          const dept = baseinfoData.applyDept.find(
-            item => item.code == data.applyInfo.departmentCode
+          let falgs = 0;
+          if (!valid) return ElMessage.warning('璇峰皢淇℃伅琛ュ厖瀹屾暣');
+          data.applyInfo.startTime = Moment(data.applyInfo.summary.startTime).format(
+            'YYYY-MM-DD'
           );
-          data.applyInfo.departmentName = dept.name;
-        }
-        if (
-          data.applyInfo.moneySubjectList &&
-          data.applyInfo.moneySubjectList.length > 0
-        ) {
-          data.applyInfo.moneySubjectList.forEach(item => {
-            item.area = Moment(item.area).format('YYYY');
-          });
-          data.applyInfo.summaryJson.moneySubjectList =
-            data.applyInfo.moneySubjectList;
-        }
-        if (data.isShowRadio) {
-          data.formRefs.validate(vid => {
-            if (!vid) {
-              ElMessage.warning('璇峰皢淇℃伅琛ュ厖瀹屾暣');
-              falgs = 1;
-              return false;
-            } else {
-              falgs = 0;
-            }
-          });
-        }
-        if (falgs == 0) {
-          const applyInfo = JSON.parse(JSON.stringify(data.applyInfo));
-          applyInfo.summaryJson = JSON.stringify(applyInfo.summaryJson);
-          applyInfo.projectTargetCmd.subOtherArrayJson = JSON.stringify(
-            applyInfo.projectTargetCmd.subOtherArrayJson
-          );
-          applyInfo.projectTargetCmd.summaryJson = JSON.stringify(
-            applyInfo.projectTargetCmd.summaryJson
+          data.applyInfo.endTime = Moment(data.applyInfo.summary.endTime).format(
+            'YYYY-MM-DD'
           );
           if (
-            applyInfo.attachmentInfoOutList &&
-            applyInfo.attachmentInfoOutList.length > 0
+            data.applyInfo.summary.startTime >
+            data.applyInfo.summary.endTime
           ) {
-            applyInfo.attachmentInfoOutList = applyInfo.attachmentInfoOutList.map(
-              v => v.id
+            return ElMessage.warning('寮€濮嬫椂闂村簲灏忎簬绛変簬椤圭洰缁撴潫鏃堕棿!');
+          }
+          if (!data.applyInfo.departmentName) {
+            const dept = baseinfoData.applyDept.find(
+              item => item.code == data.applyInfo.departmentCode
             );
+            data.applyInfo.departmentName = dept.name;
           }
           if (
-            applyInfo.planSubjectList &&
-            applyInfo.planSubjectList.length > 0
+            data.applyInfo.moneySubjectList &&
+            data.applyInfo.moneySubjectList.length > 0
           ) {
-            applyInfo.planSubjectList.forEach(item => {
-              item.otherJson = JSON.stringify(item.otherJson);
-              if (item.subjectDetailList.length <= 0) {
-                item.subjectDetailList = null;
+            data.applyInfo.moneySubjectList.forEach(item => {
+              item.area = Moment(item.area).format('YYYY');
+            });
+            data.applyInfo.summary.moneySubjectList =
+              data.applyInfo.moneySubjectList;
+          }
+          if (data.isShowRadio) {
+            data.formRefs.validate(vid => {
+              if (!vid) {
+                ElMessage.warning('璇峰皢淇℃伅琛ュ厖瀹屾暣');
+                falgs = 1;
+                return false;
               } else {
-                item.subjectDetailList.forEach(jtem => {
-                  jtem.otherJson = JSON.stringify(jtem.otherJson);
-                });
+                falgs = 0;
               }
             });
           }
-          context.emit('handleSave', applyInfo);
-        }
-      });
+          if (falgs == 0) {
+            const applyInfo = JSON.parse(JSON.stringify(data.applyInfo));
+            applyInfo.summaryJson = JSON.stringify(applyInfo.summary);
+            applyInfo.projectTargetCmd.subOtherArrayJson = JSON.stringify(
+              applyInfo.projectTargetCmd.subOtherArrayJson
+            );
+            applyInfo.projectTargetCmd.summaryJson = JSON.stringify(
+              applyInfo.projectTargetCmd.summaryJson
+            );
+            if (
+              applyInfo.attachmentInfoOutList &&
+              applyInfo.attachmentInfoOutList.length > 0
+            ) {
+              applyInfo.attachmentInfoOutList = applyInfo.attachmentInfoOutList.map(
+                v => v.id
+              );
+            }
+            if (
+              applyInfo.planSubjectList &&
+              applyInfo.planSubjectList.length > 0
+            ) {
+              applyInfo.planSubjectList.forEach(item => {
+                item.otherJson = JSON.stringify(item.otherJson);
+                if (item.subjectDetailList.length <= 0) {
+                  item.subjectDetailList = null;
+                } else {
+                  item.subjectDetailList.forEach(jtem => {
+                    jtem.otherJson = JSON.stringify(jtem.otherJson);
+                  });
+                }
+              });
+            }
+            context.emit('handleSave', applyInfo);
+          }
+        });
     };
     const handleSubmit = flowOutput => {
       // if (!data.applyInfo.departmentName) {
@@ -1818,19 +1817,19 @@ export default {
     };
     const selectProjectType = async row => {
       await queryFundListById(row.id);
-      data.applyInfo.summaryJson.oneProjectName = row.oneProjectName;
-      data.applyInfo.summaryJson.oneProjectCode = row.oneProjectCode;
-      data.applyInfo.summaryJson.oneProjectId = row.oneProjectId;
-      data.applyInfo.summaryJson.twoProjectCode = row.twoProjectCode;
-      data.applyInfo.summaryJson.twoProjectName = row.twoProjectName;
-      data.applyInfo.summaryJson.twoProjectId = row.twoProjectId;
+      data.applyInfo.summary.oneProjectName = row.oneProjectName;
+      data.applyInfo.summary.oneProjectCode = row.oneProjectCode;
+      data.applyInfo.summary.oneProjectId = row.oneProjectId;
+      data.applyInfo.summary.twoProjectCode = row.twoProjectCode;
+      data.applyInfo.summary.twoProjectName = row.twoProjectName;
+      data.applyInfo.summary.twoProjectId = row.twoProjectId;
       data.applyInfo.projectType = row.budgetName;
       if (data.route != '/i/project-library/declare') {
         data.applyInfo.projectName = row.budgetName;
       }
       data.applyInfo.totalMoney = row.totalMoney;
       data.applyInfo.projectTypeId = row.id;
-      data.applyInfo.summaryJson.centraDept = row.functionDeptNameList;
+      data.applyInfo.summary.centraDept = row.functionDeptNameList;
       if (
         data.applyInfo.projectTargetCmd.subOtherArrayJson &&
         data.applyInfo.projectTargetCmd.subOtherArrayJson.length > 0
@@ -1850,15 +1849,15 @@ export default {
         }
       }
       if (row.id) {
-        data.applyInfo.summaryJson.showThreeLevelDetailBtn =
+        data.applyInfo.summary.showThreeLevelDetailBtn =
           row.showThreeLevelDetailBtn;
       }
       data.showThreeLevelDetailBtn = row.showThreeLevelDetailBtn;
       if (data.applyInfo.projectType && row.showThreeLevelDetailBtn) {
-        (data.applyInfo.summaryJson.target2 = row.target2), (data.isDIS = true);
+        (data.applyInfo.summary.target2 = row.target2), (data.isDIS = true);
       } else {
         data.isDIS = false;
-        data.applyInfo.summaryJson.target2 = '';
+        data.applyInfo.summary.target2 = '';
       }
       radioChange();
       getMeritsTree(row.projectTargetId);
@@ -2344,7 +2343,9 @@ export default {
           data.showThreeLevelDetailBtn = JSON.parse(
             val.summaryJson
           ).showThreeLevelDetailBtn;
-          data.applyInfo.summaryJson.target2 = JSON.parse(val.summaryJson).target2;
+          data.applyInfo.summary.target2 = JSON.parse(
+            val.summaryJson
+          ).target2;
           radioChange(JSON.parse(val.summaryJson).target2);
           if (
             data.showThreeLevelDetailBtn == false &&
@@ -2386,6 +2387,9 @@ export default {
             getMeritsTree(applyInfo.projectTargetId);
           }
           applyInfo.projectTypeId && queryFundListById(applyInfo.projectTypeId);
+          applyInfo.summary = applyInfo.summaryJson
+            ? JSON.parse(applyInfo.summaryJson)
+            : {};
           applyInfo.summaryJson = applyInfo.summaryJson
             ? JSON.parse(applyInfo.summaryJson)
             : {};
@@ -2446,6 +2450,7 @@ export default {
           data.applyInfo = {
             year: window.sessionStorage.getItem('year'),
             attachmentInfoOutList: [],
+            summary: {},
             summaryJson: {}, //椤圭洰姒傝堪
             projectTargetCmd: {
               //椤圭洰缁╂晥
@@ -2470,7 +2475,7 @@ export default {
           data.applyInfo.projectLeaderId = leader.id;
           data.applyInfo.projectLeaderName = leader.name;
           data.applyInfo.projectLeaderCode = leader.code;
-          data.applyInfo.summaryJson.contactsPeo =
+          data.applyInfo.summary.contactsPeo =
             store.state.subject.account.username;
           selectLoadmore(leader.name);
         }
@@ -2489,13 +2494,15 @@ export default {
     );
     const init = async () => {
       await getApplyDept();
-      data.applyInfo.summaryJson.target1 = '0';
-      if (data.applyInfo.summaryJson.target2 == '0') {
-        data.applyInfo.summaryJson.target2 = '0';
-      } else if(data.applyInfo.summaryJson.target2 == '1'){
-        data.applyInfo.summaryJson.target2 = '1';
+      data.applyInfo.summary.target1 = '0';
+      if (data.applyInfo.summary.target2 == '0') {
+        data.applyInfo.summary.target2 = '0';
+      } else if (data.applyInfo.summary.target2 == '1') {
+        data.applyInfo.summary.target2 = '1';
+      } else {
+        data.applyInfo.summary.target2 = '0';
       }
-      
+
       radioChange();
       // getMeritsTree();
       // const leader = store.state.subject.leader;
@@ -2517,7 +2524,7 @@ export default {
     // 閫夋嫨鏃ュ父鎬ч」鐩殑鏃跺€欓殣钘忕哗鏁堟寚鏍�
     const radioChange = val => {
       let array = data.stepList;
-      if (val === '0' || data.applyInfo.summaryJson.target2 == '0') {
+      if (val === '0' || data.applyInfo.summary.target2 == '0') {
         data.isShowRadio = false;
         if (array[4].title === '缁╂晥鎸囨爣') {
           array.splice(4, 1);
@@ -2551,7 +2558,7 @@ export default {
     // 纭畾
     const handleOk = () => {
       data.dialogVisible = false;
-      data.applyInfo.summaryJson.historyProjectId =
+      data.applyInfo.summary.historyProjectId =
         data.multipleSelectionProject.id;
       data.historyProjectInfo =
         '寤剁画' +
@@ -2597,7 +2604,7 @@ export default {
       };
     };
     const onQuxiao = () => {
-      data.applyInfo.summaryJson.target1 = '0';
+      data.applyInfo.summary.target1 = '0';
       data.dialogVisible = false;
     };
     const onNewRow = () => {
diff --git a/WebSite/src/views/yo-common/PublicFundApply/index.vue b/WebSite/src/views/yo-common/PublicFundApply/index.vue
index fca6396a..420f4873 100644
--- a/WebSite/src/views/yo-common/PublicFundApply/index.vue
+++ b/WebSite/src/views/yo-common/PublicFundApply/index.vue
@@ -1313,6 +1313,7 @@ export default {
           data.applyInfo.projectLeaderName = leader.name;
           data.applyInfo.projectLeaderCode = leader.code;
           data.applyInfo.contactsPeo = store.state.subject.user.name;
+          data.applyInfo.note.contactsPeo = store.state.subject.user.name;
           selectLoadmore(leader.name);
         }
       },
diff --git a/WebSite/src/views/yo-dept-bz/first/ProjectFundApply/components/Detail.vue b/WebSite/src/views/yo-dept-bz/first/ProjectFundApply/components/Detail.vue
index 2b3c6bc2..976d2ef1 100644
--- a/WebSite/src/views/yo-dept-bz/first/ProjectFundApply/components/Detail.vue
+++ b/WebSite/src/views/yo-dept-bz/first/ProjectFundApply/components/Detail.vue
@@ -14,6 +14,7 @@
 
 <script>
 import { onMounted, reactive, toRefs } from 'vue';
+import { ElMessage } from 'element-plus';
 import Api from '@/api';
 export default {
   props: {
@@ -92,7 +93,8 @@ export default {
           isShowCancel: false
         }
       },
-      applyInfo: {}
+      applyInfo: {},
+      applyId: props.row.id
     });
     const handleBack = () => {
       context.emit('switch-page', 'List');
@@ -103,12 +105,73 @@ export default {
         data.applyInfo = res.data[0];
       });
     };
-    const handleSave = applyInfo => {
-      debugger;
+    const handleSave = async applyInfo => {
       console.log(applyInfo);
+      applyInfo.planType = applyInfo.planType
+        ? applyInfo.planType
+        : props.planType;
+      const res = await Api.saveProjectFundApply(applyInfo);
+      if (props.row.id || data.applyId) {
+        ElMessage.success('鏇存柊鐢虫姤涔︽垚鍔�');
+        const id = props.row.id || data.applyId;
+        getDataDetail(id);
+      } else {
+        ElMessage.success('鏂板鐢虫姤涔︽垚鍔�');
+        data.applyId = res.data[0];
+        getDataDetail(res.data[0]);
+      }
+    };
+    const handleSubmit = async (flowOutput, applyInfo) => {
+      const params = {
+        id: applyInfo.id,
+        nodeIds: [flowOutput.nodeIds],
+        remake: flowOutput.remake
+      };
+      
+      const newApplyInfo = JSON.parse(JSON.stringify(applyInfo));
+      newApplyInfo.summaryJson = JSON.stringify(newApplyInfo.summaryJson);
+      newApplyInfo.projectTargetCmd.subOtherArrayJson = JSON.stringify(
+        newApplyInfo.projectTargetCmd.subOtherArrayJson
+      );
+      newApplyInfo.projectTargetCmd.summaryJson = JSON.stringify(
+        newApplyInfo.projectTargetCmd.summaryJson
+      );
+      if (
+        newApplyInfo.attachmentInfoOutList &&
+        newApplyInfo.attachmentInfoOutList.length > 0
+      ) {
+        newApplyInfo.attachmentInfoOutList = newApplyInfo.attachmentInfoOutList.map(
+          v => v.id
+        );
+      }
+      newApplyInfo.planSubjectList.forEach(item => {
+        item.otherJson = JSON.stringify(item.otherJson);
+        if (item.subjectDetailList.length <= 0) {
+          item.subjectDetailList = null;
+        } else {
+          item.subjectDetailList.forEach(jtem => {
+            jtem.otherJson = JSON.stringify(jtem.otherJson);
+          });
+        }
+      });
+      newApplyInfo.planType = newApplyInfo.planType
+        ? newApplyInfo.planType
+        : props.planType;
+        await handleSave(newApplyInfo);
+        await Api.submitPlan(params)
+        ElMessage.success('鎻愪氦鎴愬姛');
+         handleBack();
+    };
+    const handleReturn = async (flowOutput, applyInfo) => {
+      console.log(flowOutput, applyInfo);
+      const params = {
+        id: applyInfo.id,
+        nodeIds: [flowOutput.nodeIds],
+        remake: flowOutput.remake
+      };
+      await Api.rejectPlan(params);
+      handleBack();
     };
-    const handleSubmit = () => {};
-    const handleReturn = () => {};
     const init = () => {
       if (props.row.id) {
         getDataDetail();
diff --git a/WebSite/src/views/yo-dept-bz/first/PuplicFundApply/components/Detail.vue b/WebSite/src/views/yo-dept-bz/first/PuplicFundApply/components/Detail.vue
index 97073ba8..c83e3ccd 100644
--- a/WebSite/src/views/yo-dept-bz/first/PuplicFundApply/components/Detail.vue
+++ b/WebSite/src/views/yo-dept-bz/first/PuplicFundApply/components/Detail.vue
@@ -15,6 +15,7 @@
 <script>
 import { onMounted, reactive, toRefs } from 'vue';
 import Api from '@/api';
+import { ElMessage } from 'element-plus';
 export default {
   props: {
     canEdit: {
@@ -104,11 +105,64 @@ export default {
         data.applyInfo = res.data[0];
       });
     };
-    const handleSave = applyInfo => {
-      console.log(applyInfo);
+    const handleSave = async applyInfo => {
+      applyInfo.planType = applyInfo.planType
+        ? applyInfo.planType
+        : props.planType;
+      const res = await Api.savePublicFundApply(applyInfo);
+      if (props.row.id || data.applyId) {
+        ElMessage.success('鏇存柊鐢虫姤涔︽垚鍔�');
+        const id = props.row.id || data.applyId;
+        getPublicDetail(id);
+      } else {
+        ElMessage.success('鏂板鐢虫姤涔︽垚鍔�');
+        data.applyId = res.data[0];
+        getPublicDetail(res.data[0]);
+      }
+    };
+    const handleSubmit = async (flowOutput, applyInfo) => {
+      const newApplyInfo = JSON.parse(JSON.stringify(applyInfo));
+      newApplyInfo.summaryJson = JSON.stringify(newApplyInfo.summaryJson);
+      newApplyInfo.note = JSON.stringify(newApplyInfo.note);
+      newApplyInfo.attachmentInfoOutList = newApplyInfo.attachmentInfoOutList.map(
+        v => v.id
+      );
+      console.log(newApplyInfo.attachmentInfoOutList, 'test1');
+      newApplyInfo.planSubjectList.forEach(item => {
+        item.otherJson = JSON.stringify(item.otherJson);
+        if (item.subjectDetailList.length <= 0) {
+          item.subjectDetailList = null;
+        } else {
+          item.subjectDetailList.forEach(jtem => {
+            jtem.otherJson = JSON.stringify(jtem.otherJson);
+          });
+        }
+      });
+      // applyInfo.planType = applyInfo.planType
+      //   ? applyInfo.planType
+      //   : props.planType;
+      // const newApplyInfo = JSON.parse(JSON.stringify(applyInfo));
+      // newApplyInfo.note = JSON.stringify(newApplyInfo.note);
+      await Api.savePublicFundApply(newApplyInfo);
+      console.log(flowOutput, applyInfo);
+      const params = {
+        id: applyInfo.id,
+        nodeIds: [flowOutput.nodeIds],
+        remake: flowOutput.remake
+      };
+      await Api.submitPlan(params);
+      handleBack();
+    };
+    const handleReturn = async (flowOutput, applyInfo) => {
+      console.log(flowOutput, applyInfo);
+      const params = {
+        id: applyInfo.id,
+        nodeIds: [flowOutput.nodeIds],
+        remake: flowOutput.remake
+      };
+      await Api.rejectPlan(params);
+      handleBack();
     };
-    const handleSubmit = () => {};
-    const handleReturn = () => {};
 
     const init = () => {
       if (props.row.id) {
diff --git a/WebSite/src/views/yo-dept-bz/secondmk/project/index.vue b/WebSite/src/views/yo-dept-bz/secondmk/project/index.vue
index d60bb6cf..f1ef0c4e 100644
--- a/WebSite/src/views/yo-dept-bz/secondmk/project/index.vue
+++ b/WebSite/src/views/yo-dept-bz/secondmk/project/index.vue
@@ -64,7 +64,7 @@
         <el-table-column label="涓€绾ч」鐩�" prop="projectTypeName" />
         <el-table-column label="浜岀骇椤圭洰" prop="projectName" />
         <el-table-column
-          label="涓€涓婄敵鎶ラ噾棰�"
+          label="浜屼笂鐢虫姤閲戦"
           prop="amountDeclared"
           width="150"
           header-align="left"
-- 
GitLab


From 0ea35b4e21595629f8b1ecececa10223b0c7f952 Mon Sep 17 00:00:00 2001
From: lshwy817 <lshwy817@163.com>
Date: Mon, 14 Nov 2022 10:57:27 +0800
Subject: [PATCH 3/9] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=8F=90=E4=BA=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../yo-common/ProjectFundApply/index.vue      | 154 +++++++++---------
 1 file changed, 74 insertions(+), 80 deletions(-)

diff --git a/WebSite/src/views/yo-common/ProjectFundApply/index.vue b/WebSite/src/views/yo-common/ProjectFundApply/index.vue
index cc579937..735e8aa2 100644
--- a/WebSite/src/views/yo-common/ProjectFundApply/index.vue
+++ b/WebSite/src/views/yo-common/ProjectFundApply/index.vue
@@ -1349,17 +1349,17 @@ export default {
         ]
       },
       rules: {
-          basis: [
-            {
-              required: true,
-              trigger: 'blur',
-              message: '椤圭洰渚濇嵁涓嶈兘涓虹┖'
-            },
-            {
-              validator: onInputChange,
-              trigger: ['change', 'blur']
-            }
-          ],
+        basis: [
+          {
+            required: true,
+            trigger: 'blur',
+            message: '椤圭洰渚濇嵁涓嶈兘涓虹┖'
+          },
+          {
+            validator: onInputChange,
+            trigger: ['change', 'blur']
+          }
+        ],
         budget: [
           {
             required: true,
@@ -1620,8 +1620,7 @@ export default {
       if (sums.length === 5) {
         data.applyInfo.summary.totalMoney =
           sums[2] != '0.00' ? sums[2] : '0.00';
-        data.applyInfo.summary.downMoney =
-          sums[3] != '0.00' ? sums[3] : '0.00';
+        data.applyInfo.summary.downMoney = sums[3] != '0.00' ? sums[3] : '0.00';
       }
       return sums;
     };
@@ -1631,82 +1630,79 @@ export default {
     };
     const handleSave = () => {
       data.formRef.validate(valid => {
-          let falgs = 0;
-          if (!valid) return ElMessage.warning('璇峰皢淇℃伅琛ュ厖瀹屾暣');
-          data.applyInfo.startTime = Moment(data.applyInfo.summary.startTime).format(
-            'YYYY-MM-DD'
+        let falgs = 0;
+        if (!valid) return ElMessage.warning('璇峰皢淇℃伅琛ュ厖瀹屾暣');
+        data.applyInfo.startTime = Moment(
+          data.applyInfo.summary.startTime
+        ).format('YYYY-MM-DD');
+        data.applyInfo.endTime = Moment(data.applyInfo.summary.endTime).format(
+          'YYYY-MM-DD'
+        );
+        if (data.applyInfo.summary.startTime > data.applyInfo.summary.endTime) {
+          return ElMessage.warning('寮€濮嬫椂闂村簲灏忎簬绛変簬椤圭洰缁撴潫鏃堕棿!');
+        }
+        if (!data.applyInfo.departmentName) {
+          const dept = baseinfoData.applyDept.find(
+            item => item.code == data.applyInfo.departmentCode
+          );
+          data.applyInfo.departmentName = dept.name;
+        }
+        if (
+          data.applyInfo.moneySubjectList &&
+          data.applyInfo.moneySubjectList.length > 0
+        ) {
+          data.applyInfo.moneySubjectList.forEach(item => {
+            item.area = Moment(item.area).format('YYYY');
+          });
+          data.applyInfo.summary.moneySubjectList =
+            data.applyInfo.moneySubjectList;
+        }
+        if (data.isShowRadio) {
+          data.formRefs.validate(vid => {
+            if (!vid) {
+              ElMessage.warning('璇峰皢淇℃伅琛ュ厖瀹屾暣');
+              falgs = 1;
+              return false;
+            } else {
+              falgs = 0;
+            }
+          });
+        }
+        if (falgs == 0) {
+          const applyInfo = JSON.parse(JSON.stringify(data.applyInfo));
+          applyInfo.summaryJson = JSON.stringify(applyInfo.summary);
+          applyInfo.projectTargetCmd.subOtherArrayJson = JSON.stringify(
+            applyInfo.projectTargetCmd.subOtherArrayJson
           );
-          data.applyInfo.endTime = Moment(data.applyInfo.summary.endTime).format(
-            'YYYY-MM-DD'
+          applyInfo.projectTargetCmd.summaryJson = JSON.stringify(
+            applyInfo.projectTargetCmd.summaryJson
           );
           if (
-            data.applyInfo.summary.startTime >
-            data.applyInfo.summary.endTime
+            applyInfo.attachmentInfoOutList &&
+            applyInfo.attachmentInfoOutList.length > 0
           ) {
-            return ElMessage.warning('寮€濮嬫椂闂村簲灏忎簬绛変簬椤圭洰缁撴潫鏃堕棿!');
-          }
-          if (!data.applyInfo.departmentName) {
-            const dept = baseinfoData.applyDept.find(
-              item => item.code == data.applyInfo.departmentCode
+            applyInfo.attachmentInfoOutList = applyInfo.attachmentInfoOutList.map(
+              v => v.id
             );
-            data.applyInfo.departmentName = dept.name;
           }
           if (
-            data.applyInfo.moneySubjectList &&
-            data.applyInfo.moneySubjectList.length > 0
+            applyInfo.planSubjectList &&
+            applyInfo.planSubjectList.length > 0
           ) {
-            data.applyInfo.moneySubjectList.forEach(item => {
-              item.area = Moment(item.area).format('YYYY');
-            });
-            data.applyInfo.summary.moneySubjectList =
-              data.applyInfo.moneySubjectList;
-          }
-          if (data.isShowRadio) {
-            data.formRefs.validate(vid => {
-              if (!vid) {
-                ElMessage.warning('璇峰皢淇℃伅琛ュ厖瀹屾暣');
-                falgs = 1;
-                return false;
+            applyInfo.planSubjectList.forEach(item => {
+              item.otherJson = JSON.stringify(item.otherJson);
+              if (item.subjectDetailList.length <= 0) {
+                item.subjectDetailList = null;
               } else {
-                falgs = 0;
+                item.subjectDetailList.forEach(jtem => {
+                  jtem.otherJson = JSON.stringify(jtem.otherJson);
+                });
               }
             });
           }
-          if (falgs == 0) {
-            const applyInfo = JSON.parse(JSON.stringify(data.applyInfo));
-            applyInfo.summaryJson = JSON.stringify(applyInfo.summary);
-            applyInfo.projectTargetCmd.subOtherArrayJson = JSON.stringify(
-              applyInfo.projectTargetCmd.subOtherArrayJson
-            );
-            applyInfo.projectTargetCmd.summaryJson = JSON.stringify(
-              applyInfo.projectTargetCmd.summaryJson
-            );
-            if (
-              applyInfo.attachmentInfoOutList &&
-              applyInfo.attachmentInfoOutList.length > 0
-            ) {
-              applyInfo.attachmentInfoOutList = applyInfo.attachmentInfoOutList.map(
-                v => v.id
-              );
-            }
-            if (
-              applyInfo.planSubjectList &&
-              applyInfo.planSubjectList.length > 0
-            ) {
-              applyInfo.planSubjectList.forEach(item => {
-                item.otherJson = JSON.stringify(item.otherJson);
-                if (item.subjectDetailList.length <= 0) {
-                  item.subjectDetailList = null;
-                } else {
-                  item.subjectDetailList.forEach(jtem => {
-                    jtem.otherJson = JSON.stringify(jtem.otherJson);
-                  });
-                }
-              });
-            }
-            context.emit('handleSave', applyInfo);
-          }
-        });
+          context.emit('handleSave', applyInfo);
+        }
+      });
     };
     const handleSubmit = flowOutput => {
       // if (!data.applyInfo.departmentName) {
@@ -2343,9 +2339,7 @@ export default {
           data.showThreeLevelDetailBtn = JSON.parse(
             val.summaryJson
           ).showThreeLevelDetailBtn;
-          data.applyInfo.summary.target2 = JSON.parse(
-            val.summaryJson
-          ).target2;
+          data.applyInfo.summary.target2 = JSON.parse(val.summaryJson).target2;
           radioChange(JSON.parse(val.summaryJson).target2);
           if (
             data.showThreeLevelDetailBtn == false &&
-- 
GitLab


From a47b14aa16d5f7435fb5256a76e45d0575868a25 Mon Sep 17 00:00:00 2001
From: lshwy817 <lshwy817@163.com>
Date: Mon, 14 Nov 2022 17:04:13 +0800
Subject: [PATCH 4/9] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=8F=90=E4=BA=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../yo-common/ProjectFundApply/index.vue      | 85 +++++++++++--------
 .../views/yo-common/PublicFundApply/index.vue |  7 +-
 2 files changed, 56 insertions(+), 36 deletions(-)

diff --git a/WebSite/src/views/yo-common/ProjectFundApply/index.vue b/WebSite/src/views/yo-common/ProjectFundApply/index.vue
index 735e8aa2..686f8be8 100644
--- a/WebSite/src/views/yo-common/ProjectFundApply/index.vue
+++ b/WebSite/src/views/yo-common/ProjectFundApply/index.vue
@@ -949,6 +949,29 @@
             :autosize="{ minRows: 2 }"
           ></el-input>
         </el-card>
+        <el-card class="mt-20" :id="'proBudget3' + uid">
+          <template #header>
+            涓婁紶闄勪欢
+          </template>
+
+          <el-button type="primary" plain @click="uploadDialog = true"
+            >涓婁紶闄勪欢</el-button
+          >
+          <el-tag
+            type="info"
+            style="margin-left:5px;"
+            v-for="(file, index) in applyInfo.attachmentInfoOutList"
+            :key="index"
+            :closable="canEdit"
+            @close="deleteFile(index)"
+            @click="downloadFile(file.id)"
+            >{{ file.fileName }}</el-tag
+          >
+          <UploadFile
+            v-model="uploadDialog"
+            @upload-handler="uploadHandler"
+          ></UploadFile>
+        </el-card>
         <el-card class="mt-20" :id="'opinion' + uid">
           <template #header> 瀹℃牳鎰忚</template>
           <el-form>
@@ -1005,29 +1028,6 @@
             ></el-form-item>
           </el-form>
         </el-card>
-        <el-card class="mt-20" :id="'proBudget3' + uid">
-          <template #header>
-            涓婁紶闄勪欢
-          </template>
-
-          <el-button type="primary" plain @click="uploadDialog = true"
-            >涓婁紶闄勪欢</el-button
-          >
-          <el-tag
-            type="info"
-            style="margin-left:5px;"
-            v-for="(file, index) in applyInfo.attachmentInfoOutList"
-            :key="index"
-            :closable="canEdit"
-            @close="deleteFile(index)"
-            @click="downloadFile(file.id)"
-            >{{ file.fileName }}</el-tag
-          >
-          <UploadFile
-            v-model="uploadDialog"
-            @upload-handler="uploadHandler"
-          ></UploadFile>
-        </el-card>
         <el-card class="mt-20" :id="'guikouPro' + uid" v-show="isShows">
           <template #header>
             褰掑彛椤圭洰
@@ -1084,7 +1084,12 @@
     <el-dialog title="閫夋嫨椤圭洰" width="60%" v-model="selectProjectTypeDialog">
       <el-row :gutter="20" class="newRow">
         <el-col :span="12">
-          <el-input v-model="oneInput" placeholder="璇疯緭鍏ラ」鐩悕绉般€侀」鐩紪鍙�" />
+          <el-input
+            v-model="oneInput"
+            placeholder="璇疯緭鍏ラ」鐩悕绉般€侀」鐩紪鍙�"
+            clearable
+            @clear="onNewClear"
+          />
         </el-col>
         <el-col :span="12"
           ><el-button @click="onNewRow">鏌ヨ</el-button></el-col
@@ -1426,15 +1431,15 @@ export default {
           id: 'otherData',
           newId: 'newOtherData'
         },
-        {
-          title: '瀹℃牳鎰忚',
-          id: 'opinion',
-          newId: 'newOpinion'
-        },
         {
           title: '涓婁紶闄勪欢',
           id: 'proBudget3',
           newId: 'newProBudget3'
+        },
+        {
+          title: '瀹℃牳鎰忚',
+          id: 'opinion',
+          newId: 'newOpinion'
         }
       ],
       isKm: false,
@@ -2602,16 +2607,27 @@ export default {
       data.dialogVisible = false;
     };
     const onNewRow = () => {
-      let newList = baseinfoData.projectTypeList.filter(
-        item =>
-          item.budgetName == data.oneInput || item.budgetCode == data.oneInput
-      );
+      let newList = [];
+      let reg = new RegExp(data.oneInput);
+      for (let i = 0; i < baseinfoData.projectTypeList.length; i++) {
+        if ( reg.source != '(?:)' &&
+          (reg.test(baseinfoData.projectTypeList[i].budgetName) ||
+          reg.test(baseinfoData.projectTypeList[i].budgetCode))
+        ) {
+          newList.push(baseinfoData.projectTypeList[i]);
+        }
+      }
+      console.log('newList', newList);
+
       if (newList.length > 0) {
         baseinfoData.projectTypeList = newList;
       } else {
         getProjectType();
       }
     };
+    const onNewClear = () => {
+      getProjectType();
+    };
     const seeView = row => {
       ProjectLibrary.getProjectLibrary(row.id).then(res => {
         data.newChankanData = res.data[0];
@@ -2677,7 +2693,8 @@ export default {
       moneyFormatter,
       onNewRow,
       seeView,
-      handleCloses
+      handleCloses,
+      onNewClear
     };
   }
 };
diff --git a/WebSite/src/views/yo-common/PublicFundApply/index.vue b/WebSite/src/views/yo-common/PublicFundApply/index.vue
index 420f4873..05f576c2 100644
--- a/WebSite/src/views/yo-common/PublicFundApply/index.vue
+++ b/WebSite/src/views/yo-common/PublicFundApply/index.vue
@@ -19,8 +19,9 @@
     </div>
     <div class="apply-table-wrap">
       <!-- <h2>{{ applyInfo.year }}骞村叕鐢ㄧ粡璐圭敵鎶ヨ〃</h2> -->
-      <h2>骞垮窞涓尰鑽ぇ瀛︼紙鏃ュ父鎬ч」鐩級椤圭洰缁╂晥鐩爣鐢虫姤琛╗褰掑彛閮ㄩ棬]</h2>
-      <h4 style="text-align: center">{{ year }}骞�</h4>
+      <!-- <h2>骞垮窞涓尰鑽ぇ瀛︼紙鏃ュ父鎬ч」鐩級椤圭洰缁╂晥鐩爣鐢虫姤琛╗褰掑彛閮ㄩ棬]</h2> -->
+      <h2>{{ year }}骞磠{ applyInfo.departmentName }}閮ㄩ棬鏃ュ父鍖呭共缁忚垂鐢虫姤琛�</h2>
+      <!-- <h4 style="text-align: center">{{ year }}骞�</h4> -->
       <h4 style="text-align: right">鍗曚綅锛氬厓</h4>
       <el-form :disabled="!CAN_EDIT" label-position="left">
         <el-card class="mt-20">
@@ -1005,10 +1006,12 @@ export default {
       data.applyInfo.departmentName = dept.name;
     };
     const getApplyDept = async () => {
+      console.log('111');
       const res = await Api.pfApplyDept();
       baseinfoData.applyDept = res.data;
       if (res.data && res.data.length > 0) {
         data.applyInfo.departmentCode = baseinfoData.applyDept[0].code;
+        data.applyInfo.departmentName = baseinfoData.applyDept[0].name;
       }
     };
     //涓嬫媺妗嗚Е搴曡Е椤跺姞杞�
-- 
GitLab


From 9db2dc23349d8bb3c22305d7e5487ceeaf6eb066 Mon Sep 17 00:00:00 2001
From: lshwy817 <lshwy817@163.com>
Date: Tue, 15 Nov 2022 14:16:25 +0800
Subject: [PATCH 5/9] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=8F=90=E4=BA=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 WebSite/src/views/main/basicQuota/publicInfo/index.vue     | 4 ++--
 WebSite/src/views/main/guikouPerformance-library/index.vue | 1 +
 WebSite/src/views/main/performance-library/index.vue       | 1 +
 WebSite/src/views/yo-common/PeopleFundApply/index.vue      | 2 +-
 WebSite/src/views/yo-common/ProjectFundApply/index.vue     | 4 ++++
 WebSite/src/views/yo-common/PublicFundApply/index.vue      | 1 -
 6 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/WebSite/src/views/main/basicQuota/publicInfo/index.vue b/WebSite/src/views/main/basicQuota/publicInfo/index.vue
index 1fe79b08..fc5ad877 100644
--- a/WebSite/src/views/main/basicQuota/publicInfo/index.vue
+++ b/WebSite/src/views/main/basicQuota/publicInfo/index.vue
@@ -89,7 +89,7 @@
           </el-select>
         </el-form-item>
         <el-form-item label="閮ㄩ棬鍚嶇О" prop="departmentName">
-          <el-select v-model="form.departmentName" placeholder="璇烽€夋嫨閮ㄩ棬鍚嶇О" @change="changeName">
+          <el-select v-model="form.departmentName" placeholder="璇烽€夋嫨閮ㄩ棬鍚嶇О" @change="changeName" filterable>
             <el-option v-for="item in nameList" :label="item.name" :value="item.name" :key="item.id"></el-option>
           </el-select>
         </el-form-item>
@@ -349,7 +349,7 @@ export default {
     const queryDeptPage = () => {
       ProjectLibrary.queryDeptPage({
         pageIndex: 1,
-        pageSize: 10,
+        pageSize: 2000,
       }).then((res) => {
         state.codeList = res.data;
         state.nameList = res.data;
diff --git a/WebSite/src/views/main/guikouPerformance-library/index.vue b/WebSite/src/views/main/guikouPerformance-library/index.vue
index 05ae51f4..a32e50b4 100644
--- a/WebSite/src/views/main/guikouPerformance-library/index.vue
+++ b/WebSite/src/views/main/guikouPerformance-library/index.vue
@@ -162,6 +162,7 @@ export default {
       ruleForm.value.validate(async valid => {
         if (valid) {
           state.form.year = state.checkInfo.year;
+          state.form.guikouEnable = 2;
           ProjectLibrary.saveProjectTarget(state.form).then(async res => {
             ElMessage.success('鏂板缓鎴愬姛');
             await queryProjectTargetOneList(false, res.data[0]);
diff --git a/WebSite/src/views/main/performance-library/index.vue b/WebSite/src/views/main/performance-library/index.vue
index 83cf4a3b..883d1f68 100644
--- a/WebSite/src/views/main/performance-library/index.vue
+++ b/WebSite/src/views/main/performance-library/index.vue
@@ -162,6 +162,7 @@ export default {
       ruleForm.value.validate(async valid => {
         if (valid) {
           state.form.year = state.checkInfo.year;
+          state.form.guikouEnable = 1;
           ProjectLibrary.saveProjectTarget(state.form).then(async res => {
             ElMessage.success('鏂板缓鎴愬姛');
             await queryProjectTargetOneList(false, res.data[0]);
diff --git a/WebSite/src/views/yo-common/PeopleFundApply/index.vue b/WebSite/src/views/yo-common/PeopleFundApply/index.vue
index 19fb537a..e047564d 100644
--- a/WebSite/src/views/yo-common/PeopleFundApply/index.vue
+++ b/WebSite/src/views/yo-common/PeopleFundApply/index.vue
@@ -72,7 +72,7 @@
           </el-table-column>
           <el-table-column label="澶囨敞" header-align="center">
             <template #default="scope">
-              <el-input v-model="scope.row.note"></el-input>
+              <el-input v-model="scope.row.note" type="textarea" autosize></el-input>
             </template>
           </el-table-column>
         </el-table>
diff --git a/WebSite/src/views/yo-common/ProjectFundApply/index.vue b/WebSite/src/views/yo-common/ProjectFundApply/index.vue
index 686f8be8..719de2af 100644
--- a/WebSite/src/views/yo-common/ProjectFundApply/index.vue
+++ b/WebSite/src/views/yo-common/ProjectFundApply/index.vue
@@ -441,6 +441,8 @@
                     placeholder="璇疯緭鍏�..."
                     v-model="scope.row.device"
                     :readonly="!canEdit"
+                    :disabled="(route == '/i/project-library/declare' ||
+                      route == '/i/project-library/declaretwo') && applyInfo.summary.target1 == '0' ? true : false"
                   ></InputNumber>
                 </template>
               </el-table-column>
@@ -455,6 +457,8 @@
                     placeholder="璇疯緭鍏�..."
                     v-model="scope.row.otherDevice"
                     :readonly="!canEdit"
+                    :disabled="(route == '/i/project-library/declare' ||
+                      route == '/i/project-library/declaretwo') && applyInfo.summary.target1 == '0' ? true : false"
                   ></InputNumber>
                 </template>
               </el-table-column>
diff --git a/WebSite/src/views/yo-common/PublicFundApply/index.vue b/WebSite/src/views/yo-common/PublicFundApply/index.vue
index 05f576c2..67103591 100644
--- a/WebSite/src/views/yo-common/PublicFundApply/index.vue
+++ b/WebSite/src/views/yo-common/PublicFundApply/index.vue
@@ -1006,7 +1006,6 @@ export default {
       data.applyInfo.departmentName = dept.name;
     };
     const getApplyDept = async () => {
-      console.log('111');
       const res = await Api.pfApplyDept();
       baseinfoData.applyDept = res.data;
       if (res.data && res.data.length > 0) {
-- 
GitLab


From e396b5ea7f7ccdcf266c4c6a235f83584d17d705 Mon Sep 17 00:00:00 2001
From: lshwy817 <lshwy817@163.com>
Date: Tue, 15 Nov 2022 15:51:20 +0800
Subject: [PATCH 6/9] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=8F=90=E4=BA=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../project-library/inSchool/components/List.vue  | 15 +++++++++++++--
 .../src/views/yo-common/PublicFundApply/index.vue | 12 ++++++------
 2 files changed, 19 insertions(+), 8 deletions(-)

diff --git a/WebSite/src/views/main/project-library/inSchool/components/List.vue b/WebSite/src/views/main/project-library/inSchool/components/List.vue
index 12131534..cb63432d 100644
--- a/WebSite/src/views/main/project-library/inSchool/components/List.vue
+++ b/WebSite/src/views/main/project-library/inSchool/components/List.vue
@@ -72,7 +72,13 @@
             }}</el-button>
           </template>
         </el-table-column>
-        <el-table-column label="鎵瑰" prop="replyName"> </el-table-column>
+        <el-table-column label="鎵瑰" prop="replyName">
+          <template #default="scope">
+            <el-button @click="toThree(scope.row)" type="text">{{
+              scope.row.replyName
+            }}</el-button>
+          </template>
+        </el-table-column>
       </el-table>
       <Pagination
         v-show="departInfo.total > 0"
@@ -168,6 +174,10 @@ export default {
       cxt.emit('switch-page', 'Detail', true, row.twoUPBookID);
       // }
     };
+    const toThree = row => {
+      console.log('row', row);
+      cxt.emit('switch-page', 'Detail', true, row.replyBookID);
+    };
     const getDepartPageInfo = () => {
       ProjectLibrary.queryProjectLibraryPage(state.checkInfo).then(res => {
         state.departInfo.tableData = res.data;
@@ -195,7 +205,8 @@ export default {
       queryDeptPage,
       toDetail,
       toOne,
-      toTwo
+      toTwo,
+      toThree
     };
   }
 };
diff --git a/WebSite/src/views/yo-common/PublicFundApply/index.vue b/WebSite/src/views/yo-common/PublicFundApply/index.vue
index 67103591..2603a784 100644
--- a/WebSite/src/views/yo-common/PublicFundApply/index.vue
+++ b/WebSite/src/views/yo-common/PublicFundApply/index.vue
@@ -193,7 +193,7 @@
             ></el-input>
           </el-form-item>
 
-          <el-form-item label="璁鸿瘉鎯呭喌姒傝堪">
+          <!-- <el-form-item label="璁鸿瘉鎯呭喌姒傝堪">
             <el-input v-model="applyInfo.note.plan" type="textarea"></el-input>
           </el-form-item>
 
@@ -202,10 +202,10 @@
               v-model="applyInfo.note.budget"
               type="textarea"
             ></el-input>
-          </el-form-item>
+          </el-form-item> -->
         </el-card>
 
-        <el-card class="mt-20">
+        <!-- <el-card class="mt-20">
           <template #header>
             鍒嗗勾搴﹁祫閲戦渶姹�
             <div class="mt-10">
@@ -256,7 +256,7 @@
               </template>
             </el-table-column>
           </el-table>
-        </el-card>
+        </el-card> -->
 
         <el-card class="mt-20">
           <template #header>
@@ -605,7 +605,7 @@
           </el-row>
         </el-card>
 
-        <el-card class="mt-20">
+        <!-- <el-card class="mt-20">
           <template #header>
             缁╂晥鐩爣
           </template>
@@ -633,7 +633,7 @@
               ></el-input>
             </el-form-item>
           </el-form>
-        </el-card>
+        </el-card> -->
         <el-card class="mt-20">
           <template #header>
             涓婁紶闄勪欢
-- 
GitLab


From 19c748483c7cd4fdd25bd23638bcb8a71bdd117c Mon Sep 17 00:00:00 2001
From: lshwy817 <lshwy817@163.com>
Date: Tue, 15 Nov 2022 16:35:26 +0800
Subject: [PATCH 7/9] =?UTF-8?q?=E4=BA=BA=E5=91=98=E5=9F=BA=E7=A1=80?=
 =?UTF-8?q?=E4=BF=A1=E6=81=AF=E6=90=9C=E7=B4=A2=E5=8A=9F=E8=83=BD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 WebSite/src/views/main/basicQuota/personInfo/index.vue | 6 +++---
 WebSite/src/views/main/basicQuota/publicInfo/index.vue | 2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/WebSite/src/views/main/basicQuota/personInfo/index.vue b/WebSite/src/views/main/basicQuota/personInfo/index.vue
index 23bda820..00ebe32c 100644
--- a/WebSite/src/views/main/basicQuota/personInfo/index.vue
+++ b/WebSite/src/views/main/basicQuota/personInfo/index.vue
@@ -80,12 +80,12 @@
         :rules="validList"
       >
         <el-form-item label="閮ㄩ棬缂栧彿" prop="departmentCode">
-          <el-select v-model="form.departmentCode" placeholder="璇烽€夋嫨閮ㄩ棬缂栧彿" @change="changeCode">
+          <el-select v-model="form.departmentCode" placeholder="璇烽€夋嫨閮ㄩ棬缂栧彿" @change="changeCode" filterable>
             <el-option v-for="item in codeList" :label="item.code" :value="item.code" :key="item.id"></el-option>
           </el-select>
         </el-form-item>
         <el-form-item label="閮ㄩ棬鍚嶇О" prop="departmentName">
-          <el-select v-model="form.departmentName" placeholder="璇烽€夋嫨閮ㄩ棬鍚嶇О" @change="changeName">
+          <el-select v-model="form.departmentName" placeholder="璇烽€夋嫨閮ㄩ棬鍚嶇О" @change="changeName" filterable>
             <el-option v-for="item in nameList" :label="item.name" :value="item.name" :key="item.id"></el-option>
           </el-select>
         </el-form-item>
@@ -384,7 +384,7 @@ export default {
     const queryDeptPage = () => {
       ProjectLibrary.queryDeptPage({
         pageIndex: 1,
-        pageSize: 10,
+        pageSize: 2000,
       }).then((res) => {
         state.codeList = res.data;
         state.nameList = res.data;
diff --git a/WebSite/src/views/main/basicQuota/publicInfo/index.vue b/WebSite/src/views/main/basicQuota/publicInfo/index.vue
index fc5ad877..00285fb1 100644
--- a/WebSite/src/views/main/basicQuota/publicInfo/index.vue
+++ b/WebSite/src/views/main/basicQuota/publicInfo/index.vue
@@ -84,7 +84,7 @@
         :rules="validList"
       >
         <el-form-item label="閮ㄩ棬缂栧彿" prop="departmentCode">
-          <el-select v-model="form.departmentCode" placeholder="璇烽€夋嫨閮ㄩ棬缂栧彿" @change="changeCode">
+          <el-select v-model="form.departmentCode" placeholder="璇烽€夋嫨閮ㄩ棬缂栧彿" @change="changeCode" filterable>
             <el-option v-for="item in codeList" :label="item.code" :value="item.code" :key="item.id"></el-option>
           </el-select>
         </el-form-item>
-- 
GitLab


From e36ed23d5109d8c20bd97102e3725446c667022b Mon Sep 17 00:00:00 2001
From: lshwy817 <lshwy817@163.com>
Date: Wed, 16 Nov 2022 13:43:27 +0800
Subject: [PATCH 8/9] =?UTF-8?q?=E7=94=B3=E6=8A=A5=E5=BA=93=E4=BF=AE?=
 =?UTF-8?q?=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../yo-common/ProjectFundApply/index.vue      | 1000 +++++++++--------
 1 file changed, 533 insertions(+), 467 deletions(-)

diff --git a/WebSite/src/views/yo-common/ProjectFundApply/index.vue b/WebSite/src/views/yo-common/ProjectFundApply/index.vue
index 719de2af..ff95e889 100644
--- a/WebSite/src/views/yo-common/ProjectFundApply/index.vue
+++ b/WebSite/src/views/yo-common/ProjectFundApply/index.vue
@@ -88,7 +88,13 @@
       </h2>
       <h4 style="text-align: center">{{ year }}骞�</h4>
       <h4 style="text-align: right">鍗曚綅锛氬厓</h4>
-      <el-form :disabled="!canEdit" label-position="left">
+      <el-form
+        ref="formRef"
+        :disabled="!canEdit"
+        label-position="left"
+        :model="applyInfo"
+        :rules="rules"
+      >
         <el-card :id="'baseInfo' + uid" class="mt-20">
           <template #header>
             鍩烘湰淇℃伅
@@ -343,44 +349,51 @@
           <template #header>
             椤圭洰姒傝堪
           </template>
-          <el-form
-            :disabled="!canEdit"
-            :model="applyInfo.summary"
-            :rules="rules"
-            label-position="left"
-            label-width="200px"
-            ref="formRef"
-          >
-            <!-- 涓婃捣澶у -->
-            <div class="formRef">
-              <el-form-item label="1銆侀」鐩珛椤逛緷鎹�" prop="basis">
-                <el-input
-                  v-model="applyInfo.summary.basis"
-                  type="textarea"
-                ></el-input>
-              </el-form-item>
-              <el-form-item label="2銆佸繀瑕佹€у拰鍙鎬ф杩�:" prop="terminfo">
-                <el-input
-                  v-model="applyInfo.summary.terminfo"
-                  type="textarea"
-                ></el-input>
-              </el-form-item>
+          <!-- 涓婃捣澶у -->
+          <div class="formRef">
+            <el-form-item
+              label="1銆侀」鐩珛椤逛緷鎹�"
+              prop="summary.basis"
+              label-width="200px"
+            >
+              <el-input
+                v-model="applyInfo.summary.basis"
+                type="textarea"
+              ></el-input>
+            </el-form-item>
+            <el-form-item
+              label="2銆佸繀瑕佹€у拰鍙鎬ф杩�:"
+              prop="summary.terminfo"
+              label-width="200px"
+            >
+              <el-input
+                v-model="applyInfo.summary.terminfo"
+                type="textarea"
+              ></el-input>
+            </el-form-item>
 
-              <el-form-item label="3銆侀」鐩杩�" prop="plan">
-                <el-input
-                  v-model="applyInfo.summary.plan"
-                  type="textarea"
-                ></el-input>
-              </el-form-item>
+            <el-form-item
+              label="3銆侀」鐩杩�"
+              prop="summary.plan"
+              label-width="200px"
+            >
+              <el-input
+                v-model="applyInfo.summary.plan"
+                type="textarea"
+              ></el-input>
+            </el-form-item>
 
-              <el-form-item label="4銆佷繚闅滄帾鏂�" prop="budget">
-                <el-input
-                  v-model="applyInfo.summary.budget"
-                  type="textarea"
-                ></el-input>
-              </el-form-item>
-            </div>
-          </el-form>
+            <el-form-item
+              label="4銆佷繚闅滄帾鏂�"
+              prop="summary.budget"
+              label-width="200px"
+            >
+              <el-input
+                v-model="applyInfo.summary.budget"
+                type="textarea"
+              ></el-input>
+            </el-form-item>
+          </div>
         </el-card>
 
         <el-card class="mt-20" :id="'moneyNeed' + uid">
@@ -405,7 +418,7 @@
             >
               <el-table-column type="selection" width="55" />
               <el-table-column label="骞村害" prop="area">
-                <!-- <template #default="scope">
+                <template #default="scope">
                   <el-date-picker
                     type="year"
                     placeholder="璇疯緭鍏�..."
@@ -413,7 +426,7 @@
                     v-model.number="scope.row.area"
                     :readonly="!canEdit"
                   ></el-date-picker>
-                </template> -->
+                </template>
               </el-table-column>
               <el-table-column
                 label="鐢虫姤閲戦"
@@ -421,14 +434,14 @@
                 align="right"
                 header-align="left"
               >
-                <!-- <template #default="scope">
+                <template #default="scope">
                   <InputNumber
                     placeholder="璇疯緭鍏�..."
                     v-model="scope.row.publicCar"
                     :readonly="!canEdit"
                     @change="getSummaries"
                   ></InputNumber>
-                </template> -->
+                </template>
               </el-table-column>
               <el-table-column
                 label="涓嬭揪閲戦"
@@ -441,8 +454,13 @@
                     placeholder="璇疯緭鍏�..."
                     v-model="scope.row.device"
                     :readonly="!canEdit"
-                    :disabled="(route == '/i/project-library/declare' ||
-                      route == '/i/project-library/declaretwo') && applyInfo.summary.target1 == '0' ? true : false"
+                    :disabled="
+                      (route == '/i/project-library/declare' ||
+                        route == '/i/project-library/declaretwo') &&
+                      applyInfo.summary.target1 == '0'
+                        ? true
+                        : false
+                    "
                   ></InputNumber>
                 </template>
               </el-table-column>
@@ -457,8 +475,13 @@
                     placeholder="璇疯緭鍏�..."
                     v-model="scope.row.otherDevice"
                     :readonly="!canEdit"
-                    :disabled="(route == '/i/project-library/declare' ||
-                      route == '/i/project-library/declaretwo') && applyInfo.summary.target1 == '0' ? true : false"
+                    :disabled="
+                      (route == '/i/project-library/declare' ||
+                        route == '/i/project-library/declaretwo') &&
+                      applyInfo.summary.target1 == '0'
+                        ? true
+                        : false
+                    "
                   ></InputNumber>
                 </template>
               </el-table-column>
@@ -479,144 +502,142 @@
               </div>
             </div>
           </template>
-          <el-form label-width="200px" label-position="left">
-            <el-table
-              :data="applyInfo.planSubjectList"
-              border
-              stripe
-              ref="budgetTableRef"
-              :summary-method="getSummaries"
-              show-summary
-              @selection-change="budgetTableSelectChange"
+          <!-- <el-form label-width="200px" label-position="left"> -->
+          <el-table
+            :data="applyInfo.planSubjectList"
+            border
+            stripe
+            ref="budgetTableRef"
+            :summary-method="getSummaries"
+            show-summary
+            @selection-change="budgetTableSelectChange"
+          >
+            <el-table-column type="selection"></el-table-column>
+            <el-table-column
+              label="鏀嚭鍐呭"
+              v-if="route == '/i/project-library/declare' ? false : true"
             >
-              <el-table-column type="selection"></el-table-column>
-              <el-table-column
-                label="鏀嚭鍐呭"
-                v-if="route == '/i/project-library/declare' ? false : true"
-              >
-                <template #default="scope">
-                  <div>
-                    <el-popover
-                      effect="light"
-                      trigger="hover"
-                      :disabled="!scope.row.subjectContent"
-                      placement="top"
-                      :show-after="500"
-                      :content="scope.row.subjectContent"
-                    >
-                      <template #reference>
-                        <el-input
-                          :readonly="!canEdit"
-                          v-model="scope.row.subjectContent"
-                          placeholder="璇疯緭鍏�..."
-                        ></el-input>
-                      </template>
-                    </el-popover>
-                  </div>
-                </template>
-              </el-table-column>
-              <!-- <el-table-column label="缁忔祹绉戠洰"> -->
-              <!-- //绔嬩俊 -->
-              <el-table-column>
-                <template #header>
-                  <span
-                    >{{
-                      route == '/i/project-library/declare' ||
-                      route == '/i/project-library/declaretwo'
-                        ? '缁忔祹绉戠洰'
-                        : '棰濆害鍚嶇О'
-                    }}
-                  </span>
-                </template>
-                <template #default="scope">
-                  <div>
-                    <el-popover
-                      effect="light"
-                      trigger="hover"
-                      placement="top"
-                      :show-after="500"
-                      :disabled="!scope.row.subjectName"
-                      :content="scope.row.subjectName"
-                    >
-                      <template #reference>
-                        <el-select
-                          :disabled="!canEdit"
-                          @change="
-                            value => fundSubjectChhange(value, scope.row)
-                          "
-                          filterable
-                          v-model="scope.row.subjectName"
-                          placeholder="璇疯緭鍏�..."
-                        >
-                          <el-option
-                            v-for="item in fundsList"
-                            :key="item.id"
-                            :label="item.name"
-                            :value="item.name"
-                          ></el-option>
-                        </el-select>
-                      </template>
-                    </el-popover>
-                  </div>
-                </template>
-              </el-table-column>
-              <!-- 绔嬩俊 -->
-              <!-- <el-table-column label="绉戠洰缂栧彿"> -->
-              <el-table-column>
-                <template #header>
-                  <span
-                    >{{
-                      route == '/i/project-library/declare' ||
-                      route == '/i/project-library/declaretwo'
-                        ? '绉戠洰缂栧彿'
-                        : '棰濆害缂栧彿'
-                    }}
-                  </span>
-                </template>
-                <template #default="scope">
-                  <div>
-                    <el-popover
-                      effect="light"
-                      trigger="hover"
-                      placement="top"
-                      :disabled="!scope.row.subjectCode"
-                      :show-after="500"
-                      :content="scope.row.subjectCode"
-                    >
-                      <template #reference>
-                        <el-input
-                          :readonly="true"
-                          v-model="scope.row.subjectCode"
-                          placeholder="璇疯緭鍏�..."
-                        ></el-input>
-                      </template>
-                    </el-popover>
-                  </div>
-                </template>
-              </el-table-column>
-              <el-table-column label="绉戠洰璇存槑">
-                <template #default="scope">
-                  <div>
-                    <el-popover
-                      effect="light"
-                      trigger="hover"
-                      :disabled="!scope.row.otherJson.fundDescribe"
-                      placement="top"
-                      :show-after="500"
-                      :content="scope.row.otherJson.fundDescribe"
-                    >
-                      <template #reference>
-                        <el-input
-                          :readonly="true"
-                          v-model="scope.row.otherJson.fundDescribe"
-                          placeholder="璇疯緭鍏�..."
-                        ></el-input>
-                      </template>
-                    </el-popover>
-                  </div>
-                </template>
-              </el-table-column>
-              <!-- <el-table-column label="鏁伴噺">
+              <template #default="scope">
+                <div>
+                  <el-popover
+                    effect="light"
+                    trigger="hover"
+                    :disabled="!scope.row.subjectContent"
+                    placement="top"
+                    :show-after="500"
+                    :content="scope.row.subjectContent"
+                  >
+                    <template #reference>
+                      <el-input
+                        :readonly="!canEdit"
+                        v-model="scope.row.subjectContent"
+                        placeholder="璇疯緭鍏�..."
+                      ></el-input>
+                    </template>
+                  </el-popover>
+                </div>
+              </template>
+            </el-table-column>
+            <!-- <el-table-column label="缁忔祹绉戠洰"> -->
+            <!-- //绔嬩俊 -->
+            <el-table-column>
+              <template #header>
+                <span
+                  >{{
+                    route == '/i/project-library/declare' ||
+                    route == '/i/project-library/declaretwo'
+                      ? '缁忔祹绉戠洰'
+                      : '棰濆害鍚嶇О'
+                  }}
+                </span>
+              </template>
+              <template #default="scope">
+                <div>
+                  <el-popover
+                    effect="light"
+                    trigger="hover"
+                    placement="top"
+                    :show-after="500"
+                    :disabled="!scope.row.subjectName"
+                    :content="scope.row.subjectName"
+                  >
+                    <template #reference>
+                      <el-select
+                        :disabled="!canEdit"
+                        @change="value => fundSubjectChhange(value, scope.row)"
+                        filterable
+                        v-model="scope.row.subjectName"
+                        placeholder="璇疯緭鍏�..."
+                      >
+                        <el-option
+                          v-for="item in fundsList"
+                          :key="item.id"
+                          :label="item.name"
+                          :value="item.name"
+                        ></el-option>
+                      </el-select>
+                    </template>
+                  </el-popover>
+                </div>
+              </template>
+            </el-table-column>
+            <!-- 绔嬩俊 -->
+            <!-- <el-table-column label="绉戠洰缂栧彿"> -->
+            <el-table-column>
+              <template #header>
+                <span
+                  >{{
+                    route == '/i/project-library/declare' ||
+                    route == '/i/project-library/declaretwo'
+                      ? '绉戠洰缂栧彿'
+                      : '棰濆害缂栧彿'
+                  }}
+                </span>
+              </template>
+              <template #default="scope">
+                <div>
+                  <el-popover
+                    effect="light"
+                    trigger="hover"
+                    placement="top"
+                    :disabled="!scope.row.subjectCode"
+                    :show-after="500"
+                    :content="scope.row.subjectCode"
+                  >
+                    <template #reference>
+                      <el-input
+                        :readonly="true"
+                        v-model="scope.row.subjectCode"
+                        placeholder="璇疯緭鍏�..."
+                      ></el-input>
+                    </template>
+                  </el-popover>
+                </div>
+              </template>
+            </el-table-column>
+            <el-table-column label="绉戠洰璇存槑">
+              <template #default="scope">
+                <div>
+                  <el-popover
+                    effect="light"
+                    trigger="hover"
+                    :disabled="!scope.row.otherJson.fundDescribe"
+                    placement="top"
+                    :show-after="500"
+                    :content="scope.row.otherJson.fundDescribe"
+                  >
+                    <template #reference>
+                      <el-input
+                        :readonly="true"
+                        v-model="scope.row.otherJson.fundDescribe"
+                        placeholder="璇疯緭鍏�..."
+                      ></el-input>
+                    </template>
+                  </el-popover>
+                </div>
+              </template>
+            </el-table-column>
+            <!-- <el-table-column label="鏁伴噺">
                 <template #default="scope">
                   <div>
                     <el-popover
@@ -682,52 +703,52 @@
                   </div>
                 </template>
               </el-table-column> -->
-              <el-table-column label="璧勯噾璁″垝瀹夋帓" prop="subtotal">
-                <template #default="scope">
-                  <div>
-                    <el-popover
-                      effect="light"
-                      trigger="hover"
-                      placement="top"
-                      :disabled="!scope.row.subtotal"
-                      :show-after="500"
-                      :content="scope.row.subtotal"
-                    >
-                      <template #reference>
-                        <InputNumber
-                          v-model="scope.row.subtotal"
-                          placeholder="璇疯緭鍏�..."
-                        ></InputNumber>
-                      </template>
-                    </el-popover>
-                  </div>
-                </template>
-              </el-table-column>
-              <el-table-column label="娴嬬畻渚濇嵁鍙婅鏄�">
-                <template #default="scope">
-                  <div>
-                    <el-popover
-                      effect="light"
-                      trigger="hover"
-                      placement="top"
-                      :disabled="!scope.row.otherJson.orgPurchase"
-                      :show-after="500"
-                      :content="scope.row.otherJson.orgPurchase"
-                    >
-                      <template #reference>
-                        <el-input
-                          :disabled="!canEdit"
-                          v-model="scope.row.otherJson.orgPurchase"
-                          type="textarea"
-                          placeholder="璇疯緭鍏�..."
-                        >
-                        </el-input>
-                      </template>
-                    </el-popover>
-                  </div>
-                </template>
-              </el-table-column>
-              <!-- <el-table-column label="璧勯噾鏉ユ簮">
+            <el-table-column label="璧勯噾璁″垝瀹夋帓" prop="subtotal">
+              <template #default="scope">
+                <div>
+                  <el-popover
+                    effect="light"
+                    trigger="hover"
+                    placement="top"
+                    :disabled="!scope.row.subtotal"
+                    :show-after="500"
+                    :content="scope.row.subtotal"
+                  >
+                    <template #reference>
+                      <InputNumber
+                        v-model="scope.row.subtotal"
+                        placeholder="璇疯緭鍏�..."
+                      ></InputNumber>
+                    </template>
+                  </el-popover>
+                </div>
+              </template>
+            </el-table-column>
+            <el-table-column label="娴嬬畻渚濇嵁鍙婅鏄�">
+              <template #default="scope">
+                <div>
+                  <el-popover
+                    effect="light"
+                    trigger="hover"
+                    placement="top"
+                    :disabled="!scope.row.otherJson.orgPurchase"
+                    :show-after="500"
+                    :content="scope.row.otherJson.orgPurchase"
+                  >
+                    <template #reference>
+                      <el-input
+                        :disabled="!canEdit"
+                        v-model="scope.row.otherJson.orgPurchase"
+                        type="textarea"
+                        placeholder="璇疯緭鍏�..."
+                      >
+                      </el-input>
+                    </template>
+                  </el-popover>
+                </div>
+              </template>
+            </el-table-column>
+            <!-- <el-table-column label="璧勯噾鏉ユ簮">
                 <template #default="scope">
                   <div>
                     <el-popover
@@ -774,102 +795,108 @@
                   </div>
                 </template>
               </el-table-column> -->
-              <el-table-column label="濉啓鏄庣粏" width="120">
-                <template #default="scope">
-                  <el-form>
-                    <el-button
-                      v-if="scope.row.extendFormId"
-                      type="primary"
-                      plain
-                      @click="openFindDetailed(scope.row)"
-                      >鏌ョ湅濉啓鏄庣粏</el-button
-                    >
-                  </el-form>
-                </template>
-              </el-table-column>
-            </el-table>
-          </el-form>
+            <el-table-column label="濉啓鏄庣粏" width="120">
+              <template #default="scope">
+                <el-form>
+                  <el-button
+                    v-if="scope.row.extendFormId"
+                    type="primary"
+                    plain
+                    @click="openFindDetailed(scope.row)"
+                    >鏌ョ湅濉啓鏄庣粏</el-button
+                  >
+                </el-form>
+              </template>
+            </el-table-column>
+          </el-table>
+          <!-- </el-form> -->
         </el-card>
-        <el-card class="mt-20" :id="'proMerits' + uid" v-show="isShowRadio">
+        <el-card class="mt-20" :id="'proMerits' + uid" v-if="isShowRadio">
           <template #header>
             缁╂晥鎸囨爣
           </template>
-          <el-form
+          <!-- <el-form
             :disabled="!canEdit"
             :model="applyInfo.projectTargetCmd.summaryJson"
             :rules="rules3"
             label-position="left"
             label-width="200px"
             ref="formRefs"
+          > -->
+          <el-form-item
+            label="椤圭洰鎬荤洰鏍囷細"
+            prop="projectTargetCmd.summaryJson.projectType"
           >
-            <el-form-item label="椤圭洰鎬荤洰鏍囷細" prop="projectType">
-              <el-input
-                v-model="applyInfo.projectTargetCmd.summaryJson.projectType"
-                type="textarea"
-              ></el-input>
-            </el-form-item>
-            <el-form-item label="鏈勾搴︾哗鏁堢洰鏍囷細" prop="yearGoal">
-              <el-input
-                v-model="applyInfo.projectTargetCmd.summaryJson.yearGoal"
-                type="textarea"
-              ></el-input>
-            </el-form-item>
-          </el-form>
-          <el-form
+            <el-input
+              v-model="applyInfo.projectTargetCmd.summaryJson.projectType"
+              type="textarea"
+            ></el-input>
+          </el-form-item>
+          <el-form-item
+            label="鏈勾搴︾哗鏁堢洰鏍囷細"
+            prop="projectTargetCmd.summaryJson.yearGoal"
+          >
+            <el-input
+              v-model="applyInfo.projectTargetCmd.summaryJson.yearGoal"
+              type="textarea"
+            ></el-input>
+          </el-form-item>
+          <!-- </el-form> -->
+          <!-- <el-form
             :disabled="!canEdit"
             :model="applyInfo.projectTargetCmd.subOtherArrayJson"
             :rules="newRule"
             label-position="left"
+          > -->
+          <el-table
+            border
+            stripe
+            :data="applyInfo.projectTargetCmd.subOtherArrayJson"
+            row-class-name="newRowClass"
           >
-            <el-table
-              border
-              stripe
-              :data="applyInfo.projectTargetCmd.subOtherArrayJson"
-              row-class-name="newRowClass"
-            >
-              <el-table-column label="涓€绾ф寚鏍�">
-                <template #default="scope">
-                  <div class="one-quota">
-                    <el-cascader
-                      popper-class="cascader-cus"
-                      ref="cascaderRef"
-                      @change="
-                        val => {
-                          cascaderChange(scope, val);
-                        }
+            <el-table-column label="涓€绾ф寚鏍�">
+              <template #default="scope">
+                <div class="one-quota">
+                  <el-cascader
+                    popper-class="cascader-cus"
+                    ref="cascaderRef"
+                    @change="
+                      val => {
+                        cascaderChange(scope, val);
+                      }
+                    "
+                    v-model="scope.row.one"
+                    :options="meritsTree"
+                    :props="meritsTreeProps"
+                    style="width: 100%;"
+                  >
+                    <template #default="{node, data}">
+                      <div v-if="data.children">{{ node.label }}</div>
+                      <div v-else @click="onClickNode(scope, node, data)">
+                        {{ node.label }}
+                      </div>
+                    </template>
+                  </el-cascader>
+                  <div class="icon-wrap">
+                    <el-button
+                      plain
+                      type="primary"
+                      icon="el-icon-circle-plus-outline"
+                      circle
+                      @click="addQuota(scope)"
+                    ></el-button>
+                    <el-button
+                      plain
+                      style="margin: 0;"
+                      type="danger"
+                      icon="el-icon-circle-close"
+                      circle
+                      :disabled="
+                        scope.row.one && scope.row.isXZ != true ? true : false
                       "
-                      v-model="scope.row.one"
-                      :options="meritsTree"
-                      :props="meritsTreeProps"
-                      style="width: 100%;"
-                    >
-                      <template #default="{node, data}">
-                        <div v-if="data.children">{{ node.label }}</div>
-                        <div v-else @click="onClickNode(scope, node, data)">
-                          {{ node.label }}
-                        </div>
-                      </template>
-                    </el-cascader>
-                    <div class="icon-wrap">
-                      <el-button
-                        plain
-                        type="primary"
-                        icon="el-icon-circle-plus-outline"
-                        circle
-                        @click="addQuota(scope)"
-                      ></el-button>
-                      <el-button
-                        plain
-                        style="margin: 0;"
-                        type="danger"
-                        icon="el-icon-circle-close"
-                        circle
-                        :disabled="
-                          scope.row.one && scope.row.isXZ != true ? true : false
-                        "
-                        @click="deleteQuota(scope)"
-                      ></el-button>
-                      <!-- <i
+                      @click="deleteQuota(scope)"
+                    ></el-button>
+                    <!-- <i
                       class="el-icon-circle-plus-outline add-icon"
                       @click="addQuota(scope)"
                     ></i>
@@ -877,56 +904,58 @@
                       class="el-icon-circle-close delete-icon"
                       @click="deleteQuota(scope)"
                     ></i> -->
-                    </div>
                   </div>
-                </template>
-              </el-table-column>
-              <el-table-column label="浜岀骇鎸囨爣">
-                <template #default="scope">
-                  <el-input
-                    disabled
-                    v-model="scope.row.two"
-                    class="newForms"
-                  ></el-input>
-                </template>
-              </el-table-column>
-              <el-table-column
-                label="涓夌骇鎸囨爣"
-                width="180"
-                class-name="newClasss"
-              >
-                <template #default="scope">
-                  <el-form-item prop="three" class="newForms"
-                    ><el-input v-model="scope.row.three"></el-input
-                  ></el-form-item>
-                </template>
-              </el-table-column>
-              <el-table-column label="瀹炴柦鍛ㄦ湡鎸囨爣鍊�">
-                <template #default="scope">
-                  <el-input
-                    v-model="scope.row.target"
-                    class="newForms"
-                  ></el-input>
-                </template>
-              </el-table-column>
-              <el-table-column label="鏈勾搴︽寚鏍囧€�">
-                <template #default="scope">
-                  <el-input
-                    v-model="scope.row.yearTarget"
-                    class="newForms"
-                  ></el-input>
-                </template>
-              </el-table-column>
-              <el-table-column label="澶囨敞">
-                <template #default="scope">
-                  <el-input
-                    v-model="scope.row.remark"
-                    class="newForms"
-                  ></el-input>
-                </template>
-              </el-table-column>
-            </el-table>
-          </el-form>
+                </div>
+              </template>
+            </el-table-column>
+            <el-table-column label="浜岀骇鎸囨爣">
+              <template #default="scope">
+                <el-input
+                  disabled
+                  v-model="scope.row.two"
+                  class="newForms"
+                ></el-input>
+              </template>
+            </el-table-column>
+            <el-table-column
+              label="涓夌骇鎸囨爣"
+              width="180"
+              class-name="newClasss"
+            >
+              <template #default="scope">
+                <el-form-item
+                  prop="projectTargetCmd.subOtherArrayJson.three"
+                  class="newForms"
+                  ><el-input v-model="scope.row.three"></el-input
+                ></el-form-item>
+              </template>
+            </el-table-column>
+            <el-table-column label="瀹炴柦鍛ㄦ湡鎸囨爣鍊�">
+              <template #default="scope">
+                <el-input
+                  v-model="scope.row.target"
+                  class="newForms"
+                ></el-input>
+              </template>
+            </el-table-column>
+            <el-table-column label="鏈勾搴︽寚鏍囧€�">
+              <template #default="scope">
+                <el-input
+                  v-model="scope.row.yearTarget"
+                  class="newForms"
+                ></el-input>
+              </template>
+            </el-table-column>
+            <el-table-column label="澶囨敞">
+              <template #default="scope">
+                <el-input
+                  v-model="scope.row.remark"
+                  class="newForms"
+                ></el-input>
+              </template>
+            </el-table-column>
+          </el-table>
+          <!-- </el-form> -->
         </el-card>
 
         <el-card class="mt-20" :id="'proBudget2' + uid" v-show="isKm">
@@ -978,59 +1007,59 @@
         </el-card>
         <el-card class="mt-20" :id="'opinion' + uid">
           <template #header> 瀹℃牳鎰忚</template>
-          <el-form>
-            <el-form-item
-              label="缁╂晥瀹℃牳鎰忚"
-              prop=""
-              v-if="applyInfo.identification == 0"
-            >
-              <el-input
-                :readonly="
-                  Boolean(
-                    applyInfo.flowCanShowOut &&
-                      applyInfo.flowCanShowOut.state != '褰掑彛閮ㄩ棬瀹℃牳'
-                  )
-                "
-                v-model="applyInfo.summary.opinion"
-                type="textarea"
-                :autosize="{ minRows: 2 }"
-              ></el-input
-            ></el-form-item>
-            <el-form-item
-              label="鏁翠綋瀹℃牳鎰忚"
-              prop=""
-              v-if="applyInfo.identification == 0"
-            >
-              <el-input
-                :readonly="
-                  Boolean(
-                    applyInfo.flowCanShowOut &&
-                      applyInfo.flowCanShowOut.state != '褰掑彛閮ㄩ棬瀹℃牳'
-                  )
-                "
-                v-model="applyInfo.summary.allOpinion"
-                type="textarea"
-                :autosize="{ minRows: 2 }"
-              ></el-input
-            ></el-form-item>
-            <el-form-item
-              label="鍒嗙鏍¢瀵煎鏍告剰瑙�"
-              prop=""
-              v-if="route == '/i/project-library/declaretwo'"
-            >
-              <el-input
-                v-model="applyInfo.summary.leaderOpinion"
-                :readonly="
-                  Boolean(
-                    applyInfo.flowCanShowOut &&
-                      applyInfo.flowCanShowOut.state != '鍒嗙鏍¢瀵煎鏍�'
-                  )
-                "
-                type="textarea"
-                :autosize="{ minRows: 2 }"
-              ></el-input
-            ></el-form-item>
-          </el-form>
+          <!-- <el-form> -->
+          <el-form-item
+            label="缁╂晥瀹℃牳鎰忚"
+            prop=""
+            v-if="applyInfo.identification == 0"
+          >
+            <el-input
+              :readonly="
+                Boolean(
+                  applyInfo.flowCanShowOut &&
+                    applyInfo.flowCanShowOut.state != '褰掑彛閮ㄩ棬瀹℃牳'
+                )
+              "
+              v-model="applyInfo.summary.opinion"
+              type="textarea"
+              :autosize="{ minRows: 2 }"
+            ></el-input
+          ></el-form-item>
+          <el-form-item
+            label="鏁翠綋瀹℃牳鎰忚"
+            prop=""
+            v-if="applyInfo.identification == 0"
+          >
+            <el-input
+              :readonly="
+                Boolean(
+                  applyInfo.flowCanShowOut &&
+                    applyInfo.flowCanShowOut.state != '褰掑彛閮ㄩ棬瀹℃牳'
+                )
+              "
+              v-model="applyInfo.summary.allOpinion"
+              type="textarea"
+              :autosize="{ minRows: 2 }"
+            ></el-input
+          ></el-form-item>
+          <el-form-item
+            label="鍒嗙鏍¢瀵煎鏍告剰瑙�"
+            prop=""
+            v-if="route == '/i/project-library/declaretwo'"
+          >
+            <el-input
+              v-model="applyInfo.summary.leaderOpinion"
+              :readonly="
+                Boolean(
+                  applyInfo.flowCanShowOut &&
+                    applyInfo.flowCanShowOut.state != '鍒嗙鏍¢瀵煎鏍�'
+                )
+              "
+              type="textarea"
+              :autosize="{ minRows: 2 }"
+            ></el-input
+          ></el-form-item>
+          <!-- </el-form> -->
         </el-card>
         <el-card class="mt-20" :id="'guikouPro' + uid" v-show="isShows">
           <template #header>
@@ -1267,9 +1296,7 @@ export default {
       type: Object,
       default: () => {
         return {
-          summaryJson: {
-            basis: ''
-          }, //椤圭洰姒傝堪
+          summaryJson: {}, //椤圭洰姒傝堪
           projectTargetCmd: {
             //椤圭洰缁╂晥
             summaryJson: {},
@@ -1326,6 +1353,7 @@ export default {
       return callback();
     };
     const onInputChangeNew = (rule, value, callback) => {
+      console.log('1111');
       const newList = data.applyInfo.projectTargetCmd.subOtherArrayJson;
       for (let i = 0; i < newList.length; i++) {
         if (
@@ -1337,6 +1365,7 @@ export default {
           );
         }
       }
+      return callback();
     };
     const data = reactive({
       year: sessionStorage.getItem('year'),
@@ -1358,50 +1387,86 @@ export default {
         ]
       },
       rules: {
-        basis: [
-          {
-            required: true,
-            trigger: 'blur',
-            message: '椤圭洰渚濇嵁涓嶈兘涓虹┖'
-          },
-          {
-            validator: onInputChange,
-            trigger: ['change', 'blur']
-          }
-        ],
-        budget: [
-          {
-            required: true,
-            trigger: 'blur',
-            message: '淇濋殰鎺柦涓嶈兘涓虹┖'
-          },
-          {
-            validator: onInputChange,
-            trigger: ['change', 'blur']
-          }
-        ],
-        terminfo: [
-          {
-            required: true,
-            trigger: 'blur',
-            message: '璇疯緭鍏ラ」鐩珛椤逛緷鎹�'
-          },
-          {
-            validator: onInputChange,
-            trigger: ['change', 'blur']
-          }
-        ],
-        plan: [
-          {
-            required: true,
-            trigger: 'blur',
-            message: '璇疯緭鍏ラ」鐩珛椤圭殑蹇呰鎬у強鍙鎬�'
+        summary: {
+          basis: [
+            {
+              required: true,
+              trigger: 'blur',
+              message: '椤圭洰渚濇嵁涓嶈兘涓虹┖'
+            },
+            {
+              validator: onInputChange,
+              trigger: ['change', 'blur']
+            }
+          ],
+          budget: [
+            {
+              required: true,
+              trigger: 'blur',
+              message: '淇濋殰鎺柦涓嶈兘涓虹┖'
+            },
+            {
+              validator: onInputChange,
+              trigger: ['change', 'blur']
+            }
+          ],
+          terminfo: [
+            {
+              required: true,
+              trigger: 'blur',
+              message: '璇疯緭鍏ラ」鐩珛椤逛緷鎹�'
+            },
+            {
+              validator: onInputChange,
+              trigger: ['change', 'blur']
+            }
+          ],
+          plan: [
+            {
+              required: true,
+              trigger: 'blur',
+              message: '璇疯緭鍏ラ」鐩珛椤圭殑蹇呰鎬у強鍙鎬�'
+            },
+            {
+              validator: onInputChange,
+              trigger: ['change', 'blur']
+            }
+          ]
+        },
+        projectTargetCmd: {
+          summaryJson: {
+            projectType: [
+              {
+                required: true,
+                trigger: 'blur',
+                message: '璇疯緭鍏ラ」鐩€荤洰鏍�'
+              },
+              {
+                validator: checkAmount,
+                trigger: 'blur'
+              }
+            ],
+            yearGoal: [
+              {
+                required: true,
+                trigger: 'blur',
+                message: '璇疯緭鍏ユ湰骞村害缁╂晥鐩爣'
+              },
+              {
+                validator: checkAmount,
+                trigger: 'blur'
+              }
+            ]
           },
-          {
-            validator: onInputChange,
-            trigger: ['change', 'blur']
+          subOtherArrayJson: {
+            three: [
+              {
+                validator: onInputChangeNew,
+                trigger: ['change', 'blur']
+              }
+            ]
           }
-        ]
+        }
       },
       isShowRadio: true,
       stepList: [
@@ -1666,17 +1731,16 @@ export default {
           data.applyInfo.summary.moneySubjectList =
             data.applyInfo.moneySubjectList;
         }
-        if (data.isShowRadio) {
-          data.formRefs.validate(vid => {
-            if (!vid) {
-              ElMessage.warning('璇峰皢淇℃伅琛ュ厖瀹屾暣');
-              falgs = 1;
-              return false;
-            } else {
-              falgs = 0;
-            }
-          });
-        }
+        // if (data.isShowRadio) {
+        //   // data.formRefs.validate(vid => {
+        //     // if (!vid) {
+        //     //   ElMessage.warning('璇峰皢淇℃伅琛ュ厖瀹屾暣');
+        //       falgs = 1;
+        //     //   return false;
+        //     // } else {
+        //     // }
+        //   // });
+        // }
         if (falgs == 0) {
           const applyInfo = JSON.parse(JSON.stringify(data.applyInfo));
           applyInfo.summaryJson = JSON.stringify(applyInfo.summary);
@@ -2104,6 +2168,7 @@ export default {
     const fundSubjectChhange = (value, row) => {
       const fund = budgetData.fundsList.find(item => item.name == value);
       row.subjectCode = fund.code;
+      row.subjectId = fund.id;
       row.otherJson.fundDescribe = fund.fundDescribe;
       row.number = 0;
       row.price = 0;
@@ -2614,9 +2679,10 @@ export default {
       let newList = [];
       let reg = new RegExp(data.oneInput);
       for (let i = 0; i < baseinfoData.projectTypeList.length; i++) {
-        if ( reg.source != '(?:)' &&
+        if (
+          reg.source != '(?:)' &&
           (reg.test(baseinfoData.projectTypeList[i].budgetName) ||
-          reg.test(baseinfoData.projectTypeList[i].budgetCode))
+            reg.test(baseinfoData.projectTypeList[i].budgetCode))
         ) {
           newList.push(baseinfoData.projectTypeList[i]);
         }
-- 
GitLab


From 8dbcc52c8bfb6f3a6069fcd73486ac5614293f97 Mon Sep 17 00:00:00 2001
From: lshwy817 <lshwy817@163.com>
Date: Thu, 17 Nov 2022 09:12:42 +0800
Subject: [PATCH 9/9] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=8F=90=E4=BA=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 WebSite/src/api/projectFundApply.js           |  2 +-
 .../yo-common/ProjectFundApply/index.vue      | 32 +++++++++++--------
 .../first/PuplicFundApply/components/List.vue |  3 +-
 .../SecondPuplicFundApply/components/List.vue |  3 +-
 4 files changed, 23 insertions(+), 17 deletions(-)

diff --git a/WebSite/src/api/projectFundApply.js b/WebSite/src/api/projectFundApply.js
index 88557907..f66da366 100644
--- a/WebSite/src/api/projectFundApply.js
+++ b/WebSite/src/api/projectFundApply.js
@@ -37,7 +37,7 @@ export default {
   },
   //閫氳繃椤圭洰绫诲瀷ID鏌ユ壘缁忔祹绉戠洰
   projectFundqueryFundList(id) {
-    return request.post(`fund/queryFundListByBudgetId?budgetInfoId=${id}`);
+    return request.post(`fund/queryFundListByBudgetId?budgetInfoId=${id}&v=${new Date().getUTCMilliseconds()}`);
   },
   //鑾峰彇鍔ㄦ€佽〃鏍兼暟鎹�
   projectFundGetTableConfig(extendName) {
diff --git a/WebSite/src/views/yo-common/ProjectFundApply/index.vue b/WebSite/src/views/yo-common/ProjectFundApply/index.vue
index ff95e889..187830e7 100644
--- a/WebSite/src/views/yo-common/ProjectFundApply/index.vue
+++ b/WebSite/src/views/yo-common/ProjectFundApply/index.vue
@@ -345,10 +345,8 @@
           >
         </el-card>
 
-        <el-card class="mt-20" :id="'proIntro' + uid" v-if="applyInfo.summary">
-          <template #header>
-            椤圭洰姒傝堪
-          </template>
+        <el-card class="mt-20" :id="'proIntro' + uid">
+          <template #header> 椤圭洰姒傝堪</template>
           <!-- 涓婃捣澶у -->
           <div class="formRef">
             <el-form-item
@@ -1377,15 +1375,15 @@ export default {
       formRef: null,
       formRefs: null,
 
-      rules2: {
-        basis: [
-          {
-            required: true,
-            message: '椤圭洰渚濇嵁涓嶈兘涓虹┖',
-            trigger: 'blur'
-          }
-        ]
-      },
+      // rules2: {
+      //   basis: [
+      //     {
+      //       required: true,
+      //       message: '椤圭洰渚濇嵁涓嶈兘涓虹┖',
+      //       trigger: 'blur'
+      //     }
+      //   ]
+      // },
       rules: {
         summary: {
           basis: [
@@ -2513,12 +2511,18 @@ export default {
               name: applyInfo.departmentName
             });
           }
+
           data.applyInfo = applyInfo;
         } else {
           data.applyInfo = {
             year: window.sessionStorage.getItem('year'),
             attachmentInfoOutList: [],
-            summary: {},
+            summary: {
+              basis: '',
+              terminfo: '',
+              plan: '',
+              budget: ''
+            },
             summaryJson: {}, //椤圭洰姒傝堪
             projectTargetCmd: {
               //椤圭洰缁╂晥
diff --git a/WebSite/src/views/yo-dept-bz/first/PuplicFundApply/components/List.vue b/WebSite/src/views/yo-dept-bz/first/PuplicFundApply/components/List.vue
index e88389d5..e76a238b 100644
--- a/WebSite/src/views/yo-dept-bz/first/PuplicFundApply/components/List.vue
+++ b/WebSite/src/views/yo-dept-bz/first/PuplicFundApply/components/List.vue
@@ -50,6 +50,7 @@
         :primaryKey="primaryKey"
         v-model:selectedList="selectedList"
         @pageinfo-change="pageInfoChange"
+        :showSum="true"
       >
         <template #tableColumn="{scope}">
           <el-button type="primary" @click="navToDetail(scope.row)">{{
@@ -94,7 +95,7 @@ export default {
         { prop: 'departmentCode', label: '閮ㄩ棬缂栧彿' },
         { prop: 'projectLeaderName', label: '璐熻矗浜哄悕绉�' },
         { prop: 'projectLeaderCode', label: '璐熻矗浜虹紪鍙�' },
-        { prop: 'totalMoney', label: '鐢虫姤閲戦' },
+        { prop: 'totalMoney', label: '鐢虫姤閲戦', isSum: true },
         { prop: 'quotaMoney', label: '鏍稿畾閲戦' },
         { prop: 'state', label: '瀹℃牳鐘舵€�' }
       ],
diff --git a/WebSite/src/views/yo-dept-bz/second/SecondPuplicFundApply/components/List.vue b/WebSite/src/views/yo-dept-bz/second/SecondPuplicFundApply/components/List.vue
index fa0ce344..84341c17 100644
--- a/WebSite/src/views/yo-dept-bz/second/SecondPuplicFundApply/components/List.vue
+++ b/WebSite/src/views/yo-dept-bz/second/SecondPuplicFundApply/components/List.vue
@@ -49,6 +49,7 @@
         :primaryKey="primaryKey"
         v-model:selectedList="selectedList"
         @pageinfo-change="pageInfoChange"
+        :showSum="true"
       >
         <template #tableColumn="{scope}">
           <el-button type="primary" @click="navToDetail(scope.row)">{{
@@ -93,7 +94,7 @@ export default {
         { prop: 'departmentCode', label: '閮ㄩ棬缂栧彿' },
         { prop: 'projectLeaderName', label: '璐熻矗浜哄悕绉�' },
         { prop: 'projectLeaderCode', label: '璐熻矗浜虹紪鍙�' },
-        { prop: 'totalMoney', label: '鐢虫姤閲戦' },
+        { prop: 'totalMoney', label: '鐢虫姤閲戦', isSum: true },
         { prop: 'quotaMoney', label: '鏍稿畾閲戦' },
         { prop: 'state', label: '瀹℃牳鐘舵€�' }
       ],
-- 
GitLab