From 5396a52f52305f4d1ea88627a6e6f0e811e8d89d Mon Sep 17 00:00:00 2001 From: zhaowei <zhaowei> Date: 星期三, 02 七月 2025 16:35:09 +0800 Subject: [PATCH] 1、数据字典配置时删除数据值不能使用下划线限制 2、设备台账列表字段自定义展示以及调整字段 --- src/views/eam/equipment/EamEquipmentLedger.vue | 231 +++++++++++++++++---------------------------------------- 1 files changed, 70 insertions(+), 161 deletions(-) diff --git a/src/views/eam/equipment/EamEquipmentLedger.vue b/src/views/eam/equipment/EamEquipmentLedger.vue index 589f207..44f998d 100644 --- a/src/views/eam/equipment/EamEquipmentLedger.vue +++ b/src/views/eam/equipment/EamEquipmentLedger.vue @@ -29,17 +29,18 @@ </a-col> <a-col :xl="6" :lg="7" :md="8" :sm="24"> <a-form-item label="浣跨敤閮ㄩ棬"> - <a-tree-select v-model="queryParam.orgId" style="width: 100%" :tree-data="treeDataAlias" show-search + <a-tree-select v-model="queryParam.factoryOrgCode" style="width: 100%" :tree-data="productionTreeData" + show-search :replaceFields="{key:'orgCode',value:'orgCode'}" treeNodeFilterProp="title" searchPlaceholder="璇疯緭鍏ュ叧閿瓧鎼滅储" :dropdown-style="{ maxHeight: '400px', overflow: 'auto' }" placeholder="璇烽�夋嫨浣跨敤閮ㄩ棬" - allow-clear tree-default-expand-all - > + allow-clear tree-default-expand-all> </a-tree-select> </a-form-item> </a-col> <a-col :xl="6" :lg="7" :md="8" :sm="24"> <a-form-item label="缁翠慨鐝粍"> - <a-tree-select v-model="queryParam.orgId" style="width: 100%" :tree-data="treeDataAlias" + <a-tree-select v-model="queryParam.repairDepartOrgCode" style="width: 100%" + :tree-data="repairDepartTreeData" :dropdown-style="{ maxHeight: '400px', overflow: 'auto' }" placeholder="璇烽�夋嫨缁翠慨鐝粍" allow-clear tree-default-expand-all> </a-tree-select> @@ -102,10 +103,30 @@ :scroll="{ x: 'max-content' }" :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" @change="handleTableChange" - :customRow="customTableRow" > + <!--缁熶竴缂栫爜--> <template slot="equipmentCode" slot-scope="text"> <a href="#" @click="handleDetail(record)" style="display: inline-block;height: 100%">{{text}}</a> + </template> + + <!--浣跨敤閮ㄩ棬--> + <template slot="factoryOrgCode" slot-scope="text,record"> + {{[record.gsfactoryOrgCode_dictText,record.zxfactoryOrgCode_dictText,record.gqfactoryOrgCode_dictText,record.factoryOrgCode_dictText].filter(item=>item).join('/')}} + </template> + + <!--瀹夎浣嶇疆--> + <template slot="installationPosition" slot-scope="text"> + <j-ellipsis :value="text" :length="5"/> + </template> + + <!--鎿嶄綔绯荤粺--> + <template slot="operationSystem" slot-scope="text"> + <a-switch checked-children="鏄�" un-checked-children="鍚�" :checked="+text" disabled/> + </template> + + <!--璧勪骇鍒堕�犲晢--> + <template slot="manufacturingEnterprise" slot-scope="text"> + <j-ellipsis :value="text" :length="8"/> </template> <span slot="action" slot-scope="text, record"> @@ -162,7 +183,7 @@ <!--</a-tabs>--> <!-- 琛ㄥ崟鍖哄煙 --> - <eamEquipment-modal ref="modalForm" @ok="modalFormOk" :treeDataAlias="treeDataAlias"/> + <eamEquipment-modal ref="modalForm" @ok="modalFormOk" :productionTreeData="productionTreeData"/> <!--灞ュ巻寮圭獥--> <resume-drawer ref="resumeDrawerRef" :currentTableRowRecord="currentTableRowRecord"/> </a-card> @@ -217,7 +238,6 @@ { title: '鍏抽敭璁惧鏍囪瘑', align: 'center', - width: 150, dataIndex: 'equipmentImportance', fixed: 'left' }, @@ -241,31 +261,32 @@ { title: '浣跨敤閮ㄩ棬', align: 'center', - dataIndex: 'factoryOrgCode' + dataIndex: 'factoryOrgCode', + scopedSlots: { customRender: 'factoryOrgCode' } }, { title: '鎵�灞炲垎绫�', align: 'center', width: 100, - dataIndex: 'equipmentCategory' + dataIndex: 'equipmentCategory_dictText' }, { title: '淇濆吇鐘舵��', align: 'center', width: 100, - dataIndex: 'maintenanceStatus_dicText' + dataIndex: 'maintenanceStatus_dictText' }, { title: '缁翠慨鐘舵��', align: 'center', width: 100, - dataIndex: 'repairStatus_dicText' + dataIndex: 'repairStatus_dictText' }, { title: '鎶�鏈姸鎬�', align: 'center', width: 100, - dataIndex: 'technologyStatus_dicText' + dataIndex: 'technologyStatus_dictText' }, { title: 'ABC鏍囪瘑', @@ -300,14 +321,13 @@ { title: '鐏伀鍣ㄦ湁鏁堟湡', align: 'center', - width: 150, dataIndex: 'fireExtinguisherExpirationDate' }, { title: '鎿嶄綔绯荤粺', align: 'center', - width: 100, - dataIndex: 'operationSystem' + dataIndex: 'operationSystem', + scopedSlots: { customRender: 'operationSystem' } }, { title: '绯荤粺', @@ -348,8 +368,8 @@ { title: '瀹夎浣嶇疆', align: 'center', - width: 100, - dataIndex: 'installationPosition' + dataIndex: 'installationPosition', + scopedSlots: { customRender: 'installationPosition' } }, { title: '鍑哄巶鏃ユ湡', @@ -366,7 +386,6 @@ { title: '璧勯噾鏉ユ簮', align: 'center', - width: 100, dataIndex: 'fundingSource' }, { @@ -378,19 +397,18 @@ { title: '鍑哄巶缂栧彿', align: 'center', - width: 100, dataIndex: 'factoryNumber' }, { title: '璧勪骇鍒堕�犲晢', align: 'center', - width: 100, - dataIndex: 'manufacturingEnterprise' + dataIndex: 'manufacturingEnterprise', + scopedSlots: { customRender: 'manufacturingEnterprise' }, + ellipsis: true }, { title: '璧勪骇鏉ユ簮鍥藉', align: 'center', - width: 150, dataIndex: 'originCountry' }, { @@ -408,7 +426,6 @@ { title: '鎬诲姛鐜�', align: 'center', - width: 100, dataIndex: 'equipmentPower' }, { @@ -424,7 +441,7 @@ { title: '璧勪骇鐘舵��', align: 'center', - dataIndex: 'assetStatus' + dataIndex: 'assetStatus_dictText' }, { title: '鏈涓変繚鏃ユ湡', @@ -474,14 +491,9 @@ getProductionTreeList: '/eam/BaseFactory/queryTreeList', templateXlsDownloadUrl: '瀵煎叆妯℃澘/璁惧鍙拌处瀵煎叆妯℃澘_v1.1.xlsx' }, - treeData: [], - printedRows: [], - activeTabKey: 1, - appHomeUrl: '', currentTableRowRecord: {}, - isOpenProcess: false, - isOpenPrecision: false, - treeDataAlias: [] + productionTreeData: [], + repairDepartTreeData: [] } }, computed: { @@ -490,30 +502,37 @@ } }, created() { - this.loadAllProductionTree() - this.loadAppHomeUrlConfigValue() + this.getProductionTreeDataByApi() }, methods: { - loadAllProductionTree() { - //鍔犺浇杞﹂棿閫夋嫨鏍� - getAction(this.url.getProductionTreeList).then(res => { - if (res.success) { - this.treeData = [...res.result] - this.treeDataAlias = this.deepCopyAndModify(res.result) - } else { - this.$message.warning(res.message) - } - }) + // 鑾峰彇浣跨敤閮ㄩ棬鏍� + getProductionTreeDataByApi() { + getAction(this.url.getProductionTreeList) + .then(res => { + if (res.success) { + this.productionTreeData = res.result + } else { + this.$notification.warning({ + message: '娑堟伅', + description: res.message + }) + } + }) }, - /** - * 寮�鍚摥鐗屽脊绐� - * @param recordArray 琛ㄦ牸琛屼俊鎭泦鍚� - */ - handleOpenNameplateModal(recordArray) { - this.printedRows = recordArray - this.$refs.nameplateModalRef.httpUrl = this.appHomeUrl - this.$refs.nameplateModalRef.visible = true + // 鑾峰彇浣跨敤閮ㄩ棬鏍� + getProductionTreeDataByApi() { + getAction(this.url.getProductionTreeList) + .then(res => { + if (res.success) { + this.productionTreeData = res.result + } else { + this.$notification.warning({ + message: '娑堟伅', + description: res.message + }) + } + }) }, /** @@ -528,118 +547,8 @@ this.$nextTick(() => this.$refs.resumeDrawerRef.getEquipmentResumeByApi()) }, - /** - * 鑷畾涔夎澶囧彴璐﹁〃鏍艰 - * @param record 琛ㄦ牸琛屼俊鎭� - * @returns {{style: {cursor: string}, on: {click: *}}} 鏍峰紡瀵硅薄涓庝簨浠舵柟娉� - */ - customTableRow(record) { - return { - style: { - cursor: 'pointer' - }, - on: { - click: () => { - this.onSelectChange([record.id]) - } - } - } - }, - - /** - * 椤电鏀瑰彉鏃惰Е鍙� - * @param activeTabKey 褰撳墠婵�娲荤殑椤电key - */ - handleTabChange(activeTabKey) { - if (this.selectedRowKeys.length !== 1) return - this.$nextTick(() => this.loadTabPaneTableData(this.selectedRowKeys[0])) - }, - - /** - * 鍔犺浇椤电琛ㄦ牸鏁版嵁 - * @param id 璁惧鍙拌处琛岃褰旾d - */ - loadTabPaneTableData(id) { - this.$refs['tabPaneTableListRef' + this.activeTabKey].queryParam.equipmentId = id - this.$refs['tabPaneTableListRef' + this.activeTabKey].loadData(1) - }, - - /** - * 璁惧鍙拌处琛ㄦ牸澶氶�夋鐘舵�佹敼鍙樻椂瑙﹀彂 - * @param selectedRowKeys 宸查�夋嫨鐨剅owKey闆嗗悎 - * @param selectionRows 褰撳墠鍒嗛〉涓嬪凡閫夋嫨鐨勮淇℃伅闆嗗悎 - */ - onSelectChange(selectedRowKeys, selectionRows) { - this.selectedRowKeys = selectedRowKeys - this.selectionRows = selectionRows - this.$refs['tabPaneTableListRef' + this.activeTabKey].queryParam.equipmentId = null - this.$refs['tabPaneTableListRef' + this.activeTabKey].dataSource = [] - this.$refs['tabPaneTableListRef' + this.activeTabKey].onClearSelected() - if (selectedRowKeys.length === 1) { - let row = this.dataSource.find(row => row.id === selectedRowKeys[0]) - if (row) { - this.isOpenProcess = (row.processParametersFlag === '1') - this.isOpenPrecision = (row.precisionParametersFlag === '1') - } else { - this.isOpenProcess = false - this.isOpenPrecision = false - } - this.loadTabPaneTableData(selectedRowKeys[0]) - } else { - this.isOpenProcess = false - this.isOpenPrecision = false - } - //tab鏍囩琚攢姣佷簡锛岃繑鍥炵涓�涓猼ab - if (!this.isOpenProcess && this.activeTabKey === 6) { - this.activeTabKey = 1 - } - if (!this.isOpenPrecision && this.activeTabKey === 7) { - this.activeTabKey = 1 - } - }, - handleTemplateXlsDownload() { templateXlsDownload(this.url.templateXlsDownloadUrl) - }, - - loadAppHomeUrlConfigValue() { - let params = { settingKey: 'app_home_url' } - getSystemConfigValue(params).then(res => { - if (res.success) { - this.appHomeUrl = res.result.settingValue - } - }) - }, - deepCopyAndModify(arr) { - // 濡傛灉褰撳墠鍏冪礌涓嶆槸鏁扮粍鎴栧璞★紝鐩存帴杩斿洖 - if (!Array.isArray(arr) && typeof arr !== 'object' || arr === null || arr.length === 0) { - return arr - } - - // 濡傛灉鏄暟缁勶紝鍒涘缓涓�涓柊鏁扮粍骞堕�掑綊澶勭悊姣忎釜鍏冪礌 - if (Array.isArray(arr)) { - const newArray = [] - for (let i = 0; i < arr.length; i++) { - newArray.push(this.deepCopyAndModify(arr[i])) - } - return newArray - } - - // 濡傛灉鏄璞★紝鍒涘缓涓�涓柊瀵硅薄骞堕�掑綊澶勭悊姣忎釜灞炴�� - const newObj = {} - for (const key in arr) { - if (arr.hasOwnProperty(key)) { - if (key === 'selectable') { - newObj[key] = true - } else if (key === 'children') { - newObj[key] = this.deepCopyAndModify(arr[key]) - } else { - newObj[key] = arr[key] - } - - } - } - return newObj } } } -- Gitblit v1.9.3