From 3fb908f2d537a8a047388963202185e5844317cb Mon Sep 17 00:00:00 2001
From: yangkang <yangkang@xalxzn.com>
Date: 星期二, 12 九月 2023 09:26:35 +0800
Subject: [PATCH] 预测性维护
---
src/views/eam/ProjectMaintenanceOrderList.vue | 363 +++++++++++++++++++++++++++------------------------
1 files changed, 191 insertions(+), 172 deletions(-)
diff --git a/src/views/eam/ProjectMaintenanceOrderList.vue b/src/views/eam/ProjectMaintenanceOrderList.vue
index 571303c..e805135 100644
--- a/src/views/eam/ProjectMaintenanceOrderList.vue
+++ b/src/views/eam/ProjectMaintenanceOrderList.vue
@@ -1,34 +1,90 @@
<template>
- <a-card :bordered='false'>
+ <a-card
+ title="椤圭洰鎬х淮淇�"
+ :bordered='false'
+ >
<!-- 鏌ヨ鍖哄煙 -->
<div class='table-page-search-wrapper'>
- <a-form layout='inline' @keyup.enter.native='searchQuery'>
+ <a-form
+ layout='inline'
+ @keyup.enter.native='searchQuery'
+ >
<a-row :gutter='24'>
- <a-col :xl='6' :lg='7' :md='8' :sm='24'>
+ <a-col
+ :xl='6'
+ :lg='7'
+ :md='8'
+ :sm='24'
+ >
<a-form-item label='璁″垝鍗曠紪鐮�'>
- <j-input placeholder='璇疯緭鍏ヨ鍒掑崟缂栫爜' v-model='queryParam.num'></j-input>
+ <j-input
+ placeholder='璇疯緭鍏ヨ鍒掑崟缂栫爜'
+ v-model='queryParam.num'
+ ></j-input>
</a-form-item>
</a-col>
- <a-col :xl='6' :lg='7' :md='8' :sm='24'>
+ <a-col
+ :xl='6'
+ :lg='7'
+ :md='8'
+ :sm='24'
+ >
<a-form-item label='瀹℃壒鐘舵��'>
- <j-dict-select-tag placeholder='璇烽�夋嫨瀹℃壒鐘舵��' v-model='queryParam.auditStatus' dictCode='audit_status' />
+ <j-dict-select-tag
+ placeholder='璇烽�夋嫨瀹℃壒鐘舵��'
+ v-model='queryParam.auditStatus'
+ dictCode='audit_status'
+ />
</a-form-item>
</a-col>
<template v-if='toggleSearchStatus'>
- <a-col :xl='10' :lg='11' :md='12' :sm='24'>
+ <a-col
+ :xl='10'
+ :lg='11'
+ :md='12'
+ :sm='24'
+ >
<a-form-item label='鍒涘缓鏃堕棿'>
- <j-date placeholder='璇烽�夋嫨寮�濮嬫棩鏈�' class='query-group-cust' v-model='queryParam.createTime_begin'></j-date>
+ <j-date
+ placeholder='璇烽�夋嫨寮�濮嬫棩鏈�'
+ class='query-group-cust'
+ v-model='queryParam.createTime_begin'
+ ></j-date>
<span class='query-group-split-cust'></span>
- <j-date placeholder='璇烽�夋嫨缁撴潫鏃ユ湡' class='query-group-cust' v-model='queryParam.createTime_end'></j-date>
+ <j-date
+ placeholder='璇烽�夋嫨缁撴潫鏃ユ湡'
+ class='query-group-cust'
+ v-model='queryParam.createTime_end'
+ ></j-date>
</a-form-item>
</a-col>
</template>
- <a-col :xl='6' :lg='7' :md='8' :sm='24'>
- <span style='float: left;overflow: hidden;' class='table-page-search-submitButtons'>
- <a-button type='primary' @click='searchQuery' icon='search'>鏌ヨ</a-button>
- <a-button type='primary' @click='searchReset' icon='reload' style='margin-left: 8px'>閲嶇疆</a-button>
- <a @click='handleToggleSearch' style='margin-left: 8px'>
+ <a-col
+ :xl='6'
+ :lg='7'
+ :md='8'
+ :sm='24'
+ >
+ <span
+ style='float: left;overflow: hidden;'
+ class='table-page-search-submitButtons'
+ >
+ <a-button
+ type='primary'
+ @click='searchQuery'
+ icon='search'
+ >鏌ヨ</a-button>
+ <a-button
+ type='primary'
+ @click='searchReset'
+ icon='reload'
+ style='margin-left: 8px'
+ >閲嶇疆</a-button>
+ <a
+ @click='handleToggleSearch'
+ style='margin-left: 8px'
+ >
{{ toggleSearchStatus ? '鏀惰捣' : '灞曞紑' }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'" />
</a>
@@ -41,16 +97,25 @@
<!-- 鎿嶄綔鎸夐挳鍖哄煙 -->
<div class='table-operator'>
- <a-button @click='handleAdd' type='primary' icon='plus'>鏂板</a-button>
+ <a-button
+ @click='handleAdd'
+ type='primary'
+ icon='plus'
+ >鏂板</a-button>
</div>
<!-- table鍖哄煙-begin -->
<div>
- <div class='ant-alert ant-alert-info' style='margin-bottom: 16px;'>
- <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>
- </div>
+ <!-- <div
+ class='ant-alert ant-alert-info'
+ style='margin-bottom: 16px;'
+ >
+ <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>
+ </div> -->
<a-table
ref='table'
@@ -58,91 +123,65 @@
bordered
rowKey='id'
class='j-table-force-nowrap'
- :scroll='{x:true}'
+ :scroll="{ x: 'calc(1500px + 50%)', y: 900 }"
:columns='columns'
:dataSource='dataSource'
:pagination='ipagination'
:loading='loading'
- :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange, type:'checkbox'}"
:customRow='clickThenSelect'
- @change='handleTableChange'>
-
- <template slot='htmlSlot' slot-scope='text'>
- <div v-html='text'></div>
+ @change='handleTableChange'
+ >
+ <!-- :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange, type:'checkbox'}" -->
+ <template slot="imgSlot" slot-scope="text,record">
+ <span v-if="!record.path" style="font-size: 12px;font-style: italic;">鏃犲浘鐗�</span>
+ <img v-else :src="getImgView(record.path)" :preview="record.id" height="25px" alt="" style="max-width:80px;font-size: 12px;font-style: italic;"/>
</template>
- <template slot='imgSlot' slot-scope='text,record'>
- <span v-if='!text' style='font-size: 12px;font-style: italic;'>鏃犲浘鐗�</span>
- <img v-else :src='getImgView(text)' :preview='record.id' height='25px' alt=''
- style='max-width:80px;font-size: 12px;font-style: italic;' />
- </template>
- <template slot='fileSlot' slot-scope='text'>
- <span v-if='!text' style='font-size: 12px;font-style: italic;'>鏃犳枃浠�</span>
+ <template slot="fileSlot" slot-scope="text">
+ <span v-if="!text" style="font-size: 12px;font-style: italic;">鏃犳枃浠�</span>
<a-button
v-else
- :ghost='true'
- type='primary'
- icon='download'
- size='small'
- @click='downloadFile(text)'>
+ :ghost="true"
+ type="primary"
+ icon="download"
+ size="small"
+ @click="downloadFile(text)">
涓嬭浇
</a-button>
</template>
-
- <!-- <span slot='action' slot-scope='text, record'>
- <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>鍒犻櫎</a>
- </a-popconfirm>
- </a-menu-item>
- <a-menu-item v-if="record.auditStatus == 'notSubmitted'">
- <a @click='handleSubmit'>鎻愪氦</a>
- </a-menu-item>
- <a-menu-item v-if="record.auditStatus == 'pendingApproval'">
- <a @click='handleRevocation'>鎾ゅ洖</a>
- </a-menu-item>
- </a-menu>
- </a-dropdown>
- </span> -->
<span
slot="action"
slot-scope="text, record"
>
- <a-popconfirm
- v-if="record.auditStatus == 'notSubmitted'"
- title="纭鎻愪氦鍚�?"
- @confirm="() =>handleCommit(record, 'commit')"
- >
- <a>鎻愪氦</a>
- </a-popconfirm>
- <a-popconfirm
- v-if="record.auditStatus == 'pendingApproval'"
- title="纭鎾ゅ洖鍚�?"
- @confirm="() =>handleCommit(record, 'back')"
- >
- <a>鎾ゅ洖</a>
- </a-popconfirm>
+ <a-popconfirm
+ v-if="record.auditStatus == 'notSubmitted' || record.auditStatus == 'Rejected'"
+ title="纭鎻愪氦鍚�?"
+ @confirm="() =>handleCommit(record, 'commit')"
+ >
+ <a>鎻愪氦</a>
+ </a-popconfirm>
+ <a-popconfirm
+ v-if="record.auditStatus == 'pendingApproval'"
+ title="纭鎾ゅ洖鍚�?"
+ @confirm="() =>handleCommit(record, 'back')"
+ >
+ <a>鎾ゅ洖</a>
+ </a-popconfirm>
<a-divider
- v-if="record.auditStatus == 'notSubmitted' || record.auditStatus == 'pendingApproval'"
+ v-if="record.auditStatus == 'notSubmitted'|| record.auditStatus == 'Rejected' || record.auditStatus == 'pendingApproval'"
type="vertical"
/>
<a
- v-if="record.auditStatus == 'notSubmitted' "
+ v-if="record.auditStatus == 'notSubmitted' || record.auditStatus == 'Rejected'"
@click="handleEdit(record)"
>缂栬緫</a>
- <a v-if="record.auditStatus == 'pendingApproval'" @click="handleApprove(record)">瀹℃壒</a>
+ <a
+ v-if="record.auditStatus == 'pendingApproval'"
+ @click="handleApprove(record)"
+ >瀹℃壒</a>
<a-divider
- v-if="record.auditStatus == 'notSubmitted' || record.auditStatus == 'pendingApproval'"
+ v-if="record.auditStatus == 'notSubmitted'|| record.auditStatus == 'Rejected' || record.auditStatus == 'pendingApproval'"
type="vertical"
/>
<a-dropdown>
@@ -160,42 +199,6 @@
<a>鍒犻櫎</a>
</a-popconfirm>
</a-menu-item>
- <!-- <a-menu-item v-if="record.status == '1'">
- <a-popconfirm
- v-if="record.status == '1'"
- title="纭鎻愪氦鍚�?"
- @confirm="() =>handleCommit(record, 'commit')"
- >
- <a>鎻愪氦</a>
- </a-popconfirm>
- </a-menu-item>
- <a-menu-item v-if="record.status == '2'">
- <a-popconfirm
- v-if="record.status == '2'"
- title="纭鎾ゅ洖鍚�?"
- @confirm="() =>handleCommit(record, 'back')"
- >
- <a>鎾ゅ洖</a>
- </a-popconfirm>
- </a-menu-item>
- <a-menu-item v-if="record.status == '2'">
- <a-popconfirm
- v-if="record.status == '2'"
- title="纭椹冲洖鍚�?"
- @confirm="() =>handleFinish(record, 'reject')"
- >
- <a>椹冲洖</a>
- </a-popconfirm>
- </a-menu-item>-->
- <!-- <a-menu-item v-if="record.auditStatus == 'Approved' || record.auditStatus == 'Rejected'">
- <a-popconfirm
- v-if="record.auditStatus == 'Approved' || record.auditStatus == 'Rejected'"
- title="纭鎾ら攢鍚�?"
- @confirm="() =>handleFinish(record, 'revoke')"
- >
- <a>鎾ら攢</a>
- </a-popconfirm>
- </a-menu-item> -->
</a-menu>
</a-dropdown>
</span>
@@ -203,14 +206,32 @@
</a-table>
</div>
- <a-tabs defaultActiveKey='1'>
- <a-tab-pane tab='椤圭洰缁翠慨鏄庣粏' key='1'>
- <project-maintenance-order-detail-list :mainId='equipmentSealDetailMainId' />
+ <a-tabs
+ type="card"
+ defaultActiveKey='1'
+ >
+ <a-tab-pane
+ tab='椤圭洰缁翠慨鏄庣粏'
+ key='1'
+ >
+ <div
+ class="table-operator"
+ style="margin:-16px"
+ >
+ <project-maintenance-order-detail-list :mainId='equipmentSealDetailMainId' />
+ </div>
</a-tab-pane>
</a-tabs>
- <project-maintenance-order-modal ref='modalForm' @ok='modalFormOk'></project-maintenance-order-modal>
- <approvel-modal ref='approvalModalForm' @ok='approvalModalFormOk' @cancel='approvalModalFormOk'></approvel-modal>
+ <project-maintenance-order-modal
+ ref='modalForm'
+ @ok='modalFormOk'
+ ></project-maintenance-order-modal>
+ <approvel-modal
+ ref='approvalModalForm'
+ @ok='approvalModalFormOk'
+ @cancel='approvalModalFormOk'
+ ></approvel-modal>
</a-card>
</template>
@@ -218,11 +239,11 @@
import { JeecgListMixin } from '@/mixins/JeecgListMixin'
import ProjectMaintenanceOrderModal from './modules/projectMaintenanceOrder/ProjectMaintenanceOrderModal'
-import { getAction,putAction } from '@/api/manage'
+import { getAction, putAction } from '@/api/manage'
import ProjectMaintenanceOrderDetailList from './modules/projectMaintenanceOrder/ProjectMaintenanceOrderDetailList'
import { initDictOptions, filterMultiDictText } from '@/components/dict/JDictSelectUtil'
import '@/assets/less/TableExpand.less'
-import ApprovelModal from './modules/malfunctionRepair/ApprovelModal'
+import ApprovelModal from './modules/projectMaintenanceOrder/ApprovelModal'
export default {
name: 'ProjectMaintenanceOrderList',
@@ -243,7 +264,7 @@
key: 'rowIndex',
width: 60,
align: 'center',
- customRender: function(t, r, index) {
+ customRender: function (t, r, index) {
return parseInt(index) + 1
}
},
@@ -251,9 +272,7 @@
title: '瀹℃壒鐘舵��',
align: 'center',
dataIndex: 'auditStatus_dictText'
-
},
-
{
title: '鐘舵��',
align: 'center',
@@ -262,19 +281,17 @@
{
title: '璁″垝鍗曠紪鐮�',
align: 'center',
- sorter: true,
dataIndex: 'num'
},
+ // sorter: true,
{
title: '璁″垝鍚嶇О',
align: 'center',
- sorter: true,
dataIndex: 'name'
},
{
title: '璁″垝寮�濮嬫椂闂�',
align: 'center',
- sorter: true,
dataIndex: 'planStartTime',
// customRender: function(text) {
// return !text ? '' : (text.length > 10 ? text.substr(0, 10) : text)
@@ -283,7 +300,6 @@
{
title: '璁″垝缁撴潫鏃堕棿',
align: 'center',
- sorter: true,
dataIndex: 'planEndTime',
// customRender: function(text) {
// return !text ? '' : (text.length > 10 ? text.substr(0, 10) : text)
@@ -292,7 +308,6 @@
{
title: '瀹為檯寮�濮嬫椂闂�',
align: 'center',
- sorter: true,
dataIndex: 'actualStartTime',
// customRender: function(text) {
// return !text ? '' : (text.length > 10 ? text.substr(0, 10) : text)
@@ -302,18 +317,23 @@
{
title: '瀹為檯缁撴潫鏃堕棿',
align: 'center',
- sorter: true,
dataIndex: 'actualEndTime',
// customRender: function(text) {
// return !text ? '' : (text.length > 10 ? text.substr(0, 10) : text)
// }
},
{
- title: '闄勪欢',
- align: "center",
- dataIndex: 'annex',
- scopedSlots: { customRender: 'imgSlot' }
- },
+ title:'闄勪欢',
+ align:"center",
+ dataIndex: 'annex',
+ scopedSlots: {customRender: 'fileSlot'}
+ },
+ // {
+ // title:'鍥剧墖棰勮',
+ // align:"center",
+ // dataIndex: 'annex',
+ // scopedSlots: {customRender: 'imgSlot'}
+ // },
// {
// title:'鍙樺姩鏂瑰紡',
// align:"center",
@@ -355,7 +375,7 @@
dataIndex: 'action',
align: 'center',
fixed: 'right',
- width: 147,
+ width: 200,
scopedSlots: { customRender: 'action' }
}
],
@@ -367,8 +387,8 @@
deleteBatch: '/eam/projectMaintenanceOrder/deleteBatch',
exportXlsUrl: '/eam/projectMaintenanceOrder/exportXls',
importExcelUrl: 'eam/projectMaintenanceOrder/importExcel',
- edit:'/eam/projectMaintenanceOrder/edit',
- commit:'/eam/projectMaintenanceOrder/commit'
+ edit: '/eam/projectMaintenanceOrder/edit',
+ commit: '/eam/projectMaintenanceOrder/commit'
},
dictOptions: {
auditStatus: []
@@ -391,10 +411,10 @@
}
},
created() {
- this.getSuperFieldList()
+ // this.getSuperFieldList()
},
computed: {
- importExcelUrl: function() {
+ importExcelUrl: function () {
return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`
}
},
@@ -463,29 +483,29 @@
this.loading = false
})
},
- getSuperFieldList() {
- let fieldList = []
- fieldList.push({ type: 'string', value: 'num', text: '璁″垝鍗曠紪鍙�', dictCode: '' })
- fieldList.push({ type: 'string', value: 'name', text: '璁″垝鍚嶇О', dictCode: '' })
- fieldList.push({ type: 'date', value: 'planStartTime', text: '璁″垝寮�濮嬫椂闂�' })
- fieldList.push({ type: 'date', value: 'planEndTime', text: '璁″垝缁撴潫鏃堕棿' })
- fieldList.push({ type: 'date', value: 'actualStartTime', text: '瀹為檯寮�濮嬫椂闂�' })
- fieldList.push({ type: 'date', value: 'actualEndTime', text: '瀹為檯缁撴潫鏃堕棿' })
- fieldList.push({
- type: 'string',
- value: 'auditStatus',
- text: '瀹℃壒鐘舵��(鏈彁浜�-notSubmitted銆佸緟瀹℃壒 pendingApproval銆佸鎵逛腑-approvalProcess銆佸凡椹冲洖-Rejected銆佸凡閫氳繃-Approved)',
- dictCode: 'audit_status'
- })
- /* fieldList.push({type:'string',value:'changeMethod',text:'鍙樺姩鏂瑰紡(灏佸瓨-seal锛屽惎灏�-unseal,鎶ュ簾-scrap锛屽缃�-disposal)',dictCode:''})*/
- fieldList.push({ type: 'string', value: 'remark', text: '澶囨敞', dictCode: '' })
- fieldList.push({ type: 'string', value: 'createBy', text: '鍒涘缓浜�', dictCode: 'sys_user,realname,username' })
- fieldList.push({ type: 'date', value: 'createTime', text: '鍒涘缓鏃堕棿' })
- fieldList.push({ type: 'string', value: 'updateBy', text: '淇敼浜�', dictCode: 'sys_user,realname,username' })
- fieldList.push({ type: 'date', value: 'updateTime', text: '淇敼鏃堕棿' })
+ // getSuperFieldList() {
+ // let fieldList = []
+ // fieldList.push({ type: 'string', value: 'num', text: '璁″垝鍗曠紪鍙�', dictCode: '' })
+ // fieldList.push({ type: 'string', value: 'name', text: '璁″垝鍚嶇О', dictCode: '' })
+ // fieldList.push({ type: 'date', value: 'planStartTime', text: '璁″垝寮�濮嬫椂闂�' })
+ // fieldList.push({ type: 'date', value: 'planEndTime', text: '璁″垝缁撴潫鏃堕棿' })
+ // fieldList.push({ type: 'date', value: 'actualStartTime', text: '瀹為檯寮�濮嬫椂闂�' })
+ // fieldList.push({ type: 'date', value: 'actualEndTime', text: '瀹為檯缁撴潫鏃堕棿' })
+ // fieldList.push({
+ // type: 'string',
+ // value: 'auditStatus',
+ // text: '瀹℃壒鐘舵��(鏈彁浜�-notSubmitted銆佸緟瀹℃壒 pendingApproval銆佸鎵逛腑-approvalProcess銆佸凡椹冲洖-Rejected銆佸凡閫氳繃-Approved)',
+ // dictCode: 'audit_status'
+ // })
+ // /* fieldList.push({type:'string',value:'changeMethod',text:'鍙樺姩鏂瑰紡(灏佸瓨-seal锛屽惎灏�-unseal,鎶ュ簾-scrap锛屽缃�-disposal)',dictCode:''})*/
+ // fieldList.push({ type: 'string', value: 'remark', text: '澶囨敞', dictCode: '' })
+ // fieldList.push({ type: 'string', value: 'createBy', text: '鍒涘缓浜�', dictCode: 'sys_user,realname,username' })
+ // fieldList.push({ type: 'date', value: 'createTime', text: '鍒涘缓鏃堕棿' })
+ // fieldList.push({ type: 'string', value: 'updateBy', text: '淇敼浜�', dictCode: 'sys_user,realname,username' })
+ // fieldList.push({ type: 'date', value: 'updateTime', text: '淇敼鏃堕棿' })
- this.superFieldList = fieldList
- },
+ // this.superFieldList = fieldList
+ // },
handleCommit(record, type) {
type == 'commit' ? record.auditStatus = 'pendingApproval' : record.auditStatus = 'notSubmitted'
putAction(this.url.commit, record).then(res => {
@@ -502,12 +522,12 @@
}
})
},
- handleFinish(record,type) {
- if(type == 'agree'){
+ handleFinish(record, type) {
+ if (type == 'agree') {
record.auditStatus = 'Approved'
- }else if(type == 'reject'){
+ } else if (type == 'reject') {
record.auditStatus = 'Rejected'
- }else if(type == 'revoke'){
+ } else if (type == 'revoke') {
record.auditStatus = 'pendingApproval'
}
putAction(this.url.edit, record).then(res => {
@@ -519,13 +539,12 @@
}
})
},
- handleApprove: function(record) {
+ handleApprove: function (record) {
let edit
edit = this.url.commit
- this.$refs.approvalModalForm.showModals(record, edit,'Approved','Rejected')
+ this.$refs.approvalModalForm.showModals(record, edit, 'Approved', 'Rejected')
this.$refs.approvalModalForm.title = '瀹℃壒'
this.$refs.approvalModalForm.disableSubmit = false
-
},
approvalModalFormOk() {
// 閫氳繃/椹冲洖鏃讹紝閲嶈浇鍒楄〃
--
Gitblit v1.9.3