From fb16e99d60035949b870d0bed7f38b452458000a Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期四, 15 十月 2026 15:10:00 +0800
Subject: [PATCH] 修改了专家费校验和附件名字校验

---
 src/views/project/donorcharge/donorchargedetail/index.vue |  116 +++++++++++++++++++++++++++++----------------------------
 1 files changed, 59 insertions(+), 57 deletions(-)

diff --git a/src/views/project/donorcharge/donorchargedetail/index.vue b/src/views/project/donorcharge/donorchargedetail/index.vue
index 6f51a7d..e4b94c7 100644
--- a/src/views/project/donorcharge/donorchargedetail/index.vue
+++ b/src/views/project/donorcharge/donorchargedetail/index.vue
@@ -20,7 +20,7 @@
                   v-for="dict in dict.type.sys_user_sex"
                   :key="dict.label"
                   :label="dict.label"
-                  :value="parseInt(dict.value)"
+                  :value="dict.value"
                 ></el-option>
               </el-select>
             </el-form-item>
@@ -134,6 +134,7 @@
                 <el-input
                   v-model="scope.row.organname"
                   placeholder="鍣ㄥ畼鍚嶇О"
+                  :disabled="true"
                 />
               </template>
             </el-table-column>
@@ -144,7 +145,11 @@
               prop="caseno"
             >
               <template slot-scope="scope">
-                <el-input v-model="scope.row.caseno" placeholder="绯荤粺缂栧彿" />
+                <el-input
+                  v-model="scope.row.caseno"
+                  placeholder="绯荤粺缂栧彿"
+                  :disabled="true"
+                />
               </template>
             </el-table-column>
             <el-table-column
@@ -154,7 +159,11 @@
               width="150"
             >
               <template slot-scope="scope">
-                <el-input v-model="scope.row.amount" placeholder="瀹炴敹閲戦" />
+                <el-input
+                  v-model="scope.row.amount"
+                  placeholder="瀹炴敹閲戦"
+                  :disabled="true"
+                />
               </template>
             </el-table-column>
             <el-table-column
@@ -166,10 +175,11 @@
               <template slot-scope="scope">
                 <el-date-picker
                   clearable
+                  :disabled="true"
                   size="small"
                   style="width: 100%"
                   v-model="scope.row.amounttime"
-                  type="date"
+                  type="date" format="yyyy-MM-dd"
                   value-format="yyyy-MM-dd HH:mm:ss"
                   placeholder="瀹炴敹鏃堕棿"
                 >
@@ -186,21 +196,23 @@
                 <el-input
                   v-model="scope.row.organcharge"
                   placeholder="鏍囧噯璐圭敤"
+                  :disabled="true"
                 />
               </template>
             </el-table-column>
             <el-table-column
-              prop="hospitalname"
+              prop="hospitalno"
               align="center"
               label="鎺ユ敹鍖婚櫌"
               width="280"
             >
               <template slot-scope="scope">
                 <org-selecter
+                  v-model="scope.row.hospitalno"
                   ref="tranHosSelect"
                   :org-type="'4'"
-                  v-model="scope.row.hospitalno"
                   style="width: 100%"
+                  :disabled="true"
                 />
               </template>
             </el-table-column>
@@ -211,7 +223,10 @@
               prop="name"
             >
               <template slot-scope="scope">
-                <el-input v-model="scope.row.name" placeholder="鍙椾綋濮撴皬" />
+                <el-input
+                  v-model="scope.row.name"
+                  placeholder="鍙椾綋濮撴皬"
+                />
               </template>
             </el-table-column>
             <el-table-column
@@ -223,10 +238,11 @@
               <template slot-scope="scope">
                 <el-date-picker
                   clearable
+                  :disabled="true"
                   size="small"
                   style="width: 100%"
                   v-model="scope.row.organtime"
-                  type="date"
+                  type="date" format="yyyy-MM-dd"
                   value-format="yyyy-MM-dd HH:mm:ss"
                   placeholder="绉绘鏃堕棿"
                 >
@@ -234,7 +250,7 @@
               </template>
             </el-table-column>
             <el-table-column prop="organchargedesc" align="center" label="澶囨敞">
-              <template slot-scope="scope">
+              <template slot-scope="scope" width="300">
                 <el-input
                   v-model="scope.row.organchargedesc"
                   placeholder="澶囨敞"
