|
|
@ -5,21 +5,28 @@ |
|
|
|
<div class="menu-item"> |
|
|
|
<h2 class="tip">指标选择</h2> |
|
|
|
<el-row :gutter="12"> |
|
|
|
<el-col :span="24"><span @click="onIndicatorClick('plan-advice')" :class="{'active': currentIndicator === 'plan-advice'}">通风廊道规划建议</span></el-col> |
|
|
|
<el-col :span="24"><span @click="onIndicatorClick('pollution-indicator')" :class="{'active': currentIndicator === 'pollution-indicator'}">高楼污染指数</span></el-col> |
|
|
|
<el-col :span="24"><span @click="onIndicatorClick('plan-advice')" |
|
|
|
:class="{'active': currentIndicator === 'plan-advice'}">通风廊道规划建议</span></el-col> |
|
|
|
<el-col :span="24"><span @click="onIndicatorClick('pollution-indicator')" |
|
|
|
:class="{'active': currentIndicator === 'pollution-indicator'}">高楼污染指数</span> |
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
</div> |
|
|
|
<div class="menu-item" v-if="currentIndicator === 'plan-advice'"> |
|
|
|
<h2 class="tip">产品选择</h2> |
|
|
|
<el-row :gutter="12"> |
|
|
|
<el-col :span="24"><span @click="onProductClick('control-experiment')" :class="{'active': currentProduct === 'control-experiment'}">控制实验</span></el-col> |
|
|
|
<el-col :span="24"><span @click="onProductClick('product-influence')" :class="{'active': currentProduct === 'product-influence'}">通风廊道的影响</span></el-col> |
|
|
|
<el-col :span="24"><span @click="onProductClick('product-experiment')" :class="{'active': currentProduct === 'product-experiment'}">通风廊道试验</span></el-col> |
|
|
|
<el-col :span="24"><span @click="onProductClick('control-experiment')" |
|
|
|
:class="{'active': currentProduct === 'control-experiment'}">控制实验</span></el-col> |
|
|
|
<el-col :span="24"><span @click="onProductClick('product-influence')" |
|
|
|
:class="{'active': currentProduct === 'product-influence'}">通风廊道的影响</span></el-col> |
|
|
|
<el-col :span="24"><span @click="onProductClick('product-experiment')" |
|
|
|
:class="{'active': currentProduct === 'product-experiment'}">通风廊道试验</span></el-col> |
|
|
|
</el-row> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="container panel decision-container"> |
|
|
|
<span class="save-btn" @click="onSaveClick" v-if="currentIndicator != 'pollution-indicator'"><img src="/images/save.png" /></span> |
|
|
|
<span class="save-btn" @click="onSaveClick" v-if="currentIndicator != 'pollution-indicator'"><img |
|
|
|
src="/images/save.png"/></span> |
|
|
|
<div class="download-pictures" id="pictures"> |
|
|
|
<a v-for="(url, index) in urls" :key="index" download></a> |
|
|
|
</div> |
|
|
@ -121,6 +128,7 @@ |
|
|
|
import moment from "moment"; |
|
|
|
import {ConstantRamanLidar} from "../model/constant"; |
|
|
|
import {CustomeArray} from "../model/custome-array"; |
|
|
|
|
|
|
|
export default { |
|
|
|
name: 'DecisionSupport', |
|
|
|
setup() { |
|
|
@ -268,7 +276,7 @@ |
|
|
|
for (let i = 0; i < 72; i++) { |
|
|
|
temp.push(NaN); |
|
|
|
} |
|
|
|
result[0].data = [temp]; |
|
|
|
result[0].data = group(temp ,24) |
|
|
|
} |
|
|
|
let prepareData = [] |
|
|
|
let startTimeMoment = moment(result[0].time, 'M_D_H').add(8, 'h') |
|
|
@ -282,6 +290,15 @@ |
|
|
|
return prepareData; |
|
|
|
} |
|
|
|
|
|
|
|
const group = (array, subGroupLength) => { |
|
|
|
let index = 0; |
|
|
|
let newArray = []; |
|
|
|
while(index < array.length) { |
|
|
|
newArray.push(array.slice(index, index += subGroupLength)); |
|
|
|
} |
|
|
|
return newArray; |
|
|
|
} |
|
|
|
|
|
|
|
const reloadChartsRecognition = (element: string, callback: any) => { |
|
|
|
options.loadingPollutionIndicatorStatus = true |
|
|
|
let result = new CustomeArray(callback); |
|
|
@ -376,24 +393,30 @@ |
|
|
|
.decision-container { |
|
|
|
height: calc(~"100% - 0.6rem"); |
|
|
|
padding: 0.2rem 0 0.2rem 0.2rem; |
|
|
|
|
|
|
|
.save-btn { |
|
|
|
top: 0.2rem; |
|
|
|
right: 0.2rem; |
|
|
|
} |
|
|
|
|
|
|
|
.advice-picture-view { |
|
|
|
width: 100%; |
|
|
|
height: 100%; |
|
|
|
display: flex; |
|
|
|
|
|
|
|
:deep(.el-row) { |
|
|
|
width: 100%; |
|
|
|
|
|
|
|
.title { |
|
|
|
padding: 0; |
|
|
|
font-size: 0.22rem; |
|
|
|
} |
|
|
|
|
|
|
|
.el-col { |
|
|
|
height: 46%; |
|
|
|
margin-top: 1%; |
|
|
|
text-align: center; |
|
|
|
|
|
|
|
.el-image { |
|
|
|
height: calc(~"100% - 0.4rem"); |
|
|
|
margin-top: 0.1rem; |
|
|
@ -405,21 +428,25 @@ |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.indicator-picture-view { |
|
|
|
height: 100%; |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
flex-direction: column; |
|
|
|
justify-content: center; |
|
|
|
|
|
|
|
.title { |
|
|
|
padding: 0; |
|
|
|
margin-bottom: 0.7rem; |
|
|
|
} |
|
|
|
|
|
|
|
.picture-block { |
|
|
|
display: flex; |
|
|
|
align-items: end; |
|
|
|
justify-content: center; |
|
|
|
} |
|
|
|
|
|
|
|
.picture { |
|
|
|
width: 6.5rem; |
|
|
|
height: auto; |
|
|
@ -430,6 +457,7 @@ |
|
|
|
width: 100%; |
|
|
|
height: auto; |
|
|
|
margin: 0 auto; |
|
|
|
|
|
|
|
:deep(.el-image__inner) { |
|
|
|
max-width: 99%; |
|
|
|
border: 1px solid #707070; |
|
|
@ -440,6 +468,7 @@ |
|
|
|
width: 6.44rem; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.instruction { |
|
|
|
margin-left: 0.4rem; |
|
|
|
color: #222222; |
|
|
@ -453,20 +482,25 @@ |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.raman-picture-container { |
|
|
|
margin: 0 auto; |
|
|
|
|
|
|
|
.picture { |
|
|
|
width: 100%; |
|
|
|
height: 100%; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.toolbar { |
|
|
|
//padding: 0.15rem 0; |
|
|
|
padding-bottom: 7px; |
|
|
|
margin: -12px 0.25rem 0px; |
|
|
|
|
|
|
|
.times { |
|
|
|
padding-bottom: 0; |
|
|
|
} |
|
|
|
|
|
|
|
:deep(.date-picker), .control-btn { |
|
|
|
margin-top: 12px; |
|
|
|
} |
|
|
|