Merge remote-tracking branch 'origin/dev-nx' into dev-nx

This commit is contained in:
liang.chao 2024-08-27 15:54:01 +08:00
commit 73ca957a7c
1 changed files with 78 additions and 41 deletions

View File

@ -37,14 +37,14 @@
</el-card>
<el-row :gutter="24" class="map-container">
<el-col :span="6">
<el-col :span="6" v-loading="loadingData">
<el-tabs type="border-card" class="map-left">
<el-tab-pane label="行程">
<template v-if="tripList.length > 0">
<template v-if="tripInfoListNew.length > 0">
<div
class="trip-container"
@click="handlePreviewTrip(item, index)"
v-for="(item, index) in tripList"
v-for="(item, index) in tripInfoListNew"
:key="index"
>
<div class="left-num">{{ index + 1 }}</div>
@ -226,6 +226,8 @@ export default {
parkList: [],
warningList: [],
loadingData: true,
tripInfoListNew: [], //
}
},
created() {},
@ -277,29 +279,30 @@ export default {
this.$message.error('请选择时间范围!')
return
}
this.loadingData = true
this.tripParams.iotId = this.iotCode
const res = await getIotDeviceTripApi({ ...this.tripParams })
console.log(res, '行程信息--')
// const res = await getIotDeviceTripApi({ ...this.tripParams })
// console.log(res, '--')
const resS = await getIotDeviceParkDetailApi({ ...this.tripParams })
console.log(resS, '停留点信息--')
const params = { ...this.tripParams }
params.beginTime = params.beginTime.slice(0, 10)
params.endTime = params.endTime.slice(0, 10)
const resSs = await getIotDeviceAlarmApi(params)
this.loadingData = false
this.warningList = resSs.data
this.warningList.forEach((e) => {
e.warnTime = moment(parseInt(e.startAlarmTime)).format(
'YYYY-MM-DD HH:mm:ss',
)
})
console.log(resSs, '报警信息--')
this.parkList = resS.data
this.parkList.forEach((e) => {
console.log(e, '----')
e.startTime = moment(parseInt(e.beginTime)).format(
'YYYY-MM-DD HH:mm:ss',
)
@ -317,37 +320,71 @@ export default {
60,
)
})
let tripInfo = JSON.parse(res.msg)
console.log(tripInfo, '反序列化之后', this.parkList)
let addressList = []
if (tripInfo.addressmap) {
addressList = Object.keys(tripInfo.addressmap)
}
tripInfo.totaltrips.forEach((e) => {
e.startTime = moment(e.trackstarttime).format(
'YYYY-MM-DD HH:mm:ss',
)
e.endTime = moment(e.trackendtime).format('YYYY-MM-DD HH:mm:ss')
e.drivingDuration = parseInt(
(e.trackendtime - e.trackstarttime) / 1000,
)
addressList.forEach((v) => {
if (v.indexOf(e.slat.toString().slice(0, 7)) > -1) {
e.startAddress = tripInfo.addressmap[v]
}
if (v.indexOf(e.elat.toString().slice(0, 7)) > -1) {
e.endAddress = tripInfo.addressmap[v]
//
this.tripInfoListNew = []
let tripInfoList = []
if (this.parkList.length > 1) {
this.parkList.forEach((e, index) => {
if (index < this.parkList.length - 1) {
let obj = {
startTime: e.startTime,
startAddress: e.address,
startLng: e.callon,
startLat: e.callat,
endLng: '',
endLat: '',
endTime: '',
endAddress: '',
}
tripInfoList.push(obj)
}
})
})
this.tripList = tripInfo.totaltrips
this.parkList.forEach((e, index) => {
if (index > 0) {
tripInfoList[index - 1].endTime = e.startTime
tripInfoList[index - 1].endAddress = e.address
tripInfoList[index - 1].endLng = e.callon
tripInfoList[index - 1].endLat = e.callat
}
})
}
console.log(tripInfo, '处理之后-----')
this.tripInfoListNew = tripInfoList
// console.log(tripInfoList, '---')
// let tripInfo = JSON.parse(res.msg)
// console.log(tripInfo, '', this.parkList)
// let addressList = []
// if (tripInfo.addressmap) {
// addressList = Object.keys(tripInfo.addressmap)
// }
// tripInfo.totaltrips.forEach((e) => {
// e.startTime = moment(e.trackstarttime).format(
// 'YYYY-MM-DD HH:mm:ss',
// )
// e.endTime = moment(e.trackendtime).format('YYYY-MM-DD HH:mm:ss')
// e.drivingDuration = parseInt(
// (e.trackendtime - e.trackstarttime) / 1000,
// )
// addressList.forEach((v) => {
// if (v.indexOf(e.slat.toString().slice(0, 7)) > -1) {
// e.startAddress = tripInfo.addressmap[v]
// }
// if (v.indexOf(e.elat.toString().slice(0, 7)) > -1) {
// e.endAddress = tripInfo.addressmap[v]
// }
// })
// })
// this.tripList = tripInfo.totaltrips
// console.log(tripInfo, '-----')
},
/** 查看行程 */
handlePreviewTrip(item, index) {
@ -357,10 +394,10 @@ export default {
}
this.map.clearOverlays()
let pointList = []
this.linePointList[0].lng = item.slon
this.linePointList[0].lat = item.slat
this.linePointList[1].lng = item.elon
this.linePointList[1].lat = item.elat
this.linePointList[0].lng = item.startLng
this.linePointList[0].lat = item.startLat
this.linePointList[1].lng = item.endLng
this.linePointList[1].lat = item.endLat
if (this.linePointList.length === 0) return
for (var i = 0; i < this.linePointList.length; i++) {
pointList.push(
@ -379,9 +416,9 @@ export default {
// polyline.setStrokeWeight(2) // 线
this.trackAni = new BMapGLLib.TrackAnimation(this.map, polyline, {
overallView: true, //
tilt: 30, // 55
duration: 3000, // 10000ms
delay: 500, // 0ms
tilt: 55, // 55
duration: 1500, // 10000ms
delay: 100, // 0ms
})
this.trackAni.start()
//