From fe470128a5432662cc3f394280c652c5ab023161 Mon Sep 17 00:00:00 2001 From: zhaowei <zhaowei> Date: 星期三, 28 五月 2025 09:22:59 +0800 Subject: [PATCH] 1、设备TEEP/设备开动率/班次利用率页面新增异常反馈功能 2、设备TEEP页面实现滚动加载(每次滚动加载15条) 3、异常反馈页面增加手动新增反馈异常功能 4、利用率分段与走势分析页面解决重置按钮后请求日期与显示日期不相等问题 --- src/views/mdc/base/modules/efficiencyPOReport/EfficiencyPOList.vue | 61 +++++++++++++++++++++--------- 1 files changed, 43 insertions(+), 18 deletions(-) diff --git a/src/views/mdc/base/modules/efficiencyPOReport/EfficiencyPOList.vue b/src/views/mdc/base/modules/efficiencyPOReport/EfficiencyPOList.vue index 6f0de45..a0e5f85 100644 --- a/src/views/mdc/base/modules/efficiencyPOReport/EfficiencyPOList.vue +++ b/src/views/mdc/base/modules/efficiencyPOReport/EfficiencyPOList.vue @@ -92,12 +92,9 @@ <a-col :md="5" :sm="5" :xs="5"> <a-form-item label="閲嶈绋嬪害"> <a-select - :value="queryParams.deviceImportanceLevel" - mode="multiple" + v-model="queryParam.deviceImportanceLevel" placeholder="璇烽�夋嫨璁惧閲嶈绋嬪害" allow-clear - :maxTagCount="1" - @change="selectChange($event,'deviceImportanceLevel')" > <a-select-option v-for="(item,index) in device_importance_level_list" :value="item.value" :key="index"> @@ -116,12 +113,12 @@ <a-button type="primary" @click="searchQuery" icon="search">鏌ヨ</a-button> <a-button type="primary" @click="searchReset" icon="reload">閲嶇疆</a-button> <a-button type="primary" @click="exportExcel" icon="download">瀵煎嚭</a-button> + <a-button type="primary" @click="handleShowFeedbackModal" icon="plus" v-has="'EfficiencyPO:feedback'">寮傚父鍙嶉</a-button> <a-button type="primary" icon="printer" v-print="'#EfficiencyPO'" v-has="'EfficiencyPO:print'">鎵撳嵃 </a-button> </a-space> - <a-checkbox-group :value="checkedList" :default-value="['lyl']" :options="efficiencyOptions" - @change="efficiencyOptionsOnChange"/> + </div> <table cellpadding="5" cellspacing="1" style="border: 1px solid darkgray;"> <tr> @@ -133,6 +130,13 @@ </td> </tr> </table> + </a-col> + </a-row> + + <a-row :gutter="24"> + <a-col> + <a-checkbox-group :value="checkedList" :default-value="['lyl']" :options="efficiencyOptions" + @change="efficiencyOptionsOnChange"/> </a-col> </a-row> </a-form> @@ -156,7 +160,7 @@ </th> <th class="thgu dong6 name" rowspan="2" style="min-width: 100px; max-width: 100px;width: 100px;">璁惧绫诲瀷 </th> - <th class="thgu dong6 name" rowspan="2" style="min-width: 100px; max-width: 100px;width: 100px;">璁惧鍨嬪彿 + <th class="thgu dong7 name" rowspan="2" style="min-width: 120px; max-width: 120px;width: 120px;">璁惧鍨嬪彿 </th> <!--<th rowspan="2">缁勫埆</th>--> <template v-for="(tableHead, index) in tableHeads"> @@ -200,11 +204,11 @@ {{item.equipmentName}} </td> <td class="tdgu5 kaitou">{{item.equipmentType}}</td> - <td class="tdgu5 kaitou">{{item.equipmentModel}}</td> + <td class="tdgu6 kaitou">{{item.equipmentModel}}</td> </template> <template v-else> - <td colspan="6" class="tdgu kaitou">{{item.level1}}</td> + <td colspan="7" class="tdgu kaitou">{{item.level1}}</td> </template> <template v-for="(tableHead, index) in item.dataList"> <td :style="{background:tableHead.color }" v-if="checkedList.indexOf('lyl') > -1"> @@ -233,6 +237,8 @@ </div> </a-spin> </div> + + <mdc-message-approval-modal ref="modalForm" :visible="modalVisible" @closeModal="modalVisible = false"/> </div> </template> @@ -243,10 +249,11 @@ import '@/components/table2excel/table2excel' import { ajaxGetDictItems, getDictItemsFromCache, duplicateCheck } from '@/api/api' import api from '@/api/mdc' + import MdcMessageApprovalModal from '../MdcMessageApproval/MdcMessageApprovalModal' export default { name: 'EfficiencyPOList', - components: {}, + components: { MdcMessageApprovalModal }, data() { return { typeTree: '', @@ -256,14 +263,12 @@ equipmentTypeList: [], driveTypeList: [], device_level_list: [], - device_category_list: [], + device_importance_level_list: [], queryParam: {}, queryParams: { equipmentType: [], driveType: [], deviceLevel: [], - deviceCategory: [], - deviceImportanceLevel: [] }, queryParamEquip: {}, queryParamPeople: {}, @@ -285,7 +290,8 @@ }, tableHeads: [], spinning: false, - toggleSearchStatus: false + toggleSearchStatus: false, + modalVisible: false// 寮傚父鍙嶉寮圭獥鏄惁寮瑰嚭 } }, props: { nodeTree: '', Type: '', nodePeople: '' }, @@ -539,9 +545,11 @@ this.queryParam.equipmentId = '' } Object.keys(this.queryParams).forEach(item => { - this.queryParam[item] = this.queryParams[item].join() - // 姝ゅ涓轰繚璇佹帴鍙e弬鏁颁笉澶氫綑锛屽彲鐪佺暐 - if (this.queryParams[item].length === 0) delete this.queryParam[item] + if (Array.isArray(this.queryParams[item])) { + this.queryParam[item] = this.queryParams[item].join() + // 姝ゅ涓轰繚璇佹帴鍙e弬鏁颁笉澶氫綑锛屽彲鐪佺暐 + if (this.queryParams[item].length === 0) delete this.queryParam[item] + } }) this.loadData() }, @@ -561,7 +569,6 @@ equipmentType: [], driveType: [], deviceLevel: [], - deviceCategory: [] } this.loadData() }, @@ -590,6 +597,13 @@ this.spinning = false }) }, + + // 鎺у埗寮傚父鍙嶉寮圭獥寮瑰嚭 + handleShowFeedbackModal() { + this.$refs.modalForm.formParams = {} + this.modalVisible = true + }, + queryGroup() { getAction(this.url.queryEquipmentType).then(res => { if (res.success) { @@ -690,6 +704,12 @@ z-index: 2; } + .table tbody tr .tdgu6 { + position: sticky; + left: 512px; + z-index: 2; + } + .table2 thead tr .timeth, .table2 thead tr .thgu { position: sticky; @@ -737,6 +757,11 @@ left: 412px; } + .table2 thead .equipname .dong7 { + z-index: 5; + left: 512px; + } + #EfficiencyPO { overflow: hidden; } -- Gitblit v1.9.3