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 | 200 ++++++++++++++++++++++++++++++++++--------------- 1 files changed, 137 insertions(+), 63 deletions(-) diff --git a/src/views/project/donatebaseinfo/index.vue b/src/views/project/donatebaseinfo/index.vue index 45a3233..360fcb0 100644 --- a/src/views/project/donatebaseinfo/index.vue +++ b/src/views/project/donatebaseinfo/index.vue @@ -8,7 +8,7 @@ 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" @@ -19,7 +19,7 @@ /> </el-form-item> </el-col> - <el-col :span="6"> + <el-col :span="5"> <el-form-item align="left" label="鍖荤枟鏈烘瀯" @@ -33,7 +33,7 @@ /> </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 @@ -46,10 +46,27 @@ </el-select> </el-form-item> </el-col> - <el-col :span="6"> - <el-form-item label="鎹愮尞杩涘害" prop="recordstate"> + <el-col :span="9"> + <el-form-item label="鏃ユ湡"> + <el-date-picker + style="width: 100%" + v-model="selecttime" + type="monthrange" + range-separator="鑷�" + start-placeholder="寮�濮嬫湀浠�" + end-placeholder="缁撴潫鏈堜唤" + value-format="yyyy-MM-dd" + @change="getTimeList" + > + </el-date-picker> + </el-form-item> + </el-col> + </el-row> + <el-row :gutter="8"> + <el-col :span="5"> + <el-form-item label="鎹愮尞杩涘害" prop="workflow"> <el-select - v-model="queryParams.recordstate" + v-model="queryParams.workflow" placeholder="璇烽�夋嫨褰撳墠杩涘害" clearable size="small" @@ -63,9 +80,7 @@ </el-select> </el-form-item> </el-col> - </el-row> - <el-row :gutter="8"> - <el-col :span="6"> + <el-col :span="5"> <el-form-item label="鎶ュ憡浜�"> <el-select v-model="queryParams.reporterno" @@ -81,26 +96,7 @@ </el-select> </el-form-item> </el-col> - - <el-col :span="12"> - <el-form-item label="鎶ュ憡鏃ユ湡"> - <el-date-picker - style="width: 100%" - v-model="selecttime" - type="monthrange" - range-separator="鑷�" - start-placeholder="寮�濮嬫湀浠�" - end-placeholder="缁撴潫鏈堜唤" - value-format="yyyy-MM-dd" - @change="getTimeList" - > - </el-date-picker> - </el-form-item> - </el-col> - </el-row> - - <el-row> - <el-col :span="14"> + <el-col :span="9"> <el-form-item label="绫嶈疮"> <div> <li_area_select @@ -110,7 +106,6 @@ </div> </el-form-item> </el-col> - <el-col :span="4"> <el-form-item> <el-button @@ -175,23 +170,27 @@ :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="name" width="100" /> - <el-table-column label="鎬у埆" align="center" prop="sex" width="100"> <template slot-scope="scope"> <dict-tag @@ -202,24 +201,45 @@ </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="bloodtype" width="100"> + <template slot-scope="scope"> + <dict-tag + :options="dict.type.sys_BloodType" + :value="scope.row.bloodtype" + /> + </template> + </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" prop="reportername" width="100" /> - + <!-- + <el-table-column + label="鐜版墍鍦ㄥ湴甯�" + align="center" + prop="registercityname" + width="150" + /> <el-table-column label="鎹愮尞杩涘害" align="center" @@ -227,18 +247,33 @@ width="120" > <template slot-scope="scope"> - <dict-tag + <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" - width="200" fixed="right" > <template slot-scope="scope"> @@ -250,15 +285,30 @@ 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> --> - <!-- 鎾ら攢鐢宠 --> + <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> @@ -846,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, @@ -885,7 +936,8 @@ "sys_DonationStatus", "sys_DiseaseType", "sys_SelfWill", - "sys_FamilyRelation" + "sys_FamilyRelation", + "sys_donornode" ], data() { return { @@ -1052,6 +1104,9 @@ endtime: "", reportlist: [], reportervalue: "", + headers: { + Authorization: "Bearer " + getToken() + }, provinceData: [ { label: "鍏ㄩ儴", value: "" }, { label: "鏉窞甯�", value: "1" }, @@ -1597,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" @@ -1628,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( @@ -1658,6 +1713,7 @@ this.getList(); }); } else { + this.form.workflow = 0; this.form.recordstate = 0; addDonatebaseinfo(this.form).then(response => { if (response.code == 200) { @@ -1733,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