From 21fe2968337eb8eab97adc88750b71c4057e98f8 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期三, 17 七月 2024 15:39:46 +0800
Subject: [PATCH] 11

---
 src/views/project/donatebaseinfo/index.vue | 1095 ++++++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 803 insertions(+), 292 deletions(-)

diff --git a/src/views/project/donatebaseinfo/index.vue b/src/views/project/donatebaseinfo/index.vue
index 9c67e7f..dacc710 100644
--- a/src/views/project/donatebaseinfo/index.vue
+++ b/src/views/project/donatebaseinfo/index.vue
@@ -1,76 +1,156 @@
 <template>
   <div class="app-container">
-    <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="70px">
+    <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-input
+              v-model="queryParams.name"
+              placeholder="璇疯緭鍏ュ鍚�"
+              clearable
+              size="small"
+              @keyup.enter.native="handleQuery"
+            />
           </el-form-item>
         </el-col>
-        <el-col :span="6">
-          <el-form-item align="left" label="鍖荤枟鏈烘瀯" prop="treatmenthospitalname">
-            <org-selecter ref="orgSelecter" :org-type="'3'" v-model="queryParams.treatmenthospitalno"
-              @keyup.enter.native="handleQuery" />
+        <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">
+              <el-option
+                v-for="item in provinceData"
+                :key="item.value"
+                :label="item.label"
+                :value="item.value"
+              >
               </el-option>
             </el-select>
           </el-form-item>
         </el-col>
-        <el-col :span="6">
-          <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"
-                :value="dict.value" />
-            </el-select>
-          </el-form-item>
-        </el-col>
-      </el-row>
-      <el-row :gutter="8">
-        <el-col :span="6">
-          <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">
-              </el-option>
-            </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-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>
-        <el-col :span="14">
+      <el-row :gutter="8">
+        <el-col :span="5">
+          <el-form-item label="鎹愮尞杩涘害" prop="workflow">
+            <el-select
+              v-model="queryParams.workflow"
+              placeholder="璇烽�夋嫨褰撳墠杩涘害"
+              clearable
+              size="small"
+            >
+              <el-option
+                v-for="dict in dict.type.sys_donornode"
+                :key="dict.value"
+                :label="dict.label"
+                :value="dict.value"
+              />
+            </el-select>
+          </el-form-item>
+        </el-col>
+        <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"
+              >
+              </el-option>
+            </el-select>
+          </el-form-item>
+        </el-col>
+        <el-col :span="5">
+          <el-form-item label="鏄惁缁堟">
+            <el-select
+              v-model="queryParams.terminationCase"
+              placeholder="璇烽�夋嫨鐘舵��"
+            >
+              <el-option
+                v-for="item in terminationCaselist"
+                :key="item.value"
+                :label="item.name"
+                :value="item.value"
+              >
+              </el-option>
+            </el-select>
+          </el-form-item>
+        </el-col>
+        <el-col :span="9">
           <el-form-item label="绫嶈疮">
             <div>
-              <li_area_select ref="areaSelect" v-model="searchAddress"></li_area_select>
+              <li_area_select
+                ref="areaSelect"
+                v-model="searchAddress"
+              ></li_area_select>
             </div>
           </el-form-item>
         </el-col>
-
+      </el-row>
+      <el-row>
         <el-col :span="4">
           <el-form-item>
-            <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
-            <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+            <el-button
+              type="primary"
+              icon="el-icon-search"
+              size="mini"
+              @click="handleQuery"
+              >鎼滅储</el-button
+            >
+            <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
+              >閲嶇疆</el-button
+            >
           </el-form-item>
         </el-col>
       </el-row>
     </el-form>
     <el-row :gutter="10" class="mb8">
       <el-col :span="1.5">
-        <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
-          v-hasPermi="['project:donatebaseinfo:add']">鏂板</el-button>
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          v-hasPermi="['project:donatebaseinfo:add']"
+          >鏂板</el-button
+        >
       </el-col>
       <!-- <el-col :span="1.5">
         <el-button
@@ -86,67 +166,199 @@
       </el-col> -->
 
       <el-col :span="1.5">
-        <el-button type="warning" plain icon="el-icon-download" size="mini" :loading="exportLoading" @click="handleExport"
-          v-hasPermi="['project:donatebaseinfo:export']">瀵煎嚭</el-button>
+        <el-button
+          type="warning"
+          plain
+          icon="el-icon-download"
+          size="mini"
+          :loading="exportLoading"
+          @click="handleExport"
+          v-hasPermi="['project:donatebaseinfo:export']"
+          >瀵煎嚭</el-button
+        >
       </el-col>
-      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+      <right-toolbar
+        :showSearch.sync="showSearch"
+        @queryTable="getList"
+      ></right-toolbar>
     </el-row>
 
-    <el-table v-loading="loading" :data="donatebaseinfoList" @selection-change="handleSelectionChange" border
-      :default-sort="{ prop: 'reporttime', order: 'descending' }">
+    <el-table
+      v-loading="loading"
+      :data="donatebaseinfoList"
+      @selection-change="handleSelectionChange"
+      border
+      :default-sort="{ prop: 'donatetime', 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="donatetime"
+        width="100"
+      >
         <template slot-scope="scope">
