src/mixins/JeecgListMixin.js
@@ -352,9 +352,9 @@ this.$warning({ title: message, content: (<div> <span>{msg}</span><br/> <span>具体详情请 <a href={href} target="_blank" download={fileName}>点击下载</a> </span> </div> <span>{msg}</span><br/> <span>具体详情请 <a href={href} target="_blank" download={fileName}>点击下载</a> </span> </div> ) }) } else { src/views/jeecg/modules/JeecgDemoModal.vue
@@ -40,7 +40,6 @@ <a-form-model-item label="个人简介" prop="content" hasFeedback> <a-input type="textarea" placeholder="请输入个人简介" v-model="model.content"/> </a-form-model-item> </a-form-model> </a-spin> </a-modal> src/views/mdc/base/modules/StatisticalAnalysis/StatisticalAnalysisMain.vue
@@ -14,7 +14,7 @@ <a-date-picker v-model="queryParams.collectTime" :disabledDate="disabledDate" format='YYYY-MM-DD' @change="dataChange"/> </a-form-item> </a-col> <a-col :md="3" :sm="3" :xs="3"> <a-col :md="2" :sm="2" :xs="2"> <a-button type="primary" @click="searchQuery" icon="search">查询</a-button> </a-col> <a-col :md="2" :sm="2" :xs="2"> @@ -409,32 +409,38 @@ StartupLine.setOption(statChartPieOption2); }, queryStatistical(){ getAction(this.url.dayStatisticalRate,this.queryParams).then(res =>{ if(res.success) { // console.log(res); this.StatCharOpeningRate = res.result.openRate; //利用率 this.StatCharUsedRate = res.result.utilizationRate; //开机率 this.UtilizationHeight = res.result.openRate; this.StatCharUsedopeningRate = res.result.StartupHeight; this.StartupHeight = res.result.StartupHeight; this.openingLong = this.getTime(res.result.openLong) this.waitingLong = this.getTime(res.result.waitLong); this.processLong = this.getTime(res.result.processLong); this.closedLong = this.getTime(res.result.closeLong); this.totalLong = parseInt(this.openingLong) + parseInt(this.closedLong); this.draw(); }else{ this.draw() } }) if(this.queryParams.collectTime){ getAction(this.url.dayStatisticalRate,this.queryParams).then(res =>{ if(res.success) { // console.log(res); this.StatCharOpeningRate = res.result.openRate; //利用率 this.StatCharUsedRate = res.result.utilizationRate; //开机率 this.UtilizationHeight = res.result.openRate; this.StatCharUsedopeningRate = res.result.StartupHeight; this.StartupHeight = res.result.StartupHeight; this.openingLong = this.getTime(res.result.openLong) this.waitingLong = this.getTime(res.result.waitLong); this.processLong = this.getTime(res.result.processLong); this.closedLong = this.getTime(res.result.closeLong); this.totalLong = parseInt(this.openingLong) + parseInt(this.closedLong); this.draw(); } }) }else{ this.$notification.warning({ message:'消息', description:'请选择时间' }) } }, dataChange(val) { this.queryParam.collectTime1 = ""; this.queryParams.dateTime = val.format('YYYYMMDD') this.queryParams.collectTime = val.format('YYYY-MM-DD'); if(val){ this.queryParams.dateTime = val.format('YYYYMMDD') this.queryParams.collectTime = val.format('YYYY-MM-DD'); } }, initEquipmentNode() { let _this = this @@ -474,7 +480,7 @@ this.queryParam = {} this.queryParams = {} // this.dates = [] this.queryStatistical() // this.queryStatistical() // this.onClearSelected() }, searchQuery(){ @@ -483,26 +489,19 @@ }, watch: { equip(val) { // console.log(val); if (val && val.equipmentId) { this.$set(this.queryParam, 'tierName', val.title) this.$set(this.queryParam, 'equipmentId', val.equipmentId) this.queryParams.parentId = '' this.queryParams.equipmentId = val.equipmentId this.searchQuery() }else{ this.queryParams.parentId = val.key this.queryParams.equipmentId = '' this.$set(this.queryParam, 'tierName', val.title) this.searchQuery() } this.searchQuery() } // this.searchQuery(); } } </script> src/views/mdc/base/modules/StatisticsChart/StatisticsLegend.vue
@@ -14,7 +14,7 @@ <a-date-picker v-model="queryParams.collectTime" :disabledDate="disabledDate" format='YYYY-MM-DD' @change="dataChange"/> </a-form-item> </a-col> <a-col :md="3" :sm="3" :xs="3"> <a-col :md="2" :sm="2" :xs="2"> <a-button type="primary" @click="searchQuery" icon="search">查询</a-button> </a-col> <a-col :md="2" :sm="2" :xs="2"> @@ -589,9 +589,9 @@ StartupLine.setOption(StartupLine_option); }, queryStatistical(){ if(this.queryParams.collectTime){ getAction(this.url.dayStatisticalRate,this.queryParams).then(res =>{ if(res.success){ // console.log(res); this.StatCharOpeningRate = res.result.openRate; this.StatCharUsedRate = res.result.utilizationRate; this.UtilizationHeight = res.result.openRate; @@ -604,16 +604,20 @@ this.totalLong = parseInt(this.openingLong) + parseInt(this.closedLong); this.draw(); } else{ this.draw(); } }) }else{ this.$notification.warning({ message:'消息', description:'请选择时间' }) } }, dataChange(val) { this.queryParam.collectTime1 = ""; this.queryParams.dateTime = val.format('YYYYMMDD') this.queryParams.collectTime = val.format('YYYY-MM-DD'); if(val){ this.queryParams.dateTime = val.format('YYYYMMDD') this.queryParams.collectTime = val.format('YYYY-MM-DD'); } }, initEquipmentNode(id) { let _this = this @@ -652,7 +656,7 @@ this.queryParam = {} this.queryParams = {} // this.dates = [] this.queryStatistical() // this.queryStatistical() // this.onClearSelected() }, searchQuery(){ @@ -667,18 +671,14 @@ this.$set(this.queryParam, 'equipmentId', val.equipmentId) this.queryParams.parentId = '' this.queryParams.equipmentId = val.equipmentId this.searchQuery() }else{ this.queryParams.parentId = val.key this.queryParams.equipmentId = '' this.$set(this.queryParam, 'tierName', val.title) this.searchQuery() } this.searchQuery() } // this.searchQuery(); } } src/views/mdc/base/modules/alarmAnalysis/alarmAnalysisMain.vue
@@ -236,14 +236,22 @@ this.queryParam.endDate = v2[1] }, searchQuery() { 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 = "" if (this.dates&&this.dates.length>0){ 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.loadData1() } else{ this.$notification.warning({ message:'提示', description:'请选择时间' }) } this.loadData1() // this.onClearSelected() }, // searchReset() { src/views/mdc/base/modules/comparativeAnalysis/comparativeAnalysismain.vue
@@ -136,7 +136,6 @@ } }, nodePeople(val){ if (JSON.stringify(val) != '{}') { if (val.equipmentId) { // this.$set(this.queryParam, 'tierName', val.title) @@ -177,40 +176,46 @@ }) }, searchQuery(){ this.AnalysisList = [] this.AnalysisBarList = [] this.AnalysisGauge = [] this.AnalysisPie = [] if(this.queryParams.typeTree == "1"){ this.queryParams.parentId = this.queryParamEquip.parentId // this.queryParams.equipmentId = this.queryParamEquip.equipmentId }else{ this.queryParams.parentId = this.queryParamEquip.parentId // this.queryParams.equipmentId = "" } this.AnalysisList = []; //获取查询条件 this.queryParam.parentId = this.queryParams.parentId; this.queryParam.equipmentId = this.queryParams.equipmentId; this.queryParam.typeTree = this.queryParams.typeTree getAction(this.url.comparativeAnalysis,this.queryParam).then((res) => { if(res.success){ this.AnalysisList = res.result this.AnalysisBarList = res.result.graphics this.AnalysisGauge = res.result.meters this.AnalysisPie.push(res.result.pieCharts) if(this.dates&&this.dates.length>0){ this.AnalysisList = [] this.AnalysisBarList = [] this.AnalysisGauge = [] this.AnalysisPie = [] if(this.queryParams.typeTree == "1"){ this.queryParams.parentId = this.queryParamEquip.parentId // this.queryParams.equipmentId = this.queryParamEquip.equipmentId }else{ // this.$message.warning(res.message) this.$notification.warning({ message:'消息', description:res.message }); this.queryParams.parentId = this.queryParamEquip.parentId // this.queryParams.equipmentId = "" } }).finally(() => { this.loading = false }) this.AnalysisList = [] //获取查询条件 this.queryParam.parentId = this.queryParams.parentId; this.queryParam.equipmentId = this.queryParams.equipmentId; this.queryParam.typeTree = this.queryParams.typeTree getAction(this.url.comparativeAnalysis,this.queryParam).then((res) => { if(res.success){ this.AnalysisList = res.result this.AnalysisBarList = res.result.graphics this.AnalysisGauge = res.result.meters this.AnalysisPie.push(res.result.pieCharts) }else{ // this.$message.warning(res.message) this.$notification.warning({ message:'消息', description:res.message }); } }).finally(() => { this.loading = false }) }else{ this.$notification.warning({ message:'提示' , description:'请选择时间' }) } }, searchReset() { this.AnalysisList = [] src/views/mdc/base/modules/efficiencyPOReport/EfficiencyPOList.vue
@@ -329,6 +329,8 @@ 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') @@ -343,14 +345,21 @@ this.checkedList = checkedList }, searchQuery() { if(this.queryParam.typeTree == "1"){ this.queryParam.parentId = this.queryParamEquip.parentId this.queryParam.equipmentId = this.queryParamEquip.equipmentId 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.equipmentId = "" this.$notification.warning({ message:'消息', description:"请选择时间" }); } this.loadData() // this.onClearSelected() }, searchReset() { src/views/mdc/base/modules/efficiencyReport/EfficiencyList.vue
@@ -336,6 +336,8 @@ 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') @@ -374,14 +376,21 @@ // // this.onClearSelected() // }, searchQuery() { if(this.queryParam.typeTree == "1"){ this.queryParam.parentId = this.queryParamEquip.parentId this.queryParam.equipmentId = this.queryParamEquip.equipmentId 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.equipmentId = "" this.$notification.warning({ message:'消息', description:"请选择时间" }); } this.loadData() // this.onClearSelected() }, searchReset() { src/views/mdc/base/modules/efficiencyShiftReport/EfficiencyShiftList.vue
@@ -406,6 +406,8 @@ 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') @@ -431,13 +433,11 @@ this.loadData() }else{ // this.$message.warning("请选择时间") console.log('触发提示') this.$notification.warning({ message:'消息', description:"请选择时间" }); } // this.onClearSelected() }, searchReset() { src/views/mdc/base/modules/equipmentAvailCompare/equipmentAvailCompareMain.vue
@@ -1,52 +1,53 @@ <template> <a-card :bordered="false" class="device_list"> <div class="com_box"> <!-- 查询区域 --> <div style="width: 100%; background-color: #fff" class="table-page-search-wrapper"> <a-form layout="inline" @keyup.enter.native="searchQuery"> <a-row :gutter="24"> <a-col :md="4" :sm="4"> <a-form-item label="设备编号"> <a-input placeholder="输入设备编号查询" :readOnly="readOnly" v-model="queryParams.equipmentId"></a-input> </a-form-item> </a-col> <a-col :md="4" :sm="4"> <a-form-item label="设备名称"> <a-input placeholder="输入设备名称查询" :readOnly="readOnly" v-model="queryParams.equipmentName"></a-input> </a-form-item> </a-col> <a-col :md="5" :sm="5" :xs="5"> <a-form-item label="时间"> <a-range-picker @change="dateParamChange" v-model="dates" format="YYYYMMDD"/> </a-form-item> </a-col> <a-col :md="7" :sm="7" :xs="7"> <a-form-item label="时间段"> <a-time-picker :default-value="moment('00:00', 'HH:mm')" format="HH:mm" @change="onChangeStart" /> 至 <a-time-picker :default-value="moment('08:00', 'HH:mm')" format="HH:mm" @change="onChangeEnd" /> </a-form-item> </a-col> <a-col :md="2" :sm="3" :xs="3"> <a-button type="primary" @click="searchQuery" icon="search">查询</a-button> </a-col> <!--<a-col :md="2" :sm="2" :xs="2">--> <!--<a-button type="primary" @click="searchReset" icon="reload">重置</a-button>--> <!--</a-col>--> </a-row> </a-form> </div> <!-- table区域-begin --> <div id="DeviceList"> <div style="padding: 5px;width: 100%;height: 100%"> <div style="width: 100%;height: 100%" id="dayAvailBar"></div> <!--<div id="dayAvailLine"></div>--> <a-spin :spinning="loading"> <a-card :bordered="false" class="device_list"> <div class="com_box"> <!-- 查询区域 --> <div style="width: 100%; background-color: #fff" class="table-page-search-wrapper"> <a-form layout="inline" @keyup.enter.native="searchQuery"> <a-row :gutter="24"> <a-col :md="4" :sm="4"> <a-form-item label="设备编号"> <a-input placeholder="输入设备编号查询" :readOnly="readOnly" v-model="queryParams.equipmentId"></a-input> </a-form-item> </a-col> <a-col :md="4" :sm="4"> <a-form-item label="设备名称"> <a-input placeholder="输入设备名称查询" :readOnly="readOnly" v-model="queryParams.equipmentName"></a-input> </a-form-item> </a-col> <a-col :md="5" :sm="5" :xs="5"> <a-form-item label="时间"> <a-range-picker @change="dateParamChange" v-model="dates" format="YYYYMMDD"/> </a-form-item> </a-col> <a-col :md="7" :sm="7" :xs="7"> <a-form-item label="时间段"> <a-time-picker :default-value="moment('00:00', 'HH:mm')" format="HH:mm" @change="onChangeStart"/> 至 <a-time-picker :default-value="moment('08:00', 'HH:mm')" format="HH:mm" @change="onChangeEnd"/> </a-form-item> </a-col> <a-col :md="2" :sm="3" :xs="3"> <a-button type="primary" @click="searchQuery" icon="search">查询</a-button> </a-col> <!--<a-col :md="2" :sm="2" :xs="2">--> <!--<a-button type="primary" @click="searchReset" icon="reload">重置</a-button>--> <!--</a-col>--> </a-row> </a-form> </div> <!-- table区域-begin --> <div id="DeviceList"> <div style="padding: 5px;width: 100%;height: 100%"> <div style="width: 100%;height: 100%" id="dayAvailBar"></div> <!--<div id="dayAvailLine"></div>--> </div> </div> <!-- table区域-end --> </div> <!-- table区域-end --> </div> </a-card> </a-card> </a-spin> </template> <script> @@ -68,6 +69,7 @@ import Tooltip from 'ant-design-vue/es/tooltip' import { ajaxGetDictItems, getDictItemsFromCache, duplicateCheck } from '@/api/api' import AFormItem from 'ant-design-vue/es/form/FormItem' export default { name: 'equipmentAvailCompareMain', // mixins: [JeecgListMixin], @@ -82,37 +84,38 @@ JDate, JEllipsis }, props: { nodeTree: '', Type:'',nodePeople: '' }, props: { nodeTree: '', Type: '', nodePeople: '' }, data() { return { activeKey: '1', typeTree:"", typeParent:1, typeEquipment:1, spaceTime:[], useingRates:[], typeTree: '', typeParent: 1, typeEquipment: 1, spaceTime: [], useingRates: [], dates: [], xianshi:"", readOnly:true, xianshi: '', readOnly: true, queryParam: { // dateTime:undefined, // timeType:'2' }, queryParams:{}, queryParamEquip:{}, queryParamPeople:{}, dataStartsoucre:[], queryParams: {}, queryParamEquip: {}, queryParamPeople: {}, dataStartsoucre: [], url: { dayUtilizationRateContrast:'/mdc/efficiencyReport/dayUtilizationRateContrast', dayUtilizationRateContrast: '/mdc/efficiencyReport/dayUtilizationRateContrast', getEquipmentByPid: '/mdc/mdcEquipment/getEquipmentByPid', getEquipmentByDepPid:'/mdc/mdcEquipment/getEquipmentByDepPid' getEquipmentByDepPid: '/mdc/mdcEquipment/getEquipmentByDepPid' }, AnalysisList:{} AnalysisList: {}, loading: false } }, watch:{ Type(valmath){ this.dataList = []; watch: { Type(valmath) { this.dataList = [] this.queryParams.typeTree = valmath // console.log(this.queryParams.typeTree) }, @@ -120,7 +123,7 @@ if (JSON.stringify(val) != '{}') { if (val.equipmentId) { // this.$set(this.queryParam, 'tierName', val.title) this.queryParamEquip.parentId = "" this.queryParamEquip.parentId = '' this.queryParams.equipmentId = val.equipmentId this.queryParamEquip.equipmentId = val.equipmentId this.searchQuery() @@ -131,14 +134,13 @@ this.initEquipment(val.key) } } }, nodePeople(val){ nodePeople(val) { if (JSON.stringify(val) != '{}') { if (val.equipmentId) { // this.$set(this.queryParam, 'tierName', val.title) this.queryParamEquip.parentId = "" this.queryParamEquip.parentId = '' this.queryParams.equipmentId = val.equipmentId this.queryParamEquip.equipmentId = val.equipmentId this.searchQuery() @@ -153,8 +155,8 @@ } }, methods: { drawTu(){ let dayAvailBar = this.$echarts.init(document.getElementById('dayAvailBar'), 'macarons'); drawTu() { let dayAvailBar = this.$echarts.init(document.getElementById('dayAvailBar'), 'macarons') //dayAvailLine = echarts.init(document.getElementById('dayAvailLine')); let dayAvailBarOption = { title: { @@ -163,21 +165,21 @@ textStyle: { fontSize: 18, fontWeight: 'bolder', color: "#151414" color: '#151414' } }, tooltip: { trigger: 'axis', formatter: "{a} <br/>{b} :({c}%)" formatter: '{a} <br/>{b} :({c}%)' }, toolbox: { show: true, feature: { mark: {show: true}, dataView: {show: true, readOnly: false}, magicType: {show: true, type: ['line', 'bar']}, restore: {show: true}, saveAsImage: {show: true} mark: { show: true }, dataView: { show: true, readOnly: false }, magicType: { show: true, type: ['line', 'bar'] }, restore: { show: true }, saveAsImage: { show: true } } }, calculable: true, //是否启用拖拽重计算特性 @@ -208,14 +210,14 @@ data: this.useingRates, markPoint: { data: [ {type: 'max', name: '最大值', symbolSize: 70}, {type: 'min', name: '最小值', symbolSize: 70} { type: 'max', name: '最大值', symbolSize: 70 }, { type: 'min', name: '最小值', symbolSize: 70 } ] } } ] }; dayAvailBar.setOption(dayAvailBarOption); } dayAvailBar.setOption(dayAvailBarOption) }, moment, onChangeStart(time, timeString) { @@ -226,12 +228,12 @@ this.queryParam.endTime = timeString // console.log(time, timeString); }, disabledDate(current){ disabledDate(current) { //Can not slect days before today and today return current && current > moment().subtract('days', 1); return current && current > moment().subtract('days', 1) }, dataChange(val) { this.queryParam.dateTime = val.format('YYYYMMDD') if (val) this.queryParam.dateTime = val.format('YYYYMMDD') }, handleChange(value) { this.queryParam.timeType = value @@ -246,11 +248,12 @@ this.queryParam.endDate = v2[1] // console.log(v2[0],v2[1]) }, loadAnalysis(){ getAction(this.url.dayUtilizationRateContrast,this.queryParam).then(res => { loadAnalysis() { this.loading = true getAction(this.url.dayUtilizationRateContrast, this.queryParam).then(res => { if (res.success) { this.spaceTime.push(res.result.dataList) for(let i = 0;i<res.result.dayRateDto.length;i++){ for (let i = 0; i < res.result.dayRateDto.length; i++) { this.useingRates.push(res.result.dayRateDto[i].utilizationRate) } this.drawTu() @@ -268,112 +271,120 @@ return '0' } }, searchQuery(){ this.spaceTime = [] this.useingRates = [] if(this.queryParams.typeTree == "1"){ this.queryParams.parentId = this.queryParamEquip.parentId // this.queryParams.equipmentId = this.queryParamEquip.equipmentId searchQuery() { if (this.queryParam.startTime && this.queryParam.endTime && this.dates && this.dates.length > 0) { this.loading = true this.spaceTime = [] this.useingRates = [] if (this.queryParams.typeTree == '1') { this.queryParams.parentId = this.queryParamEquip.parentId // this.queryParams.equipmentId = this.queryParamEquip.equipmentId }else{ this.queryParams.parentId = this.queryParamEquip.parentId // this.queryParams.equipmentId = "" } this.AnalysisList = []; //获取查询条件 this.queryParam.parentId = this.queryParams.parentId; this.queryParam.equipmentId = this.queryParams.equipmentId; this.queryParam.typeTree = this.queryParams.typeTree getAction(this.url.dayUtilizationRateContrast,this.queryParam).then((res) => { if(res.success){ this.spaceTime=res.result.dateList for(let i = 0;i<res.result.dayRateDto.length;i++){ // res.result[i].useRateDayShift = this.numFilter(res.result[i].useRateDayShift) this.useingRates.push(this.numFilter(res.result.dayRateDto[i].utilizationRate)) } this.drawTu() }else{ // this.$message.warning(res.message) this.$notification.warning({ message:'消息', description:res.message }); } else { this.queryParams.parentId = this.queryParamEquip.parentId // this.queryParams.equipmentId = "" } }).finally(() => { this.loading = false }) this.AnalysisList = [] //获取查询条件 this.queryParam.parentId = this.queryParams.parentId this.queryParam.equipmentId = this.queryParams.equipmentId this.queryParam.typeTree = this.queryParams.typeTree getAction(this.url.dayUtilizationRateContrast, this.queryParam).then((res) => { if (res.success) { this.spaceTime = res.result.dateList for (let i = 0; i < res.result.dayRateDto.length; i++) { // res.result[i].useRateDayShift = this.numFilter(res.result[i].useRateDayShift) this.useingRates.push(this.numFilter(res.result.dayRateDto[i].utilizationRate)) } this.drawTu() } else { // this.$message.warning(res.message) this.$notification.warning({ message: '消息', description: res.message }) } }).finally(() => { this.loading = false }) } else { this.$notification.warning({ message: '消息', description: '请选择时间或时间段' }) } }, searchReset() { this.loading = true this.spaceTime = [] this.useingRates = [] if(this.queryParams.typeTree == "1"){ if (this.queryParams.typeTree == '1') { this.typeTree = this.queryParams.typeTree this.typeParent = this.queryParams.parentId this.typeParent = this.queryParams.parentId this.typeEquipment = this.queryParams.equipmentId this.queryParams = {} this.queryParam = {} this.queryParams.typeTree = this.typeTree this.queryParams.parentId = this.typeParent if(this.queryParams.parentId != ""){ this.queryParams.equipmentId = "" if (this.queryParams.parentId != '') { this.queryParams.equipmentId = '' this.initEquipment() }else{ if(this.queryParams.equipmentId == this.queryParamEquip.equipmentId){ this.queryParams.equipmentId = this.typeEquipment }else{ } else { if (this.queryParams.equipmentId == this.queryParamEquip.equipmentId) { this.queryParams.equipmentId = this.typeEquipment } else { this.queryParams.equipmentId = this.queryParamEquip.equipmentId } } getAction(this.url.dayUtilizationRateContrast,this.queryParams).then((res) => { if(res.success){ this.spaceTime=res.result.dateList for(let i = 0;i<res.result.dayRateDto.length;i++){ getAction(this.url.dayUtilizationRateContrast, this.queryParams).then((res) => { if (res.success) { this.spaceTime = res.result.dateList for (let i = 0; i < res.result.dayRateDto.length; i++) { this.useingRates.push(this.numFilter(res.result.dayRateDto[i].utilizationRate)) } this.drawTu() }else{ } else { // this.$message.warning(res.message) this.$notification.warning({ message:'消息', description:res.message }); message: '消息', description: res.message }) } }).finally(() => { this.loading = false }) }else{ } else { this.typeTree = this.queryParams.typeTree this.typeParent = this.queryParams.parentId this.typeParent = this.queryParams.parentId this.typeEquipment = this.queryParams.equipmentId this.queryParams = {} this.queryParam = {} this.dates = [] this.queryParams.typeTree = this.typeTree this.queryParams.parentId = this.typeParent if(this.queryParams.parentId != ""){ this.queryParams.equipmentId = "" if (this.queryParams.parentId != '') { this.queryParams.equipmentId = '' this.initEquipment() }else{ if(this.queryParams.equipmentId == this.queryParamEquip.equipmentId){ this.queryParams.equipmentId = this.typeEquipment }else{ } else { if (this.queryParams.equipmentId == this.queryParamEquip.equipmentId) { this.queryParams.equipmentId = this.typeEquipment } else { this.queryParams.equipmentId = this.queryParamEquip.equipmentId } } getAction(this.url.dayUtilizationRateContrast,this.queryParams).then((res) => { if(res.success){ this.spaceTime=res.result.dateList for(let i = 0;i<res.result.dayRateDto.length;i++){ getAction(this.url.dayUtilizationRateContrast, this.queryParams).then((res) => { if (res.success) { this.spaceTime = res.result.dateList for (let i = 0; i < res.result.dayRateDto.length; i++) { this.useingRates.push(this.numFilter(res.result.dayRateDto[i].utilizationRate)) } this.drawTu() }else{ } else { // this.$message.warning(res.message) this.$notification.warning({ message:'消息', description:res.message }); message: '消息', description: res.message }) } }).finally(() => { this.loading = false @@ -397,16 +408,16 @@ this.equipment = {} // _this.$message.warning('请联系管理员,开放设备权限!') _this.$notification.warning({ message:'消息', description:'请联系管理员,开放设备权限!' }); message: '消息', description: '请联系管理员,开放设备权限!' }) } }else{ } else { // this.$message.warning(res.message) _this.$notification.warning({ message:'消息', description:res.message }); message: '消息', description: res.message }) } }) }, @@ -426,16 +437,16 @@ this.equipment = {} // _this.$message.warning('请联系管理员,开放设备权限!') _this.$notification.warning({ message:'消息', description:'请联系管理员,开放设备权限!' }); message: '消息', description: '请联系管理员,开放设备权限!' }) } }else{ } else { // this.$message.warning(res.message) _this.$notification.warning({ message:'消息', description:res.message }); message: '消息', description: res.message }) } }) } @@ -445,68 +456,75 @@ this.queryParam.startDate = moment(this.dates[0]).format('YYYYMMDD') this.queryParam.endDate = moment(this.dates[1]).format('YYYYMMDD') this.queryParam.startTime = '00:00' this.queryParam.endTime = "08:00" this.queryParams.typeTree = "1"; this.queryParam.endTime = '08:00' this.queryParams.typeTree = '1' }, mounted() { this.initEquipment() }, } } </script> <style lang="less" scoped> /*@import '~@assets/less/common.less';*/ @media screen and (min-width: 1920px){ .device_list{ height: 811px!important; @media screen and (min-width: 1920px) { .device_list { height: 811px !important; overflow: scroll; } } @media screen and (min-width: 1680px) and (max-width: 1920px){ .device_list{ height: 811px!important; @media screen and (min-width: 1680px) and (max-width: 1920px) { .device_list { height: 811px !important; overflow: scroll; } } @media screen and (min-width: 1400px) and (max-width: 1680px){ .device_list{ height: 663px!important; @media screen and (min-width: 1400px) and (max-width: 1680px) { .device_list { height: 663px !important; overflow: scroll; } } @media screen and (min-width: 1280px) and (max-width: 1400px){ .device_list{ height: 564px!important; @media screen and (min-width: 1280px) and (max-width: 1400px) { .device_list { height: 564px !important; overflow: scroll; } } @media screen and (max-width: 1280px){ .device_list{ height: 564px!important; @media screen and (max-width: 1280px) { .device_list { height: 564px !important; overflow: scroll; } } /*.device_list{*/ /*display: flex;*/ /*}*/ /*.device_list .table-page-search-wrapper{*/ /**/ /*}*/ /deep/ .ant-card-body{ height: 100%!important; /deep/ .ant-card-body { height: 100% !important; } .device_list .com_box{ display: flex!important; height: 100%!important; flex-direction: column!important; .device_list .com_box { display: flex !important; height: 100% !important; flex-direction: column !important; } .device_list .table-page-search-wrapper{ height: 6%!important; .device_list .table-page-search-wrapper { height: 6% !important; } .device_list #DeviceList{ height: 90%!important; .device_list #DeviceList { height: 90% !important; } </style> src/views/mdc/base/modules/equipmentDayAvail/equipmentDayAvailMain.vue
@@ -15,7 +15,7 @@ <a-input placeholder="输入设备名称查询" :readOnly="readOnly" v-model="queryParams.equipmentName"></a-input> </a-form-item> </a-col> <a-col :md="5" :sm="5" :xs="5"> <a-col :md="4" :sm="4" :xs="4"> <a-form-item label="日期"> <a-date-picker v-model="queryParam.dateTime" :disabledDate="disabledDate" format='YYYYMMDD' @change="dataChange"/> </a-form-item> @@ -38,7 +38,7 @@ </a-select>小时 </a-form-item> </a-col> <a-col :md="2" :sm="3" :xs="3"> <a-col :md="3" :sm="3" :xs="3"> <a-button type="primary" @click="searchQuery" icon="search">查询</a-button> </a-col> <!--<a-col :md="2" :sm="2" :xs="2">--> @@ -276,39 +276,47 @@ } }, searchQuery(){ this.spaceTime = [] this.useingRates = [] if(this.queryParams.typeTree == "1"){ this.queryParams.parentId = this.queryParamEquip.parentId // this.queryParams.equipmentId = this.queryParamEquip.equipmentId if(this.queryParam.dateTime){ this.spaceTime = [] this.useingRates = [] if(this.queryParams.typeTree == "1"){ this.queryParams.parentId = this.queryParamEquip.parentId // this.queryParams.equipmentId = this.queryParamEquip.equipmentId }else{ this.queryParams.parentId = this.queryParamEquip.parentId // this.queryParams.equipmentId = "" } this.AnalysisList = []; //获取查询条件 this.queryParam.parentId = this.queryParams.parentId; this.queryParam.equipmentId = this.queryParams.equipmentId; this.queryParam.typeTree = this.queryParams.typeTree getAction(this.url.dayUtilizationRate,this.queryParam).then((res) => { if(res.success){ this.spaceTime=res.result.dateList for(var i = 0;i<res.result.dayRateDto.length;i++){ this.useingRates.push(this.numFilter(res.result.dayRateDto[i].utilizationRate)) } this.drawTu() }else{ // this.$message.warning(res.message) this.$notification.warning({ message:'消息', description:res.message }); this.queryParams.parentId = this.queryParamEquip.parentId // this.queryParams.equipmentId = "" } }).finally(() => { this.loading = false }) this.AnalysisList = []; //获取查询条件 this.queryParam.parentId = this.queryParams.parentId; this.queryParam.equipmentId = this.queryParams.equipmentId; this.queryParam.typeTree = this.queryParams.typeTree getAction(this.url.dayUtilizationRate,this.queryParam).then((res) => { if(res.success){ this.spaceTime=res.result.dateList for(var i = 0;i<res.result.dayRateDto.length;i++){ this.useingRates.push(this.numFilter(res.result.dayRateDto[i].utilizationRate)) } this.drawTu() }else{ // this.$message.warning(res.message) this.$notification.warning({ message:'消息', description:res.message }); } }).finally(() => { this.loading = false }) }else{ this.$notification.warning({ message:'消息', description:'请选择时间' }); } }, searchReset() { this.spaceTime = [] src/views/mdc/base/modules/openRateFractionAnalysis/openRateFractionAnalysisMain.vue
@@ -7,14 +7,15 @@ <a-row :gutter="24"> <a-col :md="6" :sm="6"> <a-form-item label="时间"> <a-range-picker @change="dateParamChange" :disabledDate="disabledDate" format="YYYYMMDD" v-model="dates"/> <a-range-picker @change="dateParamChange" :disabledDate="disabledDate" format="YYYYMMDD" v-model="dates"/> </a-form-item> </a-col> <a-col :md="7" :sm="7" :xs="7"> <a-form-item label="时间段"> <a-time-picker :default-value="moment('00:00', 'HH:mm')" format="HH:mm" @change="onChangeStart" /> <a-time-picker :default-value="moment('00:00', 'HH:mm')" format="HH:mm" @change="onChangeStart"/> 至 <a-time-picker :default-value="moment('08:00', 'HH:mm')" format="HH:mm" @change="onChangeEnd" /> <a-time-picker :default-value="moment('08:00', 'HH:mm')" format="HH:mm" @change="onChangeEnd"/> </a-form-item> </a-col> <a-col :lg="2" :md="3" :sm="3" :xs="3"> @@ -26,30 +27,39 @@ <div id="DeviceList"> <div class="openRateTrendDg"> <div id="Efficiency" class="container" style="margin-top: 20px;"> <div class="table2"> <table class="dataContent table" border="1" cellspacing="0" cellpadding="0" style="white-space: nowrap;text-align: center;"> <thead> <tr class="thead fixed equipname"> <th class="thgu dong1 name" rowspan="2" style="min-width: 150px; max-width: 150px;width: 150px;">设备编号</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> <template v-for="(tableHead, index) in tableHeads"> <th class="timeth">{{tableHead}}</th> </template> </tr> </thead> <tbody> <tr class="mathData" v-for="(item, index) in dataList" @click="TableDraw(index,item)"> <td class="tdgu kaitou">{{item.equipmentId}}</td> <td class="tdgu1 kaitou">{{item.equipmentName}}</td> <td class="tdgu2 kaitou">{{item.equipmentType}}</td> <template v-for="(tableHead, index) in item.dataList"> <td :style="{background:tableHead.color }">{{tableHead.utilizationRate | numFilter}}</td> </template> </tr> </tbody> </table> </div> <a-spin :spinning="loading"> <div class="table2"> <table class="dataContent table" border="1" cellspacing="0" cellpadding="0" style="white-space: nowrap;text-align: center;"> <thead> <tr class="thead fixed equipname"> <th class="thgu dong1 name" rowspan="2" style="min-width: 150px; max-width: 150px;width: 150px;"> 设备编号 </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> <template v-for="(tableHead, index) in tableHeads"> <th class="timeth">{{tableHead}}</th> </template> </tr> </thead> <tbody> <tr class="mathData" v-for="(item, index) in dataList" @click="TableDraw(index,item)"> <td class="tdgu kaitou">{{item.equipmentId}}</td> <td class="tdgu1 kaitou">{{item.equipmentName}}</td> <td class="tdgu2 kaitou">{{item.equipmentType}}</td> <template v-for="(tableHead, index) in item.dataList"> <td :style="{background:tableHead.color }">{{tableHead.utilizationRate | numFilter}}</td> </template> </tr> </tbody> </table> </div> </a-spin> </div> </div> <div id="openRateTrendChart" style="width: 100%;height: 60%"></div> @@ -67,6 +77,7 @@ import { JeecgListMixin } from '@/mixins/JeecgListMixin' export default { // mixins: [JeecgListMixin], name: 'openRateFractionAnalysisMain', @@ -76,7 +87,7 @@ dataSource: [], /* table加载状态 */ loading: false, typeTree: "", typeTree: '', typeParent: 1, typeEquipment: 1, TreeIDOne: 1, @@ -103,8 +114,8 @@ listByType: '/mdc/MdcUtilizationRate/getByType' }, tableHeads: [], XData:[0], YData:[0], XData: [0], YData: [0] } }, props: { nodeTree: '', Type: '', nodePeople: '' }, @@ -116,14 +127,14 @@ this.queryParam.startDate = moment(this.dates[0]).format('YYYYMMDD') this.queryParam.endDate = moment(this.dates[1]).format('YYYYMMDD') this.queryParam.startTime = '00:00' this.queryParam.endTime = "08:00" this.queryParam.typeTree = "1" this.queryParam.endTime = '08:00' this.queryParam.typeTree = '1' this.loadData1() }, watch: { Type(valmath) { this.dataList = []; this.dataList = [] this.queryParam.typeTree = valmath }, nodeTree(val) { //监听currSelected 变化,将变化后的数值传递给 getCurrSelected 事件 @@ -171,15 +182,15 @@ this.queryParam.endTime = timeString // console.log(time, timeString); }, numBerTwo(value){ numBerTwo(value) { if (value) { return parseFloat((value * 100).toFixed(2)) } else { return '0' } }, TableDraw(key,val) { this.XData=[0] TableDraw(key, val) { this.XData = [0] this.YData[0] var Xarr = [] var Yarr = [] @@ -187,8 +198,8 @@ Xarr.push(val.dataList[i].theDate) Yarr.push(this.numBerTwo(val.dataList[i].utilizationRate)) } this.XData=Xarr this.YData=Yarr this.XData = Xarr this.YData = Yarr // if(this.openRateTrendAnalysisChart !=null && this.openRateTrendAnalysisChart != '' && this.openRateTrendAnalysisChart != undefined){ // this.openRateTrendAnalysisChart.dispose() // } @@ -197,21 +208,29 @@ }, //Can not slect days before today and today disabledDate(current) { return current && current > moment().subtract('days', 1); return current && current > moment().subtract('days', 1) }, dateParamChange(v1, v2) { this.queryParam.startDate = v2[0] this.queryParam.endDate = v2[1] }, searchQuery() { if (this.queryParam.typeTree == "1") { this.queryParam.parentId = this.queryParamEquip.parentId this.queryParam.equipmentId = this.queryParamEquip.equipmentId if (this.queryParam.startTime && this.queryParam.endTime && this.dates && this.dates.length > 0) { 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.loadData1() } else { this.queryParam.parentId = this.queryParamPeople.parentId this.queryParam.equipmentId = "" this.$notification.warning({ message: '提示', description: '请选择时间或时间段' }) } this.loadData1() // this.onClearSelected() }, // searchReset() { @@ -284,6 +303,7 @@ // } // } loadData1() { this.loading=true this.tableHeads = [] this.dataList = [] getAction(this.url.efficiencyList, this.queryParam).then(res => { @@ -298,10 +318,12 @@ // this.initDeviceType(this.dataList) } }).finally(()=>{ this.loading=false }) }, draw(){ let openRateTrendAnalysisChart = this.$echarts.init(document.getElementById('openRateTrendChart'), 'macarons'); draw() { let openRateTrendAnalysisChart = this.$echarts.init(document.getElementById('openRateTrendChart'), 'macarons') let openRateTrendChartOptions = { title: { text: '利用率走势分析', @@ -309,7 +331,7 @@ textStyle: { fontSize: 18, fontWeight: 'bolder', color: "#151414" color: '#151414' } }, tooltip: { @@ -355,8 +377,8 @@ } } ] }; openRateTrendAnalysisChart.setOption(openRateTrendChartOptions,true); } openRateTrendAnalysisChart.setOption(openRateTrendChartOptions, true) } } } @@ -401,9 +423,11 @@ padding: 10px; /*display: none;*/ } .dataContent .mathData:hover td{ .dataContent .mathData:hover td { background-color: #e6f7ff; } .dataContent .mathData .td { /*background-color: #ff9bd2;*/ display: inline-block; @@ -413,138 +437,164 @@ .dataContent .mathData .tdd { /*display: none;*/ } .table2{ width: 100%; height: 100%; overflow: auto; .table2 { width: 100%; height: 100%; overflow: auto; } /*tr th {*/ /*height: 50px!important;*/ /*height: 50px!important;*/ /*}*/ /*tr td{*/ /*height: 50px!important;*/ /*height: 50px!important;*/ /*}*/ .table2 thead tr th:first-child, .table tbody tr .tdgu{ .table tbody tr .tdgu { position: sticky; left: 0; z-index: 1; } .table tbody tr .kaitou{ .table tbody tr .kaitou { z-index: 1; background-color: white; } .table tbody tr .tdgu1{ .table tbody tr .tdgu1 { position: sticky; left: 150px; z-index: 2; } .table tbody tr .tdgu2{ .table tbody tr .tdgu2 { position: sticky; left: 300px; z-index: 2; } .table tbody tr .tdgu3{ .table tbody tr .tdgu3 { position: sticky; left: 450px; z-index: 2; } .table tbody tr .tdgu4{ .table tbody tr .tdgu4 { position: sticky; left: 550px; z-index: 2; } .table tbody tr .tdgu5{ .table tbody tr .tdgu5 { position: sticky; left: 700px; z-index: 2; } .table2 thead tr .timeth, .table2 thead tr .thgu { .table2 thead tr .thgu { position: sticky; top:0; top: 0; z-index: 3; } .table2 thead .gudingth th{ .table2 thead .gudingth th { position: sticky; top: 32px; z-index: 6!important; z-index: 6 !important; } .table2 thead .equipname .name{ .table2 thead .equipname .name { z-index: 3; } .table2 thead .equipname .dong1{ .table2 thead .equipname .dong1 { z-index: 4; left: 0; /*border: 1px solid #000;*/ } .table2 thead .equipname .dong2{ .table2 thead .equipname .dong2 { z-index: 5; left: 150px; } .table2 thead .equipname .dong3{ .table2 thead .equipname .dong3 { z-index: 5; left: 300px; } .table2 thead .equipname .dong4{ .table2 thead .equipname .dong4 { z-index: 5; left: 450px; } .table2 thead .equipname .dong5{ .table2 thead .equipname .dong5 { z-index: 5; left: 550px; } .table2 thead .equipname .dong6{ .table2 thead .equipname .dong6 { z-index: 5; left: 700px; } @media screen and (min-width: 1920px){ #Efficiency{ height: 337px!important; overflow: scroll; @media screen and (min-width: 1920px) { #Efficiency { height: 337px !important; overflow: scroll; } } @media screen and (min-width: 1680px) and (max-width: 1920px) { #Efficiency { height: 337px !important; overflow: scroll; } } @media screen and (min-width: 1680px) and (max-width: 1920px){ #Efficiency{ height: 337px!important; overflow: scroll; @media screen and (min-width: 1400px) and (max-width: 1680px) { #Efficiency { height: 190px !important; overflow: scroll; } } @media screen and (min-width: 1280px) and (max-width: 1400px) { #Efficiency { height: 90px !important; overflow: scroll; } } @media screen and (min-width: 1400px) and (max-width: 1680px){ #Efficiency{ height: 190px!important; overflow: scroll; @media screen and (max-width: 1280px) { #Efficiency { height: 90px !important; overflow: scroll; } } } @media screen and (min-width: 1280px) and (max-width: 1400px){ #Efficiency{ height: 90px!important; overflow: scroll; } } @media screen and (max-width: 1280px){ #Efficiency{ height: 90px!important; overflow: scroll; } } #Efficiency .table_guding1{ #Efficiency .table_guding1 { position: absolute; overflow: hidden; width: 500px; } #Efficiency .table_guding2{ #Efficiency .table_guding2 { overflow-x: scroll; width: 500px; } /deep/ .ant-card{ height: 100%!important; /deep/ .ant-card { height: 100% !important; } /deep/ .ant-card .ant-card-body{ height: 100%!important; /deep/ .ant-card .ant-card-body { height: 100% !important; } .efficiency_list #DeviceList{ height: 90%!important; .efficiency_list #DeviceList { height: 90% !important; } </style> src/views/mdc/base/modules/openRateTrendAnalysis/openRateTrendAnalysisMain.vue
@@ -2,30 +2,39 @@ <div class="efficiency_list" style="width: 100%;height: 100%;"> <a-card :bordered="false"> <!-- 查询区域 --> <div class="table-page-search-wrapper"> <a-form layout="inline" @keyup.enter.native="searchQuery"> <a-row :gutter="24"> <a-col :md="6" :sm="6"> <a-form-item label="时间"> <a-range-picker @change="dateParamChange" :disabledDate="disabledDate" format="YYYYMMDD" v-model="dates"/> </a-form-item> </a-col> <a-col :lg="2" :md="3" :sm="3" :xs="3"> <a-button type="primary" @click="searchQuery" icon="search">查询</a-button> </a-col> </a-row> </a-form> </div> <div id="DeviceList"> <div class="openRateTrendDg"> <div id="Efficiency" class="container" style="margin-top: 20px;"> <div class="table-page-search-wrapper"> <a-form layout="inline" @keyup.enter.native="searchQuery"> <a-row :gutter="24"> <a-col :md="6" :sm="6"> <a-form-item label="时间"> <a-range-picker @change="dateParamChange" :disabledDate="disabledDate" format="YYYYMMDD" v-model="dates"/> </a-form-item> </a-col> <a-col :lg="2" :md="3" :sm="3" :xs="3"> <a-button type="primary" @click="searchQuery" icon="search">查询</a-button> </a-col> </a-row> </a-form> </div> <div id="DeviceList"> <div class="openRateTrendDg"> <div id="Efficiency" class="container" style="margin-top: 20px;"> <a-spin :spinning="loading"> <div class="table2"> <table class="dataContent table" border="1" cellspacing="0" cellpadding="0" style="white-space: nowrap;text-align: center;"> <table class="dataContent table" border="1" cellspacing="0" cellpadding="0" style="white-space: nowrap;text-align: center;"> <thead> <tr class="thead fixed equipname"> <th class="thgu dong1 name" rowspan="2" style="min-width: 150px; max-width: 150px;width: 150px;">设备编号</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 dong1 name" rowspan="2" style="min-width: 150px; max-width: 150px;width: 150px;"> 设备编号 </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> <template v-for="(tableHead, index) in tableHeads"> <th class="timeth" :colspan="checkedList.length">{{tableHead}}</th> </template> @@ -33,9 +42,9 @@ </thead> <tbody> <tr class="mathData" v-for="(item, index) in dataList" @click="TableDraw(index,item)"> <td class="tdgu kaitou">{{item.equipmentId}}</td> <td class="tdgu1 kaitou">{{item.equipmentName}}</td> <td class="tdgu2 kaitou">{{item.equipmentType}}</td> <td class="tdgu kaitou">{{item.equipmentId}}</td> <td class="tdgu1 kaitou">{{item.equipmentName}}</td> <td class="tdgu2 kaitou">{{item.equipmentType}}</td> <template v-for="(tableHead, index) in item.dataList"> <td :style="{background:tableHead.color }">{{tableHead.utilizationRate | numFilter}}</td> </template> @@ -43,10 +52,11 @@ </tbody> </table> </div> </div> </a-spin> </div> <div id="openRateTrendChart" style="width: 100%;height: 60%"></div> </div> <div id="openRateTrendChart" style="width: 100%;height: 60%"></div> </div> </a-card> </div> </template> @@ -60,6 +70,7 @@ import { JeecgListMixin } from '@/mixins/JeecgListMixin' export default { // mixins: [JeecgListMixin], name: 'openRateTrendAnalysisMain', @@ -69,7 +80,7 @@ dataSource: [], /* table加载状态 */ loading: false, typeTree: "", typeTree: '', typeParent: 1, typeEquipment: 1, TreeIDOne: 1, @@ -96,8 +107,8 @@ listByType: '/mdc/MdcUtilizationRate/getByType' }, tableHeads: [], XData:[0], YData:[0], XData: [0], YData: [0] } }, props: { nodeTree: '', Type: '', nodePeople: '' }, @@ -108,12 +119,12 @@ this.dates = [moment().subtract('days', 8), moment().subtract('days', 1)] this.queryParam.startDate = moment(this.dates[0]).format('YYYYMMDD') this.queryParam.endDate = moment(this.dates[1]).format('YYYYMMDD') this.queryParam.typeTree = "1" this.queryParam.typeTree = '1' this.loadData1() }, watch: { Type(valmath) { this.dataList = []; this.dataList = [] this.queryParam.typeTree = valmath }, nodeTree(val) { //监听currSelected 变化,将变化后的数值传递给 getCurrSelected 事件 @@ -152,33 +163,33 @@ } }, methods: { numBerTwo(value){ numBerTwo(value) { if (value) { return parseFloat((value * 100).toFixed(2)) } else { return '0' } }, TableDraw(key,val) { this.XData=[0] this.YData[0] TableDraw(key, val) { this.XData = [0] this.YData[0] var Xarr = [] var Yarr = [] for (var i = 0; i < val.dataList.length; i++) { Xarr.push(val.dataList[i].theDate) Yarr.push(this.numBerTwo(val.dataList[i].utilizationRate)) } this.XData=Xarr this.YData=Yarr // if(this.openRateTrendAnalysisChart !=null && this.openRateTrendAnalysisChart != '' && this.openRateTrendAnalysisChart != undefined){ // this.openRateTrendAnalysisChart.dispose() // } for (var i = 0; i < val.dataList.length; i++) { Xarr.push(val.dataList[i].theDate) Yarr.push(this.numBerTwo(val.dataList[i].utilizationRate)) } this.XData = Xarr this.YData = Yarr // if(this.openRateTrendAnalysisChart !=null && this.openRateTrendAnalysisChart != '' && this.openRateTrendAnalysisChart != undefined){ // this.openRateTrendAnalysisChart.dispose() // } this.draw() this.draw() }, disabledDate(current) { //Can not slect days before today and today return current && current > moment().subtract('days', 1); return current && current > moment().subtract('days', 1) }, initDeviceType(deviceList) { let dictCode = 'mdc_equipmentType' @@ -212,14 +223,21 @@ this.queryParam.endDate = v2[1] }, searchQuery() { if (this.queryParam.typeTree == "1") { this.queryParam.parentId = this.queryParamEquip.parentId this.queryParam.equipmentId = this.queryParamEquip.equipmentId if (this.dates && this.dates.length > 0) { 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.loadData1() } else { this.queryParam.parentId = this.queryParamPeople.parentId this.queryParam.equipmentId = "" this.$notification.warning({ message: '提示', description: '请选择时间' }) } this.loadData1() // this.onClearSelected() }, // searchReset() { @@ -292,6 +310,7 @@ // } // } loadData1() { this.loading = true this.tableHeads = [] this.dataList = [] getAction(this.url.efficiencyList, this.queryParam).then(res => { @@ -304,12 +323,13 @@ // this.checkSameData2(this.dataList) // this.combineCell(); // this.initDeviceType(this.dataList) } }).finally(() => { this.loading = false }) }, draw(){ let openRateTrendAnalysisChart = this.$echarts.init(document.getElementById('openRateTrendChart'), 'macarons'); draw() { let openRateTrendAnalysisChart = this.$echarts.init(document.getElementById('openRateTrendChart'), 'macarons') let openRateTrendChartOptions = { title: { text: '利用率走势分析', @@ -317,7 +337,7 @@ textStyle: { fontSize: 18, fontWeight: 'bolder', color: "#151414" color: '#151414' } }, tooltip: { @@ -363,8 +383,8 @@ } } ] }; openRateTrendAnalysisChart.setOption(openRateTrendChartOptions,true); } openRateTrendAnalysisChart.setOption(openRateTrendChartOptions, true) } } } @@ -409,9 +429,11 @@ padding: 10px; /*display: none;*/ } .dataContent .mathData:hover td{ .dataContent .mathData:hover td { background-color: #e6f7ff; } .dataContent .mathData .td { /*background-color: #ff9bd2;*/ display: inline-block; @@ -421,11 +443,13 @@ .dataContent .mathData .tdd { /*display: none;*/ } .table2{ .table2 { width: 100%; height: 100%; overflow: auto; } /*tr th {*/ /*height: 50px!important;*/ /*}*/ @@ -433,126 +457,150 @@ /*height: 50px!important;*/ /*}*/ .table2 thead tr th:first-child, .table tbody tr .tdgu{ .table tbody tr .tdgu { position: sticky; left: 0; z-index: 1; } .table tbody tr .kaitou{ .table tbody tr .kaitou { z-index: 1; background-color: white; } .table tbody tr .tdgu1{ .table tbody tr .tdgu1 { position: sticky; left: 150px; z-index: 2; } .table tbody tr .tdgu2{ .table tbody tr .tdgu2 { position: sticky; left: 300px; z-index: 2; } .table tbody tr .tdgu3{ .table tbody tr .tdgu3 { position: sticky; left: 450px; z-index: 2; } .table tbody tr .tdgu4{ .table tbody tr .tdgu4 { position: sticky; left: 550px; z-index: 2; } .table tbody tr .tdgu5{ .table tbody tr .tdgu5 { position: sticky; left: 700px; z-index: 2; } .table2 thead tr .timeth, .table2 thead tr .thgu { .table2 thead tr .thgu { position: sticky; top:0; top: 0; z-index: 3; } .table2 thead .gudingth th{ .table2 thead .gudingth th { position: sticky; top: 32px; z-index: 6!important; z-index: 6 !important; } .table2 thead .equipname .name{ .table2 thead .equipname .name { z-index: 3; } .table2 thead .equipname .dong1{ .table2 thead .equipname .dong1 { z-index: 4; left: 0; /*border: 1px solid #000;*/ } .table2 thead .equipname .dong2{ .table2 thead .equipname .dong2 { z-index: 5; left: 150px; } .table2 thead .equipname .dong3{ .table2 thead .equipname .dong3 { z-index: 5; left: 300px; } .table2 thead .equipname .dong4{ .table2 thead .equipname .dong4 { z-index: 5; left: 450px; } .table2 thead .equipname .dong5{ .table2 thead .equipname .dong5 { z-index: 5; left: 550px; } .table2 thead .equipname .dong6{ .table2 thead .equipname .dong6 { z-index: 5; left: 700px; } @media screen and (min-width: 1920px){ #Efficiency{ height: 337px!important; @media screen and (min-width: 1920px) { #Efficiency { height: 337px !important; overflow: scroll; } } @media screen and (min-width: 1680px) and (max-width: 1920px){ #Efficiency{ height: 337px!important; @media screen and (min-width: 1680px) and (max-width: 1920px) { #Efficiency { height: 337px !important; overflow: scroll; } } @media screen and (min-width: 1400px) and (max-width: 1680px){ #Efficiency{ height: 190px!important; @media screen and (min-width: 1400px) and (max-width: 1680px) { #Efficiency { height: 190px !important; overflow: scroll; } } @media screen and (min-width: 1280px) and (max-width: 1400px){ #Efficiency{ height: 90px!important; @media screen and (min-width: 1280px) and (max-width: 1400px) { #Efficiency { height: 90px !important; overflow: scroll; } } @media screen and (max-width: 1280px){ #Efficiency{ height: 90px!important; @media screen and (max-width: 1280px) { #Efficiency { height: 90px !important; overflow: scroll; } } #Efficiency .table_guding1{ #Efficiency .table_guding1 { position: absolute; overflow: hidden; width: 500px; } #Efficiency .table_guding2{ #Efficiency .table_guding2 { overflow-x: scroll; width: 500px; } /deep/ .ant-card{ height: 100%!important; /deep/ .ant-card { height: 100% !important; } /deep/ .ant-card .ant-card-body{ height: 100%!important; /deep/ .ant-card .ant-card-body { height: 100% !important; } .efficiency_list #DeviceList{ height: 90%!important; .efficiency_list #DeviceList { height: 90% !important; } </style>