<template> <div class="app-container wasteGasHis"> <!-- 搜索工作栏 --> <search-bar :formConfigs="formConfig" ref="searchBarForm" @headBtnClick="buttonClick" /> <!-- 列表 --> <base-table :page="queryParams.pageNo" :limit="queryParams.pageSize" :table-props="tableProps" :table-data="list" :max-height="tableH" :row-class-name="tableRowClassName" /> <pagination :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize" :total="total" @pagination="getList" /> </div> </template> <script> import { publicFormatter } from '@/utils/dict'; import { parseTime } from '@/utils/ruoyi'; import { environmentalCheckRecordPage, environmentalCheckRecordExport, environmentalCheckPage, } from '@/api/safetyEnvironmental/environmental'; import moment from 'moment'; import tableHeightMixin from '@/mixins/lb/tableHeightMixin'; const tableProps = [ { prop: 'checkName', label: '指标名称', }, { prop: 'checkValue', label: '检测数值', }, { prop: 'unit', label: '单位', filter: publicFormatter('environment_check_unit'), }, { prop: 'checkTime', label: '检测时间', filter: parseTime, minWidth: 160, }, { prop: 'origin', label: '来源', filter: (val) => ['手动', '自动'][val], }, { prop: 'recordPerson', label: '录入人', }, { prop: 'recordTime', label: '录入时间', filter: parseTime, minWidth: 160, }, ]; export default { name: 'WasteGasDetectionHistory', mixins: [tableHeightMixin], data() { return { formConfig: [ { type: 'select', label: '指标名称', selectOptions: [], param: 'checkId', filterable: true, }, { type: 'datePicker', label: '时间', dateType: 'datetimerange', format: 'yyyy-MM-dd HH:mm:ss', valueFormat: 'timestamp', rangeSeparator: '-', startPlaceholder: '开始时间', endPlaceholder: '结束时间', param: 'timeVal', defaultSelect: [], width: 350, }, { type: 'button', btnName: '查询', name: 'search', color: 'primary', }, { type: this.$auth.hasPermi('base:waste-gas:export') ? 'separate' : '', }, { type: this.$auth.hasPermi('base:waste-gas:export') ? 'button' : '', btnName: '导出', name: 'export', color: 'primary', plain: true, }, ], // 查询参数 queryParams: { pageNo: 1, pageSize: 20, checkId: null, checkType: 2, startTime: null, endTime: null, }, tableProps, list: [], total: 0, }; }, created() { let end = moment(moment().format('YYYY-MM-DD 23:59:59')).valueOf(); let start = moment(moment().format('YYYY-MM-DD 00:00:00')).valueOf(); this.formConfig[1].defaultSelect = [start, end]; this.queryParams.startTime = start; this.queryParams.endTime = end; this.getSelectList(); this.getList(); }, methods: { buttonClick(val) { this.queryParams.pageNo = 1; this.queryParams.checkId = val.checkId; this.queryParams.startTime = val.timeVal ? val.timeVal[0] : null; this.queryParams.endTime = val.timeVal ? val.timeVal[1] : null; if (val.btnName === 'search') { this.getList(); } else { this.$modal .confirm('是否确认导出') .then(() => { return environmentalCheckRecordExport({ ...this.queryParams }); }) .then((response) => { this.$download.excel(response, '废气检测历史记录.xls'); }) .catch(() => {}); } }, getList() { environmentalCheckRecordPage({ ...this.queryParams }).then((res) => { this.list = res.data.list || []; this.total = res.data.total || 0; }); }, getSelectList() { environmentalCheckPage({ pageNo: 1, pageSize: 100, checkType: 2, }).then((res) => { console.log(res); this.formConfig[0].selectOptions = res.data.list || []; }); }, tableRowClassName({ row, rowIndex }) { console.log(row); if (row.markRed) { return 'warning-row'; } else { return ''; } }, }, }; </script> <style lang='scss'> .wasteGasHis { .el-table .warning-row { background: #fee1e1; } } </style>