| | |
| | | <template> |
| | | <a-card :bordered="false"> |
| | | |
| | | <template v-if="isDisplayOperation"> |
| | | <!-- 查询区域 --> |
| | | <div class="table-page-search-wrapper"> |
| | | <a-form layout="inline" @keyup.enter.native="searchQuery"> |
| | |
| | | </a-col> |
| | | <a-col :xl="6" :lg="7" :md="8" :sm="24"> |
| | | <a-form-item label="设备编号"> |
| | | <a-input placeholder="请输入设备编号" v-model="queryParam.equipmentCode"></a-input> |
| | | <a-input placeholder="请输入设备编号" v-model="queryParam.equipmentId"></a-input> |
| | | </a-form-item> |
| | | </a-col> |
| | | <template v-if="toggleSearchStatus"> |
| | |
| | | </a-button> |
| | | </a-dropdown> |
| | | </div> |
| | | </template> |
| | | |
| | | |
| | | <!-- table区域-begin --> |
| | | <div> |
| | | <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;"> |
| | | <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;" v-if="isDisplayOperation"> |
| | | <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a |
| | | style="font-weight: 600">{{ selectedRowKeys.length }}</a>项 |
| | | <a style="margin-left: 24px" @click="onClearSelected">清空</a> |
| | |
| | | :customRow='clickThenSelect' |
| | | @change="handleTableChange"> |
| | | <template slot="referenceFile" slot-scope="text, record, index"> |
| | | <a v-if="text && text !== ''" @click="handlePreview(record)">预览</a> |
| | | <a v-if="text && text !== ''" @click.stop="handlePreview(record)">预览</a> |
| | | </template> |
| | | <span slot="action" slot-scope="text, record"> |
| | | <a @click="handleEdit(record)">编辑</a> |
| | | <a @click.stop="handleEdit(record)">编辑</a> |
| | | |
| | | <a-divider type="vertical" /> |
| | | <a-dropdown> |
| | |
| | | </a-table> |
| | | |
| | | <a-tabs defaultActiveKey="1"> |
| | | <a-tab-pane |
| | | tab='保养标准明细项' |
| | | key="1" |
| | | > |
| | | <div |
| | | class="table-operator" |
| | | style="margin:-16px" |
| | | > |
| | | <eam-maintenance-standard-detail-list :standardId="standardId" /> |
| | | <a-tab-pane tab='保养标准明细项' key="1"> |
| | | <div class="table-operator" style="margin:-16px"> |
| | | <eam-maintenance-standard-detail-list ref="standardDetailRef" :standardId="standardId"/> |
| | | </div> |
| | | </a-tab-pane> |
| | | |
| | |
| | | export default { |
| | | name: 'EamMaintenanceStandardList', |
| | | mixins: [JeecgListMixin], |
| | | props: { |
| | | isDisplayOperation: { |
| | | type: Boolean, |
| | | default: true |
| | | } |
| | | }, |
| | | components: { |
| | | EamMaintenanceStandardModal, |
| | | EamMaintenanceStandardDetailList |
| | |
| | | data() { |
| | | return { |
| | | description: '保养标准管理页面', |
| | | disableMixinCreated: true, |
| | | // 表头 |
| | | columns: [ |
| | | { |
| | | title: '#', |
| | | dataIndex: '', |
| | | key: 'rowIndex', |
| | | width: 60, |
| | | align: 'center', |
| | | customRender: function(t, r, index) { |
| | | return parseInt(index) + 1 |
| | | } |
| | | }, |
| | | { |
| | | title: '标准编码', |
| | | align: 'center', |
| | |
| | | align: 'center', |
| | | dataIndex: 'referenceFile', |
| | | scopedSlots: { customRender: 'referenceFile' } |
| | | }, |
| | | { |
| | | title: '操作', |
| | | dataIndex: 'action', |
| | | align: 'center', |
| | | scopedSlots: { customRender: 'action' } |
| | | } |
| | | ], |
| | | url: { |
| | |
| | | importExcelUrl: 'eam/maintenanceStandard/importExcel' |
| | | }, |
| | | fileUrl: '', |
| | | standardId: '-1', |
| | | standardId: '-1' |
| | | } |
| | | }, |
| | | computed: { |
| | |
| | | return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}` |
| | | } |
| | | }, |
| | | created() { |
| | | if (!this.isDisplayOperation) { |
| | | return |
| | | } |
| | | const operationColumn = { |
| | | title: '操作', |
| | | dataIndex: 'action', |
| | | align: 'center', |
| | | scopedSlots: { customRender: 'action' } |
| | | } |
| | | this.columns = [...this.columns, operationColumn] |
| | | this.loadData(1) |
| | | }, |
| | | methods: { |
| | | handlePreview: function (record) { |
| | | if(record.referenceFile) { |
| | | try { |
| | | let file = JSON.parse(record.referenceFile); |
| | | this.$refs.lxFilePreview.preview(file.filePath); |
| | | let file = JSON.parse(record.referenceFile) |
| | | this.$refs.lxFilePreview.preview(file.filePath) |
| | | }catch (e) { |
| | | console.error(e); |
| | | this.$message.error(e.message); |
| | | console.error(e) |
| | | this.$message.error(e.message) |
| | | } |
| | | }else { |
| | | this.$message.warning("参考文件为空!"); |
| | | this.$message.warning('参考文件为空!') |
| | | } |
| | | }, |
| | | clickThenSelect(record) { |
| | | return { |
| | | style: { |
| | | cursor: 'pointer' |
| | | }, |
| | | on: { |
| | | click: () => { |
| | | this.onSelectChange(record.id.split(','), [record]) |
| | |
| | | } |
| | | }, |
| | | onClearSelected() { |
| | | this.selectedRowKeys = []; |
| | | this.selectionRows = []; |
| | | this.standardId = '-1'; |
| | | this.selectedRowKeys = [] |
| | | this.selectionRows = [] |
| | | this.standardId = '-1' |
| | | }, |
| | | onSelectChange(selectedRowKeys, selectionRows) { |
| | | this.selectedRowKeys = selectedRowKeys; |
| | | this.selectionRows = selectionRows; |
| | | this.selectedRowKeys = selectedRowKeys |
| | | this.selectionRows = selectionRows |
| | | if (selectedRowKeys.length === 1) { |
| | | this.standardId = selectionRows[0]['id'] |
| | | this.standardId = selectedRowKeys[0] |
| | | } else { |
| | | this.standardId = '-1' |
| | | } |
| | | }, |
| | | searchReset() { |
| | | this.standardId = '-1'; |
| | | this.standardId = '-1' |
| | | this.queryParam = {} |
| | | this.loadData(1); |
| | | }, |
| | | this.loadData(1) |
| | | } |
| | | } |
| | | } |
| | | </script> |