From 26c14f0c6defe02f2b6f15b498bcd454461ee7a8 Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期五, 05 一月 2024 14:01:43 +0800
Subject: [PATCH] yxh

---
 src/views/project/donatebaseinfo/index.vue |  372 +++++++++++++++++++++++++++++-----------------------
 1 files changed, 209 insertions(+), 163 deletions(-)

diff --git a/src/views/project/donatebaseinfo/index.vue b/src/views/project/donatebaseinfo/index.vue
index c79b633..a582e79 100644
--- a/src/views/project/donatebaseinfo/index.vue
+++ b/src/views/project/donatebaseinfo/index.vue
@@ -2,19 +2,19 @@
   <div class="app-container">
     <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="70px">
       <el-row :gutter="8">
-        <el-col :span="6">
+        <el-col :span="5">
           <el-form-item label="濮撳悕" prop="name">
             <el-input v-model="queryParams.name" placeholder="璇疯緭鍏ュ鍚�" clearable size="small"
               @keyup.enter.native="handleQuery" />
           </el-form-item>
         </el-col>
-        <el-col :span="6">
+        <el-col :span="5">
           <el-form-item align="left" label="鍖荤枟鏈烘瀯" prop="treatmenthospitalname">
             <org-selecter ref="orgSelecter" :org-type="'3'" v-model="queryParams.treatmenthospitalno"
               @keyup.enter.native="handleQuery" />
           </el-form-item>
         </el-col>
-        <el-col :span="6">
+        <el-col :span="5">
           <el-form-item label="鎹愮尞鍦板競">
             <el-select v-model="queryParams.city" placeholder="璇烽�夋嫨鍦板競">
               <el-option v-for="item in provinceData" :key="item.value" :label="item.label" :value="item.value">
@@ -22,7 +22,16 @@
             </el-select>
           </el-form-item>
         </el-col>
-        <el-col :span="6">
+        <el-col :span="9">
+          <el-form-item label="鏃ユ湡">
+            <el-date-picker style="width: 100%" v-model="selecttime" type="monthrange" range-separator="鑷�"
+              start-placeholder="寮�濮嬫湀浠�" end-placeholder="缁撴潫鏈堜唤" value-format="yyyy-MM-dd" @change="getTimeList">
+            </el-date-picker>
+          </el-form-item>
+        </el-col>
+      </el-row>
+      <el-row :gutter="8">
+        <el-col :span="5">
           <el-form-item label="鎹愮尞杩涘害" prop="recordstate">
             <el-select v-model="queryParams.recordstate" placeholder="璇烽�夋嫨褰撳墠杩涘害" clearable size="small">
               <el-option v-for="dict in dict.type.sys_DonationStatus" :key="dict.value" :label="dict.label"
@@ -30,9 +39,7 @@
             </el-select>
           </el-form-item>
         </el-col>
-      </el-row>
-      <el-row :gutter="8">
-        <el-col :span="6">
+        <el-col :span="5">
           <el-form-item label="鎶ュ憡浜�">
             <el-select v-model="queryParams.reporterno" placeholder="璇烽�夋嫨鎶ュ憡浜�">
               <el-option v-for="item in reportlist" :key="item.index" :label="item.reportername" :value="item.reporterno">
@@ -40,25 +47,13 @@
             </el-select>
           </el-form-item>
         </el-col>
-
-        <el-col :span="12">
-          <el-form-item label="鎶ュ憡鏃ユ湡">
-            <el-date-picker style="width: 100%" v-model="selecttime" type="monthrange" range-separator="鑷�"
-              start-placeholder="寮�濮嬫湀浠�" end-placeholder="缁撴潫鏈堜唤" value-format="yyyy-MM-dd" @change="getTimeList">
-            </el-date-picker>
-          </el-form-item>
-        </el-col>
-      </el-row>
-
-      <el-row>
-        <el-col :span="14">
+        <el-col :span="9">
           <el-form-item label="绫嶈疮">
             <div>
               <li_area_select ref="areaSelect" v-model="searchAddress"></li_area_select>
             </div>
           </el-form-item>
         </el-col>
