From 29ba398a2f5bab940d37c5c82baee205073d05b6 Mon Sep 17 00:00:00 2001
From: hyingbo <1363390067@qq.com>
Date: 星期四, 31 七月 2025 17:22:50 +0800
Subject: [PATCH] 工具报损-修改审核时间字段取值
---
src/views/eam/base/EamMaintenanceStandardList.vue | 351 ++++++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 292 insertions(+), 59 deletions(-)
diff --git a/src/views/eam/base/EamMaintenanceStandardList.vue b/src/views/eam/base/EamMaintenanceStandardList.vue
index baf336d..d053dff 100644
--- a/src/views/eam/base/EamMaintenanceStandardList.vue
+++ b/src/views/eam/base/EamMaintenanceStandardList.vue
@@ -4,79 +4,195 @@
<template v-if="isDisplayOperation">
<!-- 鏌ヨ鍖哄煙 -->
<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="4"
+ :lg="7"
+ :md="8"
+ :sm="24"
+ >
<a-form-item label="鏍囧噯缂栫爜">
- <a-input placeholder="璇疯緭鍏ユ爣鍑嗙紪鐮�" v-model="queryParam.standardCode"></a-input>
+ <a-input
+ placeholder="璇疯緭鍏ユ爣鍑嗙紪鐮�"
+ v-model="queryParam.standardCode"
+ ></a-input>
</a-form-item>
</a-col>
- <a-col :xl="6" :lg="7" :md="8" :sm="24">
+ <a-col
+ :xl="4"
+ :lg="7"
+ :md="8"
+ :sm="24"
+ >
<a-form-item label="鏍囧噯鍚嶇О">
- <a-input placeholder="璇疯緭鍏ユ爣鍑嗗悕绉�" v-model="queryParam.standardName"></a-input>
+ <a-input
+ placeholder="璇疯緭鍏ユ爣鍑嗗悕绉�"
+ v-model="queryParam.standardName"
+ ></a-input>
</a-form-item>
</a-col>
- <a-col :xl="6" :lg="7" :md="8" :sm="24">
+ <a-col
+ :xl="4"
+ :lg="7"
+ :md="8"
+ :sm="24"
+ >
<a-form-item label="璁惧缂栧彿">
- <a-input placeholder="璇疯緭鍏ヨ澶囩紪鍙�" v-model="queryParam.equipmentId"></a-input>
+ <lx-search-equipment-select
+ placeholder="璇疯緭鍏ヨ澶囩紪鍙锋垨鍚嶇О鎼滅储"
+ v-model="queryParam.equipmentId"
+ ></lx-search-equipment-select>
</a-form-item>
</a-col>
- <template v-if="toggleSearchStatus">
- <a-col :xl="6" :lg="7" :md="8" :sm="24">
- <a-form-item label="淇濆吇鍒嗙被">
- <a-input placeholder="璇疯緭鍏ヤ繚鍏诲垎绫�" v-model="queryParam.maintenanceCategory"></a-input>
- </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="info" @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>
- </span>
+ <a-col
+ :xl="4"
+ :lg="7"
+ :md="8"
+ :sm="24"
+ >
+ <a-form-item label="淇濆吇鍒嗙被">
+ <j-dict-select-tag
+ dict-code="maintenance_category"
+ placeholder="璇烽�夋嫨淇濆吇鍒嗙被"
+ v-model="queryParam.maintenanceCategory"
+ />
+ </a-form-item>
</a-col>
-
+ <a-col
+ :xl="4"
+ :lg="7"
+ :md="8"
+ :sm="24"
+ >
+ <a-form-item label="鏍囧噯鐘舵��">
+ <j-dict-select-tag
+ dict-code="maintenance_standard_status"
+ placeholder="璇烽�夋嫨鏍囧噯鐘舵��"
+ v-model="queryParam.standardStatus"
+ />
+ </a-form-item>
+ </a-col>
+ <a-col
+ :xl="4"
+ :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="info"
+ @click="searchReset"
+ icon="reload"
+ style="margin-left: 8px"
+ >閲嶇疆</a-button>
+ </span>
+ </a-col>
</a-row>
</a-form>
</div>
<!-- 鎿嶄綔鎸夐挳鍖哄煙 -->
<div class="table-operator">
- <a-button @click="handleAdd" type="primary" icon="plus">鏂板</a-button>
- <a-upload name="file" :showUploadList="false" :multiple="true" :headers="tokenHeader" :action="inspectionImportExcel"
- @change="inspectionImportExcel">
- <a-button type="primary" icon="import">鐐规瀵煎叆</a-button>
+ <a-button
+ @click="handleAdd"
+ type="primary"
+ icon="plus"
+ >鏂板</a-button>
+ <a-upload
+ name="file"
+ :showUploadList="false"
+ :multiple="true"
+ :headers="tokenHeader"
+ :action="inspectionImportExcel"
+ @change="handleImportExcel"
+ >
+ <a-button
+ type="primary"
+ icon="import"
+ >鐐规鏍囧噯瀵煎叆</a-button>
</a-upload>
- <a-button type="primary" icon="download" @click="handleTemplateXlsDownload(url.inspectionXlsDownloadUrl)">鐐规妯℃澘涓嬭浇</a-button>
- <a-upload name="file" :showUploadList="false" :multiple="true" :headers="tokenHeader" :action="weekMaintenanceImportExcel"
- @change="weekMaintenanceImportExcel">
- <a-button type="primary" icon="import">鍛ㄤ繚瀵煎叆</a-button>
+ <a-button
+ type="primary"
+ icon="download"
+ @click="handleTemplateXlsDownload(url.inspectionXlsDownloadUrl)"
+ >鐐规鏍囧噯妯℃澘涓嬭浇</a-button>
+ <a-upload
+ name="file"
+ :showUploadList="false"
+ :multiple="true"
+ :headers="tokenHeader"
+ :action="secondMaintenanceImportExcel"
+ @change="handleImportExcel"
+ >
+ <a-button
+ type="primary"
+ icon="import"
+ >浜屼繚鏍囧噯瀵煎叆</a-button>
</a-upload>
- <a-button type="primary" icon="download" @click="handleTemplateXlsDownload(url.weekMaintenanceXlsDownloadUrl)">鍛ㄤ繚妯℃澘涓嬭浇</a-button>
+ <a-button
+ type="primary"
+ icon="download"
+ @click="handleTemplateXlsDownload(url.secondMaintenanceXlsDownloadUrl)"
+ >浜屼繚鏍囧噯妯℃澘涓嬭浇</a-button>
+ <a-upload
+ name="file"
+ :showUploadList="false"
+ :multiple="true"
+ :headers="tokenHeader"
+ :action="thirdMaintenanceImportExcel"
+ @change="handleImportExcel"
+ >
+ <a-button
+ type="primary"
+ icon="import"
+ >涓変繚鏍囧噯瀵煎叆</a-button>
+ </a-upload>
+ <a-button
+ type="primary"
+ icon="download"
+ @click="handleTemplateXlsDownload(url.thirdMaintenanceXlsDownloadUrl)"
+ >涓変繚鏍囧噯妯℃澘涓嬭浇</a-button>
<a-dropdown v-if="selectedRowKeys.length > 0">
<a-menu slot="overlay">
- <a-menu-item key="1" @click="batchDel">
- <a-icon type="delete"/>
+ <a-menu-item
+ key="1"
+ @click="batchDel"
+ >
+ <a-icon type="delete" />
鍒犻櫎
</a-menu-item>
</a-menu>
<a-button style="margin-left: 8px"> 鎵归噺鎿嶄綔
- <a-icon type="down"/>
+ <a-icon type="down" />
</a-button>
</a-dropdown>
</div>
</template>
-
<!-- table鍖哄煙-begin -->
<div>
- <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>
+ <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>
</div>
<a-table
@@ -91,19 +207,54 @@
class="j-table-force-nowrap"
:rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
:customRow='clickThenSelect'
- @change="handleTableChange">
- <template slot="referenceFile" slot-scope="text, record, index">
- <a v-if="text && text !== ''" @click.stop="handlePreview(record)">棰勮</a>
+ @change="handleTableChange"
+ >
+ <template
+ slot="referenceFile"
+ slot-scope="text, record, index"
+ >
+ <a
+ v-if="text && text !== ''"
+ @click.stop="handlePreview(record)"
+ >棰勮</a>
</template>
- <span slot="action" slot-scope="text, record">
- <a @click.stop="handleEdit(record)">缂栬緫</a>
+ <span
+ slot="action"
+ slot-scope="text, record"
+ >
+ <a
+ v-if="record.standardStatus === 'NORMAL'"
+ @click.stop="handleEdit(record)"
+ >缂栬緫</a>
- <a-divider type="vertical"/>
+ <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.standardStatus === 'NORMAL'">
+ <a @click.stop="handleUpgrade(record)">鍗囩増</a>
+ </a-menu-item>
+ <a-menu-item v-if="record.standardStatus === 'NORMAL'">
+ <a-popconfirm
+ title="纭畾浣滃簾鍚�?"
+ @confirm="() => handleAbolish(record.id)"
+ >
+ <a>浣滃簾</a>
+ </a-popconfirm>
+ </a-menu-item>
+ <a-menu-item v-if="record.referenceFile !== null">
+ <a-popconfirm
+ title="纭畾涓嬭浇鏂囦欢鍚�?"
+ @confirm="() => handleDownload(record)"
+ >
+ <a>涓嬭浇</a>
+ </a-popconfirm>
+ </a-menu-item>
<a-menu-item>
- <a-popconfirm title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete(record.id)">
+ <a-popconfirm
+ title="纭畾鍒犻櫎鍚�?"
+ @confirm="() => handleDelete(record.id)"
+ >
<a>鍒犻櫎</a>
</a-popconfirm>
</a-menu-item>
@@ -114,9 +265,18 @@
</a-table>
<a-tabs defaultActiveKey="1">
- <a-tab-pane tab='淇濆吇鏍囧噯鏄庣粏椤�' key="1">
- <div class="table-operator" style="margin:-16px">
- <eam-maintenance-standard-detail-list ref="standardDetailRef" :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>
@@ -125,8 +285,14 @@
<!-- table鍖哄煙-end -->
<!-- 琛ㄥ崟鍖哄煙 -->
- <eamMaintenanceStandard-modal ref="modalForm" @ok="modalFormOk"></eamMaintenanceStandard-modal>
- <lx-file-preview ref="lxFilePreview" :fileUrl="fileUrl"></lx-file-preview>
+ <eamMaintenanceStandard-modal
+ ref="modalForm"
+ @ok="modalFormOk"
+ ></eamMaintenanceStandard-modal>
+ <lx-file-preview
+ ref="lxFilePreview"
+ :fileUrl="fileUrl"
+ ></lx-file-preview>
</a-card>
</template>
@@ -135,7 +301,8 @@
import EamMaintenanceStandardModal from './modules/EamMaintenanceStandardModal'
import { JeecgListMixin } from '@/mixins/JeecgListMixin'
import EamMaintenanceStandardDetailList from '@views/eam/base/modules/EamMaintenanceStandardDetailList'
-import { templateXlsDownload } from '@api/manage'
+import { deleteAction, templateXlsDownload, downFile } from '@api/manage'
+import LxSearchEquipmentSelect from '@views/eam/equipment/modules/LxSearchEquipmentSelect.vue'
export default {
@@ -148,6 +315,7 @@
}
},
components: {
+ LxSearchEquipmentSelect,
EamMaintenanceStandardModal,
EamMaintenanceStandardDetailList
},
@@ -216,20 +384,31 @@
exportXlsUrl: 'eam/maintenanceStandard/exportXls',
inspectionImportExcel: 'eam/maintenanceStandard/inspectionImportExcel',
weekMaintenanceImportExcel: 'eam/maintenanceStandard/weekMaintenanceImportExcel',
+ secondMaintenanceImportExcel: 'eam/maintenanceStandard/secondMaintenanceImportExcel',
+ thirdMaintenanceImportExcel: 'eam/maintenanceStandard/thirdMaintenanceImportExcel',
inspectionXlsDownloadUrl: '瀵煎叆妯℃澘/鐐规鏍囧噯瀵煎叆妯℃澘_v1.0.xlsx',
weekMaintenanceXlsDownloadUrl: '瀵煎叆妯℃澘/鍛ㄤ繚鏍囧噯瀵煎叆妯℃澘_v1.0.xlsx',
-
+ secondMaintenanceXlsDownloadUrl: '瀵煎叆妯℃澘/浜屼繚鏍囧噯瀵煎叆妯℃澘_v1.0.xlsx',
+ thirdMaintenanceXlsDownloadUrl: '瀵煎叆妯℃澘/涓変繚鏍囧噯瀵煎叆妯℃澘_v1.0.xlsx',
+ abolish: '/eam/maintenanceStandard/abolish',
+ download: '/eam/maintenanceStandard/downloadFile',
},
fileUrl: '',
standardId: '-1'
}
},
computed: {
- inspectionImportExcel: function() {
+ inspectionImportExcel: function () {
return `${window._CONFIG['domianURL']}/${this.url.inspectionImportExcel}`
},
- weekMaintenanceImportExcel: function() {
+ weekMaintenanceImportExcel: function () {
return `${window._CONFIG['domianURL']}/${this.url.weekMaintenanceImportExcel}`
+ },
+ secondMaintenanceImportExcel: function () {
+ return `${window._CONFIG['domianURL']}/${this.url.secondMaintenanceImportExcel}`
+ },
+ thirdMaintenanceImportExcel: function () {
+ return `${window._CONFIG['domianURL']}/${this.url.thirdMaintenanceImportExcel}`
}
},
created() {
@@ -246,7 +425,7 @@
this.loadData(1)
},
methods: {
- handlePreview: function(record) {
+ handlePreview: function (record) {
if (record.referenceFile) {
try {
let file = JSON.parse(record.referenceFile)
@@ -293,6 +472,60 @@
handleTemplateXlsDownload(url) {
templateXlsDownload(url)
},
+ handleAbolish: function (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
+ });
+ }
+ });
+ },
+ handleUpgrade(record) {
+ //鍗囩増
+ this.$refs.modalForm.upgrade(record);
+ this.$refs.modalForm.title = "鍗囩増";
+ this.$refs.modalForm.disableSubmit = false;
+ },
+ handleDownload(record) {
+ downFile(this.url.download, { id: record.id }).then((res) => {
+ if (!res) {
+ this.$message.warning('鏂囦欢涓嬭浇澶辫触')
+ return
+ } else {
+ let fileName = record.fileName;
+ if (typeof window.navigator.msSaveBlob !== 'undefined') {
+ window.navigator.msSaveBlob(new Blob([res]), fileName);
+ } else {
+ let url = window.URL.createObjectURL(new Blob([res]));
+ let link = document.createElement('a');
+ link.style.display = 'none';
+ link.href = url;
+ link.setAttribute('download', fileName);
+ document.body.appendChild(link);
+ link.click()
+ document.body.removeChild(link) //涓嬭浇瀹屾垚绉婚櫎鍏冪礌
+ window.URL.revokeObjectURL(url) //閲婃斁鎺塨lob瀵硅薄
+ }
+ }
+ })
+ },
}
}
</script>
--
Gitblit v1.9.3