From be0a6bf776b5ce3e388088e96295960eb7c0d406 Mon Sep 17 00:00:00 2001
From: Houjie <714924425@qq.com>
Date: 星期日, 15 六月 2025 18:42:25 +0800
Subject: [PATCH] 调整
---
src/views/eam/maintenance/EamWeekMaintenanceOrderList.vue | 602 ++++++++++++++++++++++++++++++++++++------------------
1 files changed, 398 insertions(+), 204 deletions(-)
diff --git a/src/views/eam/maintenance/EamWeekMaintenanceOrderList.vue b/src/views/eam/maintenance/EamWeekMaintenanceOrderList.vue
index bbd505c..afdf311 100644
--- a/src/views/eam/maintenance/EamWeekMaintenanceOrderList.vue
+++ b/src/views/eam/maintenance/EamWeekMaintenanceOrderList.vue
@@ -2,7 +2,7 @@
<a-card :bordered="false">
<!-- 鏌ヨ鍖哄煙 -->
- <div class="table-page-search-wrapper">
+ <div class="table-page-search-wrapper" v-if="isDisplayOperation">
<a-form layout="inline" @keyup.enter.native="searchQuery">
<a-row :gutter="24">
<a-col :xl="4" :lg="7" :md="8" :sm="24">
@@ -12,17 +12,20 @@
</a-col>
<a-col :xl="4" :lg="7" :md="8" :sm="24">
<a-form-item label="璁惧缂栧彿">
- <lx-search-equipment-select placeholder="璇疯緭鍏ヨ澶囩紪鍙锋垨鍚嶇О鎼滅储" v-model="queryParam.equipmentId"></lx-search-equipment-select>
+ <lx-search-equipment-select placeholder="璇疯緭鍏ヨ澶囩紪鍙锋垨鍚嶇О鎼滅储"
+ v-model="queryParam.equipmentId"></lx-search-equipment-select>
</a-form-item>
</a-col>
<a-col :xl="6" :lg="7" :md="8" :sm="24">
<a-form-item label="璁″垝淇濆吇鏃ユ湡">
- <a-range-picker v-model="queryParam.maintenanceDateRange" @change="onMaintenanceDateChange" format="YYYY-MM-DD" value-format="YYYY-MM-DD" />
+ <a-range-picker v-model="queryParam.maintenanceDateRange" @change="onMaintenanceDateChange"
+ format="YYYY-MM-DD" value-format="YYYY-MM-DD"/>
</a-form-item>
</a-col>
<a-col :xl="4" :lg="7" :md="8" :sm="24">
<a-form-item label="淇濆吇鐘舵��">
- <j-dict-select-tag placeholder="璇烽�夋嫨淇濆吇鐘舵��" dict-code="maintenance_status" v-model="queryParam.maintenanceStatus" />
+ <j-dict-select-tag placeholder="璇烽�夋嫨淇濆吇鐘舵��" dict-code="week_maintenance_status"
+ v-model="queryParam.maintenanceStatus"/>
</a-form-item>
</a-col>
<a-col :xl="4" :lg="7" :md="8" :sm="24">
@@ -37,24 +40,28 @@
</div>
<!-- 鎿嶄綔鎸夐挳鍖哄煙 -->
- <div class="table-operator">
- <a-button @click="handleAdd" type="primary" icon="plus">鏂板</a-button>
+ <div class="table-operator" v-if="isDisplayOperation">
+ <a-button @click="handleAdd" type="primary" icon="plus" v-if="isShowAuth('eam:weekMaintenance:add')">鏂板</a-button>
<a-dropdown v-if="selectedRowKeys.length > 0">
<a-menu slot="overlay">
- <a-menu-item key="1" @click="handlerBatchAbolish">
- <a-icon type="delete" />
+ <a-menu-item key="1" @click="handlerBatchAbolish" v-if="isShowAuth('eam:weekMaintenance:abolish')">
+ <a-icon type="delete"/>
浣滃簾
+ </a-menu-item>
+ <a-menu-item key="2" @click="handlerBatchCollect" v-if="isShowAuth('eam:weekMaintenance:collect')">
+ <a-icon type="form"/>
+ 棰嗗彇
</a-menu-item>
</a-menu>
<a-button style="margin-left: 8px"> 鎵归噺鎿嶄綔
- <a-icon type="down" />
+ <a-icon type="down"/>
</a-button>
</a-dropdown>
</div>
<!-- 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>
@@ -70,229 +77,416 @@
:pagination="ipagination"
:loading="loading"
class="j-table-force-nowrap"
+ :scroll="{x:'max-content'}"
:rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
@change="handleTableChange">
<span slot="action" slot-scope="text, record">
- <a v-if="record.maintenanceStatus === 'WAIT_MAINTENANCE'" @click="handleEdit(record)">缂栬緫</a>
- <a-divider type="vertical" />
+ <template v-if="record.maintenanceStatus === 'WAIT_MAINTENANCE' && isShowAuth('eam:weekMaintenance:edit')">
+ <a @click="handleEdit(record)">缂栬緫</a>
+
+ <a-divider type="vertical"/>
+
+ <a-popconfirm title="纭畾棰嗗彇鍚�?" @confirm="() => handlerCollect(record.id)">
+ <a>棰嗗彇</a>
+ </a-popconfirm>
+
+ <a-divider type="vertical"/>
+
<a-dropdown>
- <a class="ant-dropdown-link">鏇村 <a-icon type="down" /></a>
+ <a class="ant-dropdown-link">鏇村 <a-icon type="down"/></a>
<a-menu slot="overlay">
- <a-menu-item v-if="record.maintenanceStatus === 'WAIT_MAINTENANCE'">
+ <a-menu-item>
<a-popconfirm title="纭畾浣滃簾鍚�?" @confirm="() => handlerAbolish(record.id)">
<a>浣滃簾</a>
</a-popconfirm>
</a-menu-item>
+ <a-menu-item>
+ <a @click="handleDetail(record)">璇︽儏</a>
+ </a-menu-item>
</a-menu>
</a-dropdown>
- </span>
+ </template>
+ <template v-else>
+ <a @click="handleDetail(record)">璇︽儏</a>
+ </template>
+ </span>
</a-table>
</div>
<!-- table鍖哄煙-end -->
<!-- 琛ㄥ崟鍖哄煙 -->
<eamWeekMaintenanceOrder-modal ref="modalForm" @ok="modalFormOk"></eamWeekMaintenanceOrder-modal>
+ <week-maintenance-approval-modal ref="weekMaintenanceApprovalModal"
+ :selectShenpiData="selectWeekMaintenanceData"></week-maintenance-approval-modal>
</a-card>
</template>
<script>
-import '@/assets/less/TableExpand.less'
-import EamWeekMaintenanceOrderModal from './modules/EamWeekMaintenanceOrderModal'
-import { JeecgListMixin } from '@/mixins/JeecgListMixin'
-import LxSearchEquipmentSelect from '@views/eam/equipment/modules/LxSearchEquipmentSelect.vue'
-import { deleteAction } from '@api/manage'
+ import '@/assets/less/TableExpand.less'
+ import EamWeekMaintenanceOrderModal from './modules/EamWeekMaintenanceOrderModal'
+ import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+ import LxSearchEquipmentSelect from '@views/eam/equipment/modules/LxSearchEquipmentSelect.vue'
+ import { deleteAction, getAction } from '@api/manage'
+ import WeekMaintenanceApprovalModal from '@views/flowable/workflow/weekMaintenance/WeekMaintenanceApprovalModal'
-export default {
- name: 'EamWeekMaintenanceOrderList',
- mixins: [JeecgListMixin],
- components: {
- LxSearchEquipmentSelect,
- EamWeekMaintenanceOrderModal
- },
- data() {
- return {
- description: '鍛ㄤ繚宸ュ崟绠$悊椤甸潰',
- // 琛ㄥご
- columns: [
- {
- title: '#',
- dataIndex: '',
- key: 'rowIndex',
- width: 60,
- align: 'center',
- customRender: function(t, r, index) {
- return parseInt(index) + 1
+ export default {
+ name: 'EamWeekMaintenanceOrderList',
+ mixins: [JeecgListMixin],
+ components: {
+ LxSearchEquipmentSelect,
+ EamWeekMaintenanceOrderModal,
+ WeekMaintenanceApprovalModal
+ },
+ props: {
+ isDisplayOperation: {
+ type: Boolean,
+ default: true
+ }
+ },
+ data() {
+ return {
+ description: '鍛ㄤ繚宸ュ崟绠$悊椤甸潰',
+ disableMixinCreated: true,
+ selectWeekMaintenanceData: {},
+ // 琛ㄥご
+ columns: [
+ {
+ title: '#',
+ dataIndex: '',
+ key: 'rowIndex',
+ width: 60,
+ align: 'center',
+ fixed: 'left',
+ customRender: function(t, r, index) {
+ return parseInt(index) + 1
+ }
+ },
+ {
+ title: '宸ュ崟鍙�',
+ align: 'center',
+ dataIndex: 'orderNum',
+ fixed: 'left',
+ width: 60
+ },
+ {
+ title: '璁惧缂栧彿',
+ align: 'center',
+ dataIndex: 'equipmentCode',
+ fixed: 'left',
+ width: 60
+ },
+ {
+ title: '璁惧鍚嶇О',
+ align: 'center',
+ dataIndex: 'equipmentName',
+ fixed: 'left',
+ width: 60
+ },
+ {
+ title: '鏍囧噯鍚嶇О',
+ align: 'center',
+ dataIndex: 'standardId_dictText',
+ width: 100
+ },
+ {
+ title: '璁″垝淇濆吇鏃ユ湡',
+ align: 'center',
+ dataIndex: 'maintenanceDate',
+ width: 60
+ },
+ {
+ title: '瀹為檯寮�濮嬫椂闂�',
+ align: 'center',
+ dataIndex: 'actualStartTime',
+ width: 60
+ },
+ {
+ title: '瀹為檯缁撴潫鏃堕棿',
+ align: 'center',
+ dataIndex: 'actualEndTime',
+ width: 60
+ },
+ {
+ title: '淇濆吇浜�',
+ align: 'center',
+ dataIndex: 'operator_dictText',
+ width: 60
+ },
+ {
+ title: '淇濆吇鐘舵��',
+ align: 'center',
+ dataIndex: 'maintenanceStatus_dictText',
+ width: 60
+ },
+ {
+ title: '鍒涘缓鏂瑰紡',
+ align: 'center',
+ dataIndex: 'creationMethod_dictText',
+ width: 60
+ },
+ {
+ title: '纭浜�',
+ align: 'center',
+ dataIndex: 'confirmUser_dictText',
+ width: 60
+ },
+ {
+ title: '纭鏃堕棿',
+ align: 'center',
+ dataIndex: 'confirmTime',
+ width: 60
+ },
+ {
+ title: '纭鎰忚',
+ align: 'center',
+ dataIndex: 'confirmComment',
+ width: 60
+ },
+ {
+ title: '鍒濋獙鏀朵汉',
+ align: 'center',
+ dataIndex: 'initialAcceptanceUser_dictText',
+ width: 60
+ },
+ {
+ title: '鍒濋獙鏀舵椂闂�',
+ align: 'center',
+ dataIndex: 'initialAcceptanceTime',
+ width: 60
+ },
+ {
+ title: '鍒濋獙鏀舵剰瑙�',
+ align: 'center',
+ dataIndex: 'initialAcceptanceComment',
+ width: 60
+ },
+ {
+ title: '缁堥獙鏀朵汉',
+ align: 'center',
+ dataIndex: 'finalAcceptanceUser_dictText',
+ width: 60
+ },
+ {
+ title: '缁堥獙鏀舵椂闂�',
+ align: 'center',
+ dataIndex: 'finalAcceptanceTime',
+ width: 60
+ },
+ {
+ title: '缁堥獙鏀舵剰瑙�',
+ align: 'center',
+ dataIndex: 'finalAcceptanceComment',
+ width: 60
+ },
+ {
+ title: '澶囨敞',
+ align: 'center',
+ dataIndex: 'remark',
+ width: 60
}
- },
- {
- title: '宸ュ崟鍙�',
- align: 'center',
- dataIndex: 'orderNum'
- },
- {
- title: '璁惧缂栧彿',
- align: 'center',
- dataIndex: 'equipmentCode'
- },
- {
- title: '璁惧鍚嶇О',
- align: 'center',
- dataIndex: 'equipmentName'
- },
- {
- title: '鏍囧噯鍚嶇О',
- align: 'center',
- dataIndex: 'standardId_dictText'
- },
- {
- title: '璁″垝淇濆吇鏃ユ湡',
- align: 'center',
- dataIndex: 'maintenanceDate'
- },
- {
- title: '瀹為檯寮�濮嬫椂闂�',
- align: 'center',
- dataIndex: 'actualStartTime'
- },
- {
- title: '瀹為檯缁撴潫鏃堕棿',
- align: 'center',
- dataIndex: 'actualEndTime'
- },
- {
- title: '淇濆吇浜�',
- align: 'center',
- dataIndex: 'operator_dictText'
- },
- {
- title: '淇濆吇鐘舵��',
- align: 'center',
- dataIndex: 'maintenanceStatus_dictText'
- },
- {
- title: '鍒涘缓鏂瑰紡',
- align: 'center',
- dataIndex: 'creationMethod_dictText'
- },
- {
- title: '纭浜�',
- align: 'center',
- dataIndex: 'confirmUser_dictText'
- },
- {
- title: '纭鏃堕棿',
- align: 'center',
- dataIndex: 'confirmTime'
- },
- {
- title: '淇濆吇鍥剧墖',
- align: 'center',
- dataIndex: 'imageFiles'
- },
- {
- title: '澶囨敞',
- align: 'center',
- dataIndex: 'remark',
- editable: true,
- },
- {
- title: '鎿嶄綔',
- dataIndex: 'action',
- align: 'center',
- scopedSlots: { customRender: 'action' }
+ // {
+ // title: '鎿嶄綔',
+ // dataIndex: 'action',
+ // align: 'center',
+ // fixed: 'right',
+ // width: 100,
+ // scopedSlots: { customRender: 'action' }
+ // }
+ ],
+ url: {
+ list: '/eam/weekMaintenanceOrder/list',
+ abolish: '/eam/weekMaintenanceOrder/abolish',
+ abolishBatch: '/eam/weekMaintenanceOrder/abolishBatch',
+ collect: '/eam/weekMaintenanceOrder/collect',
+ collectBatch: '/eam/weekMaintenanceOrder/collectBatch'
}
- ],
- url: {
- list: '/eam/weekMaintenanceOrder/list',
- abolish: '/eam/weekMaintenanceOrder/abolish',
- abolishBatch: '/eam/weekMaintenanceOrder/abolishBatch'
+ }
+ },
+ created() {
+ if (!this.isDisplayOperation) {
+ return
+ }
+ const operationColumn = {
+ title: '鎿嶄綔',
+ dataIndex: 'action',
+ align: 'center',
+ fixed: 'right',
+ width: 200,
+ scopedSlots: { customRender: 'action' }
+ }
+ this.columns = [...this.columns, operationColumn]
+ this.loadData(1)
+ },
+ computed: {},
+ methods: {
+ onMaintenanceDateChange: function(value, dateString) {
+ if(dateString && dateString.length === 2) {
+ this.queryParam.maintenanceDateBegin = dateString[0]
+ this.queryParam.maintenanceDateEnd = dateString[1]
+ }else {
+ this.queryParam.maintenanceDateBegin = undefined
+ this.queryParam.maintenanceDateEnd = undefined
+ }
+ },
+ handlerAbolish(id) {
+ if (!this.url.abolish) {
+ this.$message.error('璇疯缃畊rl.abolish灞炴��!')
+ return
+ }
+ var that = this
+ deleteAction(that.url.abolish, { id: id }).then((res) => {
+ if (res.success) {
+ //閲嶆柊璁$畻鍒嗛〉闂
+ that.reCalculatePage(1)
+ // that.$message.success(res.message);
+ that.$notification.success({
+ message: '娑堟伅',
+ description: res.message
+ })
+ that.loadData()
+ } else {
+ // that.$message.warning(res.message);
+ that.$notification.warning({
+ message: '娑堟伅',
+ description: res.message
+ })
+ }
+ })
+ },
+ handlerBatchAbolish() {
+ if (!this.url.abolishBatch) {
+ this.$message.error('璇疯缃畊rl.abolishBatch灞炴��!')
+ return
+ }
+ if (this.selectedRowKeys.length <= 0) {
+ // this.$message.warning('璇烽�夋嫨涓�鏉¤褰曪紒');
+ this.$notification.warning({
+ message: '娑堟伅',
+ description: '璇烽�夋嫨涓�鏉¤褰�'
+ })
+ return
+ } else {
+ var ids = ''
+ for (var a = 0; a < this.selectedRowKeys.length; a++) {
+ ids += this.selectedRowKeys[a] + ','
+ }
+ var that = this
+ this.$confirm({
+ title: '纭浣滃簾',
+ content: '鏄惁浣滃簾閫変腑鏁版嵁锛屽彧鏈夊緟淇濆吇鐘舵�佺殑鏁版嵁鎵嶅彲浣滃簾鎴愬姛?',
+ onOk: function() {
+ that.loading = true
+ deleteAction(that.url.abolishBatch, { ids: ids }).then((res) => {
+ if (res.success) {
+ //閲嶆柊璁$畻鍒嗛〉闂
+ that.reCalculatePage(that.selectedRowKeys.length)
+ // that.$message.success(res.message);
+ that.$notification.success({
+ message: '娑堟伅',
+ description: res.message
+ })
+ that.loadData()
+ that.onClearSelected()
+ } else {
+ // that.$message.warning(res.message);
+ that.$notification.warning({
+ message: '娑堟伅',
+ description: res.message
+ })
+ }
+ }).finally(() => {
+ that.loading = false
+ })
+ }
+ })
+ }
+ },
+ //鍗曚釜棰嗗彇
+ handlerCollect(id) {
+ if (!this.url.collect) {
+ this.$message.error('璇疯缃畊rl.collect灞炴��!')
+ return
+ }
+ let that = this
+ getAction(that.url.collect, { id: id }).then((res) => {
+ if (res.success) {
+ //閲嶆柊璁$畻鍒嗛〉闂
+ that.reCalculatePage(1)
+ // that.$message.success(res.message);
+ that.$notification.success({
+ message: '娑堟伅',
+ description: res.message
+ })
+ that.loadData()
+ } else {
+ // that.$message.warning(res.message);
+ that.$notification.warning({
+ message: '娑堟伅',
+ description: res.message
+ })
+ }
+ })
+ },
+ //鎵归噺棰嗗彇
+ handlerBatchCollect() {
+ if (!this.url.collectBatch) {
+ this.$message.error('璇疯缃畊rl.abolishBatch灞炴��!')
+ return
+ }
+ if (this.selectedRowKeys.length <= 0) {
+ // this.$message.warning('璇烽�夋嫨涓�鏉¤褰曪紒');
+ this.$notification.warning({
+ message: '娑堟伅',
+ description: '璇烽�夋嫨涓�鏉¤褰�'
+ })
+ return
+ } else {
+ var ids = ''
+ for (var a = 0; a < this.selectedRowKeys.length; a++) {
+ ids += this.selectedRowKeys[a] + ','
+ }
+ var that = this
+ this.$confirm({
+ title: '纭棰嗗彇',
+ content: '鏄惁棰嗗彇閫変腑鏁版嵁锛屽彧鏈夊緟淇濆吇鐘舵�佺殑鏁版嵁鎵嶅彲棰嗗彇鎴愬姛?',
+ onOk: function() {
+ that.loading = true
+ deleteAction(that.url.collectBatch, { ids: ids }).then((res) => {
+ if (res.success) {
+ //閲嶆柊璁$畻鍒嗛〉闂
+ that.reCalculatePage(that.selectedRowKeys.length)
+ // that.$message.success(res.message);
+ that.$notification.success({
+ message: '娑堟伅',
+ description: res.message
+ })
+ that.loadData()
+ that.onClearSelected()
+ } else {
+ // that.$message.warning(res.message);
+ that.$notification.warning({
+ message: '娑堟伅',
+ description: res.message
+ })
+ }
+ }).finally(() => {
+ that.loading = false
+ })
+ }
+ })
+ }
+ },
+ handleDetail(record) {
+ this.selectWeekMaintenanceData = Object.assign({}, record)
+ this.$refs.weekMaintenanceApprovalModal.recordDetail(record)
+ this.$refs.weekMaintenanceApprovalModal.title = '璇︽儏'
+ this.$refs.weekMaintenanceApprovalModal.disableSubmit = true
}
}
- },
- computed: {},
- methods: {
- onMaintenanceDateChange: function(value, dateString) {
- this.queryParam.maintenanceDateBegin = dateString[0]
- this.queryParam.maintenanceDateEnd = dateString[1]
- },
- handlerAbolish(id) {
- if(!this.url.abolish){
- this.$message.error("璇疯缃畊rl.abolish灞炴��!")
- return
- }
- var that = this;
- deleteAction(that.url.abolish, {id: id}).then((res) => {
- if (res.success) {
- //閲嶆柊璁$畻鍒嗛〉闂
- that.reCalculatePage(1)
- // that.$message.success(res.message);
- that.$notification.success({
- message:'娑堟伅',
- description:res.message
- });
- that.loadData();
- } else {
- // that.$message.warning(res.message);
- that.$notification.warning({
- message:'娑堟伅',
- description:res.message
- });
- }
- });
- },
- handlerBatchAbolish() {
- if(!this.url.abolishBatch){
- this.$message.error("璇疯缃畊rl.abolishBatch灞炴��!")
- return
- }
- if (this.selectedRowKeys.length <= 0) {
- // this.$message.warning('璇烽�夋嫨涓�鏉¤褰曪紒');
- this.$notification.warning({
- message:'娑堟伅',
- description:"璇烽�夋嫨涓�鏉¤褰�"
- });
- return;
- } else {
- var ids = "";
- for (var a = 0; a < this.selectedRowKeys.length; a++) {
- ids += this.selectedRowKeys[a] + ",";
- }
- var that = this;
- this.$confirm({
- title: "纭浣滃簾",
- content: "鏄惁浣滃簾閫変腑鏁版嵁锛屽彧鏈夊緟淇濆吇鐘舵�佺殑鏁版嵁鎵嶅彲浣滃簾鎴愬姛?",
- onOk: function () {
- that.loading = true;
- deleteAction(that.url.abolishBatch, {ids: ids}).then((res) => {
- if (res.success) {
- //閲嶆柊璁$畻鍒嗛〉闂
- that.reCalculatePage(that.selectedRowKeys.length)
- // that.$message.success(res.message);
- that.$notification.success({
- message:'娑堟伅',
- description:res.message
- });
- that.loadData();
- that.onClearSelected();
- } else {
- // that.$message.warning(res.message);
- that.$notification.warning({
- message:'娑堟伅',
- description:res.message
- });
- }
- }).finally(() => {
- that.loading = false;
- });
- }
- });
- }
- },
}
-}
</script>
<style scoped>
-@import '~@assets/less/common.less';
+ @import '~@assets/less/common.less';
</style>
\ No newline at end of file
--
Gitblit v1.9.3