| | |
| | | <template> |
| | | <a-card |
| | | :bordered="false" |
| | | title="日常保养工单" |
| | | title="二级保养工单" |
| | | > |
| | | <!-- 查询区域 --> |
| | | <div class="table-page-search-wrapper"> |
| | |
| | | @click="handleAdd" |
| | | type="primary" |
| | | icon="plus" |
| | | v-has="'dailyMaintenanceOrder:add'" |
| | | >新增</a-button> |
| | | <a-button |
| | | v-if="selectedRowKeys.length == 1 && selectionRows[0].status == '8'" |
| | | @click="handlePrintInfo(selectionRows[0])" |
| | | type="primary" |
| | | style="margin-left: 8px" |
| | | >移交单打印 |
| | | </a-button> |
| | | <!-- <a-button |
| | | v-if="selectedRowKeys.length > 0" |
| | | type="primary" |
| | |
| | | <a-table |
| | | ref="table" |
| | | size="middle" |
| | | :scroll="{ x: 'calc(2500px + 50%)', y: 900 }" |
| | | :scroll="{ x: 'calc(2800px + 50%)', y: 900 }" |
| | | bordered |
| | | rowKey="id" |
| | | :columns="columns" |
| | |
| | | class="j-table-force-nowrap" |
| | | @change="handleTableChange" |
| | | :rowSelection="rowSelection" |
| | | :rowClassName="tableRowClass" |
| | | > |
| | | <!-- :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" --> |
| | | <!-- <span |
| | | slot="action" |
| | | slot-scope="text, record" |
| | | > |
| | | <a-popconfirm |
| | | title="确定下发工单吗?" |
| | | @confirm="() => handleOrderIssue(record)" |
| | | > |
| | | <a v-if="record.status === '1'">下发</a> |
| | | </a-popconfirm> |
| | | <a-divider |
| | | v-if="record.status === '1'" |
| | | type="vertical" |
| | | /> |
| | | <a-popconfirm |
| | | title="确定撤回工单吗?" |
| | | @confirm="() => handleOrderReset(record)" |
| | | > |
| | | <a v-if="record.status === '2'">撤回</a> |
| | | </a-popconfirm> |
| | | <a-divider |
| | | v-if="record.status === '2'" |
| | | type="vertical" |
| | | /> |
| | | <a-popconfirm |
| | | title="确定恢复工单吗?" |
| | | @confirm="() => handleOrderRecover(record)" |
| | | > |
| | | <a v-if="record.status === '7'">恢复</a> |
| | | </a-popconfirm> |
| | | <a-divider |
| | | v-if="record.status === '7'" |
| | | type="vertical" |
| | | /> |
| | | <a-popconfirm |
| | | title="确定作废工单吗?" |
| | | @confirm="() => handleOrderCancel(record)" |
| | | > |
| | | <a v-if="record.status === '2'">作废</a> |
| | | </a-popconfirm> |
| | | <a-divider |
| | | v-if="record.status === '2'" |
| | | type="vertical" |
| | | /> |
| | | <a-popconfirm |
| | | title="确定领取工单吗?" |
| | | @confirm="() => handleOrderGet(record)" |
| | | > |
| | | <a v-if="record.status === '2'">领取</a> |
| | | </a-popconfirm> |
| | | <a-divider |
| | | v-if="record.status === '2'" |
| | | type="vertical" |
| | | /> |
| | | <a |
| | | v-if="record.status === '3' || record.status === '4' ||record.status === '5' ||record.status === '7' " |
| | | @click="handleOrderExe(record)" |
| | | >执行</a> |
| | | <a-divider |
| | | v-if="record.status === '3' || record.status === '4' ||record.status === '5' ||record.status === '7' " |
| | | type="vertical" |
| | | /> |
| | | <a |
| | | v-if="record.status === '1'" |
| | | @click="handleEdit(record)" |
| | | >编辑</a> |
| | | <a-divider |
| | | v-if="record.status === '1'" |
| | | type="vertical" |
| | | /> |
| | | <a-dropdown> |
| | | <a class="ant-dropdown-link">更多 <a-icon type="down" /></a> |
| | | <a-menu slot="overlay"> |
| | | <a-menu-item> |
| | | <a @click="handleDetail(record)">详情</a> |
| | | </a-menu-item> |
| | | <a-menu-item> |
| | | <a-popconfirm |
| | | title="确定删除吗?" |
| | | @confirm="() => handleDelete(record.id)" |
| | | > |
| | | <a v-if="record.status === '1'">删除</a> |
| | | </a-popconfirm> |
| | | </a-menu-item> |
| | | </a-menu> |
| | | </a-dropdown> |
| | | </span> --> |
| | | |
| | | <span |
| | | slot="action" |
| | |
| | | <a-popconfirm |
| | | title="确定下发工单吗?" |
| | | @confirm="() => handleOrderIssue(record)" |
| | | v-has="'dailyMaintenanceOrder:issue'" |
| | | > |
| | | <a v-if="record.status == '1'">下发</a> |
| | | </a-popconfirm> |
| | |
| | | <a-popconfirm |
| | | title="确定撤回工单吗?" |
| | | @confirm="() => handleOrderReset(record)" |
| | | v-has="'dailyMaintenanceOrder:issue'" |
| | | > |
| | | <a v-if="record.status == '2'">撤回</a> |
| | | </a-popconfirm> |
| | |
| | | <a-popconfirm |
| | | title="确定恢复工单吗?" |
| | | @confirm="() => handleOrderRecover(record)" |
| | | v-has="'dailyMaintenanceOrder:recover'" |
| | | > |
| | | <a v-if="record.status == '7'">恢复</a> |
| | | </a-popconfirm> |
| | |
| | | <a-popconfirm |
| | | title="确定作废工单吗?" |
| | | @confirm="() => handleOrderCancel(record)" |
| | | v-has="'dailyMaintenanceOrder:recover'" |
| | | > |
| | | <a v-if="record.status == '2'">作废</a> |
| | | </a-popconfirm> |
| | |
| | | <a-popconfirm |
| | | title="确定领取工单吗?" |
| | | @confirm="() => handleOrderGet(record)" |
| | | v-has="'dailyMaintenanceOrder:get'" |
| | | > |
| | | <a v-if="record.status == '2' && record.assignMode == '1'">领取</a> |
| | | </a-popconfirm> |
| | | <a |
| | | v-if="record.status == '2' && record.assignMode == '2' " |
| | | @click="handleAssignOrder(record)" |
| | | v-has="'dailyMaintenanceOrder:assign'" |
| | | >派工</a> |
| | | <a |
| | | v-if="record.status == '3'&& record.assignMode == '2' && record.maintenanceUserName != null " |
| | | @click="handleAssignOrder(record)" |
| | | v-has="'dailyMaintenanceOrder:assign'" |
| | | >改派</a> |
| | | <!-- <a |
| | | v-if="record.status == '3'" |
| | |
| | | <a |
| | | v-if="record.status === '3' || record.status === '4' " |
| | | @click="handleOrderExe(record)" |
| | | v-has="'dailyMaintenanceOrder:exe'" |
| | | >执行</a> |
| | | <a-divider |
| | | v-if="record.status === '3' || record.status === '4' " |
| | |
| | | <a |
| | | v-if="record.status === '1'" |
| | | @click="handleEdit(record)" |
| | | v-has="'dailyMaintenanceOrder:edit'" |
| | | >编辑</a> |
| | | <a-divider |
| | | v-if="record.status === '1'" |
| | | type="vertical" |
| | | /> |
| | | <a |
| | | v-if="record.status === '5'" |
| | | @click="handleFinish(record)" |
| | | >确认</a> |
| | | <a-divider |
| | | v-if="record.status === '5'" |
| | | type="vertical" |
| | | /> |
| | | <a-dropdown> |
| | |
| | | <a-popconfirm |
| | | title="确定删除吗?" |
| | | @confirm="() => handleDelete(record.id)" |
| | | v-has="'dailyMaintenanceOrder:delete'" |
| | | > |
| | | <a v-if="record.status === '1'">删除</a> |
| | | </a-popconfirm> |
| | |
| | | ref="modalForm" |
| | | @ok="modalFormOk" |
| | | ></maintenance-order-modal> |
| | | <finish-devolution-modal |
| | | ref="FinishDevolutionModal" |
| | | @ok="modalFormOk" |
| | | ></finish-devolution-modal> |
| | | <maintenance-order-assign-modal |
| | | ref="MaintenanceOrderAssignModal" |
| | | @ok="modalFormOk" |
| | |
| | | import { mixinDevice } from '@/utils/mixin' |
| | | import { JeecgListMixin } from '@/mixins/JeecgListMixin' |
| | | import MaintenanceOrderModal from './modules/dailyMaintenanceOrder/MaintenanceOrderModal' |
| | | import FinishDevolutionModal from './modules/dailyMaintenanceOrder/FinishDevolutionModal' |
| | | import MaintenanceOrderAssignModal from './modules/dailyMaintenanceOrder/MaintenanceOrderAssignModal' |
| | | import DailyMaintenanceOrderExeDrawer from './modules/dailyMaintenanceOrder/DailyMaintenanceOrderExeDrawer' |
| | | import { getAction, postAction, requestPut } from '@/api/manage' |
| | |
| | | mixins: [JeecgListMixin, mixinDevice], |
| | | components: { |
| | | MaintenanceOrderModal, |
| | | FinishDevolutionModal, |
| | | MaintenanceOrderAssignModal, |
| | | DailyMaintenanceOrderExeDrawer |
| | | }, |
| | | data() { |
| | | return { |
| | | description: '日常保养工单', |
| | | description: '二级保养工单', |
| | | queryParam: { maintenanceType: '2' }, |
| | | // 表头 |
| | | columns: [ |
| | | { |
| | |
| | | } |
| | | }, |
| | | { |
| | | title: '状态', |
| | | align: "center", |
| | | dataIndex: 'statusName' |
| | | }, |
| | | { |
| | | title: '保养工单号', |
| | | align: "center", |
| | | dataIndex: 'num', |
| | | scopedSlots: { customRender: 'num' } |
| | | }, |
| | | { |
| | | title: '状态', |
| | | align: "center", |
| | | dataIndex: 'statusName' |
| | | }, |
| | | // { |
| | | // title: '保养类型', |
| | | // align: "center", |
| | | // dataIndex: 'maintenanceTypeName', |
| | | // }, |
| | | { |
| | | title: '保养周期', |
| | | align: "center", |
| | |
| | | dataIndex: 'maintenanceUserName' |
| | | }, |
| | | { |
| | | title: '问题及相应处理措施描述', |
| | | align: "center", |
| | | dataIndex: 'description' |
| | | }, |
| | | { |
| | | title: '创建人', |
| | | align: "center", |
| | | dataIndex: 'createBy' |
| | |
| | | this.selectionRows = selectionRows; |
| | | }, |
| | | |
| | | handlePrintInfo(record) { |
| | | let href = `${window._CONFIG['domianURL']}/jmreport/view/857408393168490496?id=` + record.id; //网站链接 |
| | | window.open(href, "_blank"); |
| | | }, |
| | | |
| | | handleOrderExe(record) { |
| | | this.$refs.DailyMaintenanceOrderExeDrawer.visible = true |
| | | this.$refs.DailyMaintenanceOrderExeDrawer.title = '日常保养工单执行' |
| | |
| | | this.$refs.DailyMaintenanceOrderExeDrawer.revocationDistable = true |
| | | this.$refs.DailyMaintenanceOrderExeDrawer.SWbuttonDistable = true |
| | | } |
| | | }, |
| | | |
| | | handleFinish: function (record) { |
| | | this.$refs.FinishDevolutionModal.edit(record); |
| | | this.$refs.FinishDevolutionModal.title = "生产设备二级保养完工移交单"; |
| | | this.$refs.FinishDevolutionModal.disableSubmit = false; |
| | | }, |
| | | |
| | | handleOrderIssue(record) { |
| | |
| | | // //清空列表选中 |
| | | // this.onClearSelected() |
| | | // }, |
| | | |
| | | //预警颜色 |
| | | tableRowClass(record, index) { |
| | | if ("1" == record.status || "2" == record.status) { |
| | | if (record.yellowWarningTime < record.currentDateTime && record.currentDateTime < record.redWarningTime) { |
| | | return 'yellow' |
| | | } else if (record.redWarningTime < record.currentDateTime && record.currentDateTime < record.planStartTime) { |
| | | return 'error' |
| | | } else if (record.planStartTime < record.currentDateTime) { |
| | | return 'frozenRowClass' |
| | | } |
| | | } |
| | | }, |
| | | } |
| | | } |
| | | </script> |
| | | <style scoped> |
| | | <style > |
| | | @import '~@assets/less/common.less'; |
| | | .frozenRowClass { |
| | | color: #c9c9c9; |
| | | font-weight: bold; |
| | | } |
| | | .success { |
| | | color: green; |
| | | } |
| | | .error { |
| | | color: red; |
| | | font-weight: bold; |
| | | } |
| | | .yellow { |
| | | color: rgba(255, 255, 0, 0.443); |
| | | font-weight: bold; |
| | | } |
| | | .fontweight { |
| | | font-weight: bold; |
| | | } |
| | | |
| | | .ant-table-tbody .red { |
| | | background-color: red !important; |
| | | } |
| | | </style> |