-          <span>{{ parseTime(scope.row.reporttime, "{y}-{m}-{d}") }}</span>
+          <span>{{ parseTime(scope.row.donatetime, "{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)" />
+          <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="treatmenthospitalname"
+      />
+      <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">
-          <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
-            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 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>
-          <!-- 鎾ら攢鐢宠 -->
+          <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">
+          <div v-if="!scope.row.terminationCase">
+            <dict-tag
+              :options="dict.type.sys_donornode"
+              :value="scope.row.workflow"
+            />
+          </div>
+          <div v-else>浠诲姟缁堟</div>
+        </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
+          >
+          <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 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 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>
-    <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
-      @pagination="getList" />
+    <pagination
+      v-show="total > 0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
     <!-- 娣诲姞鎴栦慨鏀规崘鐚熀纭�瀵硅瘽妗� -->
-    <el-dialog :title="title" align="center" :visible.sync="open" :close-on-click-modal="false" width="1100px">
-      <el-form ref="form" :model="form" :rules="rules" label-width="130px" label-position="right">
-        <div style="
+    <el-dialog
+      :title="title"
+      align="center"
+      :visible.sync="open"
+      :close-on-click-modal="false"
+      width="1100px"
+    >
+      <el-form
+        ref="form"
+        :model="form"
+        :rules="rules"
+        label-width="130px"
+        label-position="right"
+      >
+        <div
+          style="
                 border-bottom: 1px solid #ddd;
                 border-top: 1px solid #ddd;
                 padding-right: 60px;
-              ">
+              "
+        >
           <el-row style="margin-top: 40px">
             <el-col :span="8">
               <el-form-item label="鎹愮尞缂栧彿" prop="donorno">
@@ -154,13 +366,24 @@
               </el-form-item>
             </el-col>
             <el-col :span="8">
-              <el-form-item align="left" label="鍖荤枟鏈烘瀯" prop="treatmenthospitalno">
-                <org-selecter ref="addOrgSelect" :org-type="'3'" v-model="form.treatmenthospitalno" />
+              <el-form-item
+                align="left"
+                label="鍖荤枟鏈烘瀯"
+                prop="treatmenthospitalno"
+              >
+                <org-selecter
+                  ref="addOrgSelect"
+                  :org-type="'3'"
+                  v-model="form.treatmenthospitalno"
+                />
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item label="绉戝" prop="treatmentdeptno">
-                <el-input v-model="form.treatmentdeptname" placeholder="璇疯緭鍏ョ瀹�" />
+                <el-input
+                  v-model="form.treatmentdeptname"
+                  placeholder="璇疯緭鍏ョ瀹�"
+                />
               </el-form-item>
             </el-col>
           </el-row>
@@ -173,8 +396,12 @@
             <el-col :span="6">
               <el-form-item label="姘戞棌" prop="nation">
                 <el-select v-model="form.nation" placeholder="璇烽�夋嫨姘戞棌">
-                  <el-option v-for="dict in dict.type.sys_nation" :key="dict.value" :label="dict.label"
-                    :value="dict.value"></el-option>
+                  <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>
@@ -192,22 +419,40 @@
           <el-row>
             <el-col :span="6">
               <el-form-item label="璇佷欢绫诲瀷" prop="idcardtype">
-                <el-select v-model="form.idcardtype" placeholder="璇烽�夋嫨璇佷欢绫诲瀷">
-                  <el-option v-for="dict in dict.type.sys_IDType" :key="dict.value" :label="dict.label"
-                    :value="parseInt(dict.value)"></el-option>
+                <el-select
+                  v-model="form.idcardtype"
+                  placeholder="璇烽�夋嫨璇佷欢绫诲瀷"
+                >
+                  <el-option
+                    v-for="dict in dict.type.sys_IDType"
+                    :key="dict.value"
+                    :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="idcardno">
-                <el-input style="width: 174px" ref="updateBSvalue" class="sfzcode" v-model="form.idcardno"
-                  placeholder="璇疯緭鍏ヨ瘉浠跺彿鐮�" @blur="updateMessage" />
-              </el-form-item> </el-col>
+                <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="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-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>
@@ -217,27 +462,42 @@
               </el-form-item>
             </el-col>
           </el-row>
-          <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
+                  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="occupation">
                 <el-select v-model="form.occupation" placeholder="璇烽�夋嫨鑱屼笟">
-                  <el-option v-for="dict in dict.type.sys_occupation" :key="dict.value" :label="dict.label"
-                    :value="dict.value"></el-option>
+                  <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-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"
-                    :value="dict.value"></el-option>
+                  <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>
@@ -246,13 +506,19 @@
             <el-col :span="12">
               <el-form-item label="浣忓潃" prop="residenceaddress">
                 <div>
-                  <li_area_select ref="residenceSelect" v-model="residenceAddresss"></li_area_select>
+                  <li_area_select
+                    ref="residenceSelect"
+                    v-model="residenceAddresss"
+                  ></li_area_select>
                   <!-- <div>{{defultAddress}}</div> -->
                 </div>
               </el-form-item>
             </el-col>
             <el-col :span="11" :push="1">
-              <el-input v-model="form.residenceaddress" placeholder="璇疯緭鍏ュ唴瀹�" />
+              <el-input
+                v-model="form.residenceaddress"
+                placeholder="璇疯緭鍏ュ唴瀹�"
+              />
             </el-col>
           </el-row>
 
@@ -260,22 +526,30 @@
             <el-col :span="12">
               <el-form-item label="鐜版墍鍦ㄥ湴" prop="registeraddress">
                 <div>
-                  <li_area_select ref="registerSelect" v-model="registerAddresss"></li_area_select>
+                  <li_area_select
+                    ref="registerSelect"
+                    v-model="registerAddresss"
+                  ></li_area_select>
                   <!-- <div>{{defultAddress}}</div> -->
                 </div>
               </el-form-item>
             </el-col>
             <el-col :span="11" :push="1">
-              <el-input v-model="form.registeraddress" placeholder="璇疯緭鍏ュ唴瀹�" />
+              <el-input
+                v-model="form.registeraddress"
+                placeholder="璇疯緭鍏ュ唴瀹�"
+              />
             </el-col>
           </el-row>
         </div>
 
-        <div style="
+        <div
+          style="
                 border-bottom: 1px solid #ddd;
                 margin-top: 20px;
                 padding-right: 60px;
-              ">
+              "
+        >
           <el-row>
             <el-col :span="8">
               <el-form-item label="浣忛櫌鍙�" prop="inpatientno">
@@ -284,7 +558,10 @@
             </el-col>
             <el-col :span="16">
               <el-form-item label="鐤剧梾璇婃柇" prop="diagnosisname">
-                <el-input v-model="form.diagnosisname" placeholder="璇疯緭鍏ョ柧鐥呰瘖鏂悕绉�" />
+                <el-input
+                  v-model="form.diagnosisname"
+                  placeholder="璇疯緭鍏ョ柧鐥呰瘖鏂悕绉�"
+                />
               </el-form-item>
             </el-col>
           </el-row>
@@ -292,16 +569,24 @@
             <el-col :span="12">
               <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" :key="dict.value" :label="dict.value">{{ dict.label
-                  }}</el-radio>
+                  <el-radio
+                    v-for="dict in dict.type.sys_BloodType"
+                    :key="dict.value"
+                    :label="dict.value"
+                    >{{ dict.label }}</el-radio
+                  >
                 </el-radio-group>
               </el-form-item>
             </el-col>
             <el-col :span="12" :pull="1">
               <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" :key="dict.value" :label="dict.value">{{
-                    dict.label }}</el-radio>
+                  <el-radio
+                    v-for="dict in dict.type.sys_bloodtype_rhd"
+                    :key="dict.value"
+                    :label="dict.value"
+                    >{{ dict.label }}</el-radio
+                  >
                 </el-radio-group>
               </el-form-item>
             </el-col>