@@ -246,12 +262,12 @@
       </el-form>
       <div slot="footer" class="dialog-footer">
         <el-button
-          type="primary"
+          type="success"
           @click="submitForm"
           v-if="operationType == 'add' || operationType == 'update'"
           >淇� 瀛�</el-button
         >
-        <el-button type="primary" @click="cancel">鍏抽棴</el-button>
+        <el-button type="info" @click="cancel">鍏抽棴</el-button>
       </div>
     </div>
   </div>
@@ -278,6 +294,7 @@
 import Li_area_select from "@/components/Address";
 import { getUserProfile } from "@/api/system/user";
 import { getToken } from "@/utils/auth";
+import { moneySum, moneyRound } from "@/utils/money";
 import debounce from "lodash/debounce";
 export default {
   components: {
@@ -292,7 +309,6 @@
     return {
       activeName: 1, //鏂囦欢绫诲瀷
       // 閮ㄩ棬鏍戦�夐」
-
       //绁ㄦ嵁鏂囦欢
       pdftitle: "",
       pdfimg: "",
@@ -335,8 +351,6 @@
       donorchargeorgans: [],
       // 寮瑰嚭灞傛爣棰�
       title: "",
-      // 鏄惁鏄剧ず寮瑰嚭灞�
-      open: false,
       // 鏌ヨ璐圭敤琛ㄥ弬鏁�
       queryParams: {
         pageNum: 1,
@@ -353,7 +367,6 @@
         pageSize: 10,
         donorchargeid: null
       },
-
       // 褰撳墠鐢ㄦ埛淇℃伅
       userprofile: {},
       // 琛ㄥ崟鍙傛暟
@@ -402,7 +415,6 @@
       headers: {
         Authorization: "Bearer " + getToken()
       },
-
       jurisdiction: false,
 
       //淇濆瓨鎸夐挳鎺у埗
@@ -420,7 +432,6 @@
       this.defaultperson = response.data;
       this.standardlevel = response.data.standardlevel;
     });
-
     //鑾峰彇鍙傛暟
     this.getroute();
   },
