| | |
| | | <!-- --> |
| | | <template> |
| | | <div class="app-container"> |
| | | <el-form |
| | | :model="queryParams" |
| | | ref="queryForm" |
| | | :inline="true" |
| | | label-width="70px" |
| | | > |
| | | <el-row align="left"> |
| | | <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-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-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="6"> |
| | | <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-col> |
| | | </el-row> |
| | | </el-form> |
| | | <el-row> |
| | | <el-col :span="6"> |
| | | <el-card shadow="never"> |
| | |
| | | </el-row> |
| | | </el-col> |
| | | </el-row> |
| | | <div> |
| | | <el-form |
| | | :model="queryParams" |
| | | ref="queryForm" |
| | | :inline="true" |
| | | label-width="70px" |
| | | > |
| | | <el-form-item label="姓名" prop="name"> |
| | | <el-input |
| | | v-model="queryParams.donorname" |
| | | placeholder="请输入姓名" |
| | | clearable |
| | | size="small" |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | </el-form-item> |
| | | <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> |
| | | <div style="float: right; margin-bottom: 10px;"> |
| | | <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 |
| | | > |
| | | </div> |
| | | </el-form> |
| | | </div> |
| | | <el-table |
| | | v-loading="loading" |
| | | highlight-current-row |
| | |
| | | <el-card shadow="naver"> |
| | | <el-form ref="infoform" label-width="100px"> |
| | | <el-row :gutter="4" align="right" class="mb8"> |
| | | <el-col :span="9"> |
| | | <el-col :span="7"> |
| | | <el-form-item label="捐献编号"> |
| | | <el-input |
| | | v-model="curCase.donorno" |
| | |
| | | ></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="9"> |
| | | <el-col :span="8"> |
| | | <el-form-item label="姓名"> |
| | | <el-input v-model="curCase.name" :disabled="true"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col> </el-col> |
| | | <el-col :span="3"> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-search" |
| | | size="mini" |
| | | @click="allgetfundList" |
| | | >检索全部</el-button |
| | | > |
| | | </el-col> |
| | | </el-row> |
| | | <el-row :gutter="10" class="mb8"> |
| | | <el-col :span="1.5"> |
| | |
| | | v-loading="loading" |
| | | border |
| | | :data="donateconsolationfundList" |
| | | :row-class-name="rowClassName" |
| | | > |
| | | <el-table-column |
| | | label="申请日期" |
| | | align="center" |
| | | prop="createTime" |
| | | prop="applyTime" |
| | | width="180px" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span>{{ |
| | | parseTime(scope.row.createTime, "{y}-{m}-{d}") |
| | | parseTime(scope.row.applyTime, "{y}-{m}-{d}") |
| | | }}</span> |
| | | </template> |
| | | </el-table-column> |
| | |
| | | prop="username" |
| | | width="120px" |
| | | /> |
| | | <el-table-column |
| | | <!-- <el-table-column |
| | | label="申请金额" |
| | | align="center" |
| | | prop="pretaxcost" |
| | | width="200px" |
| | | /> --> |
| | | <el-table-column |
| | | label="捐献人" |
| | | align="center" |
| | | prop="donorname" |
| | | width="120px" |
| | | /> |
| | | <el-table-column |
| | | label="组长" |
| | |
| | | <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> |
| | |
| | | " |
| | | 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:expretfund:delete']" --> |
| | | <!-- <el-button |
| | |
| | | >下载</el-button |
| | | > --> |
| | | <!-- v-hasPermi="['project:expretfund:download']" --> |
| | | </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(scope.$index, scope.row)" |
| | | >线下报销</el-button |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | > |
| | | <el-row style="text-align: left"> |
| | | <el-col :span="5"> |
| | | <el-form-item label="申请日期" prop="createTime"> |
| | | <el-form-item label="申请日期" prop="applyTime"> |
| | | <el-date-picker |
| | | clearable |
| | | style="width: 100%" |
| | | v-model="form.createTime" |
| | | v-model="form.applyTime" |
| | | type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | placeholder="申请日期" |
| | |
| | | type="text" |
| | | size="small" |
| | | > |
| | | 删除 |
| | | <span class="button-delete" |
| | | ><i class="el-icon-delete"></i>删除</span |
| | | > |
| | | </el-button> |
| | | </template> |
| | | </el-table-column> |
| | |
| | | updateExternalperson, |
| | | exportExternalperson |
| | | } from "@/api/project/externalperson"; |
| | | |
| | | import { getUserProfile } from "@/api/system/user"; |
| | | import Li_area_select from "@/components/Address"; |
| | | import OrgSelecter from "@/views/project/components/orgselect"; |
| | |
| | | //"sys_financeitemtype", |
| | | //"sys_expensetype", |
| | | "sys_recordstatus", |
| | | "sys_professionaltitle" |
| | | "sys_professionaltitle", |
| | | "sys_stage_type" |
| | | ], |
| | | |
| | | data() { |
| | |
| | | username: [ |
| | | { required: true, message: "请输入申请人", trigger: "blur" } |
| | | ], |
| | | createTime: [ |
| | | applyTime: [ |
| | | { required: true, message: "请输入申请日期", trigger: "blur" } |
| | | ], |
| | | deptmentname: [ |
| | |
| | | this.daterangeReporttime = []; |
| | | this.resetForm("queryForm"); |
| | | this.handleQuery(); |
| | | }, |
| | | 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); |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | /** 新增按钮操作 */ |
| | |
| | | //查找是否存在登记完成记录 |
| | | //判断是否存在上报记录 |
| | | row.recordstatus = 0; |
| | | var currenttime = new Date(); |
| | | row.applyTime = |
| | | currenttime.getFullYear() + |
| | | "-" + |
| | | (currenttime.getMonth() + 1) + |
| | | "-" + |
| | | currenttime.getDate() + |
| | | " " + |
| | | currenttime.getHours() + |
| | | ":" + |
| | | currenttime.getMinutes() + |
| | | ":" + |
| | | currenttime.getSeconds(); |
| | | |
| | | updateFund(row).then(response => { |
| | | if (response.code == 200) { |
| | | this.$message({ |
| | |
| | | this.curCase = row; |
| | | this.getfundList(); |
| | | }, |
| | | |
| | | allgetfundList() { |
| | | this.loading = true; |
| | | this.reset(); |
| | | this.fundQueryParam.infoid = null; |
| | | listFund(this.fundQueryParam).then(response => { |
| | | this.loading = false; |
| | | this.donateconsolationfundList = response.rows; |
| | | }); |
| | | }, |
| | | getfundList() { |
| | | this.loading = true; |
| | | this.reset(); |
| | |
| | | //专家费劳务打印 |
| | | dayin(id) { |
| | | getdownloadLW(id).then(res => { |
| | | if (res.downloadUrl) { |
| | | 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(); |
| | | this.$alert("下载成功", "提示", { |
| | | confirmButtonText: "确定", |
| | | type: "success" |
| | | 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"]; |
| | | console.log(aEle.href); |
| | | // 添加Authorization头部 |
| | | fetch(aEle.href, { |
| | | headers: this.headers |
| | | }) |
| | | .then(response => { |
| | | // 将文件下载链接作为blob对象进行下载 |
| | | 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); |
| | | }); |
| | | } |
| | | }); |
| | | }, |
| | | |
| | |
| | | } else { |
| | | console.log(response.msg); |
| | | } |
| | | }, |
| | | rowClassName({ row, column, rowIndex, columnIndex }) { |
| | | if (row.recordstatus == -1 && row.backflowlevel != null) { |
| | | return "error-row"; |
| | | } |
| | | return ""; |
| | | } |
| | | } |
| | | }; |
| | | </script> |
| | | <style scoped> |
| | | <style lang="scss" scoped> |
| | | /* @import url(); 引入公共css类 */ |
| | | .button-delete { |
| | | color: rgb(236, 69, 69); |
| | | } |
| | | ::v-deep.el-table .error-row { |
| | | background: #fcebeb; |
| | | } |
| | | </style> |