@@ -309,20 +594,31 @@
           <el-row>
             <el-form-item label="鐤剧梾绫诲瀷" align="left">
               <el-checkbox-group v-model="form.diseasetype">
-                <el-checkbox v-for="dict in dict.type.sys_DiseaseType" :key="dict.value" :label="dict.value">
+                <el-checkbox
+                  v-for="dict in dict.type.sys_DiseaseType"
+                  :key="dict.value"
+                  :label="dict.value"
+                >
                   {{ dict.label }}
                 </el-checkbox>
               </el-checkbox-group>
             </el-form-item>
             <el-form-item label="鍏朵粬" prop="diseasetypeOther">
-              <el-input v-model="form.diseasetypeOther" placeholder="璇疯緭鍏ュ叾浠�" />
+              <el-input
+                v-model="form.diseasetypeOther"
+                placeholder="璇疯緭鍏ュ叾浠�"
+              />
             </el-form-item>
           </el-row>
           <el-row>
             <el-col :span="12">
               <el-form-item align="left" label="浼犳煋鐥�">
                 <el-checkbox-group v-model="form.infectious">
-                  <el-checkbox v-for="dict in dict.type.sys_Infectious" :key="dict.value" :label="dict.value">
+                  <el-checkbox
+                    v-for="dict in dict.type.sys_Infectious"
+                    :key="dict.value"
+                    :label="dict.value"
+                  >
                     {{ dict.label }}
                   </el-checkbox>
                 </el-checkbox-group>
@@ -330,7 +626,10 @@
             </el-col>
             <el-col :span="12">
               <el-form-item align="left" label="鍏朵粬" prop="infectiousOther">
-                <el-input v-model="form.infectiousOther" placeholder="璇疯緭鍏ュ叾浠�" />
+                <el-input
+                  v-model="form.infectiousOther"
+                  placeholder="璇疯緭鍏ュ叾浠�"
+                />
               </el-form-item>
             </el-col>
           </el-row>
@@ -338,7 +637,11 @@
             <el-col :span="9">
               <el-form-item align="left" label="鐥呬汉鐘跺喌">
                 <el-checkbox-group v-model="form.patientstate">
