修改问题

master
夜笙歌 5 months ago
parent dc9d0306ed
commit 1eddf7e7ee

@ -1,8 +1,9 @@
<template> <template>
<div style="display: inline-block;width: 100%;height: 100% "> <div style="display: inline-block;width: 100%;height: 100% ">
<div style="background-color: #094170"> <div style="background-color: #094170">
<div class="scrollTable" style="font-weight: bold;" :style="`width:calc(${100/defaultData.th.length}%)`" v-for="i in defaultData.th"> <div class="scrollTable" style="font-weight: bold;" :style="`width:calc(${100/defaultData.th.length}%)`"
{{i}} v-for="i in defaultData.th">
{{ i }}
</div> </div>
</div> </div>
<vue-seamless-scroll <vue-seamless-scroll
@ -31,14 +32,14 @@ import Vue from "vue";
import vueSeamlessScroll from "vue-seamless-scroll"; import vueSeamlessScroll from "vue-seamless-scroll";
export default { export default {
props: ['defaultData','defaultTableData'], props: ['defaultData', 'defaultTableData'],
expose: ['getRequestData'], expose: ['getRequestData'],
components: { components: {
vueSeamlessScroll, vueSeamlessScroll,
}, },
data() { data() {
return { return {
tableData:[], tableData: [],
chartTableOption: { chartTableOption: {
step: 0.5, // step: 0.5, //
limitMoveNum: 3, // this.dataList.length limitMoveNum: 3, // this.dataList.length
@ -58,7 +59,7 @@ export default {
}, },
deep: true deep: true
}, },
defaultTableData:{ defaultTableData: {
handler(a, b) { handler(a, b) {
this.getOption() this.getOption()
}, },
@ -66,11 +67,13 @@ export default {
} }
}, },
async mounted() { async mounted() {
await this.getData() setTimeout(async () => {
await this.getData()
}, 500)
this.getOption() this.getOption()
setInterval(async () => { setInterval(async () => {
await this.getData() await this.getData()
}, 1000*10) }, 1000 * 60)
}, },
methods: { methods: {
async getData(e) { async getData(e) {
@ -79,7 +82,6 @@ export default {
}, },
getOption() { getOption() {
this.tableData = this.defaultTableData this.tableData = this.defaultTableData
console.log('this.tableData',this.tableData)
}, },
}, },
} }

@ -53,10 +53,6 @@
</div> </div>
</el-form> </el-form>
<div style="text-align: center;height: 60px;line-height: 60px">
<el-button type="primary" @click="onSubmit"></el-button>
<el-button>重置</el-button>
</div>
</div> </div>
</el-collapse-item> </el-collapse-item>
<el-collapse-item title="数据配置" name="2"> <el-collapse-item title="数据配置" name="2">
@ -65,6 +61,10 @@
</div> </div>
</el-collapse-item> </el-collapse-item>
</el-collapse> </el-collapse>
<div style="text-align: center;height: 60px;line-height: 60px">
<el-button type="primary" @click="onSubmit"></el-button>
<el-button>重置</el-button>
</div>
</div> </div>
</el-col> </el-col>
<el-col :span="12" style="height: 100%"> <el-col :span="12" style="height: 100%">

@ -57,10 +57,6 @@
</div> </div>
</el-form> </el-form>
<div style="text-align: center;height: 60px;line-height: 60px">
<el-button type="primary" @click="onSubmit"></el-button>
<el-button>重置</el-button>
</div>
</div> </div>
</el-collapse-item> </el-collapse-item>
<el-collapse-item title="数据配置" name="2"> <el-collapse-item title="数据配置" name="2">
@ -69,6 +65,10 @@
</div> </div>
</el-collapse-item> </el-collapse-item>
</el-collapse> </el-collapse>
<div style="text-align: center;height: 60px;line-height: 60px">
<el-button type="primary" @click="onSubmit"></el-button>
<el-button>重置</el-button>
</div>
</div> </div>
</el-col> </el-col>
<el-col :span="12" style="height: 100%"> <el-col :span="12" style="height: 100%">

@ -30,10 +30,6 @@
</el-form-item> </el-form-item>
</el-form> </el-form>
<div style="text-align: center;height: 60px;line-height: 60px">
<el-button type="primary" @click="onSubmit"></el-button>
<el-button>重置</el-button>
</div>
</div> </div>
</el-collapse-item> </el-collapse-item>
<el-collapse-item title="数据配置" name="2"> <el-collapse-item title="数据配置" name="2">
@ -42,6 +38,10 @@
</div> </div>
</el-collapse-item> </el-collapse-item>
</el-collapse> </el-collapse>
<div style="text-align: center;height: 60px;line-height: 60px">
<el-button type="primary" @click="onSubmit"></el-button>
<el-button>重置</el-button>
</div>
</div> </div>
</el-col> </el-col>
<el-col :span="12" style="height: 100%"> <el-col :span="12" style="height: 100%">

@ -48,10 +48,6 @@
</el-form-item> </el-form-item>
</el-form> </el-form>
<div style="text-align: center;height: 60px;line-height: 60px">
<el-button type="primary" @click="onSubmit"></el-button>
<el-button>重置</el-button>
</div>
</div> </div>
</el-collapse-item> </el-collapse-item>
<el-collapse-item title="数据配置" name="2"> <el-collapse-item title="数据配置" name="2">
@ -60,6 +56,10 @@
</div> </div>
</el-collapse-item> </el-collapse-item>
</el-collapse> </el-collapse>
<div style="text-align: center;height: 60px;line-height: 60px">
<el-button type="primary" @click="onSubmit"></el-button>
<el-button>重置</el-button>
</div>
</div> </div>
</el-col> </el-col>
<el-col :span="12" style="height: 100%"> <el-col :span="12" style="height: 100%">

@ -206,7 +206,14 @@
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="时间周期"> <el-form-item label="是否按照实时时间计算" >
<el-switch
v-model="equipmentIntervalForm.isRealTime"
active-color="#13ce66"
inactive-color="#ff4949">
</el-switch>
</el-form-item>
<el-form-item label="时间周期" v-if="!equipmentIntervalForm.isRealTime">
<el-date-picker <el-date-picker
@change="timeChange" @change="timeChange"
v-model="equipmentIntervalForm.time" v-model="equipmentIntervalForm.time"
@ -360,6 +367,7 @@ export default {
this.$set(this, 'equipmentIntervalForm', { this.$set(this, 'equipmentIntervalForm', {
intervalType: firstDevice.intervalType, intervalType: firstDevice.intervalType,
interval: firstDevice.interval, interval: firstDevice.interval,
isRealTime: firstDevice.isRealTime,
time: [this.$parseTime(firstDevice?.startTime), this.$parseTime(firstDevice?.endTime)] time: [this.$parseTime(firstDevice?.startTime), this.$parseTime(firstDevice?.endTime)]
}) })
}, },
@ -444,8 +452,9 @@ export default {
...this.addEquipmentForm, ...this.addEquipmentForm,
interval: this.equipmentIntervalForm.interval, interval: this.equipmentIntervalForm.interval,
intervalType: this.equipmentIntervalForm.intervalType, intervalType: this.equipmentIntervalForm.intervalType,
startTime: new Date(this.equipmentIntervalForm.time[0]).getTime(), isRealTime:this.equipmentIntervalForm.isRealTime,
endTime: new Date(this.equipmentIntervalForm.time[1]).getTime(), startTime: new Date(this.equipmentIntervalForm.time?.[0]).getTime(),
endTime: new Date(this.equipmentIntervalForm.time?.[1]).getTime(),
type: 2, type: 2,
connectionStatus: -1, connectionStatus: -1,
isOpen: true isOpen: true
@ -455,8 +464,9 @@ export default {
...this.addEquipmentForm, ...this.addEquipmentForm,
interval: this.equipmentIntervalForm.interval, interval: this.equipmentIntervalForm.interval,
intervalType: this.equipmentIntervalForm.intervalType, intervalType: this.equipmentIntervalForm.intervalType,
startTime: new Date(this.equipmentIntervalForm.time[0]).getTime(), isRealTime:this.equipmentIntervalForm.isRealTime,
endTime: new Date(this.equipmentIntervalForm.time[1]).getTime(), startTime: new Date(this.equipmentIntervalForm.time?.[0]).getTime(),
endTime: new Date(this.equipmentIntervalForm.time?.[1]).getTime(),
type: 2, type: 2,
connectionStatus: -1, connectionStatus: -1,
isOpen: true isOpen: true

@ -28,30 +28,142 @@ const mappingFunction = async (data, method) => {
} }
if (data.type === 2) { if (data.type === 2) {
let getTime = (e) => {
if (e === '1') {
return [(new Date().getTime() - (1000 * 60 * 60 * 24)), (new Date().getTime())]
}
if (e === '2') {
return [(new Date().getTime() - (1000 * 60 * 60 * 24)), (new Date().getTime())]
}
if (e === '3') {
return [(new Date().getTime() - (1000 * 60 * 60 * 24 * 7)), (new Date().getTime())]
}
if (e === '4') {
return [(new Date().getTime() - (1000 * 60 * 60 * 24 * 30)), (new Date().getTime())]
}
if (e === '5') {
return [(new Date().getTime() - (1000 * 60 * 60 * 24 * 365)), (new Date().getTime())]
}
}
const getTimeList = (e, isRealTime, startTimeArg, endTimeArg) => {
let startTime, endTime
if (!isRealTime) {
startTime = startTimeArg
endTime = endTimeArg
} else {
startTime = getTime(e)[0]
endTime = getTime(e)[1]
}
if (e === '1') {
let scope = Math.ceil((endTime - startTime) / (1000 * 60 * 60)) || 0
let arr = Array(scope).fill(1).map((v, k) => {
return parseTime(endTime - (1000 * 60 * 60) * k, '{y}-{m}-{d} {h}:{i}')
})
return arr
}
if (e === '2') {
let scope = Math.ceil((endTime - startTime) / (1000 * 60 * 60)) || 0
let arr = Array(scope).fill(1).map((v, k) => {
return parseTime(endTime - (1000 * 60 * 60) * k, '{y}-{m}-{d} {h}')
})
return arr
}
if (e === '3') {
let scope = Math.ceil((endTime - startTime) / (1000 * 60 * 60 * 24)) || 0
let arr = Array(scope).fill(1).map((v, k) => {
return parseTime(endTime - (1000 * 60 * 60 * 24) * k, '{y}-{m}-{d}')
})
return arr
}
if (e === '4') {
let scope = Math.ceil((endTime - startTime) / (1000 * 60 * 60 * 24)) || 0
let arr = Array(scope).fill(1).map((v, k) => {
return parseTime(endTime - (1000 * 60 * 60 * 24) * k, '{y}-{m}-{d}')
})
return arr
}
if (e === '5') {
let scope = Math.ceil((endTime - startTime) / (1000 * 60 * 60 * 24 * 30)) || 0
let arr = Array(scope).fill(1).map((v, k) => {
return parseTime(endTime - (1000 * 60 * 60 * 24 * 30) * k, '{y}-{m}')
})
return arr
}
}
let res2 = await getHistoryData({ let res2 = await getHistoryData({
deviceModeId: data.deviceModeId, deviceModeId: data.deviceModeId,
functionIdentifier: data.functionIdentifier, functionIdentifier: data.functionIdentifier,
interval: data.interval, interval: data.interval,
"sceneId": 144, "sceneId": 144,
"deviceId": data.deviceId, "deviceId": data.deviceId,
startTime: data.startTime, startTime: data.isRealTime ? getTime(data.interval)?.[0] : data.startTime,
endTime: data.endTime, endTime: data.isRealTime ? getTime(data.interval)?.[1] : data.endTime,
intervalType: 1 || data.intervalType, intervalType: 1 || data.intervalType,
}) })
console.log('datadata', data.interval) console.log('datadata', data)
if (data.interval === '5') { if (data.isRealTime) {
res2.data.groupDeviceData.dataList = res2.data.groupDeviceData.dataList.map(e => { if (data.interval === '1') {
return {...e, time: parseTime(e.time, '{y}-{m}')} let arr = getTimeList(data.interval, data.isRealTime)
})
} else if (data.interval === '4' || data.interval === '3') { res2.data.groupDeviceData.dataList = arr.map(v => {
res2.data.groupDeviceData.dataList = res2.data.groupDeviceData.dataList.map(e => { let data = res2.data.groupDeviceData.dataList.find(vv => parseTime(vv.time, '{y}-{m}-{d} {h}:{i}') === v)
return {...e, time: parseTime(e.time, '{y}-{m}-{d}')} return {...data, time: v}
}) })
}else{ }
res2.data.groupDeviceData.dataList = res2.data.groupDeviceData.dataList.map(e => { if (data.interval === '2') {
return {...e, time: parseTime(e.time, '{y}-{m}-{d} {h}:{i}:{s}')} let arr = getTimeList(data.interval, data.isRealTime)
})
res2.data.groupDeviceData.dataList = arr.map(v => {
let data = res2.data.groupDeviceData.dataList.find(vv => parseTime(vv.time, '{y}-{m}-{d} {h}') === v)
return {...data, time: v}
})
}
if (data.interval === '3') {
let arr = getTimeList(data.interval, data.isRealTime)
console.log('arr', arr)
res2.data.groupDeviceData.dataList = arr.map(v => {
let data = res2.data.groupDeviceData.dataList.find(vv => parseTime(vv.time, '{y}-{m}-{d}') === v)
return {...data, time: v}
})
}
if (data.interval === '4') {
let arr = getTimeList(data.interval, data.isRealTime)
console.log('arr', arr)
res2.data.groupDeviceData.dataList = arr.map(v => {
let data = res2.data.groupDeviceData.dataList.find(vv => parseTime(vv.time, '{y}-{m}-{d}') === v)
return {...data, time: v}
})
}
if (data.interval === '5') {
let arr = getTimeList(data.interval, data.isRealTime)
console.log('arr', arr)
res2.data.groupDeviceData.dataList = arr.map(v => {
let data = res2.data.groupDeviceData.dataList.find(vv => parseTime(vv.time, '{y}-{m}') === v)
return {...data, time: v}
})
}
} else {
if (data.interval === '5') {
res2.data.groupDeviceData.dataList = res2.data.groupDeviceData.dataList.map(e => {
return {...e, time: parseTime(e.time, '{y}-{m}')}
})
} else if (data.interval === '4' || data.interval === '3') {
res2.data.groupDeviceData.dataList = res2.data.groupDeviceData.dataList.map(e => {
return {...e, time: parseTime(e.time, '{y}-{m}-{d}')}
})
} else {
res2.data.groupDeviceData.dataList = res2.data.groupDeviceData.dataList.map(e => {
return {...e, time: parseTime(e.time, '{y}-{m}-{d} {h}:{i}:{s}')}
})
}
} }
console.log(res2)
let returnRes = {} let returnRes = {}
method?.mappingArr?.forEach(v => { method?.mappingArr?.forEach(v => {
let res = res2.data let res = res2.data
@ -64,6 +176,7 @@ const mappingFunction = async (data, method) => {
} }
} }
if (v?.isArray && v?.mapData && Array.isArray(res)) { if (v?.isArray && v?.mapData && Array.isArray(res)) {
console.log(res)
res = res.map(e => e[v.mapData]) res = res.map(e => e[v.mapData])
} }
returnRes = { returnRes = {

Loading…
Cancel
Save