From 64a95255d239d7e97f7417d431cc2ddd7e63c11e Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期五, 11 七月 2025 16:06:37 +0800
Subject: [PATCH] 11

---
 src/views/project/donationdetails/index.vue |  557 ++++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 381 insertions(+), 176 deletions(-)

diff --git a/src/views/project/donationdetails/index.vue b/src/views/project/donationdetails/index.vue
index 2ee854c..488908c 100644
--- a/src/views/project/donationdetails/index.vue
+++ b/src/views/project/donationdetails/index.vue
@@ -230,7 +230,7 @@
                     placeholder="璇烽�夋嫨璇佷欢绫诲瀷"
                   >
                     <el-option
-                      v-for="dict in dict.type.sys_IDType"
+                      v-for="dict in dict.type.sys_IDType || []"
                       :key="dict.value"
                       :label="dict.label"
                       :value="parseInt(dict.value)"
@@ -268,7 +268,7 @@
                 <el-form-item label="鎬у埆" prop="sex">
                   <el-select v-model="form.sex" placeholder="璇疯緭鍏ユ�у埆">
                     <el-option
-                      v-for="dict in dict.type.sys_user_sex"
+                      v-for="dict in dict.type.sys_user_sex || []"
                       :key="dict.label"
                       :label="dict.label"
                       :value="parseInt(dict.value)"
@@ -381,7 +381,7 @@
               <el-form-item label="姘戞棌" prop="nation">
                 <el-select v-model="form.nation" placeholder="璇烽�夋嫨姘戞棌">
                   <el-option
-                    v-for="dict in dict.type.sys_nation"
+                    v-for="dict in dict.type.sys_nation || []"
                     :key="dict.value"
                     :label="dict.label"
                     :value="dict.value"
@@ -405,7 +405,7 @@
               <el-form-item label="鑱屼笟" prop="occupation">
                 <el-select v-model="form.occupation" placeholder="璇烽�夋嫨鑱屼笟">
                   <el-option
-                    v-for="dict in dict.type.sys_occupation"
+                    v-for="dict in dict.type.sys_occupation || []"
                     :key="dict.value"
                     :label="dict.label"
                     :value="dict.value"
@@ -417,12 +417,36 @@
               <el-form-item label="瀛﹀巻" prop="education">
                 <el-select v-model="form.education" placeholder="璇烽�夋嫨瀛﹀巻">
                   <el-option
-                    v-for="dict in dict.type.sys_education"
+                    v-for="dict in dict.type.sys_education || []"
                     :key="dict.value"
                     :label="dict.label"
                     :value="dict.value"
                   ></el-option>
                 </el-select>
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-row>
+            <el-col :span="6">
+              <el-form-item label="褰撳墠鍖荤枟鏈烘瀯" prop="occupation">
+                <el-input v-model="form.currentMedicalInstitution" placeholder="璇疯緭鍏�" />
+              </el-form-item>
+            </el-col>
+            <el-col :span="10">
+              <el-form-item label-width="130px" label="褰撳墠鍖荤枟鏈烘瀯绉戝" prop="education">
+                <el-input v-model="form.currentDept" placeholder="璇疯緭鍏�" />
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-row>
+            <el-col :span="6">
+              <el-form-item label="棣栨鍖荤枟鏈烘瀯" prop="occupation">
+                <el-input v-model="form.firstMedicalInstitution" placeholder="璇疯緭鍏�" />
+              </el-form-item>
+            </el-col>
+            <el-col :span="10">
+              <el-form-item label-width="130px" label="棣栨鍖荤枟鏈烘瀯绉戝" prop="education">
+                <el-input v-model="form.firstDept" placeholder="璇疯緭鍏�" />
               </el-form-item>
             </el-col>
           </el-row>
@@ -470,7 +494,7 @@
               <el-form-item align="left" label="琛�鍨�" prop="bloodtype">
                 <el-radio-group v-model="form.bloodtype">
                   <el-radio
-                    v-for="dict in dict.type.sys_BloodType"
+                    v-for="dict in dict.type.sys_BloodType || []"
                     :key="dict.value"
                     :label="dict.value"
                     >{{ dict.label }}</el-radio
@@ -482,7 +506,7 @@
               <el-form-item label="Rh(D)" align="left" prop="rhyin">
                 <el-radio-group v-model="form.rhyin">
                   <el-radio
-                    v-for="dict in dict.type.sys_bloodtype_rhd"
+                    v-for="dict in dict.type.sys_bloodtype_rhd || []"
                     :key="dict.value"
                     :label="dict.value"
                     >{{ dict.label }}</el-radio
@@ -495,7 +519,7 @@
             <el-form-item label="鐤剧梾绫诲瀷" align="left">
               <el-checkbox-group v-model="form.diseasetype">
                 <el-checkbox
-                  v-for="dict in dict.type.sys_DiseaseType"
+                  v-for="dict in dict.type.sys_DiseaseType || []"
                   :key="dict.value"
                   :label="dict.value"
                 >
@@ -515,7 +539,7 @@
               <el-form-item align="left" label="浼犳煋鐥�">
                 <el-checkbox-group v-model="form.infectious">
                   <el-checkbox
