From 0a89f6cb2005d7fafcbc251f4140f27ba9b201a5 Mon Sep 17 00:00:00 2001
From: Joe <1712833832@qq.com>
Date: Tue, 6 Feb 2024 09:43:21 +0800
Subject: [PATCH 01/11] =?UTF-8?q?=E4=BF=AE=E6=94=B9=20=E9=A6=96=E9=A1=B5?=
=?UTF-8?q?=E5=9C=B0=E5=9B=BE=20=E5=9B=BE=E6=A0=87=E5=B1=95=E7=A4=BA?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../pages/Home/components/RoadAndEvents/utils/buttonEvent.js | 1 +
.../pages/Home/components/RoadAndEvents/utils/map.js | 4 ++--
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/buttonEvent.js b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/buttonEvent.js
index c83ffcbf..d7f43c81 100644
--- a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/buttonEvent.js
+++ b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/buttonEvent.js
@@ -29,6 +29,7 @@ export const DeviceForMap = {
* 1 枪机 不可控
*/
const type = JSON.parse(item.otherConfig || "{}")?.ptzCtrl || 1;
+
return cameraIcon[`${type}${+!bool}`];
},
},
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/map.js b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/map.js
index 524388bf..bbfe02d6 100644
--- a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/map.js
+++ b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/map.js
@@ -97,7 +97,7 @@ export class MarkerCluster {
const deviceIcon =
typeof config.iconCallback === "function" &&
- config.iconCallback(currentState, config.item);
+ config.iconCallback(currentState, extData, config.item);
return deviceIcon ? deviceIcon : currentState ? normal : fault;
}
@@ -179,7 +179,7 @@ export class MarkerCluster {
border: 1px solid rgba(42,217,253,0.6);
">
From 1834f195a6cf25596ea2e919c09ccc13d282f289 Mon Sep 17 00:00:00 2001
From: Joe <1712833832@qq.com>
Date: Tue, 6 Feb 2024 09:49:55 +0800
Subject: [PATCH 02/11] =?UTF-8?q?=E9=A6=96=E9=A1=B5=E8=AE=BE=E5=A4=87?=
=?UTF-8?q?=E5=B1=95=E7=A4=BA?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../RoadAndEvents/utils/buttonEvent.js | 21 +++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/buttonEvent.js b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/buttonEvent.js
index d7f43c81..af0471fb 100644
--- a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/buttonEvent.js
+++ b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/buttonEvent.js
@@ -50,6 +50,27 @@ export const DeviceForMap = {
deviceType: "13",
dialog: "SmartDevice",
},
+ 交调: {
+ deviceType: "11",
+ },
+ 合流区: {
+ deviceType: "8",
+ },
+ 护栏碰撞: {
+ deviceType: "6",
+ },
+ 智慧锥桶: {
+ deviceType: "9",
+ },
+ 毫米波雷达: {
+ deviceType: "7",
+ },
+ 气象检测器: {
+ deviceType: "3",
+ },
+ 疲劳唤醒: {
+ deviceType: "10",
+ },
};
export function getHandleDeviceType(item) {
From d76c1aaac6a9bc250067f86046bdbf02e0ae7725 Mon Sep 17 00:00:00 2001
From: Joe <1712833832@qq.com>
Date: Tue, 6 Feb 2024 10:11:04 +0800
Subject: [PATCH 03/11] =?UTF-8?q?=E4=BA=A4=E8=B0=83=E5=A2=9E=E5=8A=A0=20?=
=?UTF-8?q?=E5=88=A0=E9=99=A4=E6=84=9F=E7=9F=A5=E4=BA=8B=E4=BB=B6=E8=BD=A6?=
=?UTF-8?q?=E8=BE=86=E7=B1=BB=E5=9E=8B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../components/LineChart/chart.js | 102 ++++++++++
.../components/LineChart/index.vue | 23 +++
.../components/LineChartForTraffic/chart.js | 110 ++++++++++
.../components/LineChartForTraffic/index.vue | 23 +++
.../Dialogs/Intermodulation/index.vue | 188 ++++++++++++++++++
.../Dialogs/PerceiveEvent/index.vue | 19 +-
.../Home/components/RoadAndEvents/index.vue | 2 +
.../RoadAndEvents/utils/buttonEvent.js | 1 +
8 files changed, 458 insertions(+), 10 deletions(-)
create mode 100644 ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/Intermodulation/components/LineChart/chart.js
create mode 100644 ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/Intermodulation/components/LineChart/index.vue
create mode 100644 ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/Intermodulation/components/LineChartForTraffic/chart.js
create mode 100644 ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/Intermodulation/components/LineChartForTraffic/index.vue
create mode 100644 ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/Intermodulation/index.vue
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/Intermodulation/components/LineChart/chart.js b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/Intermodulation/components/LineChart/chart.js
new file mode 100644
index 00000000..b8fb844a
--- /dev/null
+++ b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/Intermodulation/components/LineChart/chart.js
@@ -0,0 +1,102 @@
+import * as echarts from "echarts";
+
+export const lineChartOption = {
+ color: ["#2AD9FD"],
+ xAxis: {
+ name: "日",
+ type: "category",
+ // boundaryGap: ["15%", "15%"],
+ nameTextStyle: {
+ color: "#2AD9FD",
+ align: "right",
+ fontSize: 15,
+ padding: [0, -15, 0, 0],
+ },
+ boundaryGap: false,
+ data: ["1", "5", "10", "15", "20", "25", "30"],
+ axisTick: {
+ show: false,
+ },
+ axisLabel: {
+ color: "#fff",
+ fontSize: 12,
+ },
+ axisLine: {
+ lineStyle: {
+ color: "#668598",
+ },
+ },
+ },
+ grid: {
+ left: 51,
+ top: 15,
+ bottom: 24,
+ right: 36,
+ },
+ tooltip: {
+ trigger: "axis",
+ backgroundColor: "rgba(0,0,0,0.36)",
+ borderWidth: 0,
+ textStyle: {
+ color: "#fff",
+ },
+ formatter: "{b}:{c}",
+ // formatter: function([axisData]) {
+ // console.log(axisData)
+ // let str = axisData.name + ' ' + axisData.data + '辆';
+ // // params.forEach(item => {
+ // // if (item.seriesName === '供温' || item.seriesName === '回温') {
+ // // str += item.marker + item.seriesName + ' : ' + item.data.value + ' ℃' + '';
+ // // } else if (item.seriesName === '压力值(Mpa)') {
+ // // // 柱状图渐变时设置marker
+ // // item.marker = '
';
+ // // str += item.marker + item.seriesName + ' : ' + item.data.value + ' m';
+ // // }
+ // // });
+ // return str;
+ // }
+ },
+ yAxis: {
+ max: 100,
+ type: "value",
+ // nameGap: 24,
+ splitLine: {
+ lineStyle: {
+ type: [6, 9],
+ color: "rgba(255,255,255, .3)",
+ // dashOffset: [10, 10],
+ // cap: 21,
+ // width: 2
+ },
+ },
+ axisLabel: {
+ color: "#fff",
+ fontSize: 12,
+ formatter: "{value} %",
+ },
+ },
+ series: [
+ {
+ data: [0, 90, 65, 90, 45, 36, 27],
+ type: "line",
+ showSymbol: false,
+ smooth: true,
+ lineStyle: {
+ color: "#2AD9FD",
+ },
+ areaStyle: {
+ opacity: 0.8,
+ color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
+ {
+ offset: 0,
+ color: "rgb(90, 227, 255, .9)",
+ },
+ {
+ offset: 1,
+ color: "rgba(42,217,253,0)",
+ },
+ ]),
+ },
+ },
+ ],
+};
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/Intermodulation/components/LineChart/index.vue b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/Intermodulation/components/LineChart/index.vue
new file mode 100644
index 00000000..31d73d94
--- /dev/null
+++ b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/Intermodulation/components/LineChart/index.vue
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/Intermodulation/components/LineChartForTraffic/chart.js b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/Intermodulation/components/LineChartForTraffic/chart.js
new file mode 100644
index 00000000..a9c61988
--- /dev/null
+++ b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/Intermodulation/components/LineChartForTraffic/chart.js
@@ -0,0 +1,110 @@
+import * as echarts from "echarts";
+
+export const lineChartOption = {
+ color: ["#2AD9FD"],
+ xAxis: {
+ name: "时",
+ type: "category",
+ // boundaryGap: ["15%", "15%"],
+ nameTextStyle: {
+ color: "#2AD9FD",
+ align: "right",
+ fontSize: 15,
+ padding: [0, -15, 0, 0],
+ },
+ boundaryGap: false,
+ data: ["0", "2", "4", "6", "8", "10", "12", "14", "16", "18", "20", "22"],
+ axisTick: {
+ show: false,
+ },
+ axisLabel: {
+ color: "#fff",
+ fontSize: 12,
+ },
+ axisLine: {
+ lineStyle: {
+ color: "#668598",
+ },
+ },
+ },
+
+ yAxis: {
+ max: 1,
+ name: "辆",
+ type: "value",
+ nameTextStyle: {
+ color: "#2AD9FD",
+ // align: "right",
+ fontSize: 15,
+ // padding: [0, -15, 0, 0],
+ },
+ // nameGap: 24,
+ splitLine: {
+ lineStyle: {
+ type: [6, 9],
+ color: "rgba(255,255,255, .3)",
+ // dashOffset: [10, 10],
+ // cap: 21,
+ // width: 2
+ },
+ },
+ axisLabel: {
+ color: "#fff",
+ fontSize: 12,
+ formatter: "{value}",
+ },
+ },
+ grid: {
+ left: 51,
+ top: 33,
+ bottom: 24,
+ right: 36,
+ },
+ tooltip: {
+ trigger: "axis",
+ backgroundColor: "rgba(0,0,0,0.36)",
+ borderWidth: 0,
+ textStyle: {
+ color: "#fff",
+ },
+ formatter: "{b}:{c}",
+ // formatter: function([axisData]) {
+ // console.log(axisData)
+ // let str = axisData.name + ' ' + axisData.data + '辆';
+ // // params.forEach(item => {
+ // // if (item.seriesName === '供温' || item.seriesName === '回温') {
+ // // str += item.marker + item.seriesName + ' : ' + item.data.value + ' ℃' + '';
+ // // } else if (item.seriesName === '压力值(Mpa)') {
+ // // // 柱状图渐变时设置marker
+ // // item.marker = '
';
+ // // str += item.marker + item.seriesName + ' : ' + item.data.value + ' m';
+ // // }
+ // // });
+ // return str;
+ // }
+ },
+ series: [
+ {
+ data: [0, 0.3, 0.6, 0.24, 0.15, 0.66, 0.9, 0, 0.36, 0.51, 0.72, 0.6, 0.3],
+ type: "line",
+ showSymbol: false,
+ smooth: true,
+ lineStyle: {
+ color: "#2AD9FD",
+ },
+ areaStyle: {
+ opacity: 0.8,
+ color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
+ {
+ offset: 0,
+ color: "rgb(90, 227, 255, .9)",
+ },
+ {
+ offset: 1,
+ color: "rgba(42,217,253,0)",
+ },
+ ]),
+ },
+ },
+ ],
+};
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/Intermodulation/components/LineChartForTraffic/index.vue b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/Intermodulation/components/LineChartForTraffic/index.vue
new file mode 100644
index 00000000..31d73d94
--- /dev/null
+++ b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/Intermodulation/components/LineChartForTraffic/index.vue
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/Intermodulation/index.vue b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/Intermodulation/index.vue
new file mode 100644
index 00000000..057d3960
--- /dev/null
+++ b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/Intermodulation/index.vue
@@ -0,0 +1,188 @@
+
+
+
+
+
+
+
+
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/PerceiveEvent/index.vue b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/PerceiveEvent/index.vue
index f406e4d2..3f395ffc 100644
--- a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/PerceiveEvent/index.vue
+++ b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/PerceiveEvent/index.vue
@@ -97,15 +97,14 @@ export default {
options: []
},
},
-
- {
- label: "车辆类型:",
- key: "vehicleType",
- type: "select",
- options: {
- options: vehicleTypeList
- },
- },
+ // {
+ // label: "车辆类型:",
+ // key: "vehicleType",
+ // type: "select",
+ // options: {
+ // options: vehicleTypeList
+ // },
+ // },
{
label: "事件描述:",
key: "remark",
@@ -239,7 +238,7 @@ export default {
id: this.dialogData.id,
warningType: this.data.warningType,
warningSubclass: this.data.warningSubclass,
- vehicleType: this.data.vehicleType,
+ // vehicleType: this.data.vehicleType,
remark: this.data.remark,
lane: this.data.lane.join(",")
}
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/index.vue b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/index.vue
index 2e3e528d..7b02fefb 100644
--- a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/index.vue
+++ b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/index.vue
@@ -46,6 +46,7 @@ import Broadcast from "./../Dialogs/Broadcast/index.vue";
import TrafficIncidents from "./../Dialogs/TrafficIncidents/index.vue";
import PerceiveEvent from "./../Dialogs/PerceiveEvent/index.vue";
import SmartDevice from "./../Dialogs/SmartDevice/index.vue";
+import Intermodulation from "./../Dialogs/Intermodulation/index.vue";
export default {
name: 'RoadAndEvents',
@@ -59,6 +60,7 @@ export default {
TrafficIncidents,
PerceiveEvent,
SmartDevice,
+ Intermodulation
},
data() {
return {
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/buttonEvent.js b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/buttonEvent.js
index af0471fb..a1ce3709 100644
--- a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/buttonEvent.js
+++ b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/buttonEvent.js
@@ -52,6 +52,7 @@ export const DeviceForMap = {
},
交调: {
deviceType: "11",
+ dialog: "Intermodulation",
},
合流区: {
deviceType: "8",
From 16f482c01b3ea369b5670e42c850e115ee1ff376 Mon Sep 17 00:00:00 2001
From: Joe <1712833832@qq.com>
Date: Tue, 6 Feb 2024 10:38:12 +0800
Subject: [PATCH 04/11] =?UTF-8?q?=E4=BA=A4=E9=80=9A=E4=BA=8B=E4=BB=B6?=
=?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=99=84=E8=BF=91=E7=9B=B8=E6=9C=BA?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../pages/Home/components/Dialogs/TrafficIncidents/index.vue | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/TrafficIncidents/index.vue b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/TrafficIncidents/index.vue
index 96beb4bc..d28cd585 100644
--- a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/TrafficIncidents/index.vue
+++ b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/TrafficIncidents/index.vue
@@ -1,6 +1,8 @@
@@ -10,6 +12,7 @@
import Dialog from "@screen/components/Dialog/index.vue";
import Descriptions from '@screen/components/Descriptions.vue';
// import { getRoadInfoByStakeMark, getProduct } from "@screen/pages/Home/components/RoadAndEvents/utils/httpList.js"
+import Video from "@screen/components/Video"
import request from "@/utils/request";
import { dialogDelayVisible } from "./../mixin"
@@ -21,6 +24,7 @@ export default {
components: {
Dialog,
Descriptions,
+ Video
},
data() {
return {
@@ -129,6 +133,7 @@ export default {
color: #fff;
display: flex;
flex-direction: column;
+ gap: 12px;
.camera-video {
flex: 1.5;
From d159d36c04624d23c1048b184dbdac5432e4318b Mon Sep 17 00:00:00 2001
From: Joe <1712833832@qq.com>
Date: Tue, 6 Feb 2024 11:21:44 +0800
Subject: [PATCH 05/11] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=A6=96=E9=A1=B5bug?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../JiHeExpressway/components/Video/Video.vue | 6 +++++-
.../JiHeExpressway/components/Video/index.vue | 7 ++++++-
.../JiHeExpressway/components/Video/videoStream.js | 4 ++--
.../components/Dialogs/TrafficIncidents/index.vue | 14 +++++++++++++-
.../Home/components/RoadAndEvents/utils/map.js | 8 +++++---
5 files changed, 31 insertions(+), 8 deletions(-)
diff --git a/ruoyi-ui/src/views/JiHeExpressway/components/Video/Video.vue b/ruoyi-ui/src/views/JiHeExpressway/components/Video/Video.vue
index 801faa20..e496002a 100644
--- a/ruoyi-ui/src/views/JiHeExpressway/components/Video/Video.vue
+++ b/ruoyi-ui/src/views/JiHeExpressway/components/Video/Video.vue
@@ -19,11 +19,15 @@ export default {
url: {
type: String,
default: null
+ },
+ rangeIndex: {
+ type: Number,
+ default: 0
}
},
async mounted() {
// const player = await openLiveVideo(this.$refs.videoContainerRef, { camId: this.camId, url: this.url, pileNum: this.pileNum })
- const player = new HttpLivePlayer(this.$refs.videoContainerRef, { camId: this.camId, url: this.url, pileNum: this.pileNum });
+ const player = new HttpLivePlayer(this.$refs.videoContainerRef, { camId: this.camId, url: this.url, pileNum: this.pileNum, rangeIndex: this.rangeIndex });
this.$once("hook:beforeDestroy", () => player?.destroy());
}
diff --git a/ruoyi-ui/src/views/JiHeExpressway/components/Video/index.vue b/ruoyi-ui/src/views/JiHeExpressway/components/Video/index.vue
index 03409082..a47c01f4 100644
--- a/ruoyi-ui/src/views/JiHeExpressway/components/Video/index.vue
+++ b/ruoyi-ui/src/views/JiHeExpressway/components/Video/index.vue
@@ -13,7 +13,8 @@