-
         <el-col :span="4">
           <el-form-item>
             <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
@@ -96,44 +91,73 @@
       :default-sort="{ prop: 'reporttime', order: 'descending' }">
       <!-- <el-table-column label="鎶ュ憡鏃堕棿" align="center" prop="id" /> -->
       <!-- <el-table-column type="selection" width="55" align="center" /> -->
-      <el-table-column label="鎶ュ憡鏃堕棿" align="center" prop="reporttime" width="100">
+      <el-table-column label="鏃堕棿" align="center" prop="reporttime" width="100">
         <template slot-scope="scope">
           <span>{{ parseTime(scope.row.reporttime, "{y}-{m}-{d}") }}</span>
         </template>
       </el-table-column>
-
+      <el-table-column label="鎹愮尞缂栧彿" align="center" prop="donorno" width="200" />
       <el-table-column label="濮撳悕" align="center" prop="name" width="100" />
-
       <el-table-column label="鎬у埆" align="center" prop="sex" width="100">
         <template slot-scope="scope">
           <dict-tag :options="dict.type.sys_user_sex" :value="parseInt(scope.row.sex)" />
         </template>
       </el-table-column>
       <el-table-column label="骞撮緞" align="center" prop="age" width="100" />
-      <el-table-column label="鐜版墍鍦ㄥ湴甯�" align="center" prop="registercityname" width="150" />
-
       <el-table-column label="鍖荤枟鏈烘瀯" align="center" prop="treatmenthospitalname" />
-      <el-table-column label="鎶ュ憡浜�" align="center" prop="reportername" width="100" />
-
-      <el-table-column label="鎹愮尞杩涘害" align="center" prop="recordstate" width="120">
+      <el-table-column label="琛�鍨�" align="center" prop="bloodtype" width="100">
         <template slot-scope="scope">
-          <dict-tag :options="dict.type.sys_DonationStatus" :value="scope.row.recordstate" />
+          <dict-tag :options="dict.type.sys_BloodType" :value="scope.row.bloodtype" />
         </template>
       </el-table-column>
 
-      <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width" width="200" fixed="right">
+      <el-table-column label="鎹愮尞绫诲埆" align="center" prop="donationcategory" width="150">
+        <template slot-scope="scope">
+          <dict-tag :options="dict.type.sys_DonationCategory" :value="scope.row.donationcategory" />
+        </template>
+      </el-table-column>
+      <el-table-column label="鎶ュ憡浜�" align="center" prop="reportername" width="100" />
+      <!-- 
+         <el-table-column
+        label="鐜版墍鍦ㄥ湴甯�"
+        align="center"
+        prop="registercityname"
+        width="150"
+      />
+      <el-table-column
+        label="鎹愮尞杩涘害"
+        align="center"
+        prop="recordstate"
+        width="120"
+      >
+        <template slot-scope="scope">
+         <dict-tag
+            :options="dict.type.sys_DonationStatus"
+            :value="scope.row.recordstate"
+          />          
+        </template>
+      </el-table-column>
+      -->
+      <el-table-column label="鎹愮尞杩涘害" align="center" prop="workflow" width="120">
+        <template slot-scope="scope">
+          <dict-tag :options="dict.type.sys_donornode" :value="scope.row.workflow" />
+        </template>
+      </el-table-column>
+      <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width" fixed="right">
         <template slot-scope="scope">
           <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
-            v-hasPermi="['project:donatebaseinfo:edit']">淇敼</el-button>
-
+            v-hasPermi="['project:donatebaseinfo:edit']">璇︽儏</el-button>
           <el-button v-if="scope.row.recordstate == 0" size="mini" type="text" icon="el-icon-delete"
             @click="handleDelete(scope.row)" v-hasPermi="['project:donatebaseinfo:remove']">鍒犻櫎</el-button>
-          <el-button size="mini" type="text" icon="el-icon-edit" @click="handletermination(scope.row)"
-            v-hasPermi="['project:donatebaseinfo:edit']">缁堟</el-button>
+          <!-- 
+            <el-button v-if="scope.row.recordstate == 0 || scope.row.recordstate == 3" size="mini" type="text"
+            icon="el-icon-thumb" @click="handleapproval(scope.row)">鎻愪氦</el-button>        
+           -->
           <el-button size="mini" type="text" icon="el-icon-refrigerator" @click="handledownload(scope.row)">涓嬭浇</el-button>