-                    v-for="dict in dict.type.sys_Infectious"
+                    v-for="dict in dict.type.sys_Infectious || []"
                     :key="dict.value"
                     :label="dict.value"
                   >
@@ -538,7 +562,7 @@
               <el-form-item align="left" label="鐥呬汉鐘跺喌">
                 <el-checkbox-group v-model="form.patientstate">
                   <el-checkbox
-                    v-for="dict in dict.type.sys_patientstate"
+                    v-for="dict in dict.type.sys_patientstate || []"
                     :key="dict.value"
                     :label="dict.value"
                   >
@@ -551,7 +575,7 @@
               <el-form-item label="鍏朵粬鎯呭喌">
                 <el-checkbox-group v-model="form.othercases">
                   <el-checkbox
-                    v-for="dict in dict.type.sys_OtherCases"
+                    v-for="dict in dict.type.sys_OtherCases || []"
                     :key="dict.value"
                     :label="dict.value"
                   >
@@ -573,7 +597,7 @@
                   >
                     <el-checkbox-group v-model="form.kinship">
                       <el-checkbox
-                        v-for="dict in dict.type.sys_kinship"
+                        v-for="dict in dict.type.sys_kinship || []"
                         :key="dict.value"
                         :label="dict.value"
                       >
@@ -598,7 +622,7 @@
               <el-form-item align="left" label="鏈汉鎰忔効 ">
                 <el-checkbox-group v-model="form.selfwill">
                   <el-checkbox
-                    v-for="dict in dict.type.sys_SelfWill"
+                    v-for="dict in dict.type.sys_SelfWill || []"
                     :key="dict.value"
                     :label="dict.value"
                   >
@@ -624,7 +648,7 @@
                   placeholder="璇烽�夋嫨涓庢崘璧犺�呭叧绯�"
                 >
                   <el-option
-                    v-for="dict in dict.type.sys_FamilyRelation"
+                    v-for="dict in dict.type.sys_FamilyRelation || []"
                     :key="dict.value"
                     :label="dict.label"
                     :value="dict.value"
@@ -638,7 +662,7 @@
               <el-form-item align="left" label="淇℃伅鏉ユ簮">
                 <el-checkbox-group v-model="form.infosources">
                   <el-checkbox
-                    v-for="dict in dict.type.sys_InfoSources"
+                    v-for="dict in dict.type.sys_InfoSources || []"
                     :key="dict.value"
                     :label="dict.value"
                   >
@@ -810,7 +834,7 @@
                   placeholder="璇烽�夋嫨闄㈢骇璇勪及缁撹"
                 >
                   <el-option
-                    v-for="dict in dict.type.sys_BaseAssessConclusion"
+                    v-for="dict in dict.type.sys_BaseAssessConclusion || []"
                     :key="dict.value"
                     :label="dict.label"
                     :value="dict.value"
@@ -862,7 +886,7 @@
                   placeholder="璇烽�夋嫨鐪佺骇璇勪及缁撹"
                 >
                   <el-option
-                    v-for="dict in dict.type.sys_BaseAssessConclusion"
+                    v-for="dict in dict.type.sys_BaseAssessConclusion || []"
                     :key="dict.value"
                     :label="dict.label"
                     :value="dict.value"
@@ -918,7 +942,7 @@
                   placeholder="璇烽�夋嫨鏍稿績鎴愬憳缁撹"
                 >
                   <el-option
-                    v-for="dict in dict.type.sys_CoreAssessConclusion"
+                    v-for="dict in dict.type.sys_CoreAssessConclusion || []"
                     :key="dict.value"
                     :label="dict.label"
                     :value="dict.value"
@@ -991,7 +1015,7 @@
                   placeholder="璇烽�夋嫨涓庢崘璧犺�呭叧绯�"
                 >
                   <el-option
-                    v-for="dict in dict.type.sys_FamilyRelation"
+                    v-for="dict in dict.type.sys_FamilyRelation || []"
                     :key="dict.value"
                     :label="dict.label"
                     :value="dict.value"
@@ -1015,6 +1039,44 @@
                   v-model="affirmform.phone"
                   placeholder="璇疯緭鍏ヨ仈绯荤數璇�"
                 />
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-row>
+            <el-col :span="6">
+              <el-form-item label="姘戞棌" prop="nation">
+                <el-select v-model="affirmform.nation" placeholder="璇烽�夋嫨姘戞棌">
+                  <el-option
+                    v-for="dict in dict.type.sys_nation || []"
+                    :key="dict.value"
+                    :label="dict.label"
+                    :value="dict.value"
+                  ></el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+            <el-col :span="6">
+              <el-form-item label="瀛﹀巻" prop="education">
+                <el-select v-model="affirmform.education" placeholder="璇烽�夋嫨瀛﹀巻">
+                  <el-option
+                    v-for="dict in dict.type.sys_education || []"
+                    :key="dict.value"
+                    :label="dict.label"
+                    :value="dict.value"
+                  ></el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+           <el-col :span="6">
+              <el-form-item label="鑱屼笟" prop="occupation">
+                <el-select v-model="affirmform.occupation" placeholder="璇烽�夋嫨鑱屼笟">
+                  <el-option
+                    v-for="dict in dict.type.sys_occupation || []"
+                    :key="dict.value"
+                    :label="dict.label"
+                    :value="dict.value"
+                  ></el-option>
+                </el-select>
               </el-form-item>
             </el-col>
           </el-row>
