4 Комити d0865b4293 ... 94392498a1

Аутор SHA1 Порука Датум
  houzekong 94392498a1 [Fix 0000] 地图管理上传逻辑修复 пре 1 месец
  houzekong 0940b58245 [Fix 0000] 爆炸三角形数据读取失效问题修复 пре 1 месец
  houzekong a2254c2e34 [Style 0000] 过渡页及地图管理样式优化 пре 1 месец
  houzekong fe79c23f91 [Fix 0000] 地图销毁方法报错问题修复 пре 1 месец

+ 6 - 5
src/components/Configurable/preset/BlastDelta.vue

@@ -296,12 +296,13 @@
 
   // 数据处理函数
   const updateMonitorPoint = (data: any) => {
-    monitorPoint.y = parseFloat(data.o2val) || 0;
+    monitorPoint.y = parseFloat(data.o2Val) || 0;
     monitorPoint.x =
-      (parseFloat(data.coval) || 0) * 0.0001 +
-      (parseFloat(data.gasval) || 0) +
-      (parseFloat(data.ch2val) || 0) * 0.0001 +
-      (parseFloat(data.chval) || 0) * 0.0001;
+      (parseFloat(data.coVal) || 0) * 0.0001 +
+      (parseFloat(data.ch4Val) || 0) +
+      (parseFloat(data.c2h4Val) || 0) * 0.0001 +
+      (parseFloat(data.c2h2Val) || 0) * 0.0001;
+    console.log('debug process', monitorPoint);
   };
 
   const updateCoordinates = (blastData: BlastTriangleData) => {

+ 8 - 4
src/layouts/default/feature/SimpleMap.vue

@@ -50,7 +50,7 @@
 
   // let svc = new vjmap.Service(env.serviceUrl, env.accessToken);
   // let app: vjmap3d.App;
-  let map: vjmap.Map;
+  let map: vjmap.Map | null;
   // 标记单位集合,用来为后续计算历史记录提供支持
   let markerCollection = [];
   // CAD是否可见
@@ -176,6 +176,7 @@
 
   /** 标记点点击事件处理,如果不是叶节点那么聚焦到下一级 */
   function markerClickHandler() {
+    if (!map) return;
     const node: any = last(historyStack.value);
     if (!node) return;
     if (node.isLeaf) return;
@@ -196,6 +197,7 @@
 
   /** 叶节点标记点击事件处理,叶节点需要显示该节点的详情框 */
   function laefNodeClickHandler(node: any) {
+    if (!map) return;
     if (!node) return;
     if (!node.isLeaf) return;
 
@@ -245,6 +247,7 @@
     cadOpened = visiable;
     mapLoading.value = true;
     map?.destory();
+    map = null;
 
     try {
       let markers;
@@ -294,7 +297,7 @@
   // 另一种方式是点击地图上的标记点,普通标点下钻到下一级,矿端标点不走watch的逻辑
   const { trigger } = watchTriggerable(
     () => mineStore.getDepartId,
-    async (id) => {
+    async () => {
       if (!mapContainer.value) return;
 
       // 如果是静默模式就简单展示默认地图/图纸即可
@@ -302,7 +305,7 @@
 
       // 先判断显示什么图纸,若是矿端显示CAD图纸
       if (mineStore.getDepart?.isLeaf) {
-        appStore.setSimpleMapParams({ deptId: id, isLeaf: true });
+        appStore.setSimpleMapParams({ deptId: mineStore.getDepartId, isLeaf: true });
 
         // 矿端需要先初始化图纸下拉框,下拉框触发一次change事件调用toggleCADMap,
         // 如果当前选项下没有已选中的地图,那么意味着需要新获取选项,否则无需发请求
@@ -314,7 +317,7 @@
       await toggleCADMap(mineStore.getDepart?.isLeaf || false);
 
       // 不论是不是矿端,历史记录都是一样的,用户点击返回上一级都能正常返回
-      historyStack.value = findPath(markerCollection, (n) => n.id === id) as any[];
+      historyStack.value = findPath(markerCollection, (n) => n.id === mineStore.getDepartId) as any[];
 
       // 此外如果是非矿端那么模拟触发地图点击事件
       markerClickHandler();
@@ -327,6 +330,7 @@
 
   onUnmounted(() => {
     map?.destory();
+    map = null;
   });
 </script>
 

+ 4 - 2
src/views/dashboard/Overhaul/components/LeafPage.vue

@@ -1025,7 +1025,7 @@
     display: flex;
     flex-direction: column;
     align-items: start;
-    justify-content: center;
+    /* justify-content: center; */
     padding: 0 16px 0 30px;
     background-image: url('/@/assets/images/overHaul/leafPage/warning-item-bg.png');
     background-repeat: no-repeat;
@@ -1035,6 +1035,8 @@
 
     .col-title {
       color: #000;
+      height: 24px;
+      line-height: 30px;
       font-size: 14px;
       margin-bottom: 5px;
     }
@@ -1051,7 +1053,7 @@
     }
     .col-icon {
       position: absolute;
-      top: 10px;
+      top: 8px;
       left: 10px;
       width: 18px;
       height: 18px;

+ 2 - 1
src/views/dashboard/Overhaul/components/RootPage.vue

@@ -575,8 +575,9 @@
     xAxis: {
       type: 'category',
       axisLabel: {
-        // rotate: 30, // 名称过长时旋转
         interval: 0,
+        overflow: 'break',
+        width: 100,
       },
     },
     yAxis: {

+ 1 - 1
src/views/monitor/sealedMonitor/components/HistoricalDetailsModal.vue

@@ -90,7 +90,7 @@
         <!-- 图表区域 -->
         <div class="chart-area">
           <div v-if="modalDetailsData.blastDeltaOutConfig" class="chart-item">
-            <div class="chart-title pl-20px">爆炸三角形</div>
+            <div class="chart-title pl-20px">爆炸危险性判定</div>
             <div class="chart-placeholder">
               <BlastDelta class="chart-blast" :posMonitor="dataRef" :canvas-size="{ width: 196, height: 125 }" text-color="#000" />
             </div>

+ 1 - 1
src/views/system/cadFile/components/MapEditModal.vue

@@ -87,7 +87,7 @@
       const svc = new vjmap.Service(env.serviceUrl, env.accessToken);
       const res = await svc.uploadMap(file);
 
-      setFieldsValue({ wjId: res.fieldId, filePath: file.name });
+      setFieldsValue({ wjId: res.fileid, filePath: file.name });
       onSuccess(res);
     } catch (err: any) {
       console.error('上传错误:', err);

+ 6 - 2
src/views/system/cadFile/components/MapView.vue

@@ -3,8 +3,8 @@
     <div ref="map3dContainer"></div>
     <!-- 操作按钮面板 -->
     <div class="map-operation-panel">
-      <button @click="drawerVisible = true" class="btn">老空区永久密闭列表</button>
-      <button @click="emit('close')" class="btn ml-5px">返回列表</button>
+      <button :loading="loading" @click="drawerVisible = true" class="btn">老空区永久密闭列表</button>
+      <button :loading="loading" @click="emit('close')" class="btn ml-5px">返回列表</button>
     </div>
 
     <SideDrawer v-model:open="drawerVisible" :mineCode="mineCode" :getContainer="() => map3dContainer" />
@@ -29,12 +29,16 @@
   // 定义弹框显隐状态
   const drawerVisible = ref(false);
   const map3dContainer = ref<HTMLElement>();
+  const loading = ref(false);
 
   // 初始化地图(确保先加载地图,再调用其他方法)
   onMounted(() => {
     // nextTick(async () => {
+    loading.value = true;
     initMap2d(map3dContainer.value!, {
       wjId: props.wjId as string,
+    }).finally(() => {
+      loading.value = false;
     });
     // });
   });

+ 3 - 9
src/views/system/cadFile/index.vue

@@ -1,7 +1,7 @@
 <!-- eslint-disable vue/multi-word-component-names -->
 <template>
   <MapView v-if="showCAD" class="w-full h-full" v-bind="selected" @close="showCAD = false"></MapView>
-  <BasicTable v-else @register="registerMapTable" :rowSelection="rowSelection">
+  <BasicTable v-else @register="registerMapTable">
     <template #resetBefore>
       <!-- <a-button type="default" class="ml-8px" preIcon="mdi:download" @click="onExportXls"> 下载 </a-button> -->
       <a-button type="default" class="ml-8px" preIcon="mdi:plus" @click="handleOpenModal({})"> 新增 </a-button>
@@ -60,12 +60,6 @@
       // dataSource: mockData,
       columns, // 绑定动态列
       rowKey: 'mineCode',
-      rowSelection: {
-        type: 'checkbox',
-        onChange: (selectedRowKeys, selectedRows) => {
-          console.log('选中了:', selectedRowKeys, selectedRows);
-        },
-      },
       formConfig: {
         labelWidth: 120,
         schemas: searchFormSchema.value, // 绑定动态搜索表单
@@ -81,7 +75,7 @@
       params: {},
     },
   });
-  const [registerMapTable, mapTable, { rowSelection }] = mapManageTable;
+  const [registerMapTable, mapTable] = mapManageTable;
   // const { pause, resume } = useIntervalFn(() => mapTable.reload({ silence: true }), 60000);
 
   /**
@@ -105,7 +99,7 @@
    */
   async function handleDeleteRecord(record: any) {
     await deleteMineFile({ id: record.id });
-    message.error('删除成功');
+    message.success('删除成功');
     await mapTable.reload();
   }