-          <el-button v-if="scope.row.recordstate == 0 || scope.row.recordstate == 3" size="mini" type="text"
-            icon="el-icon-thumb" @click="handleapproval(scope.row)">涓婃姤瀹℃牳</el-button>
-          <!-- 鎾ら攢鐢宠 -->
+          <!-- 
+            <el-button size="mini" type="text" icon="el-icon-edit" @click="handletermination(scope.row)"
+            v-hasPermi="['project:donatebaseinfo:edit']">{{ scope.row.recordstate == 99 ? "鎭㈠": "缁堟"  }}</el-button> 
+          -->
         </template>
       </el-table-column>
     </el-table>
@@ -167,15 +191,7 @@
           <el-row>
             <el-col :span="6">
               <el-form-item align="left" label="濮撳悕" prop="name">
-                <el-input v-model="form.name" placeholder="璇疯緭鍏ュ鍚�" />
-              </el-form-item>
-            </el-col>
-            <el-col :span="6">
-              <el-form-item label="鎬у埆" prop="sex">
-                <el-select v-model="form.sex" placeholder="璇烽�夋嫨鎬у埆">
-                  <el-option v-for="dict in dict.type.sys_user_sex" :key="dict.label" :label="dict.label"
-                    :value="parseInt(dict.value)"></el-option>
-                </el-select>
+                <el-input v-model="form.name" placeholder="蹇呭~椤�" />
               </el-form-item>
             </el-col>
             <el-col :span="6">
@@ -191,8 +207,12 @@
                 <el-input v-model="form.nativeplace" placeholder="璇疯緭鍏ュ浗绫�" />
               </el-form-item>
             </el-col>
+            <el-col :span="6">
+              <el-form-item label="鍥界睄" prop="nationality">
+                <el-input v-model="form.nationality" placeholder="璇疯緭鍏ュ浗绫�" />
+              </el-form-item>
+            </el-col>
           </el-row>
-
           <el-row>
             <el-col :span="6">
               <el-form-item label="璇佷欢绫诲瀷" prop="idcardtype">
@@ -206,9 +226,28 @@
               <el-form-item label="璇佷欢鍙风爜" prop="idcardno">
                 <el-input style="width: 174px" ref="updateBSvalue" class="sfzcode" v-model="form.idcardno"
                   placeholder="璇疯緭鍏ヨ瘉浠跺彿鐮�" @blur="updateMessage" />
-              </el-form-item> </el-col><el-col :span="6">
-              <el-form-item label="鍥界睄" prop="nationality">
-                <el-input v-model="form.nationality" placeholder="璇疯緭鍏ュ浗绫�" />
+              </el-form-item>
+            </el-col>
+            <el-col :span="6">
+              <el-form-item label="鎬у埆" prop="sex">
+                <el-select v-model="form.sex" placeholder="璇疯緭鍏ユ�у埆">
+                  <el-option v-for="dict in dict.type.sys_user_sex" :key="dict.label" :label="dict.label"
+                    :value="parseInt(dict.value)"></el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+            <el-col :span="6">
+              <el-form-item label="骞撮緞" prop="age">
+                <el-input v-model="form.age" placeholder="璇疯緭鍏ュ勾榫�" />
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-row>
+            <el-col :span="6">
+              <el-form-item label="鍑虹敓鏃ユ湡" prop="birthday">
+                <el-date-picker clearable size="small" v-model="form.birthday" type="date" style="width: 174px"
+                  value-format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨鍑虹敓鏃ユ湡">
+                </el-date-picker>
               </el-form-item>
             </el-col>
             <el-col :span="6">
@@ -219,20 +258,7 @@
                 </el-select>
               </el-form-item>
             </el-col>
-          </el-row>
-
-          <el-row>
             <el-col :span="6">
