gjj
2025-02-25 19606d5b3551d26bee379fa0dc57eea627e37b98
src/Dashboard.vue
@@ -2,7 +2,7 @@
 * @Author: gjj Ganjj@probim.com.cn
 * @Date: 2025-02-14 14:32:17
 * @LastEditors: gjj Ganjj@probim.com.cn
 * @LastEditTime: 2025-02-21 16:54:08
 * @LastEditTime: 2025-02-25 15:38:05
 * @FilePath: \北京交通大学\src\Dashboard.vue
-->
<!-- eslint-disable vue/no-textarea-mustache -->
@@ -21,14 +21,6 @@
    <!--头部-->
    <app-header class="absolute z-[100] top-0 left-0 right-0" :selected-id="currentProjectId"  />
    <!--全屏、切换地图-->
    <!--<div class="absolute z-[50] top-20 left-4 flex space-x-3">
      <fullscreen-button />
      <switch-map mapType="gis" @changeMap="onChangeMap" />
    </div>-->
    <!--页面内容-->
@@ -36,19 +28,19 @@
      <div class="flex-1 min-w-0">
        <!-- 左侧模块 -->
        <div class="w-full h-full">
          <project-view/>
          <project-view v-if="isReady"/>
        </div>
      </div>
      <div class="flex-1 min-w-0">
        <!-- 中间模块 -->
        <div class="w-full h-full">
          <equipment-view/>
          <equipment-view v-if="isReady"/>
        </div>
      </div>
      <div class="w-[1080px]">
        <!-- 右侧模块 -->
        <div class="w-full h-full">
          <Home/>
          <Home v-if="isReady"/>
        </div>
      </div>
    </div>
@@ -65,16 +57,14 @@
import Vue from "vue";
import { mapGetters } from "vuex";
import Header from "./components/Header.vue";
import FullscreenButton from "./components/FullScreenButton.vue";
import SwitchMap from "./components/SwitchMap.vue";
import Home from "./views/Home.vue";
import ProjectView from "./views/ProjectView.vue";
import { sceneJSON } from "./sceneJSON.js";
import { AppAPI } from "./api/app";
import EquipmentView from "./views/EquipmentView.vue";
import dayjs from "dayjs";
import "dayjs/locale/zh-cn";
import relativeTime from "dayjs/plugin/relativeTime";
import { HomeAPI } from "./api/home";
dayjs.locale("zh-cn");
dayjs.extend(relativeTime);
Vue.prototype.$dayjs = dayjs;
@@ -89,8 +79,6 @@
  name: "Dashboard",
  components: {
    "app-header": Header,
    "fullscreen-button": FullscreenButton,
    "switch-map": SwitchMap,
    "Home": Home,
    "project-view": ProjectView,
    "equipment-view": EquipmentView  
@@ -98,7 +86,8 @@
  data() {
    return {
      backgroundImage: new URL('@/assets/images/backgrounds/screen.png', import.meta.url).href,
      currentProjectId: '1c179617-a7d9-4243-b813-84fa55a17ce7'
      currentProjectId: '1c179617-a7d9-4243-b813-84fa55a17ce7',
      isReady: false
    };
  },
  computed: {
@@ -107,7 +96,7 @@
  watch: {
  },
  mounted() {
    this.initMultiverse();
    this.getLoginInfo();
  },
  beforeDestroy() {
    this.resetEngineRelated();
@@ -146,36 +135,24 @@
        }
      }
    },
    //初始化引擎
    initMultiverse() {
      // 获取承载场景画布dom
      const renderDom = document.getElementById("renderDom");
      if (window.multiverse && renderDom) {
        // 实例化引擎
        const multiverse = window.multiverse;
        const engine = new multiverse.mvCore(renderDom);
        // mapbox地图服务的Token,需申请,如不使用Mapbox地图服务,可不设置
            engine.token = window.ProjectConfig.mapboxToken;
        // multiverse.js所在的路径,用于获取静态资源文件
        engine.path = "https://multiverse.vothing.com/";
        // 初始化场景
        engine.initialize().then((s) => {
          window.scene = s;
          s.fromJSON(sceneJSON);
          s.load();
          s.stop();
          window.underlay = s.findFeature("underlay");
          setTimeout(() => {
          }, 1000);
        });
    getLoginInfo() {
      this.isReady = true
      const data = {
        "UserName": "JSC",
        "Password": "JSC@jsc123",
        "IfSingleLogin": "",
      }
      HomeAPI.WhLogin(data).then(res => {
        console.log(res);
        if(res.Ret === 1) {
          const result = res.Data
          window.localStorage.setItem("token", result.token)
          console.log(result);
        }
      });
    },
    //设置字体颜色
    cellStyle(row, _column, _rowIndex, _columnIndex) {
      // console.log("row", row);