@@ -1044,14 +1106,14 @@
               <el-form-item label="绛惧瓧浜插睘" prop="kinshipconfirmationsign">
                 <el-checkbox-group v-model="kinship">
                   <el-checkbox
-                    v-for="item in dict.type.sys_kinshipConfirm"
-                    :label="item.value"
-                    :value="item.value"
+                    v-for="dict in dict.type.sys_kinshipConfirm || []"
+                    :label="dict.value"
+                    :value="dict.value"
                   >
                     {{
-                      item.label == "鎴愬勾瀛愬コ"
-                        ? item.label + "(浜�)"
-                        : item.label
+                      dict.label == "鎴愬勾瀛愬コ"
+                        ? dict.label + "(浜�)"
+                        : dict.label
                     }}
                   </el-checkbox>
                 </el-checkbox-group>
@@ -1217,7 +1279,7 @@
               <el-form-item label="瀹℃煡缁撹">
                 <el-radio-group v-model="ethicform.expertconclusion">
                   <el-radio
-                    v-for="dict in dict.type.sys_EthicalReview"
+                    v-for="dict in dict.type.sys_EthicalReview || []"
                     :key="dict.value"
                     :label="parseInt(dict.value)"
                     >{{ dict.label }}</el-radio
@@ -1288,7 +1350,7 @@
               <el-form-item label-width="100px" label="鍒嗛厤鍣ㄥ畼">
                 <el-checkbox-group v-model="organList.organallocated">
                   <el-checkbox
-                    v-for="dict in dict.type.sys_Organ"
+                    v-for="dict in dict.type.sys_Organ || []"
                     :key="dict.value"
                     :label="dict.value"
                     @change="changeorganState(dict.value)"
@@ -1324,7 +1386,7 @@
                     prop="organno"
                   />
                   <el-table-column
-                    label="绯荤粺缂栧彿"
+                    label="鍒嗛厤绯荤粺缂栧彿"
                     align="center"
                     width="120"
                     prop="caseno"
@@ -1332,12 +1394,12 @@
                     <template slot-scope="scope">
                       <el-input
                         v-model="scope.row.caseno"
-                        placeholder="绯荤粺缂栧彿"
+                        placeholder="鍒嗛厤绯荤粺缂栧彿"
                       />
                     </template>
                   </el-table-column>
                   <el-table-column
-                    label="鎺ユ敹鏃堕棿"
+                    label="鍒嗛厤鎺ユ敹鏃堕棿"
                     align="center"
                     width="200"
                     prop="applicanttime"
@@ -1350,7 +1412,7 @@
                         v-model="scope.row.applicanttime"
                         type="datetime"
                         value-format="yyyy-MM-dd HH:mm:ss"
-                        placeholder="閫夋嫨鎺ユ敹鏃堕棿"
+                        placeholder="閫夋嫨鍒嗛厤鎺ユ敹鏃堕棿"
                       >
                       </el-date-picker>
                     </template>
@@ -1379,6 +1441,7 @@
                         <org-selecter
                           ref="tranHosSelect"
                           :org-type="'4'"
+                          :dataList="dataList"
                           v-model="scope.row.transplanthospitalno"
                         />
                       </div>
@@ -1461,7 +1524,7 @@
               >
                 <el-radio-group v-model="witnessform.donationcategory">
                   <el-radio
-                    v-for="dict in dict.type.sys_DonationCategory"
+                    v-for="dict in dict.type.sys_DonationCategory || []"
                     :key="dict.value"
                     :label="dict.value"
                     >{{ dict.label }}</el-radio
@@ -1557,6 +1620,59 @@
                 <el-date-picker
                   clearable
                   v-model="witnessform.operationendtime"
+                  type="datetime"
+                  value-format="yyyy-MM-dd HH:mm:ss"
+                  placeholder="閫夋嫨鎵嬫湳缁撴潫鏃堕棿"
+                >
+                </el-date-picker>
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-row>
+            <el-col :span="6">
+              <el-form-item
+                align="left"
+                label="鍗忚皟鍛橈細杩涙墜鏈鏃堕棿"
+                label-width="160px"
+                prop="coordinatorInOperating"
+              >
+                <el-date-picker
+                  clearable
+                  v-model="witnessform.coordinatorInOperating"
+                  type="datetime"
+                  value-format="yyyy-MM-dd HH:mm:ss"
+                  placeholder="閫夋嫨鎵嬫湳寮�濮嬫椂闂�"
+                >
+                </el-date-picker>
+              </el-form-item>
+            </el-col>
+            <el-col :span="6">
+              <el-form-item
+                align="left"
+                label="鍑烘墜鏈鏃堕棿"
+                label-width="120px"
+                prop="coordinatorOutOperating"
+              >
+                <el-date-picker
+                  clearable
+                  v-model="witnessform.coordinatorOutOperating"
+                  type="datetime"
+                  value-format="yyyy-MM-dd HH:mm:ss"
+                  placeholder="閫夋嫨鎵嬫湳缁撴潫鏃堕棿"
+                >
+                </el-date-picker>
+              </el-form-item>
+            </el-col>
+            <el-col :span="6">
+              <el-form-item
+                align="left"
+                label="绛惧瓧鏃堕棿"
+                label-width="120px"
+                prop="coorinatorSignTime"
+              >
+                <el-date-picker
+                  clearable
+                  v-model="witnessform.coorinatorSignTime"
                   type="datetime"
                   value-format="yyyy-MM-dd HH:mm:ss"
                   placeholder="閫夋嫨鎵嬫湳缁撴潫鏃堕棿"