-                  <el-checkbox v-for="dict in dict.type.sys_patientstate" :key="dict.value" :label="dict.value">
+                  <el-checkbox
+                    v-for="dict in dict.type.sys_patientstate"
+                    :key="dict.value"
+                    :label="dict.value"
+                  >
                     {{ dict.label }}
                   </el-checkbox>
                 </el-checkbox-group>
@@ -347,7 +650,11 @@
             <el-col :span="15" align="left">
               <el-form-item label="鍏朵粬鎯呭喌">
                 <el-checkbox-group v-model="form.othercases">
-                  <el-checkbox v-for="dict in dict.type.sys_OtherCases" :key="dict.value" :label="dict.value">
+                  <el-checkbox
+                    v-for="dict in dict.type.sys_OtherCases"
+                    :key="dict.value"
+                    :label="dict.value"
+                  >
                     {{ dict.label }}
                   </el-checkbox>
                 </el-checkbox-group>
@@ -356,18 +663,29 @@
           </el-row>
         </div>
 
-        <div style="
+        <div
+          style="
                 border-bottom: 1px solid #ddd;
                 padding-right: 60px;
                 margin-top: 20px;
-              ">
+              "
+        >
           <el-row>
             <div display="flex">
               <el-row>
                 <el-col :span="12">
-                  <el-form-item label="浜插睘鐘跺喌" prop="kinship" class="relation" align="left">
+                  <el-form-item
+                    label="浜插睘鐘跺喌"
+                    prop="kinship"
+                    class="relation"
+                    align="left"
+                  >
                     <el-checkbox-group v-model="form.kinship">
-                      <el-checkbox v-for="dict in dict.type.sys_Kinship" :key="dict.value" :label="dict.value">
+                      <el-checkbox
+                        v-for="dict in dict.type.sys_Kinship"
+                        :key="dict.value"
+                        :label="dict.value"
+                      >
                         {{ dict.label }}
                       </el-checkbox>
                     </el-checkbox-group>
@@ -375,7 +693,10 @@
                 </el-col>
                 <el-col :span="12">
                   <el-form-item label="鍏朵粬" prop="kinshipOther">
-                    <el-input v-model="form.kinshipOther" placeholder="璇疯緭鍏ュ叾浠�" />
+                    <el-input
+                      v-model="form.kinshipOther"
+                      placeholder="璇疯緭鍏ュ叾浠�"
+                    />
                   </el-form-item>
                 </el-col>
               </el-row>
@@ -385,7 +706,11 @@
             <el-col :span="24">
               <el-form-item align="left" label="鏈汉鎰忔効 ">
                 <el-checkbox-group v-model="form.selfwill">
-                  <el-checkbox v-for="dict in dict.type.sys_SelfWill" :key="dict.value" :label="dict.value">
+                  <el-checkbox
+                    v-for="dict in dict.type.sys_SelfWill"
+                    :key="dict.value"
+                    :label="dict.value"
+                  >
                     {{ dict.label }}
                   </el-checkbox>
                 </el-checkbox-group>
@@ -395,14 +720,24 @@
           <el-row>
             <el-col :span="12">
               <el-form-item label="涓昏浜插睘" prop="majorrelatives">
-                <el-input v-model="form.majorrelatives" placeholder="璇疯緭鍏ヤ富瑕佷翰灞�" />
+                <el-input
+                  v-model="form.majorrelatives"
+                  placeholder="璇疯緭鍏ヤ富瑕佷翰灞�"
+                />
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item label="涓庢崘璧犺�呭叧绯�" prop="familyrelations">
-                <el-select v-model="form.familyrelations" placeholder="璇烽�夋嫨涓庢崘璧犺�呭叧绯�">
-                  <el-option v-for="dict in dict.type.sys_FamilyRelation" :key="dict.value" :label="dict.label"
-                    :value="dict.value"></el-option>
+                <el-select
+                  v-model="form.familyrelations"
+                  placeholder="璇烽�夋嫨涓庢崘璧犺�呭叧绯�"
+                >
+                  <el-option
+                    v-for="dict in dict.type.sys_FamilyRelation"
+                    :key="dict.value"
+                    :label="dict.label"
+                    :value="dict.value"
+                  ></el-option>
                 </el-select>
               </el-form-item>
             </el-col>
@@ -411,7 +746,11 @@
             <el-col :span="12">
               <el-form-item align="left" label="淇℃伅鏉ユ簮">
                 <el-checkbox-group v-model="form.infosources">
-                  <el-checkbox v-for="dict in dict.type.sys_InfoSources" :key="dict.value" :label="dict.value">
+                  <el-checkbox
+                    v-for="dict in dict.type.sys_InfoSources"
+                    :key="dict.value"
+                    :label="dict.value"
+                  >
                     {{ dict.label }}
                   </el-checkbox>
                 </el-checkbox-group>
@@ -419,7 +758,10 @@
             </el-col>
             <el-col :span="8">
               <el-form-item label="鍏朵粬" prop="infosourcesOther">
-                <el-input v-model="form.infosourcesOther" placeholder="璇疯緭鍏ヤ俊鎭潵婧愬叾浠�" />
+                <el-input
+                  v-model="form.infosourcesOther"
+                  placeholder="璇疯緭鍏ヤ俊鎭潵婧愬叾浠�"
+                />
               </el-form-item>
             </el-col>
           </el-row>
