From 98ff8d75ece2d4d3f0d9d509de694993691b8ad1 Mon Sep 17 00:00:00 2001
From: SunTao <328867980@qq.com>
Date: Wed, 20 Nov 2024 18:11:03 +0800
Subject: [PATCH] =?UTF-8?q?fix=EF=BC=9A=E4=BF=AE=E6=94=B9=E5=9C=B0?=
=?UTF-8?q?=E5=9B=BE=E5=88=87=E6=8D=A2=E5=A4=A7=E7=B1=BB=E5=9C=B0=E5=9B=BE?=
=?UTF-8?q?=E6=89=93=E7=82=B9=E9=97=AE=E9=A2=98=EF=BC=8C=E5=9C=B0=E5=9B=BE?=
=?UTF-8?q?=E5=9B=BE=E5=B1=82=E9=80=89=E4=B8=AD=E4=BF=AE=E6=94=B9=EF=BC=8C?=
=?UTF-8?q?=E4=BB=8A=E6=97=A5=E5=B7=A1=E6=9F=A5=E4=BF=AE=E6=94=B9=EF=BC=8C?=
=?UTF-8?q?=E5=B7=A1=E6=A3=80=E8=BD=A6=E8=BE=86=E5=A2=9E=E5=8A=A0=E5=AE=9A?=
=?UTF-8?q?=E6=97=B6=E5=99=A8=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/views/big-screen/index.vue | 25 +-
.../inspection-vehicles.vue | 54 ++--
.../overview-components/today-inspection.vue | 69 +++--
.../inspection-warn/warning-center/index.vue | 242 +++++++++++++-----
.../inspection/surface-management/index.vue | 13 +-
5 files changed, 288 insertions(+), 115 deletions(-)
diff --git a/src/views/big-screen/index.vue b/src/views/big-screen/index.vue
index 3a48173..67b13ea 100644
--- a/src/views/big-screen/index.vue
+++ b/src/views/big-screen/index.vue
@@ -2,7 +2,7 @@
* @Author: SunTao 328867980@qq.com
* @Date: 2024-10-17 11:34:00
* @LastEditors: SunTao 328867980@qq.com
- * @LastEditTime: 2024-11-20 14:32:46
+ * @LastEditTime: 2024-11-20 17:08:11
* @FilePath: \znxjxt-ui\src\views\big-screen\index.vue
* @Description: 大屏首页
-->
@@ -36,7 +36,10 @@
v-for="(item, index) in messageList"
:key="`message-item-${index}`"
>
-
+
{
+ const map = this.$refs.roadMap.instance.get("map");
+ map.removeInteraction(this.selectedFeatures);
+ this.selectedFeatures = null;
+ });
this.showImageDialog = false;
},
@@ -705,7 +715,10 @@ export default {
}
return [];
});
- this.drawPoint();
+ // 如果不是病害巡检,则绘制点位
+ if (this.elementDiv !== "DiseaseScreen") {
+ this.drawPoint();
+ }
}
});
},
@@ -931,9 +944,9 @@ export default {
/* 地图选中feature事件 */
featureSelect(e) {
const map = this.$refs.roadMap.instance.get("map");
- let selectedFeatures = e.selected;
- if (selectedFeatures.length > 0) {
- let feature = selectedFeatures[0];
+ this.selectedFeatures = e.selected;
+ if (this.selectedFeatures.length > 0) {
+ let feature = this.selectedFeatures[0];
let features = feature.get("features");
// 点击线段事件
if (feature.getProperties().type === "line") {
diff --git a/src/views/big-screen/overview-components/inspection-vehicles.vue b/src/views/big-screen/overview-components/inspection-vehicles.vue
index 5940b97..29f3d99 100644
--- a/src/views/big-screen/overview-components/inspection-vehicles.vue
+++ b/src/views/big-screen/overview-components/inspection-vehicles.vue
@@ -2,8 +2,8 @@
* @Author: SunTao 328867980@qq.com
* @Date: 2024-11-08 09:40:18
* @LastEditors: SunTao 328867980@qq.com
- * @LastEditTime: 2024-11-19 13:32:51
- * @FilePath: \znxjxt-ui\src\views\big-screen\disease-components\inspection-vehicles.vue
+ * @LastEditTime: 2024-11-20 16:32:29
+ * @FilePath: \znxjxt-ui\src\views\big-screen\overview-components\inspection-vehicles.vue
* @Description: 总览大屏-巡检车辆
-->
@@ -43,7 +43,7 @@
height="85%"
>
-
+
车辆状态:
+ {{ scope.row.aiotStatus }}
+
+
+ 网络状态:
{{ scope.row.status }}
设备状态:
- {{ scope.row.status }}
+ {{ scope.row.serverStatus }}
{
+ getCarList({ no: this.tableInput }).then(({ code, data }) => {
+ if (code === 200) {
+ this.carNum = data.total;
+ this.tableTotal = data.total;
+ this.onlineNum = data.online;
+ this.inspectionTableData = data.rows;
+ }
+ });
+ }, 5000);
getCarList({ no: this.tableInput }).then(({ code, data }) => {
- if (code === 200) {
- this.carNum = data.total;
- this.tableTotal = data.total;
- this.onlineNum = data.online;
- this.inspectionTableData = data.rows;
- }
- });
+ if (code === 200) {
+ this.carNum = data.total;
+ this.tableTotal = data.total;
+ this.onlineNum = data.online;
+ this.inspectionTableData = data.rows;
+ }
+ });
},
/* 表格详情事件 */
@@ -233,15 +249,17 @@ export default {
viewCancel() {
this.viewTitle = "";
this.showViewVisible = false;
- closeVideoUrl({ id: this.dialogItem.clientId })
- .then(({ code, data }) => {
- if (code === 200) {
- console.log(data);
- this.dialogItem = {};
- }
- })
+ closeVideoUrl({ id: this.dialogItem.clientId }).then(({ code, data }) => {
+ if (code === 200) {
+ console.log(data);
+ this.dialogItem = {};
+ }
+ });
},
},
+ destroyed() {
+ clearInterval(this.timer);
+ },
};
diff --git a/src/views/big-screen/overview-components/today-inspection.vue b/src/views/big-screen/overview-components/today-inspection.vue
index d3f5117..2d38a7d 100644
--- a/src/views/big-screen/overview-components/today-inspection.vue
+++ b/src/views/big-screen/overview-components/today-inspection.vue
@@ -2,8 +2,8 @@
* @Author: SunTao 328867980@qq.com
* @Date: 2024-10-18 09:42:49
* @LastEditors: SunTao 328867980@qq.com
- * @LastEditTime: 2024-11-18 13:36:55
- * @FilePath: \znxjxt-ui\src\views\big-screen\disease-components\today-inspection.vue
+ * @LastEditTime: 2024-11-20 16:27:24
+ * @FilePath: \znxjxt-ui\src\views\big-screen\overview-components\today-inspection.vue
* @Description: 总览大屏-今日巡查
-->
@@ -17,9 +17,13 @@
{{ all }}个
-
@@ -669,31 +673,50 @@ export default {
}
}
+ // .right-rate {
+ // width: 100%;
+ // height: 45%;
+ // padding-left: 1rem;
+ // display: flex;
+ // justify-content: center;
+ // line-height: 3rem;
+ // background-image: url("~@/assets/screen/disease/right-rate.png");
+ // background-repeat: no-repeat;
+ // background-size: 100%;
+ // background-position: 100% 50%;
+ // color: #aac6c7;
+
+ // span {
+ // font-size: 1.2rem;
+ // font-weight: 800;
+ // font-family: "DouYu";
+ // margin-right: 0.5rem;
+ // background: linear-gradient(
+ // to bottom,
+ // #ffffff,
+ // #e9bc5c
+ // ); /*设置渐变的方向从左到右 颜色从ff0000到ffff00*/
+ // background-clip: text; /*将设置的背景颜色限制在文字中*/
+ // -webkit-text-fill-color: transparent; /*给文字设置成透明*/
+ // }
+ // }
+
.right-rate {
width: 100%;
height: 45%;
- padding-left: 1rem;
display: flex;
- justify-content: center;
- line-height: 3rem;
- background-image: url("~@/assets/screen/disease/right-rate.png");
- background-repeat: no-repeat;
- background-size: 100%;
- background-position: 100% 50%;
- color: #aac6c7;
+ align-items: center;
+ font-family: "DouYu";
+ font-size: 0.9rem;
- span {
- font-size: 1.2rem;
- font-weight: 800;
- font-family: "DouYu";
- margin-right: 0.5rem;
- background: linear-gradient(
- to bottom,
- #ffffff,
- #e9bc5c
- ); /*设置渐变的方向从左到右 颜色从ff0000到ffff00*/
- background-clip: text; /*将设置的背景颜色限制在文字中*/
- -webkit-text-fill-color: transparent; /*给文字设置成透明*/
+ .up {
+ color: #ff2e2e;
+ padding: 0 0.5rem;
+ }
+
+ .el-icon-top {
+ font-size: 1.5rem;
+ color: red;
}
}
}
diff --git a/src/views/xj/inspection-warn/warning-center/index.vue b/src/views/xj/inspection-warn/warning-center/index.vue
index 2d336d2..1c74809 100644
--- a/src/views/xj/inspection-warn/warning-center/index.vue
+++ b/src/views/xj/inspection-warn/warning-center/index.vue
@@ -2,7 +2,7 @@
* @Author: SunTao 328867980@qq.com
* @Date: 2024-11-20 11:58:33
* @LastEditors: SunTao 328867980@qq.com
- * @LastEditTime: 2024-11-20 14:33:22
+ * @LastEditTime: 2024-11-20 15:49:28
* @FilePath: \znxjxt-ui\src\views\xj\inspection-warn\warning-center\index.vue
* @Description: 巡检预警中心
-->
@@ -76,70 +76,110 @@
>重置
-
-
-
-
-
-
- {{ item.title }}({{ item.count }})
-
-
-
-
-
-
-
-
-
-
-
+
+
+ 全部已读
+
+
+
+ 批量删除
+
+
+
+
+
+
+
+
+
+
+ {{ item.title }}({{ item.count }})
+
+
+
+
+
+
+ asd
+ {{ scope.row.segmentName }}
+
+
+
+
+
+
+
+
+
+
@@ -177,6 +217,8 @@ export default {
],
// 预警列表
warningList: [],
+ // 列表勾选数据
+ checkIds: [],
// 分页-页数页码
pagination: {
page: 1,
@@ -186,6 +228,8 @@ export default {
tableTotal: 0,
// 列表加载状态
loading: false,
+ // 批量删除状态
+ multiple: true,
};
},
watch: {
@@ -252,10 +296,64 @@ export default {
endTime: this.dateTime ? this.dateTime[1] : "",
};
setTimeout(() => {
+ this.warningList = [{id:"1", segmentName: "sSSSSSS" }];
this.loading = false;
}, 100);
},
+ /**
+ * @description: 点击列表行事件
+ * @param {*} val
+ * @return {*}
+ */
+ handleTableChange(val) {
+ if (val) {
+ console.log(val, "ddd");
+ this.getList();
+ }
+ },
+
+ /**
+ * @description: 列表选择改变事件
+ * @param {*} val
+ * @return {*}
+ */
+ handleSelectionChange(selection) {
+ this.checkIds = selection.map((item) => item.id);
+ this.multiple = !selection.length;
+ },
+
+ /**
+ * @description: 批量删除事件
+ * @return {*}
+ */
+ handleDelete(row) {
+ const checkIds = row ? [row.id] : this.checkIds;
+ if (!checkIds.length) {
+ this.$modal.msgWarning("请选择要删除的记录");
+ return;
+ }
+ this.$modal
+ .confirm(`是否确认删除选中的${checkIds.length}条记录?`)
+ .then(() => {
+ // return deleteRoad(checkIds);
+ })
+ .then(() => {
+ this.getList();
+ this.$refs.warningTable.clearSelection();
+ this.$modal.msgSuccess("删除成功");
+ })
+ .catch(() => {});
+ },
+
+ /**
+ * @description: 全部已读事件
+ * @return {*}
+ */
+ handleRead() {
+ this.getList();
+ },
+
/**
* @description: 切换分页
* @param {*} arg
@@ -286,6 +384,22 @@ export default {
padding: 1rem;
}
+.el-table {
+ .table-index {
+ &::before {
+ content: "";
+ position: absolute;
+ left: 0;
+ top: 50%;
+ transform: translateY(-50%);
+ width: 0.8rem;
+ height: 0.8rem;
+ border-radius: 50%;
+ background-color: #f56c6c;
+ }
+ }
+}
+
/* 分页样式 */
.pagination-part {
width: 100%;
diff --git a/src/views/xj/inspection/surface-management/index.vue b/src/views/xj/inspection/surface-management/index.vue
index fcca6eb..1070f34 100644
--- a/src/views/xj/inspection/surface-management/index.vue
+++ b/src/views/xj/inspection/surface-management/index.vue
@@ -2,7 +2,7 @@
* @Author: SunTao 328867980@qq.com
* @Date: 2024-10-14 13:59:51
* @LastEditors: SunTao 328867980@qq.com
- * @LastEditTime: 2024-11-14 15:26:15
+ * @LastEditTime: 2024-11-20 15:01:48
* @FilePath: \znxjxt-ui\src\views\xj\inspection\surface-management\index.vue
* @Description: 巡检管理-路面病害对比
-->
@@ -252,7 +252,10 @@ export default {
this.dialogImgLeft = item.data;
if (Object.keys(this.surfaceListRight).length > 0) {
const rightImg = this.surfaceListRight.data.filter((it) => {
- return it.snapshotId === item.data.snapshotId;
+ if (it.snapshotId === item.data.snapshotId) {
+ return it;
+ }
+ return [];
});
this.dialogImgRight = rightImg[0];
}
@@ -264,10 +267,12 @@ export default {
this.dialogImgRight = item.data;
if (Object.keys(this.surfaceListLeft).length > 0) {
const leftImg = this.surfaceListLeft.data.filter((it) => {
- return it.snapshotId === item.data.snapshotId;
+ if (it.snapshotId === item.data.snapshotId) {
+ return it;
+ }
+ return [];
});
this.dialogImgLeft = leftImg[0];
-
}
this.viewVisible = true;
},