Browse Source

commit

master
xuhuihui 3 years ago
parent
commit
f2198c6aa6
  1. 88
      04.系统编码/Frontend/src/components/DecisionSupport.vue

88
04.系统编码/Frontend/src/components/DecisionSupport.vue

@ -136,8 +136,9 @@ export default {
let options = reactive({
times: [],
currentTime: null,
date: moment().format('YYYY-MM-DD 00:00:00'),
date: moment().format('YYYY-MM-DD HH:00:00'),
index: 0,
changeLocate: 'nj',
currentIndicator: 'plan-advice',
currentProduct: 'control-experiment',
items: [{
@ -261,50 +262,11 @@ export default {
creates.pollutionIndicator.init();
}
const drawPollutionIndicator = (result: CustomeArray<any>) => {
if (result[0].time == null) return;
const data = prepareChartData(result);
creates.pollutionIndicator.updateSeries(0, data[0]);
creates.pollutionIndicator.updateSeries(1, data[1]);
creates.pollutionIndicator.updateSeries(2, data[2]);
options.loadingPollutionIndicatorStatus = false
}
const prepareChartData = (result) => {
if (result[0].data == null) {
let temp = []
for (let i = 0; i < 72; i++) {
temp.push(NaN);
}
result[0].data = group(temp ,24)
}
let prepareData = []
let startTimeMoment = moment(result[0].time, 'M_D_H').add(8, 'h')
result[0].data.forEach(item => {
let interval = (24 / item.length);
let data = []
for (let i = 0, len = item.length; i < len; i++) {
data.push([startTimeMoment.clone().add(interval * i, 'h').valueOf(), item[i]])
}
prepareData.push(data)
})
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);
let time = moment(options.date);
reloadPollutionIndicator(time.format('M_D_H'), element, result);
let time = moment(options.date)
reloadPollutionIndicator(time.add(-1, 'd').format('M_D'), element, result);
}
const reloadPollutionIndicator = (time: string, elementCode, result: CustomeArray<any>) => {
@ -323,7 +285,7 @@ export default {
const prepareApiParams = (time, elementCode) => {
return {
var: elementCode,
locate: 'nj',
locate: options.changeLocate,
date: moment(time, 'MM_DD_hh').format('M_D'),
}
}
@ -336,6 +298,46 @@ export default {
})
}
const prepareChartData = (result) => {
if (result[0].data == null) {
let temp = []
for (let i = 0; i < 72; i++) {
temp.push(NaN);
}
result[0].data = group(temp, 24)
}
let prepareData = []
let startTimeMoment = moment(result[0].time, 'M_D').add(8, 'h')
result[0].data.forEach(item => {
let interval = (24 / item.length);
let data = []
for (let i = 0, len = item.length; i < len; i++) {
data.push([startTimeMoment.clone().add(interval * i, 'h').valueOf(), item[i]])
}
prepareData.push(data)
})
return prepareData;
}
const drawPollutionIndicator = (result: CustomeArray<any>) => {
if (result[0].time == null) return;
const data = prepareChartData(result);
creates.pollutionIndicator.updateSeries(0, data[0]);
creates.pollutionIndicator.updateSeries(1, data[1]);
creates.pollutionIndicator.updateSeries(2, data[2]);
options.loadingPollutionIndicatorStatus = false
}
const group = (array, subGroupLength) => {
let index = 0;
let newArray = [];
while (index < array.length) {
newArray.push(array.slice(index, index += subGroupLength));
}
return newArray;
}
const initTimeLineDay = () => {
options.times = [];
options.currentTime = moment(options.date).format('YYYY-MM-DD');

Loading…
Cancel
Save