From 2d87371edd24a1b2b25bf8c33bccceb988038758 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期五, 08 三月 2024 14:12:03 +0800
Subject: [PATCH] 11

---
 src/views/project/donatebaseinfo/index.vue |  102 ++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 80 insertions(+), 22 deletions(-)

diff --git a/src/views/project/donatebaseinfo/index.vue b/src/views/project/donatebaseinfo/index.vue
index 7b7b5d9..360fcb0 100644
--- a/src/views/project/donatebaseinfo/index.vue
+++ b/src/views/project/donatebaseinfo/index.vue
@@ -45,7 +45,7 @@
               </el-option>
             </el-select>
           </el-form-item>
-        </el-col>   
+        </el-col>
         <el-col :span="9">
           <el-form-item label="鏃ユ湡">
             <el-date-picker
@@ -64,9 +64,9 @@
       </el-row>
       <el-row :gutter="8">
         <el-col :span="5">
-          <el-form-item label="鎹愮尞杩涘害" prop="recordstate">
+          <el-form-item label="鎹愮尞杩涘害" prop="workflow">
             <el-select
-              v-model="queryParams.recordstate"
+              v-model="queryParams.workflow"
               placeholder="璇烽�夋嫨褰撳墠杩涘害"
               clearable
               size="small"
@@ -170,21 +170,26 @@
       :data="donatebaseinfoList"
       @selection-change="handleSelectionChange"
       border
-      :default-sort="{ prop: 'reporttime', order: 'descending' }"
+      :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="鏃堕棿"
+        label="妗堜緥鏃堕棿"
         align="center"
-        prop="reporttime"
+        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="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">
@@ -207,7 +212,21 @@
             :value="scope.row.bloodtype"
           />
         </template>
-      </el-table-column>     
+      </el-table-column>
+
+      <el-table-column
+        label="鎹愮尞绫诲埆"
+        align="center"
+        prop="donationcategory"
+        width="150"
+      >
+        <template slot-scope="scope">
+          <dict-tag
+            :options="dict.type.sys_DonationCategory"
+            :value="scope.row.donationcategory"
+          />
+        </template>
+      </el-table-column>
       <el-table-column
         label="鎶ュ憡浜�"
         align="center"
@@ -242,12 +261,15 @@
         width="120"
       >
         <template slot-scope="scope">
-         <dict-tag
-            :options="dict.type.sys_donornode"
-            :value="scope.row.workflow"
-          />          
+          <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>
       <el-table-column
         label="鎿嶄綔"
         align="center"
@@ -263,13 +285,26 @@
             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"
+            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-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> 
@@ -861,6 +896,7 @@
 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,
@@ -1068,6 +1104,9 @@
       endtime: "",
       reportlist: [],
       reportervalue: "",
+      headers: {
+        Authorization: "Bearer " + getToken()
+      },
       provinceData: [
         { label: "鍏ㄩ儴", value: "" },
         { label: "鏉窞甯�", value: "1" },
@@ -1613,7 +1652,6 @@
     /** 鎻愪氦鎸夐挳 */
     submitForm() {
       this.$refs["form"].validate(valid => {
-        console.log("鎻愪氦鐨勬暟鎹滑锛�", this.form);
         if (valid) {
           this.form.birthday = this.$moment(this.form.birthday).format(
             "YYYY-MM-DD HH:mm:ss"
@@ -1644,6 +1682,7 @@
           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(
@@ -1674,6 +1713,7 @@
               this.getList();
             });
           } else {
+            this.form.workflow = 0;
             this.form.recordstate = 0;
             addDonatebaseinfo(this.form).then(response => {
               if (response.code == 200) {
@@ -1749,18 +1789,36 @@
     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);
+          });
       });
     }
   }

--
Gitblit v1.9.3