From 6301694e7740760917474044a729ffb6d4e39192 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期三, 24 一月 2024 11:59:23 +0800
Subject: [PATCH] 11

---
 src/views/project/donatefinish/index.vue |  561 ++++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 406 insertions(+), 155 deletions(-)

diff --git a/src/views/project/donatefinish/index.vue b/src/views/project/donatefinish/index.vue
index 08d64fe..41cb09d 100644
--- a/src/views/project/donatefinish/index.vue
+++ b/src/views/project/donatefinish/index.vue
@@ -1,24 +1,47 @@
 <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-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="treatmenthospitalno">
-            <org-selecter ref="orgSelecter" :org-type="'3'" v-model="form.treatmenthospitalno" />
+          <el-form-item
+            align="left"
+            label="鍖荤枟鏈烘瀯"
+            prop="treatmenthospitalno"
+          >
+            <org-selecter
+              ref="orgSelecter"
+              :org-type="'3'"
+              v-model="form.treatmenthospitalno"
+            />
           </el-form-item>
         </el-col>
 
         <el-col :span="6">
           <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>
@@ -26,9 +49,18 @@
 
         <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
+              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>
@@ -36,8 +68,16 @@
       <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-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>
@@ -45,19 +85,34 @@
 
         <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
+              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-col :span="6">
           <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-row>
         <el-col :span="14">
@@ -75,9 +130,18 @@
       </el-row> -->
     </el-form>
 
-    <el-table v-loading="loading" border :default-sort="{ prop: 'completetime', order: 'descending' }"
-      :data="donatebaseinfoList">
-      <el-table-column label="妗堜緥鏃堕棿" align="center" prop="donatetime" width="120">
+    <el-table
+      v-loading="loading"
+      border
+      :default-sort="{ prop: 'completetime', order: 'descending' }"
+      :data="donatebaseinfoList"
+    >
+      <el-table-column
+        label="妗堜緥鏃堕棿"
+        align="center"
+        prop="donatetime"
+        width="120"
+      >
         <template slot-scope="scope">
           <span>{{ parseTime(scope.row.donatetime, "{y}-{m}-{d}") }}</span>
         </template>
@@ -85,26 +149,52 @@
       <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="treatmenthospitalname" />
-      <el-table-column label="瀹屾垚鏃堕棿" align="center" prop="completetime" width="200">
+      <el-table-column
+        label="鍖荤枟鏈烘瀯"
+        align="center"
+        prop="treatmenthospitalname"
+      />
+      <el-table-column
+        label="瀹屾垚鏃堕棿"
+        align="center"
+        prop="completetime"
+        width="200"
+      >
         <template slot-scope="scope">
           <span>{{ parseTime(scope.row.createtime, "{y}-{m}-{d}") }}</span>
         </template>
       </el-table-column>
       <!-- <el-table-column label="韬唤璇佸彿" prop="idcardno" width="180" /> -->
-      <el-table-column label="鎶ュ憡浜�" align="center" prop="reportername" width="100" />
+      <el-table-column
+        label="鎶ュ憡浜�"
+        align="center"
+        prop="reportername"
+        width="100"
+      />
 
       <el-table-column label="鎹愮尞杩涘害" align="center" prop="recordstate">
         <template slot-scope="scope">
-          <dict-tag :options="dict.type.sys_DonationStatus" :value="scope.row.recordstate" />
+          <dict-tag
+            :options="dict.type.sys_DonationStatus"
+            :value="scope.row.recordstate"
+          />
         </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"
+        class-name="small-padding fixed-width"
+        width="200"
+        fixed="right"
+      >
         <template slot-scope="scope">
           <!-- <el-button
             size="mini"
@@ -113,42 +203,93 @@
             @click="updatedonorno(scope.row)"
             >鏇存柊缂栧彿</el-button
           > -->
-          <el-button v-if="scope.row.dcid == undefined" size="mini" type="text" icon="el-icon-edit"
-            @click="handleAdd(scope.row)">鐧昏</el-button>
+          <el-button
+            v-if="scope.row.dcid == undefined"
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleAdd(scope.row)"
+            >鐧昏</el-button
+          >
 
