From 824ab5e65cd71b6516f047c7deeac7923694787d Mon Sep 17 00:00:00 2001
From: dj <1042039504@qq.com>
Date: Sun, 29 Dec 2024 18:50:22 +0800
Subject: [PATCH] =?UTF-8?q?fix=20:=20=E4=BC=98=E5=8C=96=E9=9A=A7=E9=81=93?=
=?UTF-8?q?=E6=A8=A1=E6=8B=9F=E9=A6=96=E9=A1=B5=E7=9A=84=E9=9A=A7=E9=81=93?=
=?UTF-8?q?=E9=A2=84=E8=A7=88=E6=A8=A1=E5=BC=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../tunnelScene/TunnelSceneSimulate-back.vue | 477 ++++++++++++++++++
.../tunnelScene/TunnelSceneSimulate.vue | 92 ++--
src/views/tunnel-simulate/index.vue | 272 +++++-----
3 files changed, 658 insertions(+), 183 deletions(-)
create mode 100644 src/components/content/tunnelScene/TunnelSceneSimulate-back.vue
diff --git a/src/components/content/tunnelScene/TunnelSceneSimulate-back.vue b/src/components/content/tunnelScene/TunnelSceneSimulate-back.vue
new file mode 100644
index 0000000..171180b
--- /dev/null
+++ b/src/components/content/tunnelScene/TunnelSceneSimulate-back.vue
@@ -0,0 +1,477 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/content/tunnelScene/TunnelSceneSimulate.vue b/src/components/content/tunnelScene/TunnelSceneSimulate.vue
index 985573a..171180b 100644
--- a/src/components/content/tunnelScene/TunnelSceneSimulate.vue
+++ b/src/components/content/tunnelScene/TunnelSceneSimulate.vue
@@ -3,40 +3,40 @@
-
-
- 是否确定删除该设备
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -89,6 +89,7 @@ const params = defineProps([
"deviceData",
"devRealtimeData",
"simulateData",
+ "tunnelAlias",
]); //接收参数看是不是编辑模式,如果是编辑模式,则需要做一些处理
let isedit = ref(params.isedit);
@@ -111,7 +112,7 @@ onMounted(handleMounted);
// 挂载后回调
async function handleMounted() {
- const doms = [info.value.$el, edit.value.$el];
+ const doms = [info.value.$el];//edit.value.$el
demo = new ThreeDScene(three, content.value);
//看是不是预览模式,然后继续相关的操作(会在demo中的初始化中进行)
// "../../../../public/tunnelModel/chanel-have-wall-now-use.gltf"
@@ -125,8 +126,8 @@ async function handleMounted() {
demo.addTween(TWEEN);
demo.addCSS3Renderer(CSS3DRenderer, CSS3DSprite, doms);
demo.setDistance(10);
- lClickCallback(demo); //绑定左键回调
- rClickCallback(demo); //绑定右键回调
+ // lClickCallback(demo); //绑定左键回调
+ // rClickCallback(demo); //绑定右键回调
//加载HDR背景图片
demo.loadBackground(hdrLoader, backColorSet);
@@ -142,19 +143,6 @@ async function handleMounted() {
// params.tunnelId,
// params.form
// );
- //todo 父组件传的设备数据params.deviceData
- // const newModelList=[...params.deviceData.frequencyChangerList,...params.deviceData.windPressureSensorList, ...params.deviceData.sensorList]
- // newModelList.map((item,index1)=>{
- // const index=index1+1
- // item.threshold=""
- // if(index ({
...item,
+ data:'10',
equipmentType: item.equipmentType.startsWith("frequency")
? "frequency"
: "sensor",
}));
+ console.log('modeData',modeData)
demo.editTunnelInit(modeData);
// 初始化标牌信息
- demo.SignsInf("dsadsa", String(params.tunnelLength));
+ demo.SignsInf(params.tunnelAlias, String(params.tunnelLength));
} catch (err) {}
}
diff --git a/src/views/tunnel-simulate/index.vue b/src/views/tunnel-simulate/index.vue
index 2295741..85bd0ad 100644
--- a/src/views/tunnel-simulate/index.vue
+++ b/src/views/tunnel-simulate/index.vue
@@ -2,11 +2,11 @@
-
+
隧道总长度: {{ tunnelLength }}米
开始模拟开始模拟
模拟爆破
@@ -36,17 +36,19 @@
@@ -60,22 +62,22 @@
@@ -89,35 +91,35 @@
报警时间:
@@ -143,33 +145,33 @@
-
-
+
+
@@ -178,87 +180,87 @@
{{ scope.row.lookupStatus ? "已读" : "未读" }}
+ >{{ scope.row.lookupStatus ? "已读" : "未读" }}
详情
+ type="primary"
+ size="mini"
+ style="font-weight: bold"
+ @click="handleView(scope.row)"
+ link
+ >详情
删除
+ type="danger"
+ size="mini"
+ v-if="roleKey !== 'administrator'"
+ @click="handleDelete(scope.row)"
+ link
+ >删除
@@ -278,9 +280,9 @@ import AirInfo from "@/components/content/airInfo/AirInfo.vue";
import BadGasInfo from "@/components/content/badGasInfo/BadGasInfo.vue";
import ManageBtn from "@/components/manageBtn/index.vue";
import TunnelTitle from "@/components/tunnelTitle/index.vue";
-import { dateFormat } from "@/utils/date.js";
-import { getToken } from "@/utils/auth";
-import { useAuthStore } from "@/store/userstore.js";
+import {dateFormat} from "@/utils/date.js";
+import {getToken} from "@/utils/auth";
+import {useAuthStore} from "@/store/userstore.js";
import {
getLargeScreen,
getLargeScreenInfo,
@@ -292,15 +294,15 @@ import {
endSimulation,
blastingSimulation,
} from "@/api/largeScreen";
-import { ElLoading, ElMessage, ElMessageBox } from "element-plus";
-import { getUserInfo } from "@/api/login";
-import { initSceneData } from "@/api/tunnelScene";
+import {ElLoading, ElMessage, ElMessageBox} from "element-plus";
+import {getUserInfo} from "@/api/login";
+import {initSceneData} from "@/api/tunnelScene";
import {
getScreenSimulateTunnel,
getSimulateTunnelDetail,
getTunnelList,
} from "@/api/tunnelManage";
-import { debounce } from "lodash";
+import {debounce} from "lodash";
const authStore = useAuthStore();
const router = useRouter();
@@ -308,6 +310,7 @@ const previewId = reactive(router.currentRoute.value.params.tunnelId);
const siteId = reactive(router.currentRoute.value.params.siteId);
const tunnelIdFlag = reactive(router.currentRoute.value.params.tunnelId);
const selectIndex = ref(-1);
+const previewRef = ref();
const isVisited = ref(false);
const isDetailVisited = ref(false);
const showFan = ref(false);
@@ -338,6 +341,7 @@ const tunnelBtn = ref();
const tunnelList = ref([]);
const tunnelId = ref(0);
const tunnelLength = ref(0);
+const tunnelAlias = ref('');
const constructionLength = ref(0);
const routeList = ref([]);
let socket = reactive("");
@@ -419,6 +423,9 @@ const submitDevice = () => {
showDevice.value = false;
getScreenInfo(previewId);
// initWebSocket()
+ nextTick(() => {
+ previewRef.value.rerender()
+ })
};
const simulatedBlasting = async () => {
await blastingSimulation(previewId, 10);
@@ -555,6 +562,7 @@ const getBasicData = (id) => {
getSimulateTunnelDetail(id).then((res) => {
if (res?.code === 1000) {
tunnelLength.value = res.data.totalLength;
+ tunnelAlias.value = res.data.tunnelAlias;
serialNumber.value = res.data.serialNumber;
constructionLength.value = res.data.constructionLength;
initWebSocket();
@@ -590,13 +598,13 @@ const getScreenInfo = (id) => {
// })
res.data.sensorList.forEach((item) => {
if (
- item.equipmentType === "dust" ||
- item.equipmentType === "carbonDioxide" ||
- item.equipmentType === "carbonMonoxide" ||
- item.equipmentType === "hydrogenSulfide" ||
- item.equipmentType === "sulfurDioxide" ||
- item.equipmentType === "sulfurMonoxide" ||
- item.equipmentType === "nitrogenDioxide"
+ item.equipmentType === "dust" ||
+ item.equipmentType === "carbonDioxide" ||
+ item.equipmentType === "carbonMonoxide" ||
+ item.equipmentType === "hydrogenSulfide" ||
+ item.equipmentType === "sulfurDioxide" ||
+ item.equipmentType === "sulfurMonoxide" ||
+ item.equipmentType === "nitrogenDioxide"
) {
showBadLoading.value = 0;
} else {