From 51b9e548b0e533e8a415ce141808f2bb747b381e Mon Sep 17 00:00:00 2001 From: zhuzhuanzhuan Date: 星期一, 18 三月 2024 16:08:49 +0800 Subject: [PATCH] 1、mdc菜单下除特殊要求外,页面表格最少条数由10条调整为30条,每页最多条数区间由[10,20,30]调整为[30,50,100] 2、OEE基础管理和数据报表模块增加打印按钮,实现打印表格数据功能 3、设备管理、数据报表模块增加按照设备级别和设备类型查询表格数据 4、设备车间管理页面增加车间编码字段 5、修改组件名称以试图解决刷新后进入请求json页面问题 --- src/views/mdc/base/modules/efficiencyReport/EfficiencyList.vue | 208 ++++++++++++++++++++++++++------------------------- 1 files changed, 107 insertions(+), 101 deletions(-) diff --git a/src/views/mdc/base/modules/efficiencyReport/EfficiencyList.vue b/src/views/mdc/base/modules/efficiencyReport/EfficiencyList.vue index bd07f4b..f7227f6 100644 --- a/src/views/mdc/base/modules/efficiencyReport/EfficiencyList.vue +++ b/src/views/mdc/base/modules/efficiencyReport/EfficiencyList.vue @@ -16,19 +16,53 @@ </a-select> </a-form-item> </a-col> + <a-col :md="4" :sm="4"> + <a-form-item label="椹卞姩绫诲瀷"> + <a-auto-complete + v-model="queryParam.driveType" + :data-source="driveTypeList" + placeholder="璇烽�夋嫨椹卞姩绫诲瀷" + :filter-option="filterOption" + /> + </a-form-item> + </a-col> <a-col :md="6" :sm="6"> <a-form-item label="鏃堕棿"> <a-range-picker @change="dateParamChange" :disabledDate="disabledDate" format="YYYYMMDD" - v-model="dates"/> + v-model="dates" :allowClear="false"/> </a-form-item> </a-col> - <a-col :md="14" :sm="14" style="display: flex;align-items: flex-start;-webkit-align-items: flex-start;justify-content: space-between;"> - <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> - <table cellpadding="5" cellspacing="1" style="border: 1px solid darkgray;margin-left: 24px"> + <a-col :md="4" :sm="4" :xs="4"> + <a-form-item label="璁惧绾у埆"> + <j-dict-select-tag placeholder="璇烽�夋嫨璁惧绾у埆" dictCode="device_level" v-model="queryParam.deviceLevel" + allow-clear/> + </a-form-item> + </a-col> + <a-col :md="4" :sm="4" :xs="4"> + <a-form-item label="璁惧绉嶇被"> + <j-dict-select-tag placeholder="璇烽�夋嫨璁惧绉嶇被" dictCode="device_category" + v-model="queryParam.deviceCategory" + allow-clear/> + </a-form-item> + </a-col> + </a-row> + + <a-row :gutter="24" type="flex" align="middle"> + <a-col :md="24" :sm="24" :xs="24" + style="display: flex;justify-content: space-between;align-items: flex-start"> + <div> + <a-space style="margin-right: 20px"> + <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" icon="printer" v-print="'#Efficiency'" + v-has="'efficiency: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> <td v-for="(item, index) in identifying">{{item.title}}</td> </tr> @@ -36,33 +70,38 @@ <td style="text-align:center;" v-for="(item, index) in identifying"> <div class="identifyingclass" :style="{background: item.color}"></div> </td> - <!--<td style="text-align:center;"><div style="width: 55px;height: 15px;background-color: #e8ff37;display:inline-block"></div></td>--> - <!--<td style="text-align:center;"><div style="width: 55px;height: 15px;background-color: #99ff4e;display:inline-block"></div></td>--> </tr> </table> </a-col> - </a-row> - <a-row :gutter="24"> - <a-col :md="15" :sm="15"> - <a-checkbox-group :value="checkedList" :default-value="['lyl']" :options="efficiencyOptions" - @change="efficiencyOptionsOnChange"/> - </a-col> + <!--<a-col :md="6" :sm="6">--> + <!--<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-button type="primary" icon="printer" v-print="'#Efficiency'" v-has="'efficiency:print'">鎵撳嵃--> + <!--</a-button>--> + <!--</a-space>--> + <!--</a-col>--> + <!--<a-col :md="18" :sm="18">--> + <!--<a-checkbox-group :value="checkedList" :default-value="['lyl']" :options="efficiencyOptions"--> + <!--@change="efficiencyOptionsOnChange"/>--> + <!--</a-col>--> </a-row> </a-form> </div> <!--<div style="width: 530px;position: absolute;top: 0; right: 1.5%;">--> - <!--<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>--> - <!--<!–<td style="text-align:center;"><div style="width: 55px;height: 15px;background-color: #e8ff37;display:inline-block"></div></td>–>--> - <!--<!–<td style="text-align:center;"><div style="width: 55px;height: 15px;background-color: #99ff4e;display:inline-block"></div></td>–>--> - <!--</tr>--> - <!--</table>--> + <!--<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>--> + <!--<!–<td style="text-align:center;"><div style="width: 55px;height: 15px;background-color: #e8ff37;display:inline-block"></div></td>–>--> + <!--<!–<td style="text-align:center;"><div style="width: 55px;height: 15px;background-color: #99ff4e;display:inline-block"></div></td>–>--> + <!--</tr>--> + <!--</table>--> <!--</div>--> </div> @@ -122,7 +161,9 @@ </div> </td> <td class="tdgu3 kaitou">{{item.equipmentId}}</td> - <td class="tdgu4 kaitou" style="min-width: 162px; max-width: 162px;width: 162px;">{{item.equipmentName}}</td> + <td class="tdgu4 kaitou" style="min-width: 162px; max-width: 162px;width: 162px;"> + {{item.equipmentName}} + </td> <td class="tdgu5 kaitou">{{item.equipmentType}}</td> </template> @@ -168,6 +209,7 @@ import $ from 'jquery' import '@/components/table2excel/table2excel' import { ajaxGetDictItems, getDictItemsFromCache, duplicateCheck } from '@/api/api' + import api from '@/api/mdc' export default { name: 'EfficiencyList', @@ -182,6 +224,7 @@ deviceTypeDict: '', dates: [], selectList: [], + driveTypeList:[], identifying: [], queryParam: {}, queryParams: {}, @@ -222,6 +265,7 @@ this.queryParam.typeTree = '1' this.loadData() this.queryGroup() + this.getDriveTypeByApi() }, watch: { Type(valmath) { @@ -479,10 +523,12 @@ this.typeParent = this.queryParam.parentId this.typeEquipment = this.queryParam.equipmentId this.queryParam = {} - this.dates = [] this.queryParam.typeTree = this.typeTree this.queryParam.parentId = this.typeParent this.queryParam.equipmentId = this.typeEquipment + this.dates = [moment().subtract('days', 8), moment().subtract('days', 1)] + this.queryParam.startTime = moment(this.dates[0]).format('YYYYMMDD') + this.queryParam.endTime = moment(this.dates[1]).format('YYYYMMDD') // this.ipagination.current = 1 this.loadData() // this.queryParam = {} @@ -498,6 +544,12 @@ if (res.success) { this.tableHeads = res.result.dates this.dataList = res.result.mdcEfficiencyList + if (res.result.mdcEfficiencyList && !res.result.mdcEfficiencyList.length) { + this.$notification.info({ + message: '娑堟伅', + description: '鏆傛棤璇ヨ澶囩被鍨嬫暟鎹�' + }) + } this.distinguishColorList = res.result.utilizationRateList this.checkSameData(this.dataList) this.checkSameData1(this.dataList) @@ -527,6 +579,27 @@ }).finally(() => { this.loading = false }) + }, + + /** + * 璋冪敤鎺ュ彛鑾峰彇鎺у埗绯荤粺绫诲瀷 + */ + getDriveTypeByApi(){ + api.getDriveTypeApi().then((res)=>{ + this.driveTypeList=res.result.map(item=>item.value) + }) + }, + + /** + * 鑱旀兂杈撳叆妗嗙瓫閫夊姛鑳� + * @param input 杈撳叆鐨勫唴瀹� + * @param option 閰嶇疆 + * @returns {boolean} 鍒ゆ柇鏄惁绛涢�� + */ + filterOption(input, option) { + return ( + option.componentOptions.children[0].text.toUpperCase().indexOf(input.toUpperCase()) >= 0 + ); }, } } @@ -608,7 +681,6 @@ .table2 thead .equipname .dong1 { z-index: 4; left: 0; - /*border: 1px solid #000;*/ } .table2 thead .equipname .dong2 { @@ -636,50 +708,38 @@ left: 412px; } + #Efficiency { + overflow: hidden; + } + @media screen and (min-width: 1920px) { #Efficiency { height: 687px !important; - overflow: scroll; } } @media screen and (min-width: 1680px) and (max-width: 1920px) { #Efficiency { height: 687px !important; - overflow: scroll; } } @media screen and (min-width: 1400px) and (max-width: 1680px) { #Efficiency { height: 540px !important; - overflow: scroll; } } @media screen and (min-width: 1280px) and (max-width: 1400px) { #Efficiency { height: 440px !important; - overflow: scroll; } } @media screen and (max-width: 1280px) { #Efficiency { height: 440px !important; - overflow: scroll; } - } - - #Efficiency .table_guding1 { - position: absolute; - overflow: hidden; - width: 500px; - } - - #Efficiency .table_guding2 { - overflow-x: scroll; - width: 500px; } .identifyingclass { @@ -704,10 +764,6 @@ text-align: center; } - /*.dataContent .fixed th {*/ - /*width: 50px;*/ - /*}*/ - .dataContent .thead th { background-color: #fafafa; text-align: center; @@ -715,61 +771,11 @@ padding: 5px; } - .dataContent .notfixed th { - /*width: auto;*/ - } - - /*.dataContent tr td {*/ - /*height: 35px;*/ - /*}*/ - .dataContent .mathData td { - padding: 10px; - /*display: none;*/ - } - - .dataContent .mathData .td { - /*background-color: #ff9bd2;*/ - display: inline-block; padding: 10px; } td { vertical-align: middle; } - - .pink { - background-color: #ff9bd2; - } - - .yellow { - background-color: #e8ff37; - } - - .green { - background-color: #99ff4e; - } - - .vertical-text { - writing-mode: vertical-rl; - } - - /*/deep/ .ant-table-body .ant-table-row td {*/ - /*padding-top: 10px;*/ - /*padding-bottom: 10px;*/ - /*}*/ - - /deep/ .ant-table-body .ant-table-row td.data { - min-width: 150px; - max-width: 150px; - } - - /deep/ .ant-table-tbody > tr.ant-table-row:hover > td { - background: none !important; - } - - /deep/ .ant-table-thead th { - text-align: center; - } - </style> \ No newline at end of file -- Gitblit v1.9.3