-          <el-button v-if="scope.row.dcid > 0" size="mini" type="text" icon="el-icon-edit" @click="handleAdd(scope.row)"
-            v-hasPermi="['project:donatebaseinfo:edit']">淇敼</el-button>
+          <el-button
+            v-if="scope.row.dcid > 0"
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleAdd(scope.row)"
+            v-hasPermi="['project:donatebaseinfo:edit']"
+            >淇敼</el-button
+          >
 
-          <el-button v-if="scope.row.dcid > 0" size="mini" type="text" icon="el-icon-edit"
-            @click="handleReport(scope.row)">涓婃姤</el-button>
-          <el-button v-if="scope.row.dcid > 0" size="mini" type="text" icon="el-icon-refrigerator"
-            @click="handledownload(scope.row)">涓嬭浇</el-button>
+          <el-button
+            v-if="scope.row.dcid > 0"
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleReport(scope.row)"
+            >涓婃姤</el-button
+          >
+          <el-button
+            v-if="scope.row.dcid > 0"
+            size="mini"
+            type="text"
+            icon="el-icon-refrigerator"
+            @click="handledownload(scope.row)"
+            >涓嬭浇</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" width="1100px" :close-on-click-modal="false"
-      append-to-body>
+    <el-dialog
+      :title="title"
+      align="center"
+      :visible.sync="open"
+      width="1100px"
+      :close-on-click-modal="false"
+      append-to-body
+    >
       <el-form ref="form" :model="form" :rules="rules" label-width="120px">
         <el-row>
           <el-col :span="8">
             <el-form-item label="鎹愮尞缂栧彿" prop="donorno">
-              <el-input disabled v-model="curCase.donorno" placeholder="璇疯緭鍏ユ崘鐚�呯紪鍙�" />
+              <el-input
+                disabled
+                v-model="curCase.donorno"
+                placeholder="璇疯緭鍏ユ崘鐚�呯紪鍙�"
+              />
             </el-form-item>
           </el-col>
           <el-col :span="8">
             <el-form-item label="濮撳悕" prop="name">
-              <el-input disabled v-model="curCase.name" placeholder="璇疯緭鍏ユ崘鐚�呭鍚�" />
+              <el-input
+                disabled
+                v-model="curCase.name"
+                placeholder="璇疯緭鍏ユ崘鐚�呭鍚�"
+              />
             </el-form-item>
           </el-col>
           <el-col :span="8">
             <el-form-item label="瀹屾垚鏃堕棿" prop="completetime">
-              <el-date-picker style="width: 167px" clearable size="small" v-model="form.completetime" type="date"
-                value-format="yyyy-MM-dd hh:mm:ss" placeholder="閫夋嫨瀹屾垚鏃堕棿">
+              <el-date-picker
+                style="width: 167px"
+                clearable
+                size="small"
+                v-model="form.completetime"
+                type="date"
+                value-format="yyyy-MM-dd hh:mm:ss"
+                placeholder="閫夋嫨瀹屾垚鏃堕棿"
+              >
               </el-date-picker>
             </el-form-item>
           </el-col>
@@ -156,7 +297,12 @@
         <el-row>
           <el-form-item label="鍣ㄥ畼缁勭粐">
             <el-checkbox-group align="left" v-model="form.donateorganList">
-              <el-checkbox v-for="dict in dict.type.sys_Organ" :key="dict.value" :label="dict.value" disabled>
+              <el-checkbox
+                v-for="dict in dict.type.sys_Organ"
+                :key="dict.value"
+                :label="dict.value"
+                disabled
+              >
                 {{ dict.label }}
               </el-checkbox>
             </el-checkbox-group>
@@ -164,40 +310,96 @@
         </el-row>
         <el-row style="margin-bottom: 22px">
           <el-table v-loading="loading" border :data="tableData">
-            <el-table-column label="鍣ㄥ畼鍚嶇О" align="center" prop="organname" width="100" />
-            <el-table-column label="绉绘鍖婚櫌锛堟帴鏀跺崟浣嶏級" align="center" prop="transplanthospitalno" width="240">
+            <el-table-column
+              label="鍣ㄥ畼鍚嶇О"
+              align="center"
+              prop="organname"
+              width="100"
+            />
+            <el-table-column
+              label="绉绘鍖婚櫌锛堟帴鏀跺崟浣嶏級"
+              align="center"
+              prop="transplanthospitalno"
+              width="240"
+            >
               <template slot-scope="scope">