@@ -553,7 +564,6 @@
     /** 鏂板鎸夐挳鎿嶄綔 */
     handleAdd() {
       this.reset();
-      this.open = true;
       this.title = "鏂板鎹愮尞妗堜緥鍣ㄥ畼璐圭敤琛�";
 
       if (this.curCase) {
@@ -586,7 +596,6 @@
               if (res1.code == 200) {
                 this.organchargelist = res1.rows;
               }
-
               //鎻掑叆鍣ㄥ畼琛�
               res.rows.forEach(item => {
                 //鑾峰彇璐圭敤閲戦
@@ -594,11 +603,12 @@
                   if (rescharge.organcode == item.organno) {
                     this.donorchargeorgans.push({
                       organno: item.organno,
+                      caseno: item.caseno,
                       organname: item.organname,
                       organcharge: rescharge.charge,
                       infoid: item.infoid,
-                      hospitalname: item.transplanthospitalname,
-                      hospitalno: item.transplanthospitalno,
+                      hospitalname: item.hospitalname,
+                      hospitalno: item.hospitalno,
                       organtime: item.transplanttime,
                       chargestate: "0"
                     });
@@ -614,13 +624,11 @@
     /** 淇敼鎸夐挳鎿嶄綔 */
     handleUpdate() {
       this.reset();
-      this.open = true;
       this.title = "淇敼鎹愮尞妗堜緥鍣ㄥ畼璐圭敤琛�";
 
       getDonorcharge(this.curId).then(response => {
         this.form = response.data;
         console.log("getDonorcharge", response);
-
         //鍣ㄥ畼璐圭敤淇℃伅
         this.organParams.donorchargeid = this.curId;
         console.log("this.organParams", this.organParams);
@@ -639,11 +647,9 @@
     /** 淇敼鏌ョ湅鎿嶄綔 */
     handleDetail() {
       this.reset();
-      this.open = true;
 
       getDonorcharge(this.curId).then(response => {
         this.form = response.data;
-        this.open = true;
         this.title = "鏌ョ湅鎹愮尞妗堜緥鍣ㄥ畼璐圭敤琛�";
 
         //鍣ㄥ畼璐圭敤淇℃伅
@@ -662,27 +668,23 @@
     submitForm: debounce(function(data) {
       this.$refs["form"].validate(valid => {
         if (valid) {
-          //鏍¢獙銆佽垂鐢ㄥ悎璁�
-          let ChargeSum = 0;
-          let ChargeamountSum = 0;
+          //鏍¢獙銆佽垂鐢ㄥ悎璁★紙閲戦涓�寰嬭蛋绮剧‘杩愮畻锛�
           let organname = "";
 
           try {
             for (let i = 0; i < this.donorchargeorgans.length; i++) {
               organname += this.donorchargeorgans[i].organname + ",";
-              if (!isNaN(parseFloat(this.donorchargeorgans[i].organcharge))) {
-                ChargeSum += parseFloat(this.donorchargeorgans[i].organcharge);
-              }
-              if (!isNaN(parseFloat(this.donorchargeorgans[i].amount))) {
-                ChargeamountSum += parseFloat(this.donorchargeorgans[i].amount);
-              }
             }
             this.form.donateorgan = organname.substring(
               0,
               organname.lastIndexOf(",")
             );
-            this.form.chargeamount = ChargeSum.toFixed(2);
-            this.form.chargeamounted = ChargeamountSum.toFixed(2);
+            this.form.chargeamount = moneyRound(
+              moneySum(this.donorchargeorgans, "organcharge")
+            ).toFixed(2);
+            this.form.chargeamounted = moneyRound(
+              moneySum(this.donorchargeorgans, "amount")
+            ).toFixed(2);
           } catch {}
 
           //淇濆瓨
@@ -690,13 +692,13 @@
             for (let k = 0; k < this.donorchargeorgans.length; k++) {
               this.donorchargeorgans[k].donorchargeID = this.form.id;
             }
-
             updateDonorcharge(this.form).then(res1 => {
               if (res1.code == 200) {
                 saveDonorchargeorgan(this.donorchargeorgans).then(res2 => {
                   if (res2.code == 200) {
                     this.$modal.msgSuccess("淇濆瓨鎴愬姛锛�");
-                    this.open = false;
+        this.$router.go(-1);
+                    
                   }
                 });
               }
@@ -712,7 +714,8 @@
                 saveDonorchargeorgan(this.donorchargeorgans).then(res2 => {
                   if (res2.code == 200) {
                     this.$modal.msgSuccess("淇濆瓨鎴愬姛锛�");
-                    this.open = false;
+        this.$router.go(-1);
+
                   }
                 });
               }
@@ -722,24 +725,16 @@
       });
     }, 500),
 
-    //璁$畻璐圭敤鍚堣
+    //璁$畻璐圭敤鍚堣锛堥噾棰濅竴寰嬭蛋绮剧‘杩愮畻锛�
     chargeSum() {
-      let ChargeSum = 0;
-      let ChargeamountSum = 0;
-
       //璐圭敤鍚堣
       try {
-        for (let i = 0; i < this.donorchargeorgans.length; i++) {
-          if (!isNaN(parseFloat(this.donorchargeorgans[i].organcharge))) {
-            ChargeSum += parseFloat(this.donorchargeorgans[i].organcharge);
-          }
-          if (!isNaN(parseFloat(this.donorchargeorgans[i].amount))) {
-            ChargeamountSum += parseFloat(this.donorchargeorgans[i].amount);
-          }
-        }
-
-        this.form.chargeamount = ChargeSum.toFixed(2);
-        this.form.chargeamounted = ChargeamountSum.toFixed(2);
+        this.form.chargeamount = moneyRound(
+          moneySum(this.donorchargeorgans, "organcharge")
+        ).toFixed(2);
+        this.form.chargeamounted = moneyRound(
+          moneySum(this.donorchargeorgans, "amount")
+        ).toFixed(2);
       } catch {}
     },
 
@@ -750,12 +745,13 @@
       var columnnames = [
         "organno",
         "organname",
-        "amount",
+        "caseno",
         "amounttime",
-        "organcharge",
+        "name",
         "hospitalname",
         "organtime",
-        "remark"
+        "remark",
+        'organchargedesc'
       ];
       columns.forEach((column, index) => {
         if (index === 0) {
@@ -864,6 +860,12 @@
     text-align: center;
   }
 }
+::v-deep .el-input.is-disabled .el-input__inner {
+    background-color: #F5F7FA;
+    border-color: #dfe4ed;
+    color: #000000;
+    cursor: not-allowed;
+}
 
 ::v-deep .el-input--medium .el-input__inner {
   height: 36px;

--
Gitblit v1.9.3