| | |
| | | <template> |
| | | <a-card :bordered="false" class="device_list"> |
| | | <div class="device_list"> |
| | | <!-- 查询区域 --> |
| | | <div style="width: 100%; background-color: #fff" class="table-page-search-wrapper"> |
| | | <div style="background-color: #fff" class="table-page-search-wrapper"> |
| | | <a-form layout="inline" @keyup.enter.native="searchQuery"> |
| | | <a-row :gutter="24"> |
| | | <a-col :md="9" :sm="9"> |
| | | <a-row :gutter="24" style="width: 100%;"> |
| | | <a-col :md="7" :sm="7"> |
| | | <a-form-item label="时间"> |
| | | <a-range-picker @change="dateParamChange" v-model="dates" format="YYYY-MM-DD HH:mm:ss" showTime/> |
| | | <a-range-picker @change="dateParamChange" v-model="dates" format="YYYY-MM-DD HH:mm:ss"/> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="4" :sm="4"> |
| | | <a-col :md="5" :sm="5"> |
| | | <a-form-item label="设备编号"> |
| | | <a-input placeholder="输入设备编号查询" v-model="queryParams.equipmentId"></a-input> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="4" :sm="4" :xs="4"> |
| | | <a-col :md="5" :sm="5" :xs="5"> |
| | | <a-form-item label="设备名称"> |
| | | <a-input placeholder="输入设备名称查询" v-model="queryParams.equipmentName"></a-input> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="2" :sm="3" :xs="3"> |
| | | <a-button type="primary" @click="searchQuery" icon="search">查询</a-button> |
| | | </a-col> |
| | | <a-col :md="2" :sm="2" :xs="2"> |
| | | <a-button type="primary" @click="searchReset" icon="reload">重置</a-button> |
| | | <a-space> |
| | | <a-button type="primary" @click="searchQuery" icon="search">查询</a-button> |
| | | <a-button type="primary" @click="searchReset" icon="reload">重置</a-button> |
| | | </a-space> |
| | | </a-col> |
| | | <a-col :lg="2" :md="3" :sm="3" :xs="3"> |
| | | <a-button type="primary" @click="exportExcel" icon="download">导出</a-button> |
| | | </a-col> |
| | | <!--<a-col :md="2" :sm="3" :xs="3">--> |
| | | <!--<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>--> |
| | | <!--</a-col>--> |
| | | <!--<a-col :md="2" :sm="2" :xs="2">--> |
| | | <!--<a-button type="primary" @click="searchReset" icon="reload">重置</a-button>--> |
| | | <!--</a-col>--> |
| | | <!--<a-col :lg="2" :md="3" :sm="3" :xs="3">--> |
| | | <!--<!–<a-button type="primary" @click="exportExcel" icon="download">导出</a-button>–>--> |
| | | <!--<a-button type="primary" @click="handleExportXls('维修休班管理')" icon="download">导出</a-button>--> |
| | | <!--</a-col>--> |
| | | </a-row> |
| | | </a-form> |
| | | </div> |
| | | <!-- 操作按钮区域 --> |
| | | <div class="table-operator" style="display: inline;"> |
| | | <a-button v-has="'user.addrequip'" @click="handleAdd" type="primary" icon="plus">维修新增 |
| | | <a-button @click="handleAdd" type="primary" icon="plus">新增 |
| | | </a-button> |
| | | <a-button v-has="'user.add'" @click="handleAddXIU" type="primary" icon="plus">休班新增 |
| | | </a-button> |
| | | <a-button type="primary" @click="handleExportXls('维修休班管理')" icon="download">导出</a-button> |
| | | <!--<a-button v-has="'user.add'" @click="handleAddXIU" type="primary" icon="plus">休班新增--> |
| | | <!--</a-button>--> |
| | | </div> |
| | | |
| | | <!-- table区域-begin --> |
| | | <div id="DeviceList"> |
| | | <div id="DeviceList" style="flex: 1;overflow: hidden"> |
| | | <a-table ref="table" bordered size="middle" rowKey="id" :columns="columns" |
| | | :scroll="{x:1000}" :dataSource="dataSource" :pagination="ipagination" :loading="loading" |
| | | :dataSource="dataSource" :pagination="ipagination" :loading="loading" |
| | | :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" |
| | | @change="handleTableChange"> |
| | | @change="handleTableChange" :scroll="{x:'max-content',y:scrollY}"> |
| | | <span slot="action" slot-scope="text, record"> |
| | | <a @click="handleEdit(record)">编辑</a> |
| | | <a-divider type="vertical" /> |
| | |
| | | </a-table> |
| | | </div> |
| | | <!-- table区域-end --> |
| | | <device-repair-model ref="modalForm" @ok="modalFormOk"></device-repair-model> |
| | | <device-repair-model-add ref="modalFormadd" @ok="modalFormOk"></device-repair-model-add> |
| | | <device-repair-model ref="modalForm" :equipmentId="queryParams.equipmentId" @ok="modalFormOk"></device-repair-model> |
| | | <!--<device-repair-model-add ref="modalFormadd" @ok="modalFormOk"></device-repair-model-add>--> |
| | | <device-repair-model-edit ref="modalFormedit" @ok="modalFormOk"></device-repair-model-edit> |
| | | <!--<repair-model ref="repairModelFrom" @ok="modalFormOk"></repair-model>--> |
| | | |
| | | </a-card> |
| | | <!--<repair-model ref="repairModelFrom" @ok="modalFormOk">0</repair-model>--> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | |
| | | import JEllipsis from '@/components/jeecg/JEllipsis' |
| | | import Tooltip from 'ant-design-vue/es/tooltip' |
| | | import { ajaxGetDictItems, getDictItemsFromCache, duplicateCheck } from '@/api/api' |
| | | import ACol from 'ant-design-vue/es/grid/Col' |
| | | export default { |
| | | name: 'DeviceRepairList', |
| | | mixins: [JeecgListMixin], |
| | | components: { |
| | | ACol, |
| | | Tooltip, |
| | | DeviceRepairModel, |
| | | DeviceRepairModelAdd, |
| | |
| | | queryParamEquip:{}, |
| | | queryParamPeople:{}, |
| | | dataStartsoucre:[], |
| | | scrollY:465, |
| | | /* 分页参数 */ |
| | | ipagination:{ |
| | | current: 1, |
| | | pageSize: 30, |
| | | pageSizeOptions: ['30', '50', '100'], |
| | | showTotal: (total, range) => { |
| | | return range[0] + "-" + range[1] + " 共" + total + "条" |
| | | }, |
| | | showQuickJumper: true, |
| | | showSizeChanger: true, |
| | | total: 0 |
| | | }, |
| | | columns: [ |
| | | { |
| | | title: '设备编号', |
| | | align: 'center', |
| | | dataIndex: 'equipmentId' |
| | | dataIndex: 'equipmentId', |
| | | width:250 |
| | | }, |
| | | { |
| | | title: '设备名称', |
| | | align: 'center', |
| | | dataIndex: 'equipmentName', |
| | | defaultSortOrder:'descend', |
| | | sorter: (a, b) => {return a.equipmentName>b.equipmentName?1:-1} |
| | | sorter: (a, b) => {return a.equipmentName>b.equipmentName?1:-1}, |
| | | width:250 |
| | | }, |
| | | { |
| | | title: '维修类型', |
| | | align: 'center', |
| | | dataIndex: 'mdcRepairTypeDictText' |
| | | dataIndex: 'mdcRepairTypeDictText', |
| | | width:250 |
| | | }, |
| | | { |
| | | title: '开始时间', |
| | | align: 'center', |
| | | dataIndex: 'startTime', |
| | | width:250 |
| | | // scopedSlots:{customRender:'startTime'}, |
| | | // customRender:(text,row,index) => { |
| | | // return moment(text).format("YYYY-MM-DD HH:mm:ss") |
| | |
| | | { |
| | | title: '结束时间', |
| | | align: 'center', |
| | | dataIndex: 'endTime' |
| | | dataIndex: 'endTime', |
| | | width:250 |
| | | }, |
| | | { |
| | | title: '操作', |
| | | dataIndex: 'action', |
| | | scopedSlots: {customRender: 'action'}, |
| | | align: "center", |
| | | width: 150 |
| | | width: 150, |
| | | fixed:'right' |
| | | } |
| | | ], |
| | | url: { |
| | | list: '/mdc/mdcEquipmentRepair/pageList', |
| | | deleteBatch: '/mdc/mdcEquipmentRepair/delete', |
| | | getEquipmentByPid: '/mdc/mdcequipment/getEquipmentByPid', |
| | | exportXlsUrl:'/mdc/mdcEquipmentRepair/exportXls' |
| | | } |
| | | } |
| | | }, |
| | |
| | | this.queryParamEquip.equipmentId = val.equipmentId |
| | | } else { |
| | | this.queryParamEquip.parentId = val.key |
| | | this.queryParams.equipmentId = '' |
| | | this.queryParams.equipmentId ='' |
| | | } |
| | | this.searchQuery() |
| | | }else{ |
| | | this.queryParams.equipmentId='' |
| | | this.queryParamEquip.parentId = "" |
| | | } |
| | | this.searchQuery() |
| | | }, |
| | | nodePeople(val){ |
| | | if (JSON.stringify(val) != '{}') { |
| | |
| | | } |
| | | //update-end---author:zhangyafei Date:20201118 for:适配不分页的数据列表------------ |
| | | }else{ |
| | | this.$message.warning(res.message) |
| | | // this.$message.warning(res.message) |
| | | this.$notification.warning({ |
| | | message:'消息', |
| | | description:res.message |
| | | }); |
| | | } |
| | | }).finally(() => { |
| | | this.loading = false |
| | |
| | | this.ipagination.total = 0; |
| | | } |
| | | }else{ |
| | | this.$message.warning(res.message) |
| | | // this.$message.warning(res.message) |
| | | this.$notification.warning({ |
| | | message:'消息', |
| | | description:res.message |
| | | }); |
| | | } |
| | | }).finally(() => { |
| | | this.loading = false |
| | |
| | | this.ipagination.total = 0; |
| | | } |
| | | }else{ |
| | | this.$message.warning(res.message) |
| | | // this.$message.warning(res.message) |
| | | this.$notification.warning({ |
| | | message:'消息', |
| | | description:res.message |
| | | }); |
| | | } |
| | | }).finally(() => { |
| | | this.loading = false |
| | |
| | | if(this.queryParams.typeTree == "1"){ |
| | | this.queryParams.parentId = this.queryParamEquip.parentId |
| | | // this.queryParams.equipmentId = this.queryParamEquip.equipmentId |
| | | |
| | | }else{ |
| | | this.queryParams.parentId = this.queryParamPeople.parentId |
| | | |
| | | // this.queryParams.equipmentId = "" |
| | | } |
| | | this.dataSource = []; |
| | |
| | | this.ipagination.total = 0; |
| | | } |
| | | }else{ |
| | | this.$message.warning(res.message) |
| | | // this.$message.warning(res.message) |
| | | this.$notification.warning({ |
| | | message:'消息', |
| | | description:res.message |
| | | }); |
| | | } |
| | | }).finally(() => { |
| | | this.loading = false |
| | |
| | | } |
| | | //update-end---author:zhangyafei Date:20201118 for:适配不分页的数据列表------------ |
| | | }else{ |
| | | this.$message.warning(res.message) |
| | | // this.$message.warning(res.message) |
| | | this.$notification.warning({ |
| | | message:'消息', |
| | | description:res.message |
| | | }); |
| | | } |
| | | }).finally(() => { |
| | | this.loading = false |
| | |
| | | if (res.success) { |
| | | //重新计算分页问题 |
| | | that.reCalculatePage(1) |
| | | that.$message.success(res.message); |
| | | // that.$message.success(res.message); |
| | | that.$notification.success({ |
| | | message:'消息', |
| | | description:res.message |
| | | }); |
| | | that.searchQuery(); |
| | | } else { |
| | | that.$message.warning(res.message); |
| | | // that.$message.warning(res.message); |
| | | that.$notification.warning({ |
| | | message:'消息', |
| | | description:res.message |
| | | }); |
| | | } |
| | | }); |
| | | }, |
| | | /** |
| | | * 打开新增维修或休班弹窗 |
| | | */ |
| | | handleAdd() { |
| | | this.$refs.modalForm.add(this.node) |
| | | this.$refs.modalForm.title = '新增' |
| | | this.$refs.modalForm.disableSubmit = false |
| | | }, |
| | | handleAddXIU() { |
| | | this.$refs.modalFormadd.add() |
| | | this.$refs.modalFormadd.title = '新增' |
| | | this.$refs.modalFormadd.disableSubmit = false |
| | | }, |
| | | // handleAddXIU() { |
| | | // this.$refs.modalFormadd.add() |
| | | // this.$refs.modalFormadd.title = '新增' |
| | | // this.$refs.modalFormadd.disableSubmit = false |
| | | // }, |
| | | pQuery(parentId) { |
| | | this.queryParam.parentId = parentId[0] |
| | | if(this.selectedRowKeys.length >= 1) { |
| | |
| | | _this.equipment = res.result |
| | | _this.searchQuery() |
| | | } else { |
| | | _this.$message.warning('请配置设备!') |
| | | // _this.$message.warning('请配置设备!') |
| | | _this.$notification.warning({ |
| | | message:'消息', |
| | | description:"请配置设备!" |
| | | }); |
| | | } |
| | | } |
| | | }) |
| | |
| | | $("#DeviceList").table2excel({ |
| | | exclude: ".noExl", |
| | | name: "Excel Document Name", |
| | | filename: "设备维修详情", |
| | | filename: "维修休班管理", |
| | | exclude_img: true, |
| | | fileext: ".xls", |
| | | exclude_links: true, |
| | | exclude_inputs: true |
| | | }); |
| | | }, |
| | | |
| | | /** |
| | | * 当浏览器可视窗口尺寸发生改变时触发 |
| | | */ |
| | | handleWindowResize(){ |
| | | const boxHeight = +window.getComputedStyle(document.getElementById('DeviceList')).height.slice(0,-2) |
| | | const tableHeadHeight = +window.getComputedStyle(document.querySelector('.ant-table-thead th')).height.slice(0,-2) |
| | | this.scrollY = boxHeight - tableHeadHeight - 50 |
| | | } |
| | | }, |
| | | created() { |
| | | this.queryParam.typeTree = "1" |
| | | }, |
| | | mounted(){ |
| | | window.addEventListener('resize',this.handleWindowResize) |
| | | this.handleWindowResize() |
| | | }, |
| | | beforeDestroy(){ |
| | | window.removeEventListener('resize',this.handleWindowResize) |
| | | } |
| | | } |
| | | </script> |
| | |
| | | <style lang="less" scoped> |
| | | @import '~@assets/less/common.less'; |
| | | |
| | | .device_list{ |
| | | overflow: hidden; |
| | | display: flex; |
| | | flex-direction: column; |
| | | } |
| | | |
| | | @media screen and (min-width: 1920px){ |
| | | .device_list{ |
| | | height: 811px!important; |
| | | overflow: scroll; |
| | | } |
| | | } |
| | | @media screen and (min-width: 1680px) and (max-width: 1920px){ |
| | | .device_list{ |
| | | height: 811px!important; |
| | | overflow: scroll; |
| | | } |
| | | } |
| | | @media screen and (min-width: 1400px) and (max-width: 1680px){ |
| | | .device_list{ |
| | | height: 663px!important; |
| | | overflow: scroll; |
| | | } |
| | | } |
| | | @media screen and (min-width: 1280px) and (max-width: 1400px){ |
| | | .device_list{ |
| | | height: 564px!important; |
| | | overflow: scroll; |
| | | } |
| | | } |
| | | @media screen and (max-width: 1280px){ |
| | | .device_list{ |
| | | height: 564px!important; |
| | | overflow: scroll; |
| | | } |
| | | } |
| | | </style> |