@@ -431,79 +773,129 @@
             </el-col>
             <el-col :span="8">
               <el-form-item label="鑱旂郴鐢佃瘽" prop="infophone">
-                <el-input v-model="form.infophone" placeholder="璇疯緭鍏ヤ俊鎭憳鑱旂郴鐢佃瘽" />
+                <el-input
+                  v-model="form.infophone"
+                  placeholder="璇疯緭鍏ヤ俊鎭憳鑱旂郴鐢佃瘽"
+                />
               </el-form-item>
             </el-col>
           </el-row>
           <el-row>
             <el-col :span="8">
               <el-form-item align="left" label="绾㈠崄瀛椾細" prop="redorganno">
-                <org-selecter ref="addCrossOrgSelect" :org-type="'2'" v-model="form.redorganno" />
+                <org-selecter
+                  ref="addCrossOrgSelect"
+                  :org-type="'2'"
+                  v-model="form.redorganno"
+                />
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item label="鑱旂郴浜�" prop="contactperson">
-                <el-input v-model="form.contactperson" placeholder="璇疯緭鍏ヨ仈绯讳汉" />
+                <el-input
+                  v-model="form.contactperson"
+                  placeholder="璇疯緭鍏ヨ仈绯讳汉"
+                />
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item label="鑱旂郴鏃堕棿" prop="contacttime">
-                <el-date-picker clearable size="small" style="width: 190px" v-model="form.contacttime" type="datetime"
-                  value-format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨鎶ュ憡鏃堕棿">
+                <el-date-picker
+                  clearable
+                  size="small"
+                  style="width: 190px"
+                  v-model="form.contacttime"
+                  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="24">
-              <el-form-item align="left" label="鑾峰彇缁勭粐" prop="acquisitiontissuename">
-                <org-selecter style="width: 260px" ref="orgSelecter" :org-type="'1'" v-model="form.acquisitiontissueno" />
+              <el-form-item
+                align="left"
+                label="鑾峰彇缁勭粐"
+                prop="acquisitiontissuename"
+              >
+                <org-selecter
+                  style="width: 260px"
+                  ref="orgSelecter"
+                  :org-type="'1'"
+                  v-model="form.acquisitiontissueno"
+                />
               </el-form-item>
             </el-col>
           </el-row>
           <el-row>
             <el-col :span="8">
               <el-form-item label="鎶ュ憡浜�" prop="reporterno">
-                <el-select ref="getReportname" v-model="form.reporterno" placeholder="璇烽�夋嫨">
-                  <el-option v-for="item in reporters" :key="item.reportNo" :label="item.reportName"
-                    :value="item.reportNo">
+                <el-select
+                  ref="getReportname"
+                  v-model="form.reporterno"
+                  placeholder="璇烽�夋嫨"
+                >
+                  <el-option
+                    v-for="item in reporters"
+                    :key="item.reportNo"
+                    :label="item.reportName"
+                    :value="item.reportNo"
+                  >
                   </el-option>
                 </el-select>
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item label="鑱旂郴鐢佃瘽" prop="reporterphone">
-                <el-input v-model="form.reporterphone" placeholder="璇疯緭鍏ヨ仈绯荤數璇�" />
+                <el-input
+                  v-model="form.reporterphone"
+                  placeholder="璇疯緭鍏ヨ仈绯荤數璇�"
+                />
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item label="鎶ュ憡鏃堕棿" align="left" prop="reporttime">
-                <el-date-picker clearable size="small" style="width: 190px" v-model="form.reporttime" type="datetime"
-                  value-format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨鎶ュ憡鏃堕棿">
+                <el-date-picker
+                  clearable
+                  size="small"
+                  style="width: 190px"
+                  v-model="form.reporttime"
+                  type="datetime"
+                  value-format="yyyy-MM-dd HH:mm:ss"
+                  placeholder="閫夋嫨鎶ュ憡鏃堕棿"
+                >
                 </el-date-picker>
               </el-form-item>
             </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="showTerminationBtn" 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> -->
       </div>
     </el-dialog>
   </div>
 </template>
-<style scoped></style>
 <script>
 import { getUserProfile } from "@/api/system/user";
 import {
@@ -514,25 +906,26 @@
   updateDonatebaseinfo,
   exportDonatebaseinfo,
   downloadbaseinfo,
-  getdonatorno,
-  // exportProvincemessage,
+  getDonationNumber,
+  getdonatorno
 } from "@/api/project/donatebaseinfo";
 import Li_area_select from "@/components/Address";
 import OrgSelecter from "@/views/project/components/orgselect";
 import AnnexUpload from "@/views/project/components/annexupload";
 import ReportName from "@/views/project/components/organizationUser";