-                <org-selecter ref="transplanthosselect" :org-type="'4'" v-model="scope.row.transplanthospitalno" />
+                <org-selecter
+                  ref="transplanthosselect"
+                  :org-type="'4'"
+                  v-model="scope.row.transplanthospitalno"
+                />
               </template>
             </el-table-column>
-            <el-table-column label="绉绘璐熻矗浜�" align="center" prop="transplantdoct" width="120">
+            <el-table-column
+              label="绉绘璐熻矗浜�"
+              align="center"
+              prop="transplantdoct"
+              width="120"
+            >
               <template slot-scope="scope">
-                <el-input v-model="scope.row.transplantdoct" placeholder="璇疯緭鍏ヨ礋璐d汉"></el-input>
+                <el-input
+                  v-model="scope.row.transplantdoct"
+                  placeholder="璇疯緭鍏ヨ礋璐d汉"
+                ></el-input>
               </template>
             </el-table-column>
-            <el-table-column label="绉绘鏃ユ湡" align="center" prop="transplanttime" width="230">
+            <el-table-column
+              label="绉绘鏃ユ湡"
+              align="center"
+              prop="transplanttime"
+              width="230"
+            >
               <template slot-scope="scope">
                 <el-row>
-                  <el-date-picker clearable size="small" style="width: 90%" v-model="scope.row.transplanttime" type="date"
-                    value-format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨鍣ㄥ畼绉绘鏃堕棿">
+                  <el-date-picker
+                    clearable
+                    size="small"
+                    style="width: 90%"
+                    v-model="scope.row.transplanttime"
+                    type="date"
+                    value-format="yyyy-MM-dd HH:mm:ss"
+                    placeholder="閫夋嫨鍣ㄥ畼绉绘鏃堕棿"
+                  >
                   </el-date-picker>
                 </el-row>
               </template>
             </el-table-column>
-            <el-table-column prop="abandonreason" label="寮冪敤鍘熷洜" align="center" width="260">
+            <el-table-column
+              prop="abandonreason"
+              label="寮冪敤鍘熷洜"
+              align="center"
+              width="260"
+            >
               <template slot-scope="scope">
                 <el-row>
-                  <el-input clearable v-model="scope.row.abandonreason" placeholder="璇疯緭鍏ュ純鐢ㄥ師鍥�" />
+                  <el-input
+                    clearable
+                    v-model="scope.row.abandonreason"
+                    placeholder="璇疯緭鍏ュ純鐢ㄥ師鍥�"
+                  />
                 </el-row>
               </template>
             </el-table-column>
 
-            <el-table-column label="鍣ㄥ畼鐘舵��" align="center" prop="organstate" width="130">
+            <el-table-column
+              label="鍣ㄥ畼鐘舵��"
+              align="center"
+              prop="organstate"
+              width="130"
+            >
               <template slot-scope="scope">
-                <el-select v-model="scope.row.organstate" placeholder="璇烽�夋嫨鍣ㄥ畼鐘舵��" value-key="value"
-                  @change="selectOrganstate(scope.row)">
-                  <el-option v-for="dict in dict.type.sys_organstate" :key="dict.value" :label="dict.label"
-                    :value="dict.value"></el-option>
+                <el-select
+                  v-model="scope.row.organstate"
+                  placeholder="璇烽�夋嫨鍣ㄥ畼鐘舵��"
+                  value-key="value"
+                  @change="selectOrganstate(scope.row)"
+                >
+                  <el-option
+                    v-for="dict in dict.type.sys_organstate"
+                    :key="dict.value"
+                    :label="dict.label"
+                    :value="dict.value"
+                  ></el-option>
                 </el-select>
               </template>
             </el-table-column>
@@ -208,14 +410,21 @@
           <el-col :span="7">
             <el-form-item align="left" label="閬椾綋鎹愮尞" prop="isbodydonation">
               <el-radio-group v-model="form.isbodydonation">
-                <el-radio v-for="dict in dict.type.sys_0_1" :key="dict.value" :label="dict.value">{{ dict.label
-                }}</el-radio>
+                <el-radio
+                  v-for="dict in dict.type.sys_0_1"
+                  :key="dict.value"
+                  :label="dict.value"
+                  >{{ dict.label }}</el-radio
+                >
               </el-radio-group>
             </el-form-item>
           </el-col>
           <el-col :span="7">
             <el-form-item align="left" label="鎺ユ敹鍗曚綅" prop="receivingunit">