@@ -1788,6 +1904,7 @@
                         <org-selecter
                           ref="tranHosSelect"
                           :org-type="'4'"
+                          :dataList="dataList"
                           v-model="scope.row.gainhospitalno"
                         />
                       </div>
@@ -1862,7 +1979,7 @@
               <el-form-item align="left" label="榛樺搥缂呮��浠紡">
                 <el-radio-group v-model="witnessform.isspendremember">
                   <el-radio
-                    v-for="dict in dict.type.sys_0_1"
+                    v-for="dict in dict.type.sys_0_1 || []"
                     :key="dict.value"
                     :label="parseInt(dict.value)"
                     >{{ dict.label }}</el-radio
@@ -1874,7 +1991,7 @@
               <el-form-item align="left" label="鎭㈠閬椾綋浠">
                 <el-radio-group v-model="witnessform.isrestoreremains">
                   <el-radio
-                    v-for="dict in dict.type.sys_0_1"
+                    v-for="dict in dict.type.sys_0_1 || []"
                     :key="dict.value"
                     :label="parseInt(dict.value)"
                     >{{ dict.label }}</el-radio
@@ -1969,7 +2086,7 @@
               <el-form-item label-width="100px" label="绉绘鍣ㄥ畼">
                 <el-checkbox-group v-model="organList.organtransplant">
                   <el-checkbox
-                    v-for="dict in dict.type.sys_Organ"
+                    v-for="dict in dict.type.sys_Organ || []"
                     :key="dict.value"
                     :label="dict.value"
                     @change="changeorgantransplant(dict.value)"
@@ -2022,12 +2139,12 @@
                     align="center"
                     width="220"
                     prop="hospitalno"
-                    v-if="actives == 6"
                   >
                     <template slot-scope="scope">
                       <org-selecter
                         ref="tranHosSelect"
                         :org-type="'4'"
+                        :dataList="dataList"
                         v-model="scope.row.hospitalno"
                         style="width: 100%"
                       />
@@ -2121,7 +2238,7 @@
               <el-form-item align="left" label="閬椾綋鎹愮尞" prop="isbodydonation">
                 <el-radio-group v-model="accomplishform.isbodydonation">
                   <el-radio
-                    v-for="dict in dict.type.sys_0_1"
+                    v-for="dict in dict.type.sys_0_1 || []"
                     :key="dict.value"
                     :label="dict.value"
                     >{{ dict.label }}</el-radio
@@ -2268,7 +2385,7 @@
             @tab-click="selecttab"
           >
             <el-tab-pane
-              v-for="dict in dict.type.materials_DBD"
+              v-for="dict in dict.type.materials_DBD || []"
               :label="dict.label"
               :name="dict.value"
             ></el-tab-pane>
@@ -2401,7 +2518,8 @@
   addDonatebaseinfo,
   updateDonatebaseinfo,
   getDonatebaseinfoflow,
-  fileCase
+  fileCase,
+  getDonationNumber
 } from "@/api/project/donatebaseinfo";
 import {
   listMedicalevaluation,
@@ -2479,13 +2597,81 @@
     AnnexUpload,
     ReportName
   },