+import { getToken } from "@/utils/auth";
 import {
   listOrganization,
   getOrganization,
   listReportname,
-  listUser,
+  listUser
 } from "@/api/project/organization";
 export default {
   components: {
     Li_area_select,
     OrgSelecter,
     AnnexUpload,
-    ReportName,
+    ReportName
   },
   name: "Donatebaseinfo",
   dicts: [
@@ -561,6 +954,7 @@
     "sys_DiseaseType",
     "sys_SelfWill",
     "sys_FamilyRelation",
+    "sys_donornode"
   ],
   data() {
     return {
@@ -577,18 +971,22 @@
         sheng: "",
         shi: "",
         qu: "",
-        organizationname: null,
+        organizationname: null
       },
       residenceAddresss: {
         sheng: "娴欐睙鐪�",
         shi: "",
-        qu: "",
+        qu: ""
       },
       registerAddresss: {
         sheng: "娴欐睙鐪�",
         shi: "",
-        qu: "",
+        qu: ""
       },
+      terminationCaselist: [
+        { name: "缁堟鐘舵��", value: 1 },
+        { name: "姝e父鐘舵��", value: 0 }
+      ],
       // 閬僵灞�
       loading: true,
       // 瀵煎嚭閬僵灞�
@@ -629,7 +1027,7 @@
         starttime: null,
         endtime: null,
         city: null,
-        reportno: null,
+        reportno: null
         // organizationname: null,
         // organizationtype: null,
         // idcardno: null,
@@ -637,7 +1035,86 @@
         // reporttime: null,
       },
       // 琛ㄥ崟鍙傛暟
-      form: {},
+      form: {
+        id: null,
+        name: null,
+        sex: null,
+        idcardtype: null,
+        idcardno: null,
+        age: null,
+        ageunit: null,
+        birthday: null,
+        phone: null,
+        residenceaddress: null,
+        nationality: "涓浗",
+        nativeplace: null,
+        residenceprovince: null,
+        nation: null,
+        residenceprovincename: null,
+        occupation: null,
+        residencecity: null,
+        education: null,
+        residencecityname: null,
+        residencetown: null,
+        residencetownname: null,
+        residencecommunity: null,
+        residencecommunityname: null,
+        residencecountycode: null,
+        residencecountyname: null,
+        registeraddress: null,
+        registerprovince: null,
+        registerprovincename: null,
+        registercity: null,
+        registercityname: null,
+        registertown: null,
+        registertownname: null,
+        registercommunity: null,
+        registercommunityname: null,
+        registercountycode: null,
+        registercountyname: null,
+        recordstate: null,
+        treatmenthospitalno: null,
+        treatmenthospitalname: null,
+        treatmentdeptname: null,
+        diagnosisno: null,
+        diagnosisname: null,
+        bloodtype: "0",
+        inpatientno: null,
+        rhyin: "0",
+        donorno: null,
+        donationcategory: null,
+        illnessoverview: null,
+        diseasetype: [],
+        infectious: [],
+        selfwill: [],
+        diseasetypeOther: null,
+        othercases: [],
+        kinshipwill: 0,
+        infosources: [],
+        kinship: [],
+        redorganno: null,
+        redorganname: null,
+        contactperson: null,
+        infectiousOther: null,
+        contactnumber: null,
+        contacttime: null,
+        reporterno: null,
+        reportername: null,
+        patientstate: [],
+        reporterphone: null,
+        infosourcesOther: null,
+        reporttime: null,
+        delFlag: null,
+        createBy: null,
+        createTime: null,
+        updateBy: null,
+        updateTime: null,
+        kinshipOther: null,
+        majorrelatives: null,
+        familyrelations: null,
+        acquisitiontissueno: "ZJOPO",
+        acquisitiontissuename: "娴欐睙鐪佷汉浣撳櫒瀹樿幏鍙栫粍缁�"
+      },
       //ads
       reporters: [],
       users: [],
@@ -645,77 +1122,77 @@
       // 琛ㄥ崟鏍¢獙
       rules: {
         name: [
-          { required: true, message: "璇疯緭鍏ユ崘鐚�呭鍚�", trigger: "blur" },
+          { required: true, message: "璇疯緭鍏ユ崘鐚�呭鍚�", trigger: "blur" }
         ],
         birthday: [
-          { required: true, message: "璇烽�夋嫨鍑虹敓鏃ユ湡", trigger: "blur" },
+          { 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,
@@ -727,6 +1204,9 @@
       endtime: "",
       reportlist: [],
       reportervalue: "",
+      headers: {
+        Authorization: "Bearer " + getToken()
+      },
       provinceData: [
         { label: "鍏ㄩ儴", value: "" },
         { label: "鏉窞甯�", value: "1" },
@@ -739,11 +1219,16 @@
         { label: "琛㈠窞甯�", value: "8" },
         { label: "鑸熷北甯�", value: "9" },
         { label: "鍙板窞甯�", value: "A" },
-        { label: "涓芥按甯�", value: "B" },
-      ],
+        { label: "涓芥按甯�", value: "B" }
+      ]
     };
   },
-  created() { },
+  created() {
+    if (sessionStorage.getItem("donatebaseinfo")) {
+      this.queryParams = JSON.parse(sessionStorage.getItem("donatebaseinfo"));
+      console.log(this.queryParams, "queryParams");
+    }
+  },
 
   mounted(e) {
     // let idd = this.$route.query.userid
@@ -758,9 +1243,7 @@
     if (this.$route.params.starttime != null && this.$route.params.endtime) {
       this.selecttime = [
         this.$moment(this.$route.params.starttime).format("YYYY-MM-DD"),
-        this.$moment(this.$route.params.endtime)
-          .add(-1, "month")
-          .format("YYYY-MM-DD"),
+        this.$moment(this.$route.params.endtime).format("YYYY-MM-DD")
       ];
     }
     if (this.$route.params.reporterno != "") {
@@ -798,20 +1281,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
           });
         });
 
