From fd268e6d3d6a310e0d35d0cec53e018b8c4ac4d8 Mon Sep 17 00:00:00 2001 From: lyh <925863403@qq.com> Date: 星期四, 24 七月 2025 10:19:15 +0800 Subject: [PATCH] 基础样式添加按钮权限 --- src/views/eam/repair/EamReportAccidentsRegisterList.vue | 203 ++++++++++++++++------------- src/views/eam/repair/EamReportProductHazardsList.vue | 117 ++++++++++------ src/views/eam/repair/EamRepairOrderList.vue | 8 src/views/eam/repair/EamReportRepairList.vue | 2 src/views/eam/equipment/EamEquipmentLedger.vue | 18 +- src/views/eam/maintenance/EamSecondMaintenanceOrderList.vue | 28 ++-- 6 files changed, 211 insertions(+), 165 deletions(-) diff --git a/src/views/eam/equipment/EamEquipmentLedger.vue b/src/views/eam/equipment/EamEquipmentLedger.vue index 8ce27e9..8958c11 100644 --- a/src/views/eam/equipment/EamEquipmentLedger.vue +++ b/src/views/eam/equipment/EamEquipmentLedger.vue @@ -65,16 +65,16 @@ <!-- 鎿嶄綔鎸夐挳鍖哄煙 --> <div class="table-operator"> - <a-button @click="handleAdd" type="primary" icon="plus">鏂板</a-button> - <a-button type="primary" icon="download" @click="handleExportXls('璁惧鍙拌处')">瀵煎嚭</a-button> - <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" + <a-button v-has="'eam:equipment:add'" @click="handleAdd" type="primary" icon="plus">鏂板</a-button> + <a-button v-has="'eam:equipment:export'" type="primary" icon="download" @click="handleExportXls('璁惧鍙拌处')">瀵煎嚭</a-button> + <a-upload v-has="'eam:equipment:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel"> <a-button type="primary" icon="import">瀵煎叆</a-button> </a-upload> - <a-button type="primary" icon="download" @click="handleTemplateXlsDownload">瀵煎叆妯℃澘涓嬭浇</a-button> + <a-button v-has="'eam:equipment:download'" type="primary" icon="download" @click="handleTemplateXlsDownload">瀵煎叆妯℃澘涓嬭浇</a-button> <a-dropdown v-if="selectedRowKeys.length > 0"> <a-menu slot="overlay"> - <a-menu-item key="2" @click="batchDel"> + <a-menu-item v-has="'eam:equipment:batchdel'" key="2" @click="batchDel"> <a-icon type="delete"/> 鍒犻櫎 </a-menu-item> @@ -131,21 +131,21 @@ </template> <span slot="action" slot-scope="text, record"> - <a @click.stop="handleEdit(record)">缂栬緫</a> + <a v-has="'eam:equipment:edit'" key="2" @click.stop="handleEdit(record)">缂栬緫</a> - <a-divider type="vertical"/> + <a-divider v-has="'eam:equipment:edit'" type="vertical"/> <a-dropdown> <a class="ant-dropdown-link">鏇村 <a-icon type="down"/></a> <a-menu slot="overlay"> <a-menu-item> - <a href="javascript:;" @click="handleOpenResumeDrawer(record)">灞ュ巻</a> + <a v-has="'eam:equipment:resume'" href="javascript:;" @click="handleOpenResumeDrawer(record)">灞ュ巻</a> </a-menu-item> <a-menu-item> <a href="javascript:;" @click="handleDetail(record)">璇︽儏</a> </a-menu-item> <a-menu-item> - <a-popconfirm title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete(record.id)"> + <a-popconfirm v-has="'eam:equipment:del'" title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete(record.id)"> <a>鍒犻櫎</a> </a-popconfirm> </a-menu-item> diff --git a/src/views/eam/maintenance/EamSecondMaintenanceOrderList.vue b/src/views/eam/maintenance/EamSecondMaintenanceOrderList.vue index 4e10641..3880652 100644 --- a/src/views/eam/maintenance/EamSecondMaintenanceOrderList.vue +++ b/src/views/eam/maintenance/EamSecondMaintenanceOrderList.vue @@ -38,19 +38,19 @@ <!-- 鎿嶄綔鎸夐挳鍖哄煙 --> <div class="table-operator" v-if="isDisplayOperation"> - <a-button @click="handleAdd" type="primary" icon="plus">鏂板</a-button> - <a-button @click="handleBatchAdd" type="primary" icon="plus">鎵归噺鏂板</a-button> + <a-button v-has="'secondMaintenanceOrder:add'" @click="handleAdd" type="primary" icon="plus">鏂板</a-button> + <a-button v-has="'secondMaintenanceOrder:batchAdd'" @click="handleBatchAdd" type="primary" icon="plus">鎵归噺鏂板</a-button> <a-dropdown v-if="selectedRowKeys.length > 0"> <a-menu slot="overlay"> - <a-menu-item key="1" @click="handlerBatchAbolish"> + <a-menu-item v-has="'secondMaintenanceOrder:batchAbolish'" key="1" @click="handlerBatchAbolish"> <a-icon type="delete"/> 浣滃簾 </a-menu-item> - <a-menu-item key="2" @click="handlerBatchCollect"> + <a-menu-item v-has="'secondMaintenanceOrder:batchCollect'" key="2" @click="handlerBatchCollect"> <a-icon type="form"/> 棰嗗彇 </a-menu-item> - <a-menu-item key="3" @click="handlerBatchRestore"> + <a-menu-item v-has="'secondMaintenanceOrder:batchRestore'" key="3" @click="handlerBatchRestore"> <a-icon type="reload"/> 杩樺師 </a-menu-item> @@ -75,21 +75,21 @@ :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" @change="handleTableChange"> <span slot="action" slot-scope="text, record"> <template v-if="record.maintenanceStatus === 'WAIT_MAINTENANCE'"> - <a @click="handleEdit(record)">缂栬緫</a> + <a v-has="'secondMaintenanceOrder:edit'" @click="handleEdit(record)">缂栬緫</a> - <a-divider type="vertical"/> + <a-divider v-has="'secondMaintenanceOrder:edit'" type="vertical"/> - <a-popconfirm title="纭畾棰嗗彇鍚�?" @confirm="() => handlerCollect(record.id)"> + <a-popconfirm v-has="'secondMaintenanceOrder:collect'" title="纭畾棰嗗彇鍚�?" @confirm="() => handlerCollect(record.id)"> <a>棰嗗彇</a> </a-popconfirm> - <a-divider type="vertical"/> + <a-divider v-has="'secondMaintenanceOrder:collect'" type="vertical"/> <a-dropdown> <a class="ant-dropdown-link">鏇村 <a-icon type="down"/></a> <a-menu slot="overlay"> <a-menu-item> - <a-popconfirm title="纭畾浣滃簾鍚�?" @confirm="() => handleAbolish(record.id)"> + <a-popconfirm v-has="'secondMaintenanceOrder:abolish'" title="纭畾浣滃簾鍚�?" @confirm="() => handlerAbolish(record.id)"> <a>浣滃簾</a> </a-popconfirm> </a-menu-item> @@ -104,14 +104,14 @@ <a @click="handleDetail(record)">璇︽儏</a> - <a-divider v-if="record.maintenanceStatus === 'ABOLISH'" type="vertical"/> + <a-divider v-has="'secondMaintenanceOrder:restore'" v-if="record.maintenanceStatus === 'ABOLISH'" type="vertical"/> - <a-popconfirm v-if="record.maintenanceStatus === 'ABOLISH'" title="纭畾杩樺師鍚�?" @confirm="() => handlerRestore(record.id)"> + <a-popconfirm v-has="'secondMaintenanceOrder:restore'" v-if="record.maintenanceStatus === 'ABOLISH'" title="纭畾杩樺師鍚�?" @confirm="() => handlerRestore(record.id)"> <a>杩樺師</a> </a-popconfirm> - <a-divider type="vertical" v-if="record.maintenanceStatus === 'COMPLETE'"/> - <a v-if="record.maintenanceStatus === 'COMPLETE'" @click="handlePrint(record)">鎵撳嵃</a> +<!-- <a-divider v-has="'secondMaintenanceOrder:print'" type="vertical" v-if="record.maintenanceStatus === 'COMPLETE'"/>--> +<!-- <a v-has="'secondMaintenanceOrder:print'" v-if="record.maintenanceStatus === 'COMPLETE'" @click="handlePrint(record)">鎵撳嵃</a>--> </template> </span> </a-table> diff --git a/src/views/eam/repair/EamRepairOrderList.vue b/src/views/eam/repair/EamRepairOrderList.vue index 4bdd93d..34f03c0 100644 --- a/src/views/eam/repair/EamRepairOrderList.vue +++ b/src/views/eam/repair/EamRepairOrderList.vue @@ -61,12 +61,12 @@ :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" @change="handleTableChange" :scroll="{x:'max-content'}"> <span slot="action" slot-scope="text, record"> - <a @click="handleFillIn(record)">濉姤</a> - <a-divider type="vertical"/> - <a-popconfirm title="纭畾鎻愪氦鍚�?" @confirm="() => handleSubmit(record.id)"> + <a v-if="record.repairStatus === 'PENDING_REPAIR' || record.repairStatus === 'UNDER_MAINTENANCE'" @click="handleFillIn(record)">濉姤</a> + <a-divider v-if="record.repairStatus === 'PENDING_REPAIR' || record.repairStatus === 'UNDER_MAINTENANCE'" type="vertical"/> + <a-popconfirm v-if="record.repairStatus === 'PENDING_REPAIR' || record.repairStatus === 'UNDER_MAINTENANCE'" title="纭畾鎻愪氦鍚�?" @confirm="() => handleSubmit(record.id)"> <a>鎻愪氦</a> </a-popconfirm> - <a-divider type="vertical"/> + <a-divider v-if="record.repairStatus === 'PENDING_REPAIR' || record.repairStatus === 'UNDER_MAINTENANCE'" type="vertical"/> <a @click="handleDetail(record)">璇︽儏</a> </span> </a-table> diff --git a/src/views/eam/repair/EamReportAccidentsRegisterList.vue b/src/views/eam/repair/EamReportAccidentsRegisterList.vue index 2d8df63..f49e4d3 100644 --- a/src/views/eam/repair/EamReportAccidentsRegisterList.vue +++ b/src/views/eam/repair/EamReportAccidentsRegisterList.vue @@ -50,11 +50,11 @@ <!-- 鎿嶄綔鎸夐挳鍖哄煙 --> <div class="table-operator"> - <a-button @click="handleAdd" type="primary" icon="plus">鏂板</a-button> - <a-button type="primary" icon="download" @click="handleExportXls('璁惧浜嬫晠鐧昏琛�')">瀵煎嚭</a-button> - <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel"> - <a-button type="primary" icon="import">瀵煎叆</a-button> - </a-upload> +<!-- <a-button @click="handleAdd" type="primary" icon="plus">鏂板</a-button>--> +<!-- <a-button type="primary" icon="download" @click="handleExportXls('璁惧浜嬫晠鐧昏琛�')">瀵煎嚭</a-button>--> +<!-- <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">--> +<!-- <a-button type="primary" icon="import">瀵煎叆</a-button>--> +<!-- </a-upload>--> <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> @@ -79,12 +79,14 @@ :dataSource="dataSource" :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 @click="handleEdit(record)">缂栬緫</a> + + <a-divider type="vertical" /> <a-dropdown> @@ -119,136 +121,151 @@ components: { EamReportAccidentsRegisterModal }, + props: { + isDisplayOperation: { + type: Boolean, + default: true + }, + propsQueryParam: { + type: Object + } + }, data () { return { description: '璁惧浜嬫晠鐧昏琛ㄧ鐞嗛〉闈�', + disableMixinCreated: true, // 琛ㄥご columns: [ { title: '#', dataIndex: '', - key:'rowIndex', - width:60, + key: 'rowIndex', + width: 60, + align: 'center', + customRender: function(t, r, index) { + return parseInt(index) + 1 + }, + fixed: 'left' + }, + { + title: '缁熶竴缂栫爜', + align: 'center', + dataIndex: 'equipmentCode', + fixed: 'left', + scopedSlots: { customRender: 'equipmentCode' } + }, + { + title: '璁惧鍚嶇О', + align: 'center', + dataIndex: 'equipmentName', + fixed: 'left' + }, + { + title: '璁惧鍨嬪彿', + align: 'center', + dataIndex: 'equipmentModel', + fixed: 'left' + }, + { + title: '鏄惁鏈夎澶囨搷浣滆瘉', align:"center", - customRender:function (t,r,index) { - return parseInt(index)+1; - } - }, - { - title: '鍒犻櫎鏍囪', - align:"center", - dataIndex: 'delFlag' - }, - { - title: '鎶ヤ慨ID', - align:"center", - dataIndex: 'reportId' - }, - { - title: '璁惧ID', - align:"center", - dataIndex: 'equipmentId' - }, - { - title: '鏄惁鏈夎澶囨搷浣滆瘉;鏄� 鍚�', - align:"center", - dataIndex: 'operationCertificate' - }, - { + dataIndex: 'operationCertificate_dictText' + }, + { title: '鏄惁鏂數閲嶅惎', align:"center", - dataIndex: 'powerOffRestart' - }, - { + dataIndex: 'powerOffRestart_dictText' + }, + { title: '鏄惁涓烘壒娆¢浠�', align:"center", - dataIndex: 'batchFirstPiece' - }, - { - title: '鍙樺姩鍥犵礌;濉啓鏄垨鍚�', + dataIndex: 'batchFirstPiece_dictText' + }, + { + title: '鍙樺姩鍥犵礌', align:"center", - dataIndex: 'variableFactors' - }, - { - title: '鍙樺姩鍥犵礌鍐呭;鍒�鍏锋洿鎹€�佸伐鑹烘洿鏀广�佸姞宸ョ▼搴忔洿鏀广�佸垁鍏疯ˉ鍋垮�兼洿鏀广��', + dataIndex: 'variableFactors_dictText' + }, + { + title: '鍙樺姩鍥犵礌鍐呭', align:"center", - dataIndex: 'variableFactorsValue' - }, - { + dataIndex: 'variableFactorsValue_dictText' + }, + { title: '鎵ц绋嬪簭', align:"center", dataIndex: 'executeNc' - }, - { + }, + { title: '浜嬫晠鐜拌薄', align:"center", dataIndex: 'accidentPhenomenon' - }, - { + }, + { title: '閲囧彇鎺柦', align:"center", dataIndex: 'measure' - }, - { + }, + { title: '閫犳垚缁撴灉', align:"center", dataIndex: 'causingResults' - }, - { + }, + { title: '鎿嶄綔宸�', align:"center", dataIndex: 'confirmer' - }, - { + }, + { title: '鎿嶄綔宸ョ‘璁ゆ椂闂�', align:"center", dataIndex: 'confirmTime' - }, - { + }, + { title: '鍖洪暱', align:"center", dataIndex: 'district' - }, - { + }, + { title: '鍖洪暱纭鏃堕棿', align:"center", dataIndex: 'districtTime' - }, - { + }, + { title: '涓績涓讳换', align:"center", dataIndex: 'centerDirector' - }, - { + }, + { title: '涓績涓讳换纭鏃堕棿', align:"center", dataIndex: 'centerDirectorTime' - }, - { + }, + { title: '缁翠慨寮�濮嬫椂闂�', align:"center", dataIndex: 'reportStartTime' - }, - { + }, + { title: '璁惧鐘舵��', align:"center", dataIndex: 'equipmentStatus' - }, - { + }, + { title: '鍘熷洜鍒嗘瀽', align:"center", dataIndex: 'causeAnalysis' - }, - { + }, + { title: '妫�鏌ョ粨鏋�', align:"center", dataIndex: 'inspectionResults' - }, - { + }, + { title: '閲囧彇鎺柦', align:"center", dataIndex: 'takeSteps' - }, + }, { title: '寤鸿閲囧彇鎺柦', align:"center", @@ -274,7 +291,7 @@ align:"center", dataIndex: 'repairConfirmTime' }, - { + { title: '缁翠慨缁勯暱纭', align:"center", dataIndex: 'repairGroupLeader' @@ -354,29 +371,33 @@ align:"center", dataIndex: 'technicalDirectorPartTime' }, - { - title: '鎿嶄綔', - dataIndex: 'action', - align:"center", - scopedSlots: { customRender: 'action' }, - } ], - url: { + selectRepairOrderData: {}, + url: { list: "/eam/eamReportAccidentsRegister/list", delete: "/eam/eamReportAccidentsRegister/delete", deleteBatch: "/eam/eamReportAccidentsRegister/deleteBatch", exportXlsUrl: "eam/eamReportAccidentsRegister/exportXls", importExcelUrl: "eam/eamReportAccidentsRegister/importExcel", - }, + }, } }, - computed: { - importExcelUrl: function(){ - return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`; - } - }, + created() { + if (!this.isDisplayOperation) this.queryParam = Object.assign({}, this.propsQueryParam) + else { + const operationColumn = { + title: '鎿嶄綔', + dataIndex: 'action', + align: 'center', + scopedSlots: { customRender: 'action' }, + width: 200, + fixed: 'right' + } + this.columns = [...this.columns, operationColumn] + } + this.loadData(1) + }, methods: { - } } </script> diff --git a/src/views/eam/repair/EamReportProductHazardsList.vue b/src/views/eam/repair/EamReportProductHazardsList.vue index 542d88e..2bbfd70 100644 --- a/src/views/eam/repair/EamReportProductHazardsList.vue +++ b/src/views/eam/repair/EamReportProductHazardsList.vue @@ -50,11 +50,11 @@ <!-- 鎿嶄綔鎸夐挳鍖哄煙 --> <div class="table-operator"> - <a-button @click="handleAdd" type="primary" icon="plus">鏂板</a-button> - <a-button type="primary" icon="download" @click="handleExportXls('浜у搧瀹夊叏闅愭偅纭')">瀵煎嚭</a-button> - <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel"> - <a-button type="primary" icon="import">瀵煎叆</a-button> - </a-upload> +<!-- <a-button @click="handleAdd" type="primary" icon="plus">鏂板</a-button>--> +<!-- <a-button type="primary" icon="download" @click="handleExportXls('浜у搧瀹夊叏闅愭偅纭')">瀵煎嚭</a-button>--> +<!-- <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">--> +<!-- <a-button type="primary" icon="import">瀵煎叆</a-button>--> +<!-- </a-upload>--> <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> @@ -79,7 +79,7 @@ :dataSource="dataSource" :pagination="ipagination" :loading="loading" - class="j-table-force-nowrap" + :scroll="{x:'max-content'}" :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" @change="handleTableChange"> @@ -119,89 +119,104 @@ components: { EamReportProductHazardsModal }, + props: { + isDisplayOperation: { + type: Boolean, + default: true + }, + propsQueryParam: { + type: Object + } + }, data () { return { description: '浜у搧瀹夊叏闅愭偅纭绠$悊椤甸潰', + disableMixinCreated: true, // 琛ㄥご columns: [ { title: '#', dataIndex: '', - key:'rowIndex', - width:60, - align:"center", - customRender:function (t,r,index) { - return parseInt(index)+1; - } - }, - { - title: '鎶ヤ慨ID', - align:"center", - dataIndex: 'reportId' - }, - { - title: '璁惧ID', - align:"center", - dataIndex: 'equipmentId' - }, - { + key: 'rowIndex', + width: 60, + align: 'center', + customRender: function(t, r, index) { + return parseInt(index) + 1 + }, + fixed: 'left' + }, + { + title: '缁熶竴缂栫爜', + align: 'center', + dataIndex: 'equipmentCode', + fixed: 'left', + scopedSlots: { customRender: 'equipmentCode' } + }, + { + title: '璁惧鍚嶇О', + align: 'center', + dataIndex: 'equipmentName', + fixed: 'left' + }, + { + title: '璁惧鍨嬪彿', + align: 'center', + dataIndex: 'equipmentModel', + fixed: 'left' + }, + { title: '鎿嶄綔宸�', align:"center", dataIndex: 'confirmer' }, - { + { title: '鎿嶄綔宸ョ‘璁ゆ椂闂�', align:"center", dataIndex: 'confirmTime' }, - { + { title: '浜у搧鎹熷け鎯呭喌;鏄� 鍚�', align:"center", dataIndex: 'productLoss' }, - { + { title: '浜у搧鎹熷け璐ㄩ噺褰卞搷鍒嗘瀽', align:"center", dataIndex: 'qualityAnalysis' }, - { + { title: '涓荤宸ヨ壓', align:"center", dataIndex: 'technologist' }, - { + { title: '涓荤宸ヨ壓纭鏃堕棿', align:"center", dataIndex: 'technologistTime' }, - { + { title: '涓荤宸ヨ壓纭鎰忚', align:"center", dataIndex: 'technologistComment' }, - { + { title: '閮ㄧ骇棰嗗', align:"center", dataIndex: 'deputyDepartment' }, - { + { title: '閮ㄧ骇棰嗗纭鏃堕棿', align:"center", dataIndex: 'deputyDepartmentTime' }, - { + { title: '閮ㄧ骇棰嗗纭鎰忚', align:"center", dataIndex: 'deputyDepartmentComment' }, - { - title: '鎿嶄綔', - dataIndex: 'action', - align:"center", - scopedSlots: { customRender: 'action' }, - } ], - url: { + selectRepairOrderData: {}, + url: { list: "/eam/eamReportProductHazards/list", delete: "/eam/eamReportProductHazards/delete", deleteBatch: "/eam/eamReportProductHazards/deleteBatch", @@ -210,13 +225,23 @@ }, } }, - computed: { - importExcelUrl: function(){ - return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`; - } - }, + created() { + if (!this.isDisplayOperation) this.queryParam = Object.assign({}, this.propsQueryParam) + else { + const operationColumn = { + title: '鎿嶄綔', + dataIndex: 'action', + align: 'center', + scopedSlots: { customRender: 'action' }, + width: 200, + fixed: 'right' + } + this.columns = [...this.columns, operationColumn] + } + this.loadData(1) + }, methods: { - + } } </script> diff --git a/src/views/eam/repair/EamReportRepairList.vue b/src/views/eam/repair/EamReportRepairList.vue index 674f996..d040048 100644 --- a/src/views/eam/repair/EamReportRepairList.vue +++ b/src/views/eam/repair/EamReportRepairList.vue @@ -11,7 +11,7 @@ </a-col> <a-col :xl="4" :lg="6" :md="8" :sm="12"> <a-form-item label="鎶ヤ慨鐘舵��"> - <j-dict-select-tag dict-code="report_repair_status" placeholder="璇烽�夋嫨鎶ヤ慨鐘舵��" + <j-dict-select-tag dict-code="repair_status" placeholder="璇烽�夋嫨鎶ヤ慨鐘舵��" v-model="queryParam.reportStatus"/> </a-form-item> </a-col> -- Gitblit v1.9.3