From 0ac2d43fce4d74f6eea5a51a2e16af4e6a536c7c Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期三, 14 八月 2024 14:19:24 +0800 Subject: [PATCH] 11 --- src/views/project/travelexpenseapply/index.vue | 151 ++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 115 insertions(+), 36 deletions(-) diff --git a/src/views/project/travelexpenseapply/index.vue b/src/views/project/travelexpenseapply/index.vue index 6342f60..2e01206 100644 --- a/src/views/project/travelexpenseapply/index.vue +++ b/src/views/project/travelexpenseapply/index.vue @@ -28,7 +28,7 @@ </el-form-item> </el-col> <el-col :span="8"> - <el-form-item label="鎶ラ攢鏃ユ湡" prop="createTime"> + <el-form-item label="鎶ラ攢鏃ユ湡" prop="applyTime"> <el-date-picker format="yyyy-MM-dd" value-format="yyyy-MM-dd" @@ -68,6 +68,19 @@ </el-select> </el-form-item> </el-col> + </el-row> + <el-row> + <el-col :span="6"> + <el-form-item label="鎹愮尞鑰�" prop="name"> + <el-input + v-model="queryParams.donorname" + placeholder="璇疯緭鍏ユ崘鐚�呭鍚�" + clearable + size="small" + @keyup.enter.native="handleQuery" + /> + </el-form-item> + </el-col> <el-col :span="4"> <el-form-item> <el-button @@ -87,12 +100,7 @@ <el-row :gutter="10" class="mb8"> <el-col :span="1.5"> - <el-button - type="primary" - plain - icon="el-icon-plus" - size="mini" - @click="handleAdd" + <el-button type="primary" plain icon="el-icon-plus" @click="handleAdd" >鏂板</el-button > <!-- v-hasPermi="['project:funddetail:add']" --> @@ -102,7 +110,6 @@ type="warning" plain icon="el-icon-download" - size="mini" :loading="exportLoading" @click="handleExport" >瀵煎嚭</el-button @@ -116,7 +123,7 @@ </el-row> <el-table - border + :row-class-name="rowClassName" v-loading="loading" :data="reimbursementList" @selection-change="handleSelectionChange" @@ -131,10 +138,10 @@ label="鐢宠鏃堕棿" width="150" align="center" - prop="createTime" + prop="applyTime" > <template slot-scope="scope"> - <span>{{ parseTime(scope.row.createTime, "{y}-{m}-{d}") }}</span> + <span>{{ parseTime(scope.row.applyTime, "{y}-{m}-{d}") }}</span> </template> </el-table-column> <el-table-column @@ -147,6 +154,19 @@ <dict-tag :options="dict.type.sys_recordstatus" :value="scope.row.recordstatus" + /> + </template> + </el-table-column> + <el-table-column + label="鐢宠鏉愭枡鐘舵��" + width="140" + align="center" + prop="checkstatus" + > + <template slot-scope="scope"> + <dict-tag + :options="dict.type.sys_stage_type" + :value="scope.row.checkstatus" /> </template> </el-table-column> @@ -197,8 +217,8 @@ label="鎿嶄綔" align="center" fixed="right" + width="300" class-name="small-padding fixed-width" - width="210" > <template slot-scope="scope"> <el-button @@ -220,7 +240,7 @@ <el-button size="mini" type="text" - icon="el-icon-edit" + icon="el-icon-view" @click="handleDetail(scope.row)" >鏌ョ湅</el-button > @@ -238,11 +258,26 @@ v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1" size="mini" type="text" - icon="el-icon-delete" @click="handleDelete(scope.row)" - >鍒犻櫎</el-button + ><span class="button-delete" + ><i class="el-icon-delete"></i>鍒犻櫎</span + ></el-button > <!-- v-hasPermi="['project:funddetail:remove']" --> + </template> + </el-table-column> + <el-table-column fixed="right" align="center" width="120" label="鍔熻兘"> + <template slot-scope="scope"> + <el-button size="mini" v-if="scope.row.uploadStates == 1" + >绾夸笅宸叉姤閿�</el-button + > + <el-button + size="mini" + type="success" + v-else-if="scope.row.uploadStates == 0" + @click="Dooffline('1', scope.row)" + >绾夸笅鎶ラ攢</el-button + > </template> </el-table-column> </el-table> @@ -268,10 +303,10 @@ <el-form ref="form" :model="form" :rules="rules" label-width="120px"> <el-row ><el-col :span="5"> - <el-form-item label="鐢宠鏃ユ湡" prop="createTime"> + <el-form-item label="鐢宠鏃ユ湡" prop="applyTime"> <el-date-picker style="width: 100%" - v-model="form.createTime" + v-model="form.applyTime" type="date" value-format="yyyy-MM-dd HH:mm:ss" placeholder="鐢宠鏃ユ湡" @@ -1239,6 +1274,7 @@ import { getUser, getUserProfile } from "@/api/system/user"; import { treeselect } from "@/api/system/dept"; import { getSubsidy } from "@/api/project/travelcity"; +import { addorupdateFund } from "@/api/project/fund"; import { listReportname, listUser } from "@/api/project/organization"; import { getToken } from "@/utils/auth"; export default { @@ -1255,7 +1291,8 @@ "sys_recordstatus", "sys_travelexpensebelong", "sys_traffictype", - "sys_area_name" + "sys_area_name", + "sys_stage_type" ], data() { return { @@ -1429,6 +1466,17 @@ handleExceed() { this.$message.error(`涓婁紶鏂囦欢鏁伴噺涓嶈兘瓒呰繃 ${5} 涓�!`); }, + Dooffline(a, value) { + value.uploadStates = 1; + value.notes = "绾夸笅宸叉姤閿�"; + addorupdateFund(value).then(res => { + if (res.code == 200) { + this.$modal.msgSuccess("璁板綍鎴愬姛"); + } else { + this.$modal.msgError(res.msg); + } + }); + }, //鏂囦欢涓婁紶鎴愬姛鍥炶皟 uploadSccess(response, file, fileList) { @@ -1439,7 +1487,7 @@ this.$modal.msgSuccess(response.msg); this.fileList.push({ name: response.fileName, url: response.fileName }); } else { - console.log(response.msg);; + console.log(response.msg); } }, @@ -1720,21 +1768,27 @@ 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); + }); }); - - // downloadconfirmationinfo(id).then((response) => { - // var fileUrl = response; - // //鑾峰彇褰撳墠缃戝潃 - // 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(); - // }); }, /** 鏌ヨ鎶ラ攢鐢宠鍒楄〃 */ @@ -1845,10 +1899,10 @@ /** 鏂板鎸夐挳鎿嶄綔 */ handleAdd() { - console.log("defaultperson",this.defaultperson); + console.log("defaultperson", this.defaultperson); this.$router.push({ path: "/finance/travelexpenseapply/travelexpensedetail/", - query: { id: 0, pos: 1,routerparam:this.defaultperson} + query: { id: 0, pos: 1, routerparam: this.defaultperson } }); this.reset(); @@ -1930,7 +1984,7 @@ path: "/finance/travelexpenseapply/travelexpensedetail/", query: { id: row.id, pos: 3 } }); - + this.dialogType = "detail"; this.title = "鏌ョ湅鎶ラ攢鐢宠"; @@ -2136,6 +2190,7 @@ /** 鍒犻櫎鎸夐挳鎿嶄綔 */ handleDelete(row) { const ids = row.id || this.ids; + console.log(ids); this.$modal .confirm("鏄惁纭鍒犻櫎璇ユ潯璁板綍锛�") .then(function() { @@ -2547,7 +2602,31 @@ chineseStr += cnInteger; } return chineseStr; + }, + + //鏄庢樉鎻愮ず瀹℃壒閫�鍥炶褰� + rowClassName({ row, column, rowIndex, columnIndex }) { + //姝ゅ垽鏂负鏈�鍚庝笁琛� + if (row.recordstatus == -1 && row.backflowlevel != null) { + return "error-row"; + } + return ""; } } }; </script> +<!-- <style scoped> --> +<!-- 涓嶅彲鍔爏coped,浼氱嫭绔嬫牱寮廵lement璁块棶涓嶅埌 --> +<style lang="scss" scoped> +.addClassva { + /* background: #10aec2; */ + background: #e8f4ff !important; + /* color:whitesmoke; */ +} +.button-delete { + color: rgb(236, 69, 69); +} +::v-deep.el-table .error-row { + background: #fcebeb; +} +</style> -- Gitblit v1.9.3