@@ -824,7 +1307,7 @@
 
     resetArr(Arr) {
       var hash = {};
-      Arr = Arr.reduce(function (arr, current) {
+      Arr = Arr.reduce(function(arr, current) {
         hash[current.reporterno]
           ? ""
           : (hash[current.reporterno] = true && arr.push(current));
@@ -897,14 +1380,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;
       });
     },
@@ -913,11 +1396,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();
           });
@@ -925,7 +1408,7 @@
         .catch(() => {
           this.$message({
             type: "info",
-            message: "宸插彇娑堜笂鎶�",
+            message: "宸插彇娑堜笂鎶�"
           });
         });
     },
@@ -933,15 +1416,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);
@@ -959,8 +1441,8 @@
             d.getFullYear() -
             birthdays.getFullYear() -
             (d.getMonth() < birthdays.getMonth() ||
-              (d.getMonth() == birthdays.getMonth() &&
-                d.getDate() < birthdays.getDate())
+            (d.getMonth() == birthdays.getMonth() &&
+              d.getDate() < birthdays.getDate())
               ? 1
               : 0);
           // 璧嬪�肩粰琛ㄦ牸
@@ -969,7 +1451,7 @@
           this.form.age = age;
         } else {
         }
-      } catch { }
+      } catch {}
     },
     // sheng: '娴欐睙鐪�',
     //   shi: '',
@@ -996,23 +1478,20 @@
       }
       this.setState({
         birthday,
-        sex,
+        sex
       });
     },
 
     /** 鏌ヨ鎹愮尞鍩虹鍒楄〃 */
-    getList(e) {
+    getList() {
       this.loading = true;
       this.queryParams.params = {};
-      // if (null != this.daterangeReporttime && "" != this.daterangeReporttime) {
-      //   this.queryParams.params["beginReporttime"] =
-      //     this.daterangeReporttime[0];
-      //   this.queryParams.params["endReporttime"] = this.daterangeReporttime[1];
-      // }
+      sessionStorage.removeItem("donatebaseinfo");
+      sessionStorage.setItem(
+        "donatebaseinfo",
+        JSON.stringify(this.queryParams)
+      );
       // 璺宠浆鏃剁殑榛樿杩涘害
-      if (e != null && e != undefined && !isNaN(e)) {
-        this.queryParams.recordstate = e;
-      }
 
       if (this.reportervalue != "") {
         this.queryParams.reportno = this.reportervalue;
@@ -1031,7 +1510,9 @@
       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) => {
+      console.log(this.queryParams);
+
+      listDonatebaseinfo(this.queryParams).then(response => {
         this.donatebaseinfoList = response.rows;
         //console.log("listDonatebaseinfo", response.rows);
         this.total = response.total;
@@ -1123,7 +1604,7 @@
         majorrelatives: null,
         familyrelations: null,
         acquisitiontissueno: "ZJOPO",
-        acquisitiontissuename: "娴欐睙鐪佷汉浣撳櫒瀹樿幏鍙栫粍缁�",
+        acquisitiontissuename: "娴欐睙鐪佷汉浣撳櫒瀹樿幏鍙栫粍缁�"
       };
 
       this.resetForm("form");
@@ -1156,7 +1637,7 @@
         reportername: null,
         reporttime: null,
         city: null,
-        treatmenthospitalno: null,
+        treatmenthospitalno: null
       };
       this.selecttime = [];
       this.getTimeList();
@@ -1164,7 +1645,7 @@
         sheng: "",
         shi: "",
         qu: "",
-        organizationname: null,
+        organizationname: null
       };
       //this.$refs.areaSelect.clean();
 
@@ -1173,12 +1654,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;
@@ -1188,52 +1675,59 @@
       this.showSaveBtn = true;
       //this.$refs.annex.getAnnexList();
       this.open = true;
-      this.$nextTick(function () {
-        this.$refs.annex.getAnnexList();
-      });
+      // this.$nextTick(function() {
+      //   this.$refs.annex.getAnnexList();
+      // });
 
       this.title = "浜轰綋鍣ㄥ畼娼滃湪鎹愮尞鑰呯櫥璁拌〃";
     },
     /** 淇敼鎸夐挳鎿嶄綔 */
 
     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(",");
@@ -1252,16 +1746,18 @@
         this.open = true;
         this.title = "浜轰綋鍣ㄥ畼娼滃湪鎹愮尞鑰呯櫥璁拌〃";
         this.form.recordstate = 99;
-        this.$nextTick(function () {
-          this.$refs.annex.getAnnexList();
-        });
+        // this.$nextTick(function() {
+        //   this.$refs.annex.getAnnexList();
+        // });
       });
     },
     /** 鎻愪氦鎸夐挳 */
     submitForm() {
-      this.$refs["form"].validate((valid) => {
-        console.log("鎻愪氦鐨勬暟鎹滑锛�", this.form);
+      console.log(this.form);
+      this.$refs["form"].validate(valid => {
         if (valid) {
+          const date = { ...this.form };
+          console.log(date, "date");
           this.form.birthday = this.$moment(this.form.birthday).format(
             "YYYY-MM-DD HH:mm:ss"
           );
@@ -1291,49 +1787,46 @@
           this.form.registertownname = this.registerAddresss.qu;
 
           this.form.reportername = this.$refs.getReportname.$data.selectedLabel;
+          this.form.donatetime = this.form.reporttime;
 
           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;
           }
 
-          //灏濊瘯鐢熸垚鎹愮尞缂栧彿锛堝凡缁忕敱addDonatebaseinfo鎺ュ彛涓敓鎴愬彇浠o級
-          // getdonatorno(this.form).then((response) => {
-          //   // alert(JSON.stringify(response));
-          //   this.reset();
-          // });
-
-          if (this.form.id != null) {
-            updateDonatebaseinfo(this.form).then((response) => {
-              this.$modal.msgSuccess("淇敼鎴愬姛");
+          this.form.workflow = 0;
+          this.form.recordstate = 0;
+          addDonatebaseinfo(this.form).then(res => {
+            console.log("22");
+            console.log(res.code);
+            if (res.code == 200) {
+              this.$modal.msgSuccess("鏂板鎴愬姛");
+              this.$router.push({
+                path: "/organ/donationdetails/",
+                query: {
+                  id: res.data.id,
+                  organType: "edit"
+                }
+              });
               this.open = false;
-              this.getList();
-            });
-          } else {
-            this.form.recordstate = 0;
-            addDonatebaseinfo(this.form).then((response) => {
-              if (response.code == 200) {
-                this.$modal.msgSuccess("鏂板鎴愬姛");
-                this.open = false;
-                this.getList();
-              } else {
-                this.$modal.msgError("鏂板澶辫触锛�" + response.msg);
-              }
-            });
-          }
+            } else {
+              console.log("1");
+              this.form = date;
+              console.log(this.form, "form");
+              this.$modal.msgError("鏂板澶辫触锛�" + res.msg);
+            }
+          });
         }
       });
     },
@@ -1342,14 +1835,14 @@
       const ids = row.id || this.ids;
       this.$modal
         .confirm('鏄惁纭鍒犻櫎鎹愮尞鍩虹缂栧彿涓�"' + ids + '"鐨勬暟鎹」锛�')
-        .then(function () {
+        .then(function() {
           return delDonatebaseinfo(ids);
         })
         .then(() => {
           this.getList();
           this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
         })
-        .catch(() => { });
+        .catch(() => {});
     },
 
     /** 瀵煎嚭鎸夐挳鎿嶄綔 */
@@ -1361,11 +1854,11 @@
           this.exportLoading = true;
           return exportDonatebaseinfo(queryParams);
         })