-              <el-input v-model="form.receivingunit" placeholder="璇疯緭鍏ユ帴鍙楀崟浣�" />
+              <el-input
+                v-model="form.receivingunit"
+                placeholder="璇疯緭鍏ユ帴鍙楀崟浣�"
+              />
             </el-form-item>
           </el-col>
         </el-row>
@@ -224,8 +433,12 @@
           <el-col :span="7">
             <el-form-item label="璐熻矗浜�" prop="responsibleuserid">
               <el-select v-model="form.responsibleuserid" placeholder="璇烽�夋嫨">
-                <el-option v-for="item in leaderlist" :key="item.reportNo" :label="item.reportName"
-                  :value="item.reportNo">
+                <el-option
+                  v-for="item in leaderlist"
+                  :key="item.reportNo"
+                  :label="item.reportName"
+                  :value="item.reportNo"
+                >
                 </el-option>
               </el-select>
             </el-form-item>
@@ -233,8 +446,12 @@
           <el-col :span="7">
             <el-form-item label="鍗忚皟鍛樹竴" prop="coordinateduserido">
               <el-select v-model="form.coordinateduserido" placeholder="璇烽�夋嫨">
-                <el-option v-for="item in coordinatorlist1" :key="item.reportNo" :label="item.reportName"
-                  :value="item.reportNo">
+                <el-option
+                  v-for="item in coordinatorlist1"
+                  :key="item.reportNo"
+                  :label="item.reportName"
+                  :value="item.reportNo"
+                >
                 </el-option>
               </el-select>
             </el-form-item>
@@ -242,8 +459,12 @@
           <el-col :span="7">
             <el-form-item label="鍗忚皟鍛樹簩" prop="coordinateduseridt">
               <el-select v-model="form.coordinateduseridt" placeholder="璇烽�夋嫨">
-                <el-option v-for="item in coordinatorlist1" :key="item.reportNo" :label="item.reportName"
-                  :value="item.reportNo">
+                <el-option
+                  v-for="item in coordinatorlist1"
+                  :key="item.reportNo"
+                  :label="item.reportName"
+                  :value="item.reportNo"
+                >
                 </el-option>
               </el-select>
             </el-form-item>
@@ -257,13 +478,20 @@
         </el-row> -->
         <el-row>
           <el-form-item label="闄勪欢" align="left" prop="annexfile">
-            <annex-upload ref="finishannex" :infoid="curCase.id" :donorno="curCase.donorno" :flowname="flowname"
-              :annexno="annexno" />
+            <annex-upload
+              ref="finishannex"
+              :infoid="curCase.id"
+              :donorno="curCase.donorno"
+              :flowname="flowname"
+              :annexno="annexno"
+            />
           </el-form-item>
         </el-row>
       </el-form>
       <div slot="footer" class="dialog-footer">
-        <el-button :disabled="loading" type="primary" @click="submitForm">淇� 瀛�</el-button>
+        <el-button :disabled="loading" type="primary" @click="submitForm"
+          >淇� 瀛�</el-button
+        >
         <el-button @click="cancel">鍙� 娑�</el-button>
       </div>
     </el-dialog>
@@ -274,19 +502,19 @@
 import {
   listOrganization,
   listReportname,
-  listUser,
+  listUser
 } from "@/api/project/organization";
 import {
   listDonatebaseinfo,
   getDonatebaseinfo,
   addDonatebaseinfo,
-  updateDonatebaseinfo,
+  updateDonatebaseinfo
   // exportProvincemessage,
 } from "@/api/project/donatebaseinfo";
 
 import {
   updatedonatorno,
-  updateDonateNumber,
+  updateDonateNumber
 } from "@/api/project/relativesconfirmation";
 import {
   getDonatecompletioninfo,
@@ -294,7 +522,7 @@
   addDonatecompletioninfo,
   updateDonatecompletioninfo,
   listDonatecompletioninfo,
-  downloadcompletioninfo,
+  downloadcompletioninfo
 } from "@/api/project/donatecompletioninfo";
 
 import Li_area_select from "@/components/Address";
@@ -305,14 +533,14 @@
   addDonateorgan,
   delDonateorgan,
   updateDonateorgan,
