| | |
| | | <template> |
| | | <div class="capacity-scope"> |
| | | <div class="search"> |
| | | <div> |
| | | <el-form :model="queryParams" ref="queryForm" size="small" :inline="true"> |
| | | <el-form-item label="检验报告编号" prop="insReportCode"> |
| | | <el-input size="small" placeholder="请输入" clearable v-model="queryParams.insReportCode" |
| | | @keyup.enter.native="refreshTable()"></el-input> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-button type="primary" icon="el-icon-search" size="mini" @click="refreshTable">查 询</el-button> |
| | | <el-button icon="el-icon-refresh" size="mini" @click="refresh">重 置</el-button> |
| | | </el-form-item> |
| | | </el-form> |
| | | <div style="display: flex;justify-content: space-between"> |
| | | <div style="display: flex;"> |
| | | <div style="margin-bottom: 18px;margin-right: 10px;display: flex;align-items: center;line-height: 32px;"> |
| | | <span style="width: 128px;font-size: 14px;font-weight: 700;color: #606266;">检验报告编号</span> |
| | | <el-input size="small" placeholder="请输入" clearable v-model="queryParams.insReportCode" |
| | | @keyup.enter.native="refreshTable()"></el-input> |
| | | </div> |
| | | <div style="line-height: 30px;"> |
| | | <el-button type="primary" size="mini" @click="refreshTable">查询</el-button> |
| | | <el-button size="mini" @click="refresh">重置</el-button> |
| | | </div> |
| | | </div> |
| | | <div> |
| | | <div style="line-height: 30px;"> |
| | | <el-button size="small" type="primary" @click="handleDown" :loading="outLoading" v-if="outPower">导出</el-button> |
| | | <el-button size="small" type="primary" @click="openAdd" v-if="addPower">新增</el-button> |
| | | </div> |
| | | </div> |
| | | <div class="table"> |
| | | <lims-table :tableData="tableData" :column="column" :tableLoading="tableLoading" :height="'calc(100vh - 270px)'" |
| | | :page="page" @pagination="pagination" :isSelection="true" |
| | | :handleSelectionChange="handleSelectionChange"></lims-table> |
| | | :page="page" @pagination="pagination"></lims-table> |
| | | </div> |
| | | <el-dialog :title="title" :visible.sync="addDialogVisible" width="400px" top="6vh"> |
| | | <el-row> |
| | |
| | | <el-col :span="24" style="margin-bottom: 16px;"> |
| | | <div class="search_thing"> |
| | | <div class="search_label">签收人:</div> |
| | | <div class="search_input"> |
| | | <el-select v-model="addInfo.signatory" placeholder="请选择" size="small" style="width: 100%;" multiple> |
| | | <el-option v-for="item in personList" :key="item.value" :label="item.label" :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | </div> |
| | | <div class="search_input"><el-input size="small" placeholder="请输入" clearable |
| | | v-model="addInfo.signatory"></el-input></div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="24" style="margin-bottom: 16px;"> |
| | |
| | | personList: [], |
| | | title: '新增', |
| | | addDialogVisible: false, |
| | | addInfo: { |
| | | signatory: [] |
| | | }, |
| | | addInfo: {}, |
| | | addLoading: false, |
| | | mutilSelect: [], |
| | | queryParams: {}, |
| | | queryParams: { |
| | | insReportCode: '' |
| | | }, |
| | | tableData: [], |
| | | column: [ |
| | | { label: "检验报告编号", prop: "insReportCode" }, |
| | |
| | | { label: "发送方式", prop: "method" }, |
| | | { label: "发送日期", prop: "sendTime" }, |
| | | { label: "发送人", prop: "sendUserName" }, |
| | | { label: "签收人", prop: "signatoryName" }, |
| | | { label: "签收人", prop: "signatory" }, |
| | | { label: "备注", prop: "remark" }, |
| | | { |
| | | dataType: "action", |
| | |
| | | ], |
| | | page: { |
| | | total: 0, |
| | | size: 10, |
| | | size: 20, |
| | | current: 0, |
| | | }, |
| | | tableLoading: false, |
| | |
| | | }, |
| | | methods: { |
| | | handleDown() { |
| | | if (this.mutilSelect.length == 0) { |
| | | this.$message.warning('请选择要导出的数据') |
| | | return |
| | | } |
| | | this.outLoading = true |
| | | exportProcessReport({ ids: this.mutilSelect.map(m => m.id) }).then(res => { |
| | | exportProcessReport(this.queryParams).then(res => { |
| | | this.outLoading = false |
| | | this.$download.saveAs(res.data, "报告结果"); |
| | | const blob = new Blob([res], { type: 'application/msword' }); |
| | | this.$download.saveAs(blob, '报告结果' + '.docx'); |
| | | }) |
| | | }, |
| | | openAdd() { |
| | | this.title = '新增' |
| | | this.addInfo = { |
| | | signatory: [] |
| | | } |
| | | this.addInfo = {} |
| | | this.addDialogVisible = true; |
| | | }, |
| | | getList() { |
| | |
| | | this.page.current = 1; |
| | | this.getList(); |
| | | }, |
| | | handleSelectionChange(val) { |
| | | this.mutilSelect = val |
| | | }, |
| | | getAuthorizedPerson() { |
| | | selectUserCondition().then(res => { |
| | | let data = [] |
| | |
| | | delete this.addInfo.createTime |
| | | delete this.addInfo.createUser |
| | | delete this.addInfo.updateTime |
| | | delete this.addInfo.signatoryUrl |
| | | delete this.addInfo.updateUserer |
| | | delete this.addInfo.sendUserName |
| | | let addInfo = this.HaveJson(this.addInfo) |
| | | addInfo.signatory = addInfo.signatory.join(',') |
| | | if (this.title == '新增') { |
| | | addProcessReport(addInfo).then(res => { |
| | | addProcessReport(this.addInfo).then(res => { |
| | | this.addLoading = false |
| | | this.addDialogVisible = false |
| | | this.$message({ |
| | |
| | | this.refreshTable() |
| | | }).catch(err => { }) |
| | | } else { |
| | | doProcessReport(addInfo).then(res => { |
| | | doProcessReport(this.addInfo).then(res => { |
| | | this.addLoading = false |
| | | this.addDialogVisible = false |
| | | this.$message({ |
| | |
| | | this.title = '修改' |
| | | this.addInfo = row |
| | | console.log(this.addInfo) |
| | | this.addInfo.signatory = this.addInfo.signatory ? this.addInfo.signatory.split(',').map(m => Number(m)) : [] |
| | | this.addDialogVisible = true; |
| | | }, |
| | | handleChangeTask(list) { |
| | | this.mutilSelect = list |
| | | }, |
| | | handleDelete(row) { |
| | | this.$confirm("是否删除该条数据?", "提示", { |