-        .then((response) => {
+        .then(response => {
           this.$download.name(response.msg);
           this.exportLoading = false;
         })
-        .catch(() => { });
+        .catch(() => {});
     },
 
     // 瀵硅薄杞垚鎸囧畾瀛楃涓插垎闅�
@@ -1391,21 +1884,39 @@
     handledownload(row) {
       const id = row.id || this.ids;
 
-      downloadbaseinfo(id).then((response) => {
-        var fileUrl = response;
+      downloadbaseinfo(id).then(res => {
+        var fileUrl = res;
         //鑾峰彇褰撳墠缃戝潃
         var urlBase = process.env.VUE_APP_BASE_API;
         var curWWWPath = window.document.location.href;
         var pos = curWWWPath.indexOf(window.document.location.pathname);
-
         // 鍒涘缓a鏍囩
         var aEle = document.createElement("a");
         aEle.href =
           curWWWPath.substring(0, pos) + urlBase + fileUrl["downloadUrl"];
-        aEle.click();
+        console.log(aEle.href);
+        // 娣诲姞Authorization澶撮儴
+        fetch(aEle.href, {
+          headers: this.headers
+        })
+          .then(response => {
+            // 灏嗘枃浠朵笅杞介摼鎺ヤ綔涓篵lob瀵硅薄杩涜涓嬭浇
+            return response.blob();
+          })
+          .then(blob => {
+            const url = window.URL.createObjectURL(new Blob([blob]));
+            console.log(url);
+            const link = document.createElement("a");
+            link.href = url;
+            const name = fileUrl["downloadName"];
+            link.setAttribute("download", name); // 鏇挎崲file.pdf涓哄疄闄呯殑鏂囦欢鍚�
+            document.body.appendChild(link);
+            link.click();
+            link.parentNode.removeChild(link);
+          });
       });
-    },
-  },
+    }
+  }
 };
 </script>
 
@@ -1415,4 +1926,4 @@
   margin: auto !important;
   padding-bottom: 0px !important;
 }
-</style>
\ No newline at end of file
+</style>

--
Gitblit v1.9.3