-  getDonateorgan,
+  getDonateorgan
 } from "@/api/project/donateorgan";
 
 export default {
   components: {
     Li_area_select,
     OrgSelecter,
-    AnnexUpload,
+    AnnexUpload
   },
   name: "Donatefinish",
   dicts: [
@@ -336,7 +564,7 @@
     "sys_SelfWill",
     "sys_FamilyRelation",
     "sys_Organ",
-    "sys_organstate",
+    "sys_organstate"
   ],
   data() {
     return {
@@ -360,7 +588,7 @@
         { label: "琛㈠窞甯�", value: "8" },
         { label: "鑸熷北甯�", value: "9" },
         { label: "鍙板窞甯�", value: "A" },
-        { label: "涓芥按甯�", value: "B" },
+        { label: "涓芥按甯�", value: "B" }
       ],
 
       //鐪佸競鍖�
@@ -369,17 +597,17 @@
         sheng: "",
         shi: "",
         qu: "",
-        organizationname: null,
+        organizationname: null
       },
       residenceAddresss: {
         sheng: "娴欐睙鐪�",
         shi: "",
-        qu: "",
+        qu: ""
       },
       registerAddresss: {
         sheng: "娴欐睙鐪�",
         shi: "",
-        qu: "",
+        qu: ""
       },
 
       //鐢ㄦ埛琛�
@@ -427,30 +655,30 @@
         donorno: null,
         reportername: null,
         reporttime: null,
-        city: null,
+        city: null
       },
       // 琛ㄥ崟鍙傛暟
       form: {},
       // 琛ㄥ崟鏍¢獙
       rules: {
         completetime: [
-          { required: true, message: "璇疯緭鍏ュ畬鎴愭椂闂�", trigger: "blur" },
+          { required: true, message: "璇疯緭鍏ュ畬鎴愭椂闂�", trigger: "blur" }
         ],
         coordinatedusernameo: [
-          { required: true, message: "璇烽�夋嫨鍗忚皟鍛樹竴", trigger: "blur" },
+          { required: true, message: "璇烽�夋嫨鍗忚皟鍛樹竴", trigger: "blur" }
         ],
         coordinatedusernamet: [
-          { required: true, message: "璇烽�夋嫨鍗忚皟鍛樹簩", trigger: "blur" },
+          { required: true, message: "璇烽�夋嫨鍗忚皟鍛樹簩", trigger: "blur" }
         ],
         responsibleusername: [
-          { required: true, message: "璇烽�夋嫨璐熻矗浜�", trigger: "blur" },
-        ],
+          { required: true, message: "璇烽�夋嫨璐熻矗浜�", trigger: "blur" }
+        ]
       },
       curCase: {
         donorno: "",
         name: "",
         registerAddresss: "",
-        infoid: "",
+        infoid: ""
       },
       //鍣ㄥ畼鍒楄〃
       // donateorganList: [],
@@ -460,7 +688,7 @@
       //娴佺▼鍚嶇О
       flowname: "鎹愮尞瀹屾垚鐧昏",
       //娴佺▼鍚嶇О-浼︾悊瀹℃煡
