This commit is contained in:
weicw
2021-09-10 10:14:44 +08:00
parent 185c21eb73
commit 03815d04b6
54 changed files with 228 additions and 2974 deletions

View File

@@ -1,158 +1,34 @@
import moment from "moment";
export default {
toObjData(excelData) {
toObjData(excelData,monitorYear) {
return excelData.map(item => {
const monitorStartTime = new Date();
monitorStartTime.setFullYear(item[4]);
monitorStartTime.setMonth(item[5] - 1);
monitorStartTime.setDate(item[6]);
monitorStartTime.setHours(item[7]);
monitorStartTime.setMinutes(item[8]);
const monitorEndTime = new Date();
monitorEndTime.setFullYear(item[9]);
monitorEndTime.setMonth(item[10] - 1);
monitorEndTime.setDate(item[11]);
monitorEndTime.setHours(item[12]);
monitorEndTime.setMinutes(item[13]);
let quarter = 1;
const month = item[10]
if (month < 4) {
quarter = 1
} else if (month < 7) {
quarter = 2
} else if (month < 10) {
quarter = 3
} else {
quarter = 4
}
const monitorTime = moment(monitorYear + "."+item[1],"Y.M.D");
const monitorStartTime = moment(`${monitorYear}.${item[2]}.${item[3]} ${item[4]}:${item[5]}`,"Y.M.D H:m");
const monitorEndTime = moment(`${monitorYear}.${item[6]}.${item[7]} ${item[8]}:${item[9]}`,"Y.M.D H:m");
console.log(item);
const row = {
regionCode: item[0],
city: item[1].includes("市")?item[1]:"南宁市",
area: item[1].includes("区")?item[1]:"",
county: item[1].includes("县")?item[1]:"",
place: item[2],
placeType: item[3],
precipitationType: item[14],
precipitation: item[15],
ph: item[16],
conductivity: item[17],
so42: item[18],
no3: item[19],
f: Number(item[20])?Number(item[20]):null,
cl: item[21],
nh4: item[22],
ca2: item[23],
mg2: item[24],
na: item[25],
k: Number(item[26])?Number(item[26]):null,
systemCode: item[27],
regionLevel: "市级",
monitorStartTime: monitorStartTime.getTime(),
monitorEndTime: monitorEndTime.getTime(),
monitorTime: monitorEndTime.getTime(),
quarter
city: "南宁市",
code: item[0],
precipitationType:item[10],
precipitation:item[11],
ph:item[12],
conductivity:item[13],
fluorine:item[14],
chlorine:item[15],
sulfateRadical:item[16],
nitrate:item[17],
na:item[18],
ammoniumRadical:item[19],
k:item[20],
mg:item[21],
ca:item[22],
monitorStartTime: monitorStartTime.valueOf(),
monitorEndTime: monitorEndTime.valueOf(),
monitorTime: monitorTime.valueOf(),
}
return row;
})
},
toPlaceData(excelData) {
return excelData.map(item => {
return {
place: item[0],
placeLng: item[1],
placeLat: item[2],
motorway: item[3],
motorwayType: item[4],
motorwayLevel: item[5],
refObj: item[6],
people: item[7],
station: item[8],
monitorInstrumentModel: item[9],
monitorInstrumentCode: item[10],
beforeMonitorValue: item[11],
afterMonitorValue: item[12],
soundPressureValue: item[13],
soundInstrumentModel: item[14],
soundInstrumentCode: item[15],
}
})
},
// 解析县级数据
toAreaObjData(excelData) {
return excelData.map(item => {
const monitorStartTime = new Date();
monitorStartTime.setFullYear(item[1]);
monitorStartTime.setMonth(item[14] - 1);
monitorStartTime.setDate(item[15]);
monitorStartTime.setHours(item[16]);
monitorStartTime.setMinutes(item[17]);
let quarter = 1;
const month = item[14]
if (month < 4) {
quarter = 1
} else if (month < 7) {
quarter = 2
} else if (month < 10) {
quarter = 3
} else {
quarter = 4
}
let timeSlot = "夜";
if (item[16] >= 6 && item[16] <= 22) {
timeSlot = "昼"
}
const row = {
regionCode: item[0],
regionLevel: "县级",
monitorYear: item[1],
placeCode: item[2],
place: item[3],
placeLng: item[4],
placeLat: item[5],
road: item[6],
roadLength: item[7],
roadWidth: item[8],
motorway: item[9],
motorwayType: item[10],
motorwayLevel: item[11],
refObj: item[12],
people: item[13],
monitorMonth: item[14],
monitorDay: item[15],
monitorHour: item[16],
monitorMinute: item[17],
smallTrafficFlow: item[18],
largeTrafficFlow: item[19],
indexLeq: item[20],
indexL10: item[21],
indexL50: item[22],
indexL90: item[23],
indexLmax: item[24],
indexLmin: item[25],
indexSd: item[26],
station: item[27],
monitorInstrumentModel: item[28],
monitorInstrumentCode: item[29],
beforeMonitorValue: item[30],
afterMonitorValue: item[31],
soundPressureValue: item[32],
soundInstrumentModel: item[33],
soundInstrumentCode: item[34],
remark: item[35],
city: '南宁',
timeSlot,
monitorStartTime: monitorStartTime.getTime(),
quarter
}
if(row.indexL10 < row.indexL50 || row.indexL50 < row.indexL90){
throw new Error(row.place + "数值有误")
}
return row;
})
}
}
}