From ec68cffd70d2a2788f7c74af55a11563aaf611d1 Mon Sep 17 00:00:00 2001 From: zhuzhuanzhuan Date: 星期三, 06 十二月 2023 15:47:38 +0800 Subject: [PATCH] 1、登录页面优化首次登录会出现404字样,需要明确用户登录后显示页面是否为首页/消息页或者角色中可设置 2、驱动参数管理页面新增或修改控制系统中英文名称规则限制字符数最少6位调整为2位 3、效率段管理页面效率段颜色可自定义 4、设备利用率、设备开动率、班次利用率页面增加可按照设备类型筛选查询 5、对比分析页面增加通过选择设备来对比 6、设备日利用率和设备日利用率对比页面优化选择树节点后查询区域的设备名称字段不会更新问题 --- src/views/mdc/base/modules/efficiencyShiftReport/EfficiencyShiftList.vue | 415 +++++++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 305 insertions(+), 110 deletions(-) diff --git a/src/views/mdc/base/modules/efficiencyShiftReport/EfficiencyShiftList.vue b/src/views/mdc/base/modules/efficiencyShiftReport/EfficiencyShiftList.vue index 0b92ec8..522f636 100644 --- a/src/views/mdc/base/modules/efficiencyShiftReport/EfficiencyShiftList.vue +++ b/src/views/mdc/base/modules/efficiencyShiftReport/EfficiencyShiftList.vue @@ -1,91 +1,116 @@ <template> <div style="width: 100%;"> - <a-card :bordered="false"> + <div :bordered="false"> <!-- 鏌ヨ鍖哄煙 --> <div class="seach-content"> <div class="table-page-search-wrapper"> <a-form layout="inline" @keyup.enter.native="searchQuery"> <a-row :gutter="24"> - <a-col :md="9" :sm="9" :xs="9"> + <a-col :md="4" :sm="4" > + <a-form-item label="璁惧绫诲瀷"> + <a-select placeholder="璇烽�夋嫨璁惧绫诲瀷" :triggerChange="true" v-model="queryParam.equipmentType" :allowClear="true"> + <a-select-option v-for='item in selectList' :key='item.id' :value='item.equipmentTypeName'> + {{item.equipmentTypeName}} + </a-select-option> + </a-select> + </a-form-item> + </a-col> + <a-col :md="5" :sm="5" :xs="5"> <a-form-item label="鏃堕棿"> <a-range-picker @change="dateParamChange" :disabledDate="disabledDate" format="YYYYMMDD" v-model="dates"/> </a-form-item> </a-col> - <a-col :md="6" :sm="6" :xs="6"> + <a-col :md="4" :sm="4" :xs="4"> <a-form-item label="鐝埗"> <a-select v-model="queryParam.shiftId" placeholder="璇烽�夋嫨鐝埗" @change="initShiftSubList" :allowClear = "allowClear"> - <a-select-option v-for="(em,index) in shiftList" :key="index" :value="em.id"> - {{ em.shiftName }} + <a-select-option v-for="(em,index) in shiftList" :key="index" :value="em.value"> + {{ em.label }} </a-select-option> </a-select> </a-form-item> </a-col> - <a-col :md="6" :sm="6" :xs="6"> + <a-col :md="4" :sm="4" :xs="4"> <a-form-item label="鐝"> <a-select v-model="queryParam.shiftSubId" placeholder="璇烽�夋嫨鐝" @change="initShiftSubListChange" :allowClear = "allowClearSu"> - <a-select-option v-for="(em,index) in shiftSubList" :key="index" :value="em.id"> - {{ em.shiftSubName }} + <a-select-option v-for="(em,index) in shiftSubList" :key="index" :value="em.value"> + {{ em.label }} </a-select-option> </a-select> </a-form-item> </a-col> - </a-row> <a-row :gutter="24"> - <a-col :md="14" :sm="14" :xs="14"> + <a-col :md="9" :sm="9" :xs="9"> <a-checkbox-group :value="checkedList" :default-value="['lyl']" :options="efficiencyOptions" @change="efficiencyOptionsOnChange"/> </a-col> - <a-col :md="3" :sm="3" :xs="3"> - <a-button type="primary" @click="searchQuery" icon="search">鏌ヨ</a-button> + <a-col :md="5" :sm="5"> + <a-space> + <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-space> </a-col> - <a-col :md="3" :sm="3" :xs="3"> - <a-button type="primary" @click="searchReset" icon="reload">閲嶇疆</a-button> - </a-col> - <a-col :md="3" :sm="3" :xs="3"> - <a-button type="primary" @click="exportExcel" icon="download">瀵煎嚭</a-button> + <a-col :md="10" :sm="10"> + <table cellpadding="5" cellspacing="1" style="border: 1px solid darkgray;"> + <tr> + <td v-for="(item, index) in identifying">{{item.title}}</td> + </tr> + <tr> + <td style="text-align:center;" v-for="(item, index) in identifying"> + <div class="identifyingclass" :style="{background: item.color}"></div> + </td> + </tr> + </table> </a-col> </a-row> </a-form> - </div> - <div style="width: 400px;top: 20px; right: 0px;"> - <table cellpadding="5" cellspacing="1" style="border: 1px solid darkgray;"> - <tr> - <td v-for="(item, index) in identifying">{{item.title}}</td> - </tr> - <tr> - <td style="text-align:center;" v-for="(item, index) in identifying"> - <div class="identifyingclass" :style="{background: item.color}"></div> - </td> - </tr> - </table> - </div> + </div> + <!--<div style="width: 530px;position:absolute;top: 10px; right: 0;">--> + <!--<table cellpadding="5" cellspacing="1" style="border: 1px solid darkgray;">--> + <!--<tr>--> + <!--<td v-for="(item, index) in identifying">{{item.title}}</td>--> + <!--</tr>--> + <!--<tr>--> + <!--<td style="text-align:center;" v-for="(item, index) in identifying">--> + <!--<div class="identifyingclass" :style="{background: item.color}"></div>--> + <!--</td>--> + <!--</tr>--> + <!--</table>--> + <!--</div>--> </div> <div class="container" id="EfficiencyShift" style="margin-top: 20px;"> <div class="table2"> <table class="dataContent table" border="1" cellspacing="0" cellpadding="0" style="white-space: nowrap"> <thead> <tr class="thead fixed equipname"> - <th class="thgu dong1 name" rowspan="2" style="min-width: 100px; max-width: 100px;width: 100px;">璁惧缂栧彿</th> - <th class="thgu dong2 name" rowspan="2" style="min-width: 150px; max-width: 150px;width: 150px;">璁惧鍚嶇О</th> - <th class="thgu dong3 name" rowspan="2" style="min-width: 100px; max-width: 100px;width: 100px;">璁惧绫诲瀷</th> - <th class="thgu dong4 name" rowspan="2" style="min-width: 100px; max-width: 100px;width: 100px;">鐝</th> + <th class="thgu dong1 name" rowspan="2" style="min-width: 50px; max-width: 50px;width: 50px;"></th> + <th class="thgu dong2 name" rowspan="2" style="min-width: 50px; max-width: 50px;width: 50px;"></th> + <th class="thgu dong3 name" rowspan="2" style="min-width: 50px; max-width: 50px;width: 50px;"></th> + <th class="thgu dong4 name" rowspan="2" style="min-width: 100px; max-width: 100px;width: 100px;">璁惧缂栧彿</th> + <th class="thgu dong5 name" rowspan="2" style="min-width: 150px; max-width: 150px;width: 150px;">璁惧鍚嶇О</th> + <th class="thgu dong6 name" rowspan="2" style="min-width: 100px; max-width: 100px;width: 100px;">璁惧绫诲瀷</th> + <th class="thgu dong7 name" rowspan="2" style="min-width: 100px; max-width: 100px;width: 100px;">鐝</th> <template v-for="(tableHead, index) in tableHeads"> <th class="timeth" :colspan="checkedList.length">{{tableHead}}</th> </template> <!--average--> - <th class="thgu dong4 name" rowspan="2" style="min-width: 100px; max-width: 150px;width: 150px;">骞冲潎鍊�(鐝鍒╃敤鐜�)</th> + <!--<th class="thgu dong4 name" rowspan="2" style="min-width: 100px; max-width: 150px;width: 150px;">骞冲潎鍊�(鐝鍒╃敤鐜�)</th>--> </tr> <tr class="thead notfixed gudingth"> <template v-for="(tableHead, index) in tableHeads"> <th>鐝鍒╃敤鐜�(%)</th> - <th v-if="checkedList.indexOf('gzl') > -1">鏁呴殰鐜�(%)</th> - <th v-if="checkedList.indexOf('processingLong') > -1">杩愯鏃堕棿(s)</th> - <th v-if="checkedList.indexOf('totalLong') > -1">鏈夋晥鏃堕棿(s)</th> - <th v-if="checkedList.indexOf('faultLong') > -1">鏁呴殰鏃堕棿(s)</th> - <!--<th v-if="checkedList.indexOf('gjsj') > -1">鍏虫満鏃堕棿(s)</th>--> + <!--<th v-if="checkedList.indexOf('gzl') > -1">鏁呴殰鐜�(%)</th>--> + <!--<th v-if="checkedList.indexOf('processingLong') > -1">杩愯鏃堕棿(s)</th>--> + <!--<th v-if="checkedList.indexOf('totalLong') > -1">鏈夋晥鏃堕棿(s)</th>--> + <!--<th v-if="checkedList.indexOf('faultLong') > -1">鏁呴殰鏃堕棿(s)</th>--> + <!--<!–<th v-if="checkedList.indexOf('gjsj') > -1">鍏虫満鏃堕棿(s)</th>–>--> + <th v-if="checkedList.indexOf('kjsj') > -1">寮�鏈烘椂闂�(s)</th> + <th v-if="checkedList.indexOf('jgsj') > -1">鍔犲伐鏃堕棿(s)</th> + <th v-if="checkedList.indexOf('djsj') > -1">寰呮満鏃堕棿(s)</th> + <th v-if="checkedList.indexOf('gjsj') > -1">鍏虫満鏃堕棿(s)</th> </template> </tr> <!-- <tr>--> @@ -94,42 +119,49 @@ </thead> <tbody> <tr class="mathData" v-for="(item, index) in dataList"> - <td class="tdgu kaitou">{{item.equipmentId}}</td> - <td class="tdgu1 kaitou">{{item.equipmentName}}</td> - <td class="tdgu2 kaitou">{{item.equipmentType}}</td> - <td class="tdgu3 kaitou">{{item.shiftSubName}}</td> + <td class="tdgu kaitou wenzi" :rowspan="item.level1span" :class="{hidden: item.level1dis,noExl:item.level1dis}" v-show="!item.level1dis">{{item.level1}}</td> + <td class="tdgu1 kaitou wenzi" :rowspan="item.level2span" :class="{hidden: item.level2dis,noExl:item.level2dis}" v-show="!item.level2dis">{{item.level2}}</td> + <td class="tdgu2 kaitou wenzi" :rowspan="item.level3span" :class="{hidden: item.level3dis,noExl:item.level3dis}" v-show="!item.level3dis">{{item.level3}}</td> + <td class="tdgu3 kaitou">{{item.equipmentId}}</td> + <td class="tdgu4 kaitou">{{item.equipmentName}}</td> + <td class="tdgu5 kaitou">{{item.equipmentType}}</td> + <td class="tdgu6 kaitou">{{item.shiftSubName}}</td> <!--<td>{{item.tierType}}</td>--> - <template v-for="(tableHead, index) in tableHeads"> - <td :style="{background:item[tableHead].color }" v-if='item[tableHead].lyl !== 0'>{{item[tableHead].lyl | numFilter}}</td> - <td :style="{background:item[tableHead].color }" v-if='item[tableHead].lyl == 0 && item[tableHead].status == 1'>缁翠慨</td> - <td :style="{background:item[tableHead].color }" v-if='item[tableHead].lyl == 0 && item[tableHead].status == 2'>浼戠彮</td> - <td :style="{background:item[tableHead].color }" v-if='item[tableHead].lyl == 0 && item[tableHead].status == 10'>{{item[tableHead].lyl | numFilter}}</td> - <td :style="{background:item[tableHead].color }" v-if='item[tableHead].lyl == 0 && item[tableHead].status == 11'>鏈绠�</td> - <td :style="{background:item[tableHead].color }" v-if='item[tableHead].lyl == 0 && item[tableHead].status == 12'>鏃犵彮娆�</td> - <td :style="{background:item[tableHead].color }" v-if="checkedList.indexOf('gzl') > -1"> - {{item[tableHead].gzl | numFilter}} + <template v-for="(tableHead, index) in item.dataList"> + <!--<td :style="{background:tableHead.color }" v-if='tableHead.utilizationRate !== 0'>{{tableHead.utilizationRate | numFilter}}</td>--> + <!--<td :style="{background:tableHead.color }" v-if='tableHead.lyl == 0 && tableHead.status == 1'>缁翠慨</td>--> + <!--<td :style="{background:tableHead.color }" v-if='tableHead.lyl == 0 && tableHead.status == 2'>浼戠彮</td>--> + <!--<td :style="{background:tableHead.color }" v-if='tableHead.lyl == 0 && tableHead.status == 10'>{{tableHead.lyl | numFilter}}</td>--> + <!--<td :style="{background:tableHead.color }" v-if='tableHead.lyl == 0 && tableHead.status == 11'>鏈绠�</td>--> + <!--<td :style="{background:tableHead.color }" v-if='tableHead.lyl == 0 && tableHead.status == 12'>鏃犵彮娆�</td>--> + <td :style="{background:tableHead.color }">{{tableHead.utilizationRate | numFilter}}</td> + <!--<td :style="{background:tableHead.color }" v-if="checkedList.indexOf('gzl') > -1">--> + <!--{{tableHead.gzl | numFilter}}--> + <!--</td>--> + <td :style="{background:tableHead.color }" v-if="checkedList.indexOf('kjsj') > -1"> + {{tableHead.openLong}} </td> - <td :style="{background:item[tableHead].color }" v-if="checkedList.indexOf('processingLong') > -1"> - {{item[tableHead].processingLong}} + <td :style="{background:tableHead.color }" v-if="checkedList.indexOf('jgsj') > -1"> + {{tableHead.processLong}} </td> - <td :style="{background:item[tableHead].color }" v-if="checkedList.indexOf('totalLong') > -1"> - {{item[tableHead].totalLong}} + <td :style="{background:tableHead.color }" v-if="checkedList.indexOf('djsj') > -1"> + {{tableHead.waitLong}} </td> - <td :style="{background:item[tableHead].color }" v-if="checkedList.indexOf('faultLong') > -1"> - {{item[tableHead].faultLong}} + <td :style="{background:tableHead.color }" v-if="checkedList.indexOf('gjsj') > -1"> + {{tableHead.closeLong}} </td> <!--<td :style="{background:item[tableHead].color }" v-if="checkedList.indexOf('gjsj') > -1">--> <!--{{item[tableHead].gjsj}}--> <!--</td>--> </template> - <td :style="{background:item.average.color }" >{{item.average.lyl | numFilter}}</td> + <!--<td :style="{background:item.average.color }" >{{item.average.lyl | numFilter}}</td>--> </tr> </tbody> </table> </div> </div> - </a-card> + </div> </div> </template> @@ -150,25 +182,31 @@ allowClear:true, allowClearSu:true, dates: [], + selectList:[], identifying: [], queryParam: {}, queryParamEquip:{}, queryParamPeople:{}, efficiencyOptions: [ { label: '鐝鍒╃敤鐜�', value: 'lyl' }, - { label: '鏁呴殰鐜�', value: 'gzl' }, - { label: '杩愯鏃堕棿', value: 'processingLong' }, - { label: '鏈夋晥鏃堕棿', value: 'totalLong' }, - { label: '鏁呴殰鏃堕棿', value: 'faultLong' }, + // { label: '鏁呴殰鐜�', value: 'gzl' }, + // { label: '杩愯鏃堕棿', value: 'processingLong' }, + // { label: '鏈夋晥鏃堕棿', value: 'totalLong' }, + // { label: '鏁呴殰鏃堕棿', value: 'faultLong' }, // { label: '鍏虫満鏃堕棿', value: 'gjsj' } + { label: '寮�鏈烘椂闂�', value: 'kjsj' }, + { label: '鍔犲伐鏃堕棿', value: 'jgsj' }, + { label: '寰呮満鏃堕棿', value: 'djsj' }, + { label: '鍏虫満鏃堕棿', value: 'gjsj' } ], checkedList: ['lyl'], dataList: [], url: { list: '/mdc/efficiencyReport/efficiencyShiftList', - listByType: '/mdc/MdcUtilizationRate/listByType', - initShiftList: '/mdc/mdcshift/initShiftList', - initShiftSubList: '/mdc/mdcshiftsub/initShiftSubList' + listByType: '/mdc/MdcUtilizationRate/getByType', + initShiftList: '/mdc/mdcMdcShift/initShiftList', + initShiftSubList: '/mdc/mdcShiftSub/initShiftSubList', + queryEquipmentType: '/mdc/mdcEquipmentType/queryEquipmentType' }, tableHeads: [], shiftList: [], @@ -184,38 +222,34 @@ this.queryParam.endTime = moment(this.dates[1]).format('YYYYMMDD') this.queryParam.typeTree = "1" this.loadData(); + this.queryGroup() }, watch: { Type(valmath){ - // console.log(valmath); - // this.rightcolval = 0 this.dataList = []; - // this.selectedRowKeys1 = [] - // this.selectionRows1 = [] this.queryParam.typeTree = valmath - // this.rightcolval = 0 - }, nodeTree(val) { //鐩戝惉currSelected 鍙樺寲锛屽皢鍙樺寲鍚庣殑鏁板�间紶閫掔粰 getCurrSelected 浜嬩欢 + console.log(val); if (JSON.stringify(val) != '{}') { - if (val.entity.equipmentId) { + if (val.equipmentId != null) { this.queryParamEquip.parentId = '' - this.queryParamEquip.equipmentIds = val.entity.equipmentId + this.queryParamEquip.equipmentId = val.equipmentId } else { - this.queryParamEquip.parentId = val.entity.id - this.queryParamEquip.equipmentIds = '' + this.queryParamEquip.parentId = val.key + this.queryParamEquip.equipmentId = '' } this.searchQuery() } }, nodePeople(val){ if (JSON.stringify(val) != '{}') { - if (val.entity.equipmentId) { - this.queryParamPeople.parentId = '' - this.queryParamPeople.equipmentIds = val.entity.equipmentId + if (val.equipmentId != null) { + this.queryParamPeople.parentId = val.equipmentId + this.queryParamPeople.equipmentId = '' } else { - this.queryParamPeople.parentId = val.entity.id - this.queryParamPeople.equipmentIds = '' + this.queryParamPeople.parentId = val.key + this.queryParamPeople.equipmentId = '' } this.searchQuery() } @@ -231,6 +265,93 @@ } }, methods: { + checkSameData(dataList){ + let cache = {}; //瀛樺偍鐨勬槸閿槸kclx 鐨勫�硷紝鍊兼槸kclx 鍦╥ndeces涓暟缁勭殑涓嬫爣 + let indices = []; //鏁扮粍涓瘡涓�涓�兼槸涓�涓暟缁勶紝鏁扮粍涓殑姣忎竴涓厓绱犳槸鍘熸暟缁勪腑鐩稿悓kclx鐨勪笅鏍� + dataList.map((item,index)=>{ + let level1 = item.level1; + let _index = cache[level1]; + if(_index!==undefined){ + indices[_index].push(index) + }else{ + cache[level1] = indices.length + indices.push([index]) + } + }) + let result = []; + indices.map((item)=>{ + item.map((index)=>{ + result.push(dataList[index]) + }) + }) + this.dataList = result + }, + checkSameData1(dataList){ + let cache = {}; //瀛樺偍鐨勬槸閿槸kclx 鐨勫�硷紝鍊兼槸kclx 鍦╥ndeces涓暟缁勭殑涓嬫爣 + let indices = []; //鏁扮粍涓瘡涓�涓�兼槸涓�涓暟缁勶紝鏁扮粍涓殑姣忎竴涓厓绱犳槸鍘熸暟缁勪腑鐩稿悓kclx鐨勪笅鏍� + dataList.map((item,index)=>{ + let level2 = item.level2; + let _index = cache[level2]; + if(_index!==undefined){ + indices[_index].push(index) + }else{ + cache[level2] = indices.length + indices.push([index]) + } + }) + let result = []; + indices.map((item)=>{ + item.map((index)=>{ + result.push(dataList[index]) + }) + }) + this.dataList = result + }, + checkSameData2(dataList){ + let cache = {}; //瀛樺偍鐨勬槸閿槸kclx 鐨勫�硷紝鍊兼槸kclx 鍦╥ndeces涓暟缁勭殑涓嬫爣 + let indices = []; //鏁扮粍涓瘡涓�涓�兼槸涓�涓暟缁勶紝鏁扮粍涓殑姣忎竴涓厓绱犳槸鍘熸暟缁勪腑鐩稿悓kclx鐨勪笅鏍� + dataList.map((item,index)=>{ + let level3 = item.level3; + let _index = cache[level3]; + if(_index!==undefined){ + indices[_index].push(index) + }else{ + cache[level3] = indices.length + indices.push([index]) + } + }) + let result = []; + indices.map((item)=>{ + item.map((index)=>{ + result.push(dataList[index]) + }) + }) + this.dataList = result + }, + // 鍚堝苟 + combineCell() { + console.log(this.dataList) + let list =this.dataList; + for (let field in list[0]) { + var k = 0; + while (k < list.length) { + list[k][field + 'span'] = 1; + list[k][field + 'dis'] = false; + for (var i = k + 1; i <= list.length - 1; i++) { + if (list[k][field] == list[i][field] && list[k][field] != '') { + list[k][field + 'span']++; + list[k][field + 'dis'] = false; + list[i][field + 'span'] = 1; + list[i][field + 'dis'] = true; + } else { + break; + } + } + k = i; + } + } + return list; + }, disabledDate(current){ //Can not slect days before today and today return current && current > moment().subtract('days', 1); @@ -270,11 +391,11 @@ }) }, initShiftSubList(val) { - this.queryParam.shiftSubId = null; + //姣忔閲嶆柊閫夋嫨鐝埗鏃剁彮娆℃竻绌轰笖鏄剧ずplaceholder鍐呭 + this.queryParam.shiftSubId = undefined; getAction(this.url.initShiftSubList, { shiftId: val }).then((res) => { if (res.success) { this.shiftSubList = res.result; - } }) }, @@ -306,45 +427,83 @@ dateParamChange(v1, v2) { this.queryParam.startTime = v2[0] this.queryParam.endTime = v2[1] + // 鐐瑰嚮鏃堕棿閫夋嫨鍣ㄧ殑娓呯┖鎸夐挳鏃朵細瑙﹀彂姝ゅ垽鏂�(鐐瑰嚮閲嶇疆鎸夐挳涓嶄細瑙﹀彂)锛屽疄鐜伴噸缃垪琛ㄥ姛鑳斤紝鍒囧疄鏀瑰彉鍒楄〃鏄剧ず鏁堟灉 + if(!this.queryParam.startTime&&!this.queryParam.endTime)this.searchReset() }, efficiencyOptionsOnChange(checkedList) { let index = checkedList.indexOf('lyl') if (index < 0) { - this.$message.warn('涓嶈兘鍙栨秷鏌ヨ鍒╃敤鐜�') + // this.$message.warn('涓嶈兘鍙栨秷鏌ヨ鍒╃敤鐜�') + this.$notification.warning({ + message:'娑堟伅', + description:"涓嶈兘鍙栨秷鏌ヨ鐝鍒╃敤鐜�" + }) return false } this.checkedList = checkedList }, searchQuery() { - if(this.queryParam.typeTree == "1"){ - this.queryParam.parentId = this.queryParamEquip.parentId - this.queryParam.equipmentIds = this.queryParamEquip.equipmentIds + if(this.dates != ''){ + if(this.queryParam.typeTree == "1"){ + this.queryParam.parentId = this.queryParamEquip.parentId + this.queryParam.equipmentId = this.queryParamEquip.equipmentId + }else{ + this.queryParam.parentId = this.queryParamPeople.parentId + this.queryParam.equipmentId = "" + } + this.loadData() }else{ - this.queryParam.parentId = this.queryParamPeople.parentId - this.queryParam.equipmentIds = "" + // this.$message.warning("璇烽�夋嫨鏃堕棿") + this.$notification.warning({ + message:'娑堟伅', + description:"璇烽�夋嫨鏃堕棿" + }); } - this.loadData() // this.onClearSelected() }, searchReset() { this.typeTree = this.queryParam.typeTree this.typeParent = this.queryParam.parentId - this.typeEquipment = this.queryParam.equipmentIds + this.typeEquipment = this.queryParam.equipmentId this.queryParam = {} this.dates = [] this.queryParam.typeTree = this.typeTree this.queryParam.parentId = this.typeParent - this.queryParam.equipmentIds = this.typeEquipment + this.queryParam.equipmentId = this.typeEquipment this.loadData() // this.onClearSelected() }, loadData() { + this.tableHeads = [] + this.dataList = [] getAction(this.url.list, this.queryParam).then(res => { if (res.success) { this.tableHeads = res.result.dates - this.dataList = res.result.list - this.initDeviceType(this.dataList) + this.dataList = res.result.mdcEfficiencyList + this.checkSameData(this.dataList) + this.checkSameData1(this.dataList) + this.checkSameData2(this.dataList) + this.combineCell(); + // this.initDeviceType(this.dataList) } + }) + }, + queryGroup() { + getAction(this.url.queryEquipmentType).then(res => { + if (res.success) { + this.selectList = res.result + // this.selectList = res.result.map((item, index, arr) => { + // return { label: item.id, value: item.equipmentTypeName + '' } + // }) + } else { + // this.$message.warning(res.message) + this.$notification.warning({ + message: '娑堟伅', + description: res.message + }) + } + }).finally(() => { + this.loading = false }) } } @@ -362,25 +521,48 @@ left: 0; z-index: 1; } + .table tbody tr .wenzi{ + /*writing-mode: vertical-lr;*/ + /*text-orientation: upright;*/ + transform: rotate(360deg); + writing-mode: vertical-lr; + letter-spacing: 2px; + } .table tbody tr .kaitou{ z-index: 1; background-color: white; } .table tbody tr .tdgu1{ position: sticky; - left: 100px; + left: 50px; z-index: 2; } .table tbody tr .tdgu2{ position: sticky; - left: 250px; + left: 100px; z-index: 2; } .table tbody tr .tdgu3{ position: sticky; - left: 350px; + left: 150px; z-index: 2; } + .table tbody tr .tdgu4{ + position: sticky; + left: 250px; + z-index: 2; + } + .table tbody tr .tdgu5{ + position: sticky; + left: 400px; + z-index: 2; + } + .table tbody tr .tdgu6{ + position: sticky; + left: 500px; + z-index: 2; + } + .table2 thead tr .timeth, .table2 thead tr .thgu { position: sticky; @@ -402,16 +584,29 @@ } .table2 thead .equipname .dong2{ z-index: 5; - left: 100px; + left: 50px; } .table2 thead .equipname .dong3{ z-index: 5; - left: 250px; + left: 100px; } .table2 thead .equipname .dong4{ z-index: 5; - left: 350px; + left: 150px; } + .table2 thead .equipname .dong5{ + z-index: 5; + left: 250px; + } + .table2 thead .equipname .dong6{ + z-index: 5; + left: 400px; + } + .table2 thead .equipname .dong7{ + z-index: 6; + left: 500px; + } + @media screen and (min-width: 1920px){ #EfficiencyShift{ height: 670px!important; @@ -452,7 +647,7 @@ .dataContent { white-space: nowrap; /*margin: 0;*/ - border: none; + /*border: none;*/ border-collapse: separate; border-spacing: 0; /*table-layout: fixed;*/ @@ -480,9 +675,9 @@ width: auto; } - .dataContent tr td { - height: 35px - } + /*.dataContent tr td {*/ + /*height: 35px*/ + /*}*/ .dataContent .mathData td { padding: 10px; @@ -498,9 +693,9 @@ .dataContent .mathData .tdd { /*display: none;*/ } - .seach-content{ - display: flex; - justify-content: space-between; - } + /*.seach-content{*/ + /*display: flex;*/ + /*justify-content: space-between;*/ + /*}*/ </style> \ No newline at end of file -- Gitblit v1.9.3