-      annexno: "",
+      annexno: ""
     };
   },
   created() {
@@ -481,7 +709,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 != "") {
@@ -518,14 +746,14 @@
   },
   methods: {
     LoadReportList() {
-      listDonatebaseinfo().then((res) => {
+      listDonatebaseinfo().then(res => {
         console.log("娼滃湪鎹愮尞琛�", res);
         let list = res.rows;
         let reportlist = [];
-        list.forEach((element) => {
+        list.forEach(element => {
           reportlist.push({
             reporterno: element.reporterno,
-            reportername: element.reportername,
+            reportername: element.reportername
           });
         });
         console.log("dwada", reportlist);
@@ -537,7 +765,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));
@@ -604,7 +832,7 @@
     },
     updatedonorno(row) {
       console.log("row", row);
-      updatedonatorno(row.infoid).then((res) => {
+      updatedonatorno(row.infoid).then(res => {
         console.log("1221212", res);
         this.getList();
       });
@@ -615,7 +843,7 @@
       if (e.organstate === 99) {
         this.$prompt("璇疯緭鍏ュ惎鐢ㄥ師鍥�", "鎻愮ず", {
           confirmButtonText: "纭畾",
-          cancelButtonText: "鍙栨秷",
+          cancelButtonText: "鍙栨秷"
         })
           .then(({ value }) => {
             console.log("鍚敤鍘熷洜", value);
@@ -624,7 +852,7 @@
           .catch(() => {
             this.$message({
               type: "info",
-              message: "鍙栨秷",
+              message: "鍙栨秷"
             });
           });
       }
@@ -632,28 +860,28 @@
 
     //鑾峰彇鐢ㄦ埛琛�
     getuserlist() {
-      listUser().then((res) => {
+      listUser().then(res => {
         this.users = res.data;
       });
     },
 
     //鑾峰彇璐熻矗浜�
     getLeaderList() {
-      listReportname("fzr").then((res) => {
+      listReportname("fzr").then(res => {
         this.leaderlist = res.data;
       });
     },
 
     //鑾峰彇鍗忚皟鍛樹竴
     getCoordinatorList1() {
-      listReportname("xty1").then((res) => {
+      listReportname("xty1").then(res => {
         this.coordinatorlist1 = res.data;
       });
     },
 
     //鑾峰彇鍗忚皟鍛樹簩
     getCoordinatorList2() {
-      listReportname("xty2").then((res) => {
+      listReportname("xty2").then(res => {
         this.coordinatorlist2 = res.data;
       });
     },
@@ -718,8 +946,9 @@
       this.loading = true;
       this.queryParams.params = {};
       if (null != this.daterangeReporttime && "" != this.daterangeReporttime) {
-        this.queryParams.params["beginReporttime"] =
-          this.daterangeReporttime[0];
+        this.queryParams.params[
+          "beginReporttime"
+        ] = this.daterangeReporttime[0];
         this.queryParams.params["endReporttime"] = this.daterangeReporttime[1];
       }
 
@@ -735,7 +964,7 @@
         // this.queryParams.residenceprovince = this.$refs.areaSelect.getSheng();
         // this.queryParams.residencecity = this.$refs.areaSelect.getShi();
         // this.queryParams.residencetown = this.$refs.areaSelect.getQu();
-        listnewDonatecompletioninfo(this.queryParams).then((response) => {
+        listnewDonatecompletioninfo(this.queryParams).then(response => {
           this.donatebaseinfoList = response.rows;
           this.total = response.total;
           this.loading = false;
@@ -771,7 +1000,7 @@
         coordinatedusernamet: null,
         assessannex: null,
         donateorgan: "",
-        donateorganList: [],
+        donateorganList: []
       };
       this.resetForm("form");
     },
@@ -797,7 +1026,7 @@
         reportername: null,
         reporttime: null,
         city: null,
-        treatmenthospitalno: null,
+        treatmenthospitalno: null
       };
       this.selecttime = [];
       this.getTimeList();
@@ -805,7 +1034,7 @@
         sheng: "",
         shi: "",
         qu: "",
-        organizationname: null,
+        organizationname: null
       };
       //this.$refs.areaSelect.clean();
 
@@ -825,7 +1054,7 @@
         path: "/organ/donationdetails/",
         query: {
           id: row.id,
-          organType: "edit",
+          organType: "edit"
         }
       });
       // this.reset();
@@ -904,15 +1133,15 @@
 
       //鏌ヨ
       let searchParam = {
-        id: row.id,
+        id: row.id
       };
       let oraganqueryParam = {
-        infoid: row.id,
+        infoid: row.id
         // donorname: this.curCase.name,
         // donorno: this.curCase.donorno,
         // registeraddress: this.curCase.registeraddresss,
       };
-      listDonateorgan(oraganqueryParam).then((response) => {
+      listDonateorgan(oraganqueryParam).then(response => {
         if (response.code == 200) {
           console.log("2", response);
           this.tableData = response.rows;
@@ -923,7 +1152,7 @@
         //鑾峰彇鍣ㄥ畼鍒嗛厤淇℃伅
         // this.GetDonortedList();
       });
-      listnewDonatecompletioninfo(searchParam).then((response) => {
+      listnewDonatecompletioninfo(searchParam).then(response => {
         if (response.code == 200 && response.rows.length == 1) {
           this.open = true;
           this.form = response.rows[0];
@@ -943,7 +1172,7 @@
     /** 鎻愪氦鎸夐挳 */
     submitForm() {
       this.loading = true;
-      this.$refs["form"].validate((valid) => {
+      this.$refs["form"].validate(valid => {
         if (valid) {
           this.form.donorno = this.curCase.donorno;
           this.form.infoid = this.curCase.id;
@@ -952,33 +1181,36 @@
 
           //璐熻矗浜� //leaderlist
           let responsibleuseridIndex = this.leaderlist.findIndex(
-            (item) => this.form.responsibleuserid == item.reportNo
+            item => this.form.responsibleuserid == item.reportNo
           );
           if (responsibleuseridIndex > -1) {
-            this.form.responsibleusername =
-              this.leaderlist[responsibleuseridIndex].reportName;
+            this.form.responsibleusername = this.leaderlist[
+              responsibleuseridIndex
+            ].reportName;
           }
           //鍗忚皟鍛�1
           let coordinatedusernameIndex = this.coordinatorlist1.findIndex(
-            (item) => this.form.coordinateduserido == item.reportNo
+            item => this.form.coordinateduserido == item.reportNo
           );
           if (coordinatedusernameIndex > -1) {
-            this.form.coordinatedusernameo =
-              this.coordinatorlist1[coordinatedusernameIndex].reportName;
+            this.form.coordinatedusernameo = this.coordinatorlist1[
+              coordinatedusernameIndex
+            ].reportName;
           }
           //鍗忚皟鍛�2
           let coordinatedusernametIndex = this.coordinatorlist1.findIndex(
-            (item) => this.form.coordinateduseridt == item.reportNo
+            item => this.form.coordinateduseridt == item.reportNo
           );
           if (coordinatedusernametIndex > -1) {
-            this.form.coordinatedusernamet =
-              this.coordinatorlist1[coordinatedusernametIndex].reportName;
+            this.form.coordinatedusernamet = this.coordinatorlist1[
+              coordinatedusernametIndex
+            ].reportName;
           }
 
           if (this.form.id != null) {
             console.log("鏇存柊form", this.form);
 
-            updateDonatecompletioninfo(this.form).then((response) => {
+            updateDonatecompletioninfo(this.form).then(response => {
               this.$modal.msgSuccess("淇敼鎴愬姛");
               this.loading = false;
               this.open = false;
@@ -986,15 +1218,16 @@
               //鏇存柊鍣ㄥ畼琛�
               for (let k = 0; k < this.tableData.length; k++) {
                 try {
-                  this.tableData[k].transplanthospitalname =
-                    this.$refs.transplanthosselect.getOptionByValue(
-                      this.tableData[k].transplanthospitalno
-                    ).organizationname;
+                  this.tableData[
+                    k
+                  ].transplanthospitalname = this.$refs.transplanthosselect.getOptionByValue(
+                    this.tableData[k].transplanthospitalno
+                  ).organizationname;
                 } catch {
                   console.log("鑾峰彇鏈烘瀯鍚嶇О澶辫触锛�");
                 }
 
-                updateDonateorgan(this.tableData[k]).then((response1) => {
+                updateDonateorgan(this.tableData[k]).then(response1 => {
                   if (response1.code == 200) {
                     // this.$modal.msgSuccess("鍣ㄥ畼璁板綍淇敼鎴愬姛");
                   }
@@ -1003,10 +1236,10 @@
 
               //鏇存柊鎹愮尞鐘舵��
               this.curCase.recordstate = 12;
-              getDonatebaseinfo(this.curCase.infoid).then((res) => {
+              getDonatebaseinfo(this.curCase.infoid).then(res => {
                 let donatebasedata = res.data;
                 donatebasedata.recordstate = 12;
-                updateDonatebaseinfo(donatebasedata).then((response) => {
+                updateDonatebaseinfo(donatebasedata).then(response => {
                   //this.$modal.msgSuccess("瀹℃牳鎴愬姛");
                   //this.isShowReviewDialog = false;
                   this.getList();
@@ -1014,22 +1247,23 @@
               });
             });
           } else {
-            addDonatecompletioninfo(this.form).then((response) => {
-              this.loading = false
+            addDonatecompletioninfo(this.form).then(response => {
+              this.loading = false;
               this.$modal.msgSuccess("鏂板鎴愬姛");
               this.open = false;
 
               //鏇存柊鍣ㄥ畼琛�
               for (let k = 0; k < this.tableData.length; k++) {
                 try {
-                  this.tableData[k].transplanthospitalname =
-                    this.$refs.transplanthosselect.getOptionByValue(
-                      this.tableData[k].transplanthospitalno
-                    ).organizationname;
+                  this.tableData[
+                    k
+                  ].transplanthospitalname = this.$refs.transplanthosselect.getOptionByValue(
+                    this.tableData[k].transplanthospitalno
+                  ).organizationname;
                 } catch {
                   console.log("鑾峰彇鏈烘瀯鍚嶇О澶辫触");
                 }
-                updateDonateorgan(this.tableData[k]).then((response1) => {
+                updateDonateorgan(this.tableData[k]).then(response1 => {
                   if (response1.code == 200) {
                     this.$modal.msgSuccess("鍣ㄥ畼璁板綍淇敼鎴愬姛");
                   }
@@ -1038,15 +1272,14 @@
 
               //鏇存柊鎹愮尞鐘舵��
               this.curCase.recordstate = 12;
-              updateDonatebaseinfo(this.curCase).then((response) => {
+              updateDonatebaseinfo(this.curCase).then(response => {
                 //this.$modal.msgSuccess("瀹℃牳鎴愬姛");
                 //this.isShowReviewDialog = false;
                 this.getList();
               });
             });
           }
-        }
-        else {
+        } else {
           this.loading = false;
         }
       });
@@ -1057,32 +1290,32 @@
       this.$confirm("鏄惁纭灏嗙櫥璁拌褰曚笂鎶ワ紵", "鎻愮ず", {
         confirmButtonText: "纭畾",
         cancelButtonText: "鍙栨秷",
-        type: "warning",
+        type: "warning"
       })
         .then(() => {
           //鏌ユ壘鏄惁瀛樺湪鐧昏瀹屾垚璁板綍
           //鍒ゆ柇鏄惁瀛樺湪涓婃姤璁板綍
           let searchParam = {
-            infoid: row.id,
+            infoid: row.id
           };
           console.log("涓婃姤鍙傛暟", searchParam);
-          listDonatecompletioninfo(searchParam).then((response) => {
+          listDonatecompletioninfo(searchParam).then(response => {
             console.log("涓婃姤", response);
             if (response.code == 200 && response.rows.length == 1) {
               row.recordstate = 13;
               row.birthday = this.$moment(row.birthday).format(
                 "YYYY-MM-DD HH:mm:ss"
               );
-              updateDonatebaseinfo(row).then((response1) => {
+              updateDonatebaseinfo(row).then(response1 => {
                 this.$message({
                   type: "success",
-                  message: "涓婃姤鎴愬姛",
+                  message: "涓婃姤鎴愬姛"
                 });
               });
             } else {
               this.$message({
                 type: "error",
-                message: "鎹愮尞瀹屾垚鐧昏璁板綍涓嶅瓨鍦紒",
+                message: "鎹愮尞瀹屾垚鐧昏璁板綍涓嶅瓨鍦紒"
               });
             }
             this.loading = false;
@@ -1091,7 +1324,7 @@
         .catch(() => {
           this.$message({
             type: "info",
-            message: "宸插彇娑堜笂鎶�",
+            message: "宸插彇娑堜笂鎶�"
           });
         });
     },
@@ -1100,18 +1333,36 @@
     handledownload(row) {
       const id = row.id || this.ids;
       console.log("22222", row);
-      downloadcompletioninfo(row.dcid).then((response) => {
-        var fileUrl = response;
+      downloadcompletioninfo(row.dcid).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);
+          });
       });
     },
 
@@ -1119,9 +1370,9 @@
     GetDonortedList(row) {
       this.loading = true;
       let oraganqueryParam = {
-        infoid: row.infoid,
+        infoid: row.infoid
       };
-      listDonateorgan(oraganqueryParam).then((response) => {
+      listDonateorgan(oraganqueryParam).then(response => {
         this.loading = false;
         if (response.code == 200) {
           this.form.donateorganList = [];
@@ -1134,7 +1385,7 @@
           // this.$modal.msgError("鑾峰彇鎹愮尞鍣ㄥ畼澶辫触锛�" + response.msg);
         }
       });
-    },
-  },
+    }
+  }
 };
 </script>

--
Gitblit v1.9.3