-
+  dicts: [
+    "sys_nation",
+    "sys_occupation",
+    "sys_education",
+    "sys_Organ",
+    "sys_user_sex",
+    "sys_IDType",
+    "sys_BloodType",
+    "sys_0_1",
+    "sys_patientstate",
+    "sys_DonationCategory",
+    "sys_kinship",
+    "sys_Infectious",
+    "sys_bloodtype_rhd",
+    "sys_InfoSources",
+    "sys_OtherCases",
+    "sys_DiseaseType",
+    "sys_SelfWill",
+    "sys_FamilyRelation",
+    "sys_OrganDecision",
+    "sys_CoreAssessConclusion",
+    "sys_BaseAssessConclusion",
+    "sys_EthicalReview",
+    "materials_DBD",
+    "sys_kinshipConfirm"
+  ],
   data() {
     return {
       infoid: 736,
       drawer: false,
-      form: {},
-      istb:false,
+      form: {
+        donorno: "",
+        reporterno: "",
+        reporterphone: "",
+        name: "",
+        idcardtype: "",
+        idcardno: "",
+        birthday: "",
+        sex: "",
+        age: "",
+        treatmenthospitalno: "",
+        treatmentdeptname: "",
+        inpatientno: "",
+        diagnosisname: "",
+        nation: "",
+        nativeplace: "",
+        nationality: "",
+        occupation: "",
+        education: "",
+        residenceaddress: "",
+        registeraddress: "",
+        bloodtype: "",
+        rhyin: "",
+        diseasetype: [],
+        diseasetypeOther: "",
+        infectious: [],
+        infectiousOther: "",
+        patientstate: [],
+        othercases: [],
+        kinship: [],
+        kinshipOther: "",
+        selfwill: [],
+        majorrelatives: "",
+        familyrelations: "",
+        infosources: [],
+        infosourcesOther: "",
+        acquisitiontissueno: "",
+        infoname: "",
+        infophone: "",
+        redorganno: "",
+        contactperson: "",
+        contacttime: "",
+        reporttime: ""
+      },
+      istb: false,
       activeName: "",
       tableDatafile: [
         {
@@ -2495,6 +2681,7 @@
           type: "success"
         }
       ],
+      dataList: [],
       medicineform: {
         infoid: null
       },
@@ -2508,7 +2695,6 @@
       ethicform: {
         infoid: null
       },
-
       kinshiplist: ["閰嶅伓", "鐖朵翰", "姣嶄翰", "瀛愬コ", "鍙楁墭浜�"],
       organselection: [
         "鑲濊剰",
@@ -2750,12 +2936,15 @@
   },
 
   created() {
+    console.log("鍔犺浇鐨勫瓧鍏告暟鎹�:", this.dict.type);
     this.Getnetworkheader();
+    this.getdataList();
     this.infoid = this.$route.query.id;
   },
   mounted() {
     // this.id = this.$route.query.id;
     this.Getbasicinformation();
+
     this.listDonateannex();
     //鑾峰彇鎶ュ憡浜哄垪琛細涓撹亴浜哄憳
     listReportname("zzry").then(res => {
@@ -2793,15 +2982,19 @@
       // 琛ㄥ崟鏁版嵁
       getDonatebaseinfo(this.infoid).then(response => {
         this.form = response.data;
+        console.log(this.form, "form");
+
         if (response.data.terminationCase) {
           this.showTerminationBtn = response.data.terminationCase;
         } else {
           this.showTerminationBtn = 0;
         }
+
         this.actives = response.data.workflow;
         this.workflow = response.data.workflow;
         response.data.sex = parseInt(response.data.sex);
         this.form.id = response.data.id;
+
         this.form.diseasetype = this.form.diseasetype.split(",");
         this.form.infectious = this.form.infectious.split(",");
         this.form.selfwill = this.form.selfwill.split(",");
@@ -2809,6 +3002,7 @@
         this.form.infosources = this.form.infosources.split(",");
         this.form.kinship = this.form.kinship.split(",");
         this.form.patientstate = this.form.patientstate.split(",");
+
         this.open = true;
         this.title = "浜轰綋鍣ㄥ畼娼滃湪鎹愮尞鑰呯櫥璁拌〃";
         this.registerAddresss.sheng = response.data.registerprovincename;
@@ -2817,6 +3011,7 @@
         this.residenceAddresss.shi = response.data.residencecityname;
         this.residenceAddresss.qu = response.data.residencetownname;
         this.registerAddresss.qu = response.data.registertownname;
+
         // 鑾峰彇浜岀骇琛�
         this.GetAttacheddata();
       });
@@ -2826,7 +3021,6 @@
       let searchParam = {
         infoid: this.infoid
       };
-      console.log(this.procureddata, "procureddata");
       if (this.actives == 1) {
         this.activetele = "鍖诲璇勪及";
 
@@ -2905,12 +3099,14 @@
           if (res.code == 200) {
             if (res.rows[0]) {
               this.procureddata = res.rows;
-              this.procureddata.infoid = this.infoid;
+              // this.procureddata.infoid = this.infoid;
             } else {
               this.procureddata = this.allocateddata.filter(
                 obj =>
                   obj.organname !== "宸﹀崐鑲�" &&
                   obj.organname !== "鍙冲崐鑲�" &&
+                  obj.organname !== "宸﹀鍙�" &&
+                  obj.organname !== "鍙充笁鍙�" &&
                   obj.organname !== "宸﹁倽" &&
                   obj.organname !== "鍙宠倽"
               );
@@ -2918,7 +3114,7 @@
                 obj.id = null;
                 return obj;
               });
-              this.procureddata.infoid = this.infoid;
+              // this.procureddata.infoid = this.infoid;
             }
             this.organList.organprocured = [];
             for (let i = 0; i < this.procureddata.length; i++) {
@@ -2950,37 +3146,47 @@
         if (this.transplantdata[0] && !this.istb) {
           return;
         }
+        console.log("瀹屾垚鐧昏鍔犺浇鏁版嵁...");
 
+        listDonatecomporgan(searchParam).then(res => {
+          if (res.code == 200) {
+            console.log("listDonatecomporgan 鏁版嵁锛�", res.rows);
 
-        if (!this.organList.organtransplant[0]) {
-          listDonatecomporgan(searchParam).then(res => {
-            if (res.code == 200) {
-              if (res.rows[0]) {
-                this.transplantdata = res.rows;
-                this.transplantdata.infoid = this.infoid;
-              } else {
-                this.transplantdata = this.allocateddata;
-                this.transplantdata = this.transplantdata.map(obj => {
-                  obj.id = null;
-                  return obj;
-                });
-                this.transplantdata.infoid = this.infoid;
-              }
-              for (let i = 0; i < this.transplantdata.length; i++) {
-                this.organList.organtransplant.push(
-                  this.transplantdata[i].organno
-                );
-              }
+            if (res.rows[0]) {
+              this.transplantdata = res.rows;
+              // this.transplantdata.infoid = this.infoid;
             } else {
-              // this.$modal.msgError(
-              //   "鍣ㄥ畼鍒楄〃鑾峰彇澶辫触锛�" + JSON.stringify(resall)
-              // );
+              this.transplantdata = this.allocateddata;
+              this.transplantdata = this.transplantdata.map(obj => {
+                obj.id = null;
+                if (
+                  obj.organname == "宸︾溂瑙掕啘" ||
+                  obj.organname == "鍙崇溂瑙掕啘"
+                ) {
+                  obj.transplantstate = 2;
+                }
+                return obj;
+              });
+
+              this.transplantdata.infoid = this.infoid;
             }
-          });
-        }
+            for (let i = 0; i < this.transplantdata.length; i++) {
+              this.organList.organtransplant.push(
+                this.transplantdata[i].organno
+              );
+            }
+          } else {
+            // this.$modal.msgError(
+            //   "鍣ㄥ畼鍒楄〃鑾峰彇澶辫触锛�" + JSON.stringify(resall)
+            // );
+          }
+        });
+
         // 鑾峰彇瀹屾垚鐧昏淇℃伅
         listDonatecompletioninfo(searchParam).then(response => {
           if (response.code == 200 && response.rows.length) {
+            console.log("listDonatecompletioninfo 鏁版嵁锛�", response.rows[0]);
+
             this.accomplishform = response.rows[0];
             this.accomplishform.infoid = this.infoid;
           } else {
@@ -2991,11 +3197,11 @@
         this.activetele = "娼滃湪鎹愮尞";
       }
       if (!this.allocateddata[0]) {
-          listDonateorgan(searchParam).then(res => {
+        listDonateorgan(searchParam).then(res => {
           if (res.code == 200) {
+            console.log("listDonateorgan 鏁版嵁锛�", res.rows);
             if (res.rows[0]) {
               this.allocateddata = res.rows;
-              console.log("this.allocateddata", this.allocateddata);
               this.allocateddataform.allocateddata = this.allocateddata;
             }
             this.organList.organallocated = [];
@@ -3005,7 +3211,7 @@
           } else {
           }
         });
-        }
+      }
     },
     /** 淇濆瓨涓昏〃鎸夐挳 */
 
@@ -3016,7 +3222,9 @@
           this.form.birthday = this.$moment(this.form.birthday).format(
             "YYYY-MM-DD HH:mm:ss"
           );
+
           this.form.diseasetype = this.form.diseasetype.join(",");
+
           this.form.infectious = this.form.infectious.join(",");
           this.form.selfwill = this.form.selfwill.join(",");
           this.form.othercases = this.form.othercases.join(",");
@@ -3074,7 +3282,9 @@
             }
             updateDonatebaseinfo(this.form).then(response => {
               this.$modal.msgSuccess("淇濆瓨鎴愬姛");
-              Modifydonationattachment(this.donatelist).then(res => {});
+              Modifydonationattachment(this.donatelist).then(res => {
+                this.listDonateannex();
+              });
               this.Getbasicinformation();
               // this.Processvalidation();
               this.open = false;
@@ -3084,7 +3294,9 @@
             addDonatebaseinfo(this.form).then(response => {
               if (response.code == 200) {
                 this.$modal.msgSuccess("鏂板鎴愬姛");
-                Modifydonationattachment(this.donatelist).then(res => {});
+                Modifydonationattachment(this.donatelist).then(res => {
+                  this.listDonateannex();
+                });
                 this.Getbasicinformation();
                 // this.Processvalidation();
                 this.open = false;
@@ -3167,29 +3379,20 @@
           }
         });
       } else if (this.actives == 4) {
-        this.procureddata.infoid = this.infoid;
+        // this.procureddata.infoid = this.infoid;
         this.$refs["allocateddataform"].validate(valid => {
           this.$modal.loading("姝e湪鎻愪氦锛岃绋嶅�欙紒");
 
-          /**
-          let rows = [];
-          this.allocateddata.map(item => {
-            if (item.id) {
-              item.applicanttime = formatDate(item.applicanttime);
-              updateDonateorgan(item).then(response => { });
-            } else {
-              item.infoid=this.infoid;
-              rows.push(item);
-            }
-          });
-          if (rows.length) {
-            addOrganallocation(rows).then(res => {
-              this.$modal.msgSuccess("鍣ㄥ畼鎹愮尞淇℃伅鏂板鎴愬姛");
-            });
-          }
-           */
           this.allocateddata.map(item => {
             item.applicanttime = formatDate(item.applicanttime);
+          });
+          this.allocateddata.forEach(item => {
+            const objs = this.dataList.find(
+              obj => obj.organizationid == item.transplanthospitalno
+            );
+            if (objs) {
+              item.transplanthospitalname = objs.organizationname;
+            }
           });
           saveDonateorgan(this.allocateddata).then(res => {
             if (res.code == 200) {
@@ -3210,6 +3413,7 @@
               coordinatedusernameIndex
             ].reportName;
           }
+
           //鍗忚皟鍛�2
           let coordinatedusernametIndex = this.coordinatorlist1.findIndex(
             item => this.witnessform.coordinateduseridt == item.reportNo
@@ -3226,26 +3430,57 @@
             if (this.witnessform.id != null) {
               updateDonationwitness(this.witnessform).then(response => {
                 this.$modal.msgSuccess("鑾峰彇瑙佽瘉淇℃伅淇敼鎴愬姛");
-                this.$modal.closeLoading();
+                this.form.donationcategory = this.witnessform.donationcategory;
+                this.Processvalidation();
+
+                this.procureddata.forEach(item => {
+                  const objs = this.dataList.find(
+                    obj => obj.organizationid == item.gainhospitalno
+                  );
+                  if (objs) {
+                    item.gainhospitalname = objs.organizationname;
+                  }
+                });
+                //淇濆瓨鍣ㄥ畼鑾峰彇琛ㄦ暟鎹�
+                saveDonationwitnessorgan(this.procureddata).then(res => {
+                  if (res == 200) {
+                    this.$modal.msgSuccess("鎹愮尞鍣ㄥ畼鑾峰彇淇℃伅淇濆瓨鎴愬姛锛�");
+                  }
+                  this.$modal.closeLoading();
+                });
               });
             } else {
               addDonationwitness(this.witnessform).then(response => {
-                this.$modal.msgSuccess("鑾峰彇瑙佽瘉淇℃伅鏂板鎴愬姛");
-                this.istb = true;
-                this.$modal.closeLoading();
+                if (response.code === 200) {
+                  this.$modal.msgSuccess("鑾峰彇瑙佽瘉淇℃伅鏂板鎴愬姛");
+                  this.form.donationcategory = this.witnessform.donationcategory;
+                  let data = JSON.parse(JSON.stringify(this.form));
+                  data.diseasetype = "";
+                  data.infectious = data.infectious.join(",");
+                  data.selfwill = data.selfwill.join(",");
+                  data.othercases = data.othercases.join(",");
+                  data.infosources = data.infosources.join(",");
+                  data.kinship = data.kinship.join(",");
+                  data.patientstate = data.patientstate.join(",");
+                  // 鑾峰彇鎹愮尞缂栧彿
+                  getDonationNumber(data).then(res => {
+                    this.form.donorno = res.msg;
+                    this.istb = true;
+                    this.Processvalidation();
+                  });
+                  //淇濆瓨鍣ㄥ畼鑾峰彇琛ㄦ暟鎹�
+                  saveDonationwitnessorgan(this.procureddata).then(res => {
+                    if (res == 200) {
+                      this.$modal.msgSuccess("鎹愮尞鍣ㄥ畼鑾峰彇淇℃伅淇濆瓨鎴愬姛锛�");
+                    }
+                    this.$modal.closeLoading();
+                  });
+                } else {
+                  this.$modal.msgError("鑾峰彇瑙佽瘉淇℃伅鏂板澶辫触");
+                  this.$modal.closeLoading();
+                }
               });
             }
-
-            //淇濆瓨鍣ㄥ畼鑾峰彇琛ㄦ暟鎹�
-            this.procureddata.infoid = this.infoid;
-            saveDonationwitnessorgan(this.procureddata).then(res => {
-              if (res == 200) {
-                this.$modal.msgSuccess("鎹愮尞鍣ㄥ畼鑾峰彇淇℃伅淇濆瓨鎴愬姛锛�");
-              }
-            });
-
-            //this.form.donationcategory = this.witnessform.donationcategory;
-            this.Processvalidation();
           }
         });
       } else if (this.actives == 6) {
@@ -3254,51 +3489,42 @@
           if (valid) {
             this.$modal.loading("姝e湪鎻愪氦锛岃绋嶅�欙紒");
 
-            // 淇濆瓨鎹愮尞鍣ㄥ畼绉绘淇℃伅
-            this.transplantdata.infoid = this.infoid;
-            console.log(this.form);
             this.transplantdata.forEach(item => {
-              listDonorchargeorgan({
-                infoid: item.infoid,
-                organno: item.organno
-              }).then(res => {
-                console.log("aaa");
-                if (res.rows[0]) {
-                  let objfn = res.rows[0];
-                  console.log(objfn, "sass");
-
-                  objfn.caseno = item.caseno;
-                  objfn.hospitalno = item.hospitalno;
-                  objfn.name = item.name;
-                  objfn.receiveTime = item.transplanttime;
-                  console.log(objfn, "sass");
-                  updateDonorchargeorgan(objfn).then(res1 => {});
-                } else {
-                  item.id = null;
-                  addDonorchargeorgan(item).then(res2 => {});
-                }
-              });
+              item.donorname = this.form.name;
             });
-            saveDonatecomporgan(this.transplantdata).then(res => {
-              if (res == 200) {
-                this.$modal.msgSuccess("鎹愮尞鍣ㄥ畼鑾峰彇淇℃伅淇濆瓨鎴愬姛锛�");
-              } else {
-                this.$modal.msgSuccess(res.msg);
-                return;
+            this.transplantdata.forEach(item => {
+              const objs = this.dataList.find(
+                obj => obj.organizationid == item.hospitalno
+              );
+              if (objs) {
+                item.hospitalname = objs.organizationname;
               }
             });
-
-            console.log(this.accomplishform.id, "瀹屾垚id");
             // 淇濆瓨纭淇℃伅
             if (this.accomplishform.id) {
               updateDonatecompletioninfo(this.accomplishform).then(response => {
                 this.$modal.msgSuccess("瀹屾垚鐧昏淇℃伅淇敼鎴愬姛");
-                this.$modal.closeLoading();
+                saveDonatecomporgan(this.transplantdata).then(res => {
+                  if (res == 200) {
+                    this.$modal.msgSuccess("鎹愮尞鍣ㄥ畼鐧昏淇℃伅淇濆瓨鎴愬姛锛�");
+                  } else {
+                    this.$modal.msgSuccess(res.msg);
+                  }
+                  this.$modal.closeLoading();
+                });
               });
             } else {
               addDonatecompletioninfo(this.accomplishform).then(response => {
                 this.$modal.msgSuccess("瀹屾垚鐧昏鎴愬姛");
-                this.$modal.closeLoading();
+                saveDonatecomporgan(this.transplantdata).then(res => {
+                  if (res.code == 200) {
+                    this.$modal.msgSuccess("鎹愮尞鍣ㄥ畼鐧昏淇℃伅淇濆瓨鎴愬姛锛�");
+                  } else {
+                    this.$modal.msgError(res.msg);
+                  }
+                  this.$modal.closeLoading();
+                });
+                this.istb = true;
                 // this.$modal
                 //   .confirm("妗堜緥宸插畬鎴愭槸鍚﹁烦杞渚嬭垂鐢ㄩ〉闈㈣繘琛岃垂鐢ㄥ崟淇濆瓨锛�")
                 //   .then(() => {
@@ -3328,6 +3554,10 @@
         this.$modal.msgWarning("璇峰厛瀹屾垚鍓嶉儴姝ラ");
       }
       // }
+    },
+    // 鑾峰彇閮ㄩ棬鏁版嵁缂撳瓨
+    getdataList() {
+      this.$store.dispatch("getdataList").then(() => {});
     },
     // 鍣ㄥ畼鍒嗛厤鏍忕洰鎺у埗
     changeorganState(value) {
@@ -3556,8 +3786,8 @@
     },
     // 鏇存敼杩涚▼鏁堥獙
     Processvalidation() {
-      if (this.form.workflow + 1 == this.actives || this.actives == 6) {
-        if (this.form.workflow <= 6) {
+      if (this.form.workflow + 1 == this.actives) {
+        if (this.form.workflow < 6) {
           this.form.workflow++;
         } else {
         }
@@ -3565,8 +3795,7 @@
         // this.GetAttacheddata();
       } else if (this.form.workflow > this.actives) {
         this.submitForm();
-        Modifydonationattachment(this.donatelist).then(res => {});
-        this.listDonateannex();
+        // Modifydonationattachment(this.donatelist).then(res => {});
         // this.GetAttacheddata();
       } else {
         this.submitForm();
@@ -3576,8 +3805,8 @@
     },
     // 鎻愪氦褰掓。
     Reportforreview() {
-      if (this.form.workflow == 9) {
-        this.form.workflow = 8;
+      if (this.form.workflow == 8) {
+        this.form.workflow = 7;
         this.submitForm();
         this.$router.go(-1);
         this.$message({
@@ -3595,7 +3824,7 @@
               if (res.code == 500) {
                 this.$message.error(res.msg);
               } else {
-                this.form.workflow = 9;
+                this.form.workflow = 8;
                 this.submitForm();
                 this.$message({
                   type: "success",
@@ -3645,8 +3874,11 @@
     // 鑾峰彇闄勪欢鏁版嵁骞跺垎绫讳簩绾у垪
     listDonateannex() {
       let parmi = {};
+      console.log(222);
+
       parmi.infoid = this.infoid.toString();
       listDonateannex(parmi).then(res => {
+        console.log(333);
         this.donatelist = res.rows;
       });
     },
@@ -3877,34 +4109,7 @@
       row.caseno = null;
       row.applicanttime = null;
     }
-  },
-
-  dicts: [
-    "sys_nation",
-    "sys_occupation",
-    "sys_education",
-    "sys_Organ",
-    "sys_user_sex",
-    "sys_IDType",
-    "sys_BloodType",
-    "sys_0_1",
-    "sys_patientstate",
-    "sys_DonationCategory",
-    "sys_kinship",
-    "sys_Infectious",
-    "sys_bloodtype_rhd",
-    "sys_InfoSources",
-    "sys_OtherCases",
-    "sys_DiseaseType",
-    "sys_SelfWill",
-    "sys_FamilyRelation",
-    "sys_OrganDecision",
-    "sys_CoreAssessConclusion",
-    "sys_BaseAssessConclusion",
-    "sys_EthicalReview",
-    "materials_DBD",
-    "sys_kinshipConfirm"
-  ]
+  }
 };
 </script>
 

--
Gitblit v1.9.3