-              <el-form-item label="骞撮緞" prop="age">
-                <el-input v-model="form.age" placeholder="璇疯緭鍏ュ勾榫�" />
-              </el-form-item>
-            </el-col>
-            <el-col :span="6">
-              <el-form-item label="鍑虹敓鏃ユ湡" prop="birthday">
-                <el-date-picker clearable size="small" v-model="form.birthday" type="date" style="width: 174px"
-                  value-format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨鍑虹敓鏃ユ湡">
-                </el-date-picker>
-              </el-form-item> </el-col><el-col :span="6">
               <el-form-item label="瀛﹀巻" prop="education">
                 <el-select v-model="form.education" placeholder="璇烽�夋嫨瀛﹀巻">
                   <el-option v-for="dict in dict.type.sys_education" :key="dict.value" :label="dict.label"
@@ -241,7 +267,6 @@
               </el-form-item>
             </el-col>
           </el-row>
-
           <el-row>
             <el-col :span="12">
               <el-form-item label="浣忓潃" prop="residenceaddress">
@@ -485,17 +510,17 @@
             </el-col>
           </el-row>
         </div>
-        <div style="padding-right: 60px; margin-top: 20px">
+        <!-- <div style="padding-right: 60px; margin-top: 20px">
           <el-row>
             <el-form-item label="闄勪欢" align="left" prop="annexfile">
               <annex-upload ref="annex" :infoid="form.id" :donorno="form.donorno" :flowname="flowname"
                 :annexno="annexno" />
             </el-form-item>
           </el-row>
-        </div>
+        </div> -->
       </el-form>
       <div slot="footer" class="dialog-footer">
-        <el-button v-show="showSaveBtn" type="primary" @click="submitForm">淇� 瀛�</el-button>
+        <el-button v-show="showSaveBtn" type="primary" @click="submitForm">淇濆瓨骞跺墠寰�妗堜緥宸ヤ綔鍙�</el-button>
         <el-button v-show="showTerminationBtn" type="primary" @click="submitForm">缁堟妗堜緥</el-button>
         <el-button @click="cancel">鍙� 娑�</el-button>
         <!-- <el-button @click="handleapproval">鎻愪氦瀹℃牳</el-button> -->
@@ -514,7 +539,7 @@
   updateDonatebaseinfo,
   exportDonatebaseinfo,
   downloadbaseinfo,
-  getdonatorno,
+  getdonatorno
   // exportProvincemessage,
 } from "@/api/project/donatebaseinfo";
 import Li_area_select from "@/components/Address";
@@ -525,14 +550,14 @@
   listOrganization,
   getOrganization,
   listReportname,
-  listUser,
+  listUser
 } from "@/api/project/organization";
 export default {
   components: {
     Li_area_select,
     OrgSelecter,
     AnnexUpload,
-    ReportName,
+    ReportName
   },
   name: "Donatebaseinfo",
   dicts: [
@@ -561,6 +586,7 @@
     "sys_DiseaseType",
     "sys_SelfWill",
     "sys_FamilyRelation",
+    "sys_donornode"
   ],
   data() {
     return {
@@ -577,17 +603,17 @@
         sheng: "",
         shi: "",
         qu: "",
-        organizationname: null,
+        organizationname: null
       },
       residenceAddresss: {
         sheng: "娴欐睙鐪�",
         shi: "",
-        qu: "",
+        qu: ""
       },
       registerAddresss: {
         sheng: "娴欐睙鐪�",
         shi: "",
-        qu: "",
+        qu: ""
       },
       // 閬僵灞�
       loading: true,
@@ -629,7 +655,7 @@
         starttime: null,
         endtime: null,
         city: null,
-        reportno: null,
+        reportno: null
         // organizationname: null,
         // organizationtype: null,
         // idcardno: null,
@@ -645,74 +671,77 @@
       // 琛ㄥ崟鏍¢獙
       rules: {
         name: [
-          { required: true, message: "璇疯緭鍏ユ崘鐚�呭鍚�", trigger: "blur" },
+          { required: true, message: "璇疯緭鍏ユ崘鐚�呭鍚�", trigger: "blur" }
+        ],
+        birthday: [
+          { required: true, message: "璇烽�夋嫨鍑虹敓鏃ユ湡", trigger: "blur" }
         ],
         idcardtype: [
-          { required: true, message: "璇烽�夋嫨璇佷欢绫诲瀷", trigger: "blur" },
+          { required: true, message: "璇烽�夋嫨璇佷欢绫诲瀷", trigger: "blur" }
         ],
         residenceaddress: [
-          { required: true, message: "璇疯緭鍏ヤ綇鍧�", trigger: "blur" },
+          { required: true, message: "璇疯緭鍏ヤ綇鍧�", trigger: "blur" }
         ],
         contacttime: [
           {
             required: true,
             message: "璇疯緭鍏ョ孩鍗佸瓧浼氳仈绯绘椂闂�",
-            trigger: "blur",
-          },
+            trigger: "blur"
+          }
         ],
         idcardno: [
-          { required: true, message: "璇锋纭緭鍏ヨ瘉浠跺彿鐮�", trigger: "blur" },
+          { required: true, message: "璇锋纭緭鍏ヨ瘉浠跺彿鐮�", trigger: "blur" }
         ],
         sex: [{ required: true, message: "鎬у埆涓嶈兘涓虹┖", trigger: "blur" }],
         age: [{ required: true, message: "璇疯緭鍏ュ勾榫�", trigger: "blur" }],
         treatmenthospitalno: [
-          { required: true, message: "璇烽�夋嫨鍖荤枟鏈烘瀯", trigger: "blur" },
+          { required: true, message: "璇烽�夋嫨鍖荤枟鏈烘瀯", trigger: "blur" }
         ],
         // treatmenthospitalno: [{ required: true, message: "璇烽�夋嫨鍖荤枟鏈烘瀯", trigger: "change" }],
         bloodtype: [
-          { required: true, message: "璇烽�夋嫨ABO琛�鍨�", trigger: "blur" },
+          { required: true, message: "璇烽�夋嫨ABO琛�鍨�", trigger: "blur" }
         ],
         rhyin: [{ required: true, message: "璇烽�夋嫨RHD琛�鍨�", trigger: "blur" }],
         diseasetype: [
-          { required: true, message: "璇烽�夋嫨RHD琛�鍨�", trigger: "blur" },
+          { required: true, message: "璇烽�夋嫨RHD琛�鍨�", trigger: "blur" }
         ],
 
         inpatientno: [
-          { required: true, message: "杈撳叆浣忛櫌鍙�", trigger: "blur" },
+          { required: true, message: "杈撳叆浣忛櫌鍙�", trigger: "blur" }
         ],
 
         diagnosisname: [
-          { required: true, message: "鐤剧梾璇婃柇涓嶈兘涓虹┖", trigger: "blur" },
+          { required: true, message: "鐤剧梾璇婃柇涓嶈兘涓虹┖", trigger: "blur" }
         ],
         infoname: [
-          { required: true, message: "璇疯緭鍏ヤ俊鎭憳濮撳悕", trigger: "blur" },
+          { required: true, message: "璇疯緭鍏ヤ俊鎭憳濮撳悕", trigger: "blur" }
         ],
         infophone: [
-          { required: true, message: "璇疯緭鍏ヤ俊鎭憳鑱旂郴鐢佃瘽", trigger: "blur" },
+          { required: true, message: "璇疯緭鍏ヤ俊鎭憳鑱旂郴鐢佃瘽", trigger: "blur" }
         ],
         redorganno: [
-          { required: true, message: "璇烽�夋嫨绾㈠崄瀛椾細鏈烘瀯", trigger: "blur" },
+          { required: true, message: "璇烽�夋嫨绾㈠崄瀛椾細鏈烘瀯", trigger: "blur" }
         ],
         contactperson: [
           {
             required: true,
             message: "绾㈠崄瀛椾細鑱旂郴浜轰笉鑳戒负绌�",
-            trigger: "blur",
-          },
+            trigger: "blur"
+          }
         ],
         // contactnumber: [{required: true,message: "璇疯緭鍏ョ孩鍗佸瓧浼氳仈绯荤數璇�",trigger: "change"}],
         acquisitiontissueno: [
-          { required: true, message: "鍣ㄥ畼鑾峰彇缁勭粐涓嶈兘涓虹┖", trigger: "blur" },
+          { required: true, message: "鍣ㄥ畼鑾峰彇缁勭粐涓嶈兘涓虹┖", trigger: "blur" }
         ],
         reporterno: [
-          { required: true, message: "璇烽�夋嫨鎶ュ憡浜�", trigger: "blur" },
+          { required: true, message: "璇烽�夋嫨鎶ュ憡浜�", trigger: "blur" }
         ],
         reporttime: [
-          { required: true, message: "璇疯緭鍏ユ姤鍛婃椂闂�", trigger: "blur" },
+          { required: true, message: "璇疯緭鍏ユ姤鍛婃椂闂�", trigger: "blur" }
         ],
         reporterphone: [
-          { required: true, message: "璇疯緭鍏ユ姤鍛婁汉鑱旂郴鐢佃瘽", trigger: "blur" },
-        ],
+          { required: true, message: "璇疯緭鍏ユ姤鍛婁汉鑱旂郴鐢佃瘽", trigger: "blur" }
+        ]
       },
       //鏄惁鏄剧ず淇濆瓨鎸夐挳
       showSaveBtn: true,
@@ -736,8 +765,8 @@
         { label: "琛㈠窞甯�", value: "8" },
         { label: "鑸熷北甯�", value: "9" },
         { label: "鍙板窞甯�", value: "A" },
-        { label: "涓芥按甯�", value: "B" },
-      ],
+        { label: "涓芥按甯�", value: "B" }
+      ]
     };
   },
   created() { },
@@ -757,7 +786,7 @@
         this.$moment(this.$route.params.starttime).format("YYYY-MM-DD"),
         this.$moment(this.$route.params.endtime)
           .add(-1, "month")
-          .format("YYYY-MM-DD"),
+          .format("YYYY-MM-DD")
       ];
     }
     if (this.$route.params.reporterno != "") {
@@ -795,20 +824,20 @@
 
   methods: {
     getCurrentUser() {
-      getUserProfile().then((response) => {
+      getUserProfile().then(response => {
         this.currentuser = response.data;
       });
     },
 
     LoadReportList() {
-      listDonatebaseinfo().then((res) => {
+      listDonatebaseinfo().then(res => {
         let list = res.rows;
         let reportlist = [];
         reportlist.push({ reporterno: "", reportername: "鍏ㄩ儴" });
-        list.forEach((element) => {
+        list.forEach(element => {
           reportlist.push({
             reporterno: element.reporterno,
-            reportername: element.reportername,
+            reportername: element.reportername
           });
         });
 
@@ -894,14 +923,14 @@
 
     selectReporters() {
       //涓撹亴浜哄憳
-      listReportname("zzry").then((res) => {
+      listReportname("zzry").then(res => {
         this.reporters = res.data;
       });
     },
 
     getuserlist() {
       //鐢ㄦ埛鍒楄〃
-      listUser().then((res) => {
+      listUser().then(res => {
         this.users = res.data;
       });
     },
@@ -910,11 +939,11 @@
       this.$confirm("鏄惁纭灏嗘渚嬩笂鎶ュ鏍革紵", "鎻愮ず", {
         confirmButtonText: "纭畾",
         cancelButtonText: "鍙栨秷",
-        type: "warning",
+        type: "warning"
       })
         .then(() => {
           row.recordstate = 1;
-          updateDonatebaseinfo(row).then((response) => {
+          updateDonatebaseinfo(row).then(response => {
             this.$modal.msgSuccess("涓婃姤瀹℃牳鎴愬姛");
             this.getList();
           });
@@ -922,7 +951,7 @@
         .catch(() => {
           this.$message({
             type: "info",
-            message: "宸插彇娑堜笂鎶�",
+            message: "宸插彇娑堜笂鎶�"
           });
         });
     },
@@ -930,15 +959,14 @@
       this.approvalState = false;
       //  this.reset();
       // const id = row.id || this.ids;
-      updateDonatebaseinfo(row).then((response) => {
+      updateDonatebaseinfo(row).then(response => {
         row.recordstate = 0;
       });
     },
 
     updateMessage() {
       try {
-        const reg =
-          /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/;
+        const reg = /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/;
         if (reg.test(this.form.idcardno)) {
           // 韬唤璇佸彿鐮佹槸鍚﹀悎娉�
           var org_birthday = this.form.idcardno.substring(6, 14);
@@ -993,7 +1021,7 @@
       }
       this.setState({
         birthday,
-        sex,
+        sex
       });
     },
 
@@ -1028,7 +1056,7 @@
       this.queryParams.residenceprovince = this.$refs.areaSelect.getSheng();
       this.queryParams.residencecity = this.$refs.areaSelect.getShi();
       this.queryParams.residencetown = this.$refs.areaSelect.getQu();
-      listDonatebaseinfo(this.queryParams).then((response) => {
+      listDonatebaseinfo(this.queryParams).then(response => {
         this.donatebaseinfoList = response.rows;
         //console.log("listDonatebaseinfo", response.rows);
         this.total = response.total;
@@ -1120,7 +1148,7 @@
         majorrelatives: null,
         familyrelations: null,
         acquisitiontissueno: "ZJOPO",
-        acquisitiontissuename: "娴欐睙鐪佷汉浣撳櫒瀹樿幏鍙栫粍缁�",
+        acquisitiontissuename: "娴欐睙鐪佷汉浣撳櫒瀹樿幏鍙栫粍缁�"
       };
 
       this.resetForm("form");
@@ -1153,7 +1181,7 @@
         reportername: null,
         reporttime: null,
         city: null,
-        treatmenthospitalno: null,
+        treatmenthospitalno: null
       };
       this.selecttime = [];
       this.getTimeList();
@@ -1161,7 +1189,7 @@
         sheng: "",
         shi: "",
         qu: "",
-        organizationname: null,
+        organizationname: null
       };
       //this.$refs.areaSelect.clean();
 
@@ -1170,12 +1198,18 @@
     },
     // 澶氶�夋閫変腑鏁版嵁
     handleSelectionChange(selection) {
-      this.ids = selection.map((item) => item.id);
+      this.ids = selection.map(item => item.id);
       this.single = selection.length !== 1;
       this.multiple = !selection.length;
     },
     /** 鏂板鎸夐挳鎿嶄綔 */
     handleAdd() {
+      // this.$router.push({
+      //   path: "/organ/donationdetails/",
+      //   query: {
+      //     organType: "add",
+      //   }
+      // });
       this.reset();
       //璁剧疆鎶ュ憡浜哄拰閮ㄩ棬/缁�
       this.form.reporterno = this.currentuser.userName;
@@ -1194,43 +1228,50 @@
     /** 淇敼鎸夐挳鎿嶄綔 */
 
     handleUpdate(row) {
-      this.showSaveBtn = true;
-      const id = row.id || this.ids;
-      //this.$refs.annex.getAnnexList();
-
-      getDonatebaseinfo(id).then((response) => {
-        this.reset();
-
-        this.$nextTick(function () {
-          this.$refs.annex.getAnnexList();
-        });
-        this.form = response.data;
-        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(",");
-        this.form.othercases = this.form.othercases.split(",");
-        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;
-        this.residenceAddresss.sheng = response.data.residenceprovincename;
-        this.registerAddresss.shi = response.data.registercityname;
-        this.residenceAddresss.shi = response.data.residencecityname;
-        this.residenceAddresss.qu = response.data.residencetownname;
-        this.registerAddresss.qu = response.data.registertownname;
+      this.$router.push({
+        path: "/organ/donationdetails/",
+        query: {
+          id: row.id,
+          organType: "edit"
+        }
       });
-    },
+      // this.showSaveBtn = true;
+      // const id = row.id || this.ids;
+      // //this.$refs.annex.getAnnexList();
 
+      // getDonatebaseinfo(id).then((response) => {
+      //   this.reset();
+
+      //   this.$nextTick(function () {
+      //     this.$refs.annex.getAnnexList();
+      //   });
+      //   this.form = response.data;
+      //   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(",");
+      //   this.form.othercases = this.form.othercases.split(",");
+      //   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;
+      //   this.residenceAddresss.sheng = response.data.residenceprovincename;
+      //   this.registerAddresss.shi = response.data.registercityname;
+      //   this.residenceAddresss.shi = response.data.residencecityname;
+      //   this.residenceAddresss.qu = response.data.residencetownname;
+      //   this.registerAddresss.qu = response.data.registertownname;
+      // });
+    },
+    // 缁堟妗堜緥
     handletermination(row) {
       this.reset();
       this.showSaveBtn = false;
       this.showTerminationBtn = true;
       const id = row.id || this.ids;
-      getDonatebaseinfo(id).then((response) => {
+      getDonatebaseinfo(id).then(response => {
         this.form = response.data;
 
         this.form.diseasetype = this.form.diseasetype.split(",");
@@ -1256,7 +1297,7 @@
     },
     /** 鎻愪氦鎸夐挳 */
     submitForm() {
-      this.$refs["form"].validate((valid) => {
+      this.$refs["form"].validate(valid => {
         console.log("鎻愪氦鐨勬暟鎹滑锛�", this.form);
         if (valid) {
           this.form.birthday = this.$moment(this.form.birthday).format(
@@ -1290,19 +1331,17 @@
           this.form.reportername = this.$refs.getReportname.$data.selectedLabel;
 
           try {
-            this.form.treatmenthospitalname =
-              this.$refs.addOrgSelect.getOptionByValue(
-                this.form.treatmenthospitalno
-              ).organizationname;
+            this.form.treatmenthospitalname = this.$refs.addOrgSelect.getOptionByValue(
+              this.form.treatmenthospitalno
+            ).organizationname;
           } catch {
             this.form.treatmenthospitalname = this.form.treatmenthospitalno;
           }
 
           try {
-            this.form.redorganname =
-              this.$refs.addCrossOrgSelect.getOptionByValue(
-                this.form.redorganno
-              ).organizationname;
+            this.form.redorganname = this.$refs.addCrossOrgSelect.getOptionByValue(
+              this.form.redorganno
+            ).organizationname;
           } catch {
             this.form.redorganname = this.form.redorganno;
           }
@@ -1314,18 +1353,25 @@
           // });
 
           if (this.form.id != null) {
-            updateDonatebaseinfo(this.form).then((response) => {
+            updateDonatebaseinfo(this.form).then(response => {
               this.$modal.msgSuccess("淇敼鎴愬姛");
               this.open = false;
               this.getList();
             });
           } else {
             this.form.recordstate = 0;
-            addDonatebaseinfo(this.form).then((response) => {
+            addDonatebaseinfo(this.form).then(response => {
               if (response.code == 200) {
                 this.$modal.msgSuccess("鏂板鎴愬姛");
+                this.$router.push({
+                  path: "/organ/donationdetails/",
+                  query: {
+                    id: response.data.id,
+                    organType: "edit"
+                  }
+                });
                 this.open = false;
-                this.getList();
+                // this.getList();
               } else {
                 this.$modal.msgError("鏂板澶辫触锛�" + response.msg);
               }
@@ -1358,7 +1404,7 @@
           this.exportLoading = true;
           return exportDonatebaseinfo(queryParams);
         })
-        .then((response) => {
+        .then(response => {
           this.$download.name(response.msg);
           this.exportLoading = false;
         })
@@ -1388,7 +1434,7 @@
     handledownload(row) {
       const id = row.id || this.ids;
 
-      downloadbaseinfo(id).then((response) => {
+      downloadbaseinfo(id).then(response => {
         var fileUrl = response;
         //鑾峰彇褰撳墠缃戝潃
         var urlBase = process.env.VUE_APP_BASE_API;
@@ -1401,8 +1447,8 @@
           curWWWPath.substring(0, pos) + urlBase + fileUrl["downloadUrl"];
         aEle.click();
       });
-    },
-  },
+    }
+  }
 };
 </script>
 
@@ -1412,4 +1458,4 @@
   margin: auto !important;
   padding-bottom: 0px !important;
 }
-</style>
\ No newline at end of file
+</style>

--
Gitblit v1.9.3