Răsfoiți Sursa

Merge branch 'master' of http://39.97.59.228:8013/hrx/mky-vent-base

hongrunxia 2 luni în urmă
părinte
comite
fba06b8337

+ 65 - 64
src/views/vent/home/configurable/belt/beltJcyj.vue

@@ -24,78 +24,79 @@
   </div>
 </template>
 <script setup lang="ts">
-  import { onMounted, ref } from 'vue';
-  import customHeader from './components/customHeader-belt.vue';
-  import { useInitConfigs, useInitPage } from '../hooks/useInit';
-  import { testYjkf } from './configurable.data';
-  import ModuleCommon from './components/ModuleCommonBelt.vue';
-  import { getHomeData, sysList, list } from './configurable.api';
-  import { message, Modal } from 'ant-design-vue';
-  import BeltNav from './components/BeltNav.vue';
-  import { doorMock } from './mock.ts';
+import { onMounted, ref } from 'vue';
+import customHeader from './components/customHeader-belt.vue';
+import { useInitConfigs, useInitPage } from '../hooks/useInit';
+import { testJcyj } from './configurable.data';
+import ModuleCommon from './components/ModuleCommonBelt.vue';
+import { getHomeData, sysList, list } from './configurable.api';
+import { message, Modal } from 'ant-design-vue';
+import BeltNav from './components/BeltNav.vue';
+import { doorMock } from './mock.ts';
 
-  // import { BDFireMock } from './mock';
-  const { configs, fetchConfigs } = useInitConfigs();
-  const { updateEnhancedConfigs, data, updateData } = useInitPage('皮带巷智能管控');
-  function refresh() {
-    fetchConfigs('belt').then(() => {
-      configs.value = testYjkf;
-      // Promise.resolve(doorMock).then(updateData);
-      // getHomeData({}).then(updateData);
-      // getDataSource();
-    });
-  }
-  function initInterval() {
-    setInterval(() => {
-      // getHomeData({}).then(updateData);
-    }, 60000);
-  }
-  onMounted(async () => {
-    refresh();
-    initInterval();
+// import { BDFireMock } from './mock';
+const { configs, fetchConfigs } = useInitConfigs();
+const { updateEnhancedConfigs, data, updateData } = useInitPage('皮带巷智能管控');
+function refresh() {
+  fetchConfigs('belt').then(() => {
+    configs.value = testJcyj;
+    // Promise.resolve(doorMock).then(updateData);
+    // getHomeData({}).then(updateData);
+    // getDataSource();
   });
+}
+
+function initInterval() {
+  setInterval(() => {
+    // getHomeData({}).then(updateData);
+  }, 60000);
+}
+onMounted(async () => {
+  refresh();
+  initInterval();
+});
 </script>
 
 <style lang="less" scoped>
-  .spray-wrapper {
-    width: 100%;
-    height: 100%;
-    background-image: url('/@/assets/images/beltFire/baseMap.png');
-    background-size: cover;
-  }
+.spray-wrapper {
+  width: 100%;
+  height: 100%;
+  background-image: url('/@/assets/images/beltFire/baseMap.png');
+  background-size: cover;
+}
 
-  #spray3D {
-    pointer-events: all;
-  }
+#spray3D {
+  pointer-events: all;
+}
 
-  .spray-wrapper :deep(.list-item_L .list-item__icon_L) {
-    background-image: url('/@/assets/images/home-container/configurable/minehome/list-icon-file.png');
-  }
-  .spray-wrapper :deep(.list-item_N:nth-child(1)) {
-    background-image: url('/@/assets/images/home-container/configurable/minehome/list-bg-n5.png');
-  }
-  .spray-wrapper :deep(.list-item_N:nth-child(2)) {
-    background-image: url('/@/assets/images/home-container/configurable/minehome/list-bg-n6.png');
+.spray-wrapper :deep(.list-item_L .list-item__icon_L) {
+  background-image: url('/@/assets/images/home-container/configurable/minehome/list-icon-file.png');
+}
+.spray-wrapper :deep(.list-item_N:nth-child(1)) {
+  background-image: url('/@/assets/images/home-container/configurable/minehome/list-bg-n5.png');
+}
+.spray-wrapper :deep(.list-item_N:nth-child(2)) {
+  background-image: url('/@/assets/images/home-container/configurable/minehome/list-bg-n6.png');
+}
+.company-home {
+  background: url('/@/assets/images/beltFire/baseMap.png') no-repeat center;
+  width: 100%;
+  height: 100%;
+  color: @white;
+  position: relative;
+  .border {
+    width: 100%;
+    height: 94%;
+    background: url('/@/assets/images/beltFire/mainbj.png') no-repeat;
+    background-size: 100% 100%;
+    margin-top: 55px;
   }
-  .company-home {
-    background: url('/@/assets/images/beltFire/baseMap.png') no-repeat center;
+  .top-bg {
     width: 100%;
-    height: 100%;
-    color: @white;
-    position: relative;
-    .border {
-      width: 100%;
-      height: 94%;
-      background: url('/@/assets/images/beltFire/mainbj.png') no-repeat;
-      background-size: 100% 100%;
-      margin-top: 55px;
-    }
-    .top-bg {
-      width: 100%;
-      height: 56px;
-      position: absolute;
-      margin-top: -20px;
-      z-index: 1;
-    }
+    height: 56px;
+    position: absolute;
+    margin-top: -20px;
+    z-index: 1;
   }
+}
 </style>

+ 92 - 94
src/views/vent/home/configurable/belt/beltYjkf.vue

@@ -24,107 +24,105 @@
   </div>
 </template>
 <script setup lang="ts">
-  import { onMounted, ref } from 'vue';
-  import customHeader from './components/customHeader-belt.vue';
-  import { useInitConfigs, useInitPage } from '../hooks/useInit';
-  import { testYjkf } from './configurable.data';
-  import ModuleCommon from './components/ModuleCommonBelt.vue';
-  import { getHomeData, sysList, list } from './configurable.api';
-  import { message, Modal } from 'ant-design-vue';
-  import BeltNav from './components/BeltNav.vue';
-  import { doorMock } from './mock.ts';
-
-  // import { BDFireMock } from './mock';
-  const { configs, fetchConfigs } = useInitConfigs();
-  const { updateEnhancedConfigs, data, updateData } = useInitPage('皮带巷智能管控');
-  const readData = ref([
-    {
-      id: 1,
-      position: '16联巷短路风门',
-      frontStatus: '关闭',
-      backStatus: '关闭',
-      networkStatus: '在线',
-      modelImg: '',
-      open: true,
-    },
-    {
-      id: 2,
-      position: '18联巷短路风门',
-      frontStatus: '打开',
-      backStatus: '打开',
-      networkStatus: '在线',
-      modelImg: '',
-      open: true,
-    },
-    {
-      id: 3,
-      position: '23联巷短路风门',
-      frontStatus: '关闭',
-      backStatus: '关闭',
-      networkStatus: '在线',
-      modelImg: '',
-      open: false,
-    },
-  ]);
-  function refresh() {
-    fetchConfigs('belt').then(() => {
-      configs.value = testYjkf;
-      Promise.resolve(doorMock).then(updateData);
-      // getHomeData({}).then(updateData);
-      // getDataSource();
-    });
-  }
-  function initInterval() {
-    setInterval(() => {
-      // getHomeData({}).then(updateData);
-    }, 60000);
-  }
-  onMounted(async () => {
-    refresh();
-    initInterval();
+import { onMounted, ref } from 'vue';
+import customHeader from './components/customHeader-belt.vue';
+import { useInitConfigs, useInitPage } from '../hooks/useInit';
+import { testYjkf } from './configurable.data';
+import ModuleCommon from './components/ModuleCommonBelt.vue';
+import { getSystem } from './configurable.api';
+import { message, Modal } from 'ant-design-vue';
+import BeltNav from './components/BeltNav.vue';
+import { doorMock } from './mock.ts';
+// import { BDFireMock } from './mock';
+const { configs, fetchConfigs } = useInitConfigs();
+const { updateEnhancedConfigs, data, updateData } = useInitPage('皮带巷智能管控');
+const readData = ref([
+  {
+    id: 1,
+    position: '16联巷短路风门',
+    frontStatus: '关闭',
+    backStatus: '关闭',
+    networkStatus: '在线',
+    modelImg: '',
+    open: true,
+  },
+  {
+    id: 2,
+    position: '18联巷短路风门',
+    frontStatus: '打开',
+    backStatus: '打开',
+    networkStatus: '在线',
+    modelImg: '',
+    open: true,
+  },
+  {
+    id: 3,
+    position: '23联巷短路风门',
+    frontStatus: '关闭',
+    backStatus: '关闭',
+    networkStatus: '在线',
+    modelImg: '',
+    open: false,
+  },
+]);
+function refresh() {
+  fetchConfigs('belt').then(() => {
+    configs.value = testYjkf;
+    getSystem({}).then(updateData);
+    // getDataSource();
   });
+}
+function initInterval() {
+  setInterval(() => {
+    getSystem({}).then(updateData);
+  }, 60000);
+}
+onMounted(async () => {
+  refresh();
+  initInterval();
+});
 </script>
 
 <style lang="less" scoped>
-  .spray-wrapper {
-    width: 100%;
-    height: 100%;
-    background-image: url('/@/assets/images/beltFire/baseMap.png');
-    background-size: cover;
-  }
+.spray-wrapper {
+  width: 100%;
+  height: 100%;
+  background-image: url('/@/assets/images/beltFire/baseMap.png');
+  background-size: cover;
+}
 
-  #spray3D {
-    pointer-events: all;
-  }
+#spray3D {
+  pointer-events: all;
+}
 
-  .spray-wrapper :deep(.list-item_L .list-item__icon_L) {
-    background-image: url('/@/assets/images/home-container/configurable/minehome/list-icon-file.png');
-  }
-  .spray-wrapper :deep(.list-item_N:nth-child(1)) {
-    background-image: url('/@/assets/images/home-container/configurable/minehome/list-bg-n5.png');
-  }
-  .spray-wrapper :deep(.list-item_N:nth-child(2)) {
-    background-image: url('/@/assets/images/home-container/configurable/minehome/list-bg-n6.png');
+.spray-wrapper :deep(.list-item_L .list-item__icon_L) {
+  background-image: url('/@/assets/images/home-container/configurable/minehome/list-icon-file.png');
+}
+.spray-wrapper :deep(.list-item_N:nth-child(1)) {
+  background-image: url('/@/assets/images/home-container/configurable/minehome/list-bg-n5.png');
+}
+.spray-wrapper :deep(.list-item_N:nth-child(2)) {
+  background-image: url('/@/assets/images/home-container/configurable/minehome/list-bg-n6.png');
+}
+.company-home {
+  background: url('/@/assets/images/beltFire/baseMap.png') no-repeat center;
+  width: 100%;
+  height: 100%;
+  color: @white;
+  position: relative;
+  .border {
+    width: 100%;
+    height: 94%;
+    background: url('/@/assets/images/beltFire/mainbj.png') no-repeat;
+    background-size: 100% 100%;
+    margin-top: 55px;
   }
-  .company-home {
-    background: url('/@/assets/images/beltFire/baseMap.png') no-repeat center;
+  .top-bg {
     width: 100%;
-    height: 100%;
-    color: @white;
-    position: relative;
-    .border {
-      width: 100%;
-      height: 94%;
-      background: url('/@/assets/images/beltFire/mainbj.png') no-repeat;
-      background-size: 100% 100%;
-      margin-top: 55px;
-    }
-    .top-bg {
-      width: 100%;
-      height: 56px;
-      position: absolute;
-      margin-top: -20px;
-      z-index: 1;
-    }
+    height: 56px;
+    position: absolute;
+    margin-top: -20px;
+    z-index: 1;
   }
+}
 </style>

+ 134 - 134
src/views/vent/home/configurable/belt/components/BeltNav.vue

@@ -28,156 +28,156 @@
 </template>
 
 <script setup lang="ts">
-  import { ref, onMounted } from 'vue';
-  import { useRouter, useRoute } from 'vue-router';
-  const router = useRouter();
-  const route = useRoute();
+import { ref, onMounted } from 'vue';
+import { useRouter, useRoute } from 'vue-router';
+const router = useRouter();
+const route = useRoute();
 
-  // 当前激活菜单
-  const activeIndex = ref(0);
+// 当前激活菜单
+const activeIndex = ref(0);
 
-  const menuList = ref([
-    {
-      name: '防灭火监测与预警',
-      targatUrl: '/BeltMonitorWarn/index',
-      position: 'left',
-    },
-    {
-      name: '喷淋系统管控',
-      targatUrl: '/SprySystem/index',
-      position: 'center',
-    },
-    {
-      name: '应急控风减灾',
-      targatUrl: '/micro-vent-3dModal/beltYjkf/index',
-      position: 'right',
-    },
-  ]);
+const menuList = ref([
+  {
+    name: '防灭火监测与预警',
+    targatUrl: '/micro-vent-3dModal/beltWarnMonitor/index',
+    position: 'left',
+  },
+  {
+    name: '喷淋系统管控',
+    targatUrl: '/micro-vent-3dModal/SprySystem/index',
+    position: 'center',
+  },
+  {
+    name: '应急控风减灾',
+    targatUrl: '/micro-vent-3dModal/beltYjkf/index',
+    position: 'right',
+  },
+]);
 
-  // 点击事件
-  function handleNavClick(data: any) {
-    activeIndex.value = data.index;
-    router.push({ path: data.item.targatUrl });
-  }
+// 点击事件
+function handleNavClick(data: any) {
+  activeIndex.value = data.index;
+  router.push({ path: data.item.targatUrl });
+}
 
-  onMounted(() => {
-    const currentPath = route.path;
-    const idx = menuList.value.findIndex((item) => item.targatUrl === currentPath);
-    if (idx !== -1) activeIndex.value = idx;
-  });
+onMounted(() => {
+  const currentPath = route.path;
+  const idx = menuList.value.findIndex((item) => item.targatUrl === currentPath);
+  if (idx !== -1) activeIndex.value = idx;
+});
 </script>
 
 <style scoped lang="less">
-  .tech-nav-container {
+.tech-nav-container {
+  width: 100%;
+  max-width: 800px;
+  margin: 0 auto;
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+  padding: 12px 60px;
+  position: relative;
+  box-sizing: border-box;
+  height: 50px;
+}
+
+/* 左侧图标容器 */
+.icon-left,
+.icon-right {
+  width: 50px;
+  height: 50px;
+  position: relative;
+  z-index: 2; /* 关键:设置为最高层级,确保浮在背景图之上 */
+  flex-shrink: 0; /* 防止被压缩 */
+  margin-top: 12px;
+  .icon-circle {
     width: 100%;
-    max-width: 800px;
-    margin: 0 auto;
+    height: 100%;
+    background: url('/@/assets/images/beltFire/yjkf/1-3.png') center / 100% 100% no-repeat;
     display: flex;
     align-items: center;
-    justify-content: space-between;
-    padding: 12px 60px;
-    position: relative;
-    box-sizing: border-box;
-    height: 50px;
-  }
+    justify-content: center;
 
-  /* 左侧图标容器 */
-  .icon-left,
-  .icon-right {
-    width: 50px;
-    height: 50px;
-    position: relative;
-    z-index: 2; /* 关键:设置为最高层级,确保浮在背景图之上 */
-    flex-shrink: 0; /* 防止被压缩 */
-    margin-top: 12px;
-    .icon-circle {
-      width: 100%;
-      height: 100%;
-      background: url('/@/assets/images/beltFire/yjkf/1-3.png') center / 100% 100% no-repeat;
-      display: flex;
-      align-items: center;
-      justify-content: center;
-
-      .icon {
-        margin-top: 2px;
-        width: 18px;
-        height: 18px;
-        background-size: contain;
-        background-repeat: no-repeat;
-      }
+    .icon {
+      margin-top: 2px;
+      width: 18px;
+      height: 18px;
+      background-size: contain;
+      background-repeat: no-repeat;
     }
   }
+}
 
-  .icon-left .icon {
-    background-image: url('/@/assets/images/beltFire/yjkf/3D.svg');
-  }
-  .icon-right .icon {
-    background-image: url('/@/assets/images/beltFire/yjkf/yjkz.svg');
-  }
+.icon-left .icon {
+  background-image: url('/@/assets/images/beltFire/yjkf/3D.svg');
+}
+.icon-right .icon {
+  background-image: url('/@/assets/images/beltFire/yjkf/yjkz.svg');
+}
 
-  /* 中间按钮组容器 - 核心修改区 */
-  .nav-buttons {
-    display: flex;
-    margin-left: 50px;
-    align-items: center;
-    gap: 5px;
-    position: relative;
-    z-index: 1;
-    flex: 1;
-    padding: 0 20px;
-    box-sizing: border-box;
-  }
-  .top-img {
-    width: 100%;
-    height: 100px;
-    background: url('/@/assets/images/beltFire/yjkf/1-2.png') no-repeat center;
-    position: absolute;
-    top: 0;
-    left: 0;
-    z-index: -1; /* 确保背景图在按钮下方 */
-  }
-  /* 按钮基础样式 */
-  .nav-menu-item,
-  .nav-menu-active {
-    height: 80%;
-    line-height: 35px;
-    padding: 0 20px;
-    font-size: 15px;
-    text-align: center;
-    white-space: nowrap;
-    cursor: pointer;
-    transition: all 0.2s ease;
-  }
+/* 中间按钮组容器 - 核心修改区 */
+.nav-buttons {
+  display: flex;
+  margin-left: 50px;
+  align-items: center;
+  gap: 5px;
+  position: relative;
+  z-index: 1;
+  flex: 1;
+  padding: 0 20px;
+  box-sizing: border-box;
+}
+.top-img {
+  width: 100%;
+  height: 100px;
+  background: url('/@/assets/images/beltFire/yjkf/1-2.png') no-repeat center;
+  position: absolute;
+  top: 0;
+  left: 0;
+  z-index: -1; /* 确保背景图在按钮下方 */
+}
+/* 按钮基础样式 */
+.nav-menu-item,
+.nav-menu-active {
+  height: 80%;
+  line-height: 35px;
+  padding: 0 20px;
+  font-size: 15px;
+  text-align: center;
+  white-space: nowrap;
+  cursor: pointer;
+  transition: all 0.2s ease;
+}
 
-  .nav-menu-item {
-    color: #59acc7;
-  }
-  .nav-menu-item:hover {
-    color: #fff;
-  }
+.nav-menu-item {
+  color: #59acc7;
+}
+.nav-menu-item:hover {
+  color: #fff;
+}
 
-  .nav-menu-active {
-    color: #fff !important;
-    font-weight: 500;
-  }
+.nav-menu-active {
+  color: #fff !important;
+  font-weight: 500;
+}
 
-  /* 按钮背景 */
-  .btn-left {
-    background: url('/@/assets/images/beltFire/yjkf/navBtnLeft-2.png') center / 100% 100% no-repeat;
-  }
-  .btn-center {
-    background: url('/@/assets/images/beltFire/yjkf/navBtnCenter-2.png') center / 100% 100% no-repeat;
-  }
-  .btn-right {
-    background: url('/@/assets/images/beltFire/yjkf/navBtnRight-2.png') center / 100% 100% no-repeat;
-  }
-  .btn-left.nav-menu-active {
-    background-image: url('/@/assets/images/beltFire/yjkf/navBtnLeft-1.png');
-  }
-  .btn-center.nav-menu-active {
-    background-image: url('/@/assets/images/beltFire/yjkf/navBtnCenter-1.png');
-  }
-  .btn-right.nav-menu-active {
-    background-image: url('/@/assets/images/beltFire/yjkf/navBtnRight-1.png');
-  }
+/* 按钮背景 */
+.btn-left {
+  background: url('/@/assets/images/beltFire/yjkf/navBtnLeft-2.png') center / 100% 100% no-repeat;
+}
+.btn-center {
+  background: url('/@/assets/images/beltFire/yjkf/navBtnCenter-2.png') center / 100% 100% no-repeat;
+}
+.btn-right {
+  background: url('/@/assets/images/beltFire/yjkf/navBtnRight-2.png') center / 100% 100% no-repeat;
+}
+.btn-left.nav-menu-active {
+  background-image: url('/@/assets/images/beltFire/yjkf/navBtnLeft-1.png');
+}
+.btn-center.nav-menu-active {
+  background-image: url('/@/assets/images/beltFire/yjkf/navBtnCenter-1.png');
+}
+.btn-right.nav-menu-active {
+  background-image: url('/@/assets/images/beltFire/yjkf/navBtnRight-1.png');
+}
 </style>

+ 70 - 70
src/views/vent/home/configurable/belt/components/ModuleCommonBelt.vue

@@ -23,86 +23,86 @@
   </Transition>
 </template>
 <script lang="ts" setup>
-  import Header from './headerBelt.vue';
-  import Content from '../../components/content.vue';
-  // import ModuleLeft from './original/moduleLeft.vue';
-  // import ModuleBottom from './original/moduleBottom.vue';
-  import { computed, ref } from 'vue';
-  import ventBox1 from './ventBoxBelt.vue';
-  import { openWindow } from '/@/utils';
-  import { getFormattedText } from '../../hooks/helper';
-  // import { ModuleProps } from '../types';
+import Header from './headerBelt.vue';
+import Content from './contentBelt.vue';
+// import ModuleLeft from './original/moduleLeft.vue';
+// import ModuleBottom from './original/moduleBottom.vue';
+import { computed, ref } from 'vue';
+import ventBox1 from './ventBoxBelt.vue';
+import { openWindow } from '/@/utils';
+import { getFormattedText } from '../../hooks/helper';
+// import { ModuleProps } from '../types';
 
-  const props = defineProps<{
-    pageType: string;
-    /** 配置的详细模块信息 */
-    moduleData: any;
-    /** 配置的详细样式信息 */
-    showStyle: any;
-    /** 该模块配置中的设备标识符 */
-    deviceType: string;
-    /** api返回的数据 */
-    data: any;
-    moduleName: string;
-    visible: boolean;
-    chartData?: any;
-  }>();
-  defineEmits(['close', 'click']);
+const props = defineProps<{
+  pageType: string;
+  /** 配置的详细模块信息 */
+  moduleData: any;
+  /** 配置的详细样式信息 */
+  showStyle: any;
+  /** 该模块配置中的设备标识符 */
+  deviceType: string;
+  /** api返回的数据 */
+  data: any;
+  moduleName: string;
+  visible: boolean;
+  chartData?: any;
+}>();
+defineEmits(['close', 'click']);
 
-  const { header } = props.moduleData;
-  const selectedData = ref();
+const { header } = props.moduleData;
+const selectedData = ref();
 
-  const style = computed(() => {
-    const size = props.showStyle.size;
-    const position = props.showStyle.position;
-    console.log(props.showStyle, '123123');
-    return size + position + 'position: absolute; pointer-events: auto; z-index: 1';
-  });
-  const pageType = computed(() => {
-    return props.pageType || '';
-  });
-  const capitalizedPosition = computed(() => {
-    return props.showStyle.position.includes('left') ? 'Left' : 'Right';
-  });
+const style = computed(() => {
+  const size = props.showStyle.size;
+  const position = props.showStyle.position;
+  console.log(props.showStyle, '123123');
+  return size + position + 'position: absolute; pointer-events: auto; z-index: 1';
+});
+const pageType = computed(() => {
+  return props.pageType || '';
+});
+const capitalizedPosition = computed(() => {
+  return props.showStyle.position.includes('left') ? 'Left' : 'Right';
+});
 
-  // 根据配置里的定位判断应该使用哪个class
-  function getModuleClass({ size, position }) {
-    const [_, width] = size.match(/width:([0-9]+)px/) || [];
-    if (position.includes('bottom') || parseInt(width) > 800) {
-      return 'module-common module-common-longer';
-    }
-    return 'module-common';
+// 根据配置里的定位判断应该使用哪个class
+function getModuleClass({ size, position }) {
+  const [_, width] = size.match(/width:([0-9]+)px/) || [];
+  if (position.includes('bottom') || parseInt(width) > 800) {
+    return 'module-common module-common-longer';
   }
+  return 'module-common';
+}
 
-  function redirectTo() {
-    const { to } = props.moduleData;
-    if (!to) return;
-    openWindow(getFormattedText(selectedData.value, to));
-  }
+function redirectTo() {
+  const { to } = props.moduleData;
+  if (!to) return;
+  openWindow(getFormattedText(selectedData.value, to));
+}
 </script>
 <style lang="less" scoped>
-  @import '/@/design/theme.less';
+@import '/@/design/theme.less';
 
-  .module-common .box1-center {
-    height: calc(100% - 48px);
-  }
+.module-common .box1-center {
+  height: calc(100% - 48px);
+}
 
-  :deep(.box1-center) {
-    height: calc(100% - 48px);
-  }
-  :deep(.box1-center > .box-container) {
-    height: 100%;
-    padding: 0 !important;
-    width: 100% !important;
+:deep(.box1-center) {
+  height: calc(100% - 48px);
+}
+:deep(.box1-center > .box-container) {
+  height: 100%;
+  padding: 0 !important;
+  width: 100% !important;
+}
+.module-common-longer {
+  :deep(.box1-top) {
+    --image-box1-top: url('/@/assets/images/beltFire/1-1.png');
+    background-image: url('/@/assets/images/beltFire/1-1.png');
   }
-  .module-common-longer {
-    :deep(.box1-top) {
-      --image-box1-top: url('/@/assets/images/beltFire/1-1.png');
-      background-image: url('/@/assets/images/beltFire/1-1.png');
-    }
-    :deep(.box1-bottom) {
-      --image-box1-bottom: url('/@/assets/images/beltFire/1-2.png');
-      background-image: url('/@/assets/images/beltFire/1-2.png');
-    }
+  :deep(.box1-bottom) {
+    --image-box1-bottom: url('/@/assets/images/beltFire/1-2.png');
+    background-image: url('/@/assets/images/beltFire/1-2.png');
   }
+}
 </style>

+ 3 - 0
src/views/vent/home/configurable/belt/components/contentBelt.vue

@@ -65,6 +65,9 @@
             :data="config.data"
           />
         </template>
+        <template v-if="config.name === 'gateBoard'">
+          <GateBoard class="content__module text-center overflow-auto" :data="config.data" />
+        </template>
       </div>
     </div>
   </div>

+ 1 - 1
src/views/vent/home/configurable/belt/components/customHeader-belt.vue

@@ -117,7 +117,7 @@ export default defineComponent({
   .container-title {
     width: 380px;
     height: 34px;
-    top: 20px;
+    top: 0px;
     left: 20px;
     // background: url('/@/assets/images/vent/new-home/container-title-bg.png') no-repeat;
     background: var(--image-select-bg) no-repeat;

+ 26 - 26
src/views/vent/home/configurable/belt/components/detail/gateBoard.vue

@@ -42,32 +42,32 @@ import { get } from 'lodash-es';
 import gateSVG from '../gateSVG.ssl.vue';
 import { config } from 'dotenv';
 let props = defineProps({});
-// const gateData = [
-//   {
-//     label: '前门状态',
-//     value: 'frontStatus',
-//     trans: {
-//       '0': '关闭',
-//       '1': '打开',
-//     },
-//   },
-//   {
-//     label: '后门状态',
-//     value: 'backStatus',
-//     trans: {
-//       '0': '关闭',
-//       '1': '打开',
-//     },
-//   },
-//   {
-//     label: '网络状态',
-//     value: 'networkStatus',
-//     trans: {
-//       '0': '离线',
-//       '1': '在线',
-//     },
-//   },
-// ];
+const gateData = [
+  {
+    label: '前门状态',
+    value: 'frontStatus',
+    trans: {
+      '0': '关闭',
+      '1': '打开',
+    },
+  },
+  {
+    label: '后门状态',
+    value: 'backStatus',
+    trans: {
+      '0': '关闭',
+      '1': '打开',
+    },
+  },
+  {
+    label: '网络状态',
+    value: 'networkStatus',
+    trans: {
+      '0': '离线',
+      '1': '在线',
+    },
+  },
+];
 const childRefs = ref<any[]>([]);
 const setChildRef = (el, index) => {
   childRefs.value[index] = el;

+ 2 - 0
src/views/vent/home/configurable/belt/configurable.api.ts

@@ -19,10 +19,12 @@ enum Api {
   sysTypeWarnList = '/safety/ventanalyAlarmLog/sysTypeWarn',
   getDisasterProportion = '/safety/ventanalyAlarmLog/getDisasterProportion',
   system = '/ventanaly-device/monitor/device',
+  getSystem = '/modelreq/monitor/system',
 }
 
 export const sysList = (params) => defHttp.get({ url: Api.sysList, params });
 export const getDevice = (params) => defHttp.post({ url: Api.getDevice, params });
+export const getSystem = (params) => defHttp.post({ url: Api.getSystem, params });
 
 // 搞这个缓存是由于:目前代码上的设计是多个模块发出多次请求,每个模块自己负责消费前者的响应。
 // 这会导致相同的请求被同时发送多次。

+ 5 - 6
src/views/vent/home/configurable/belt/configurable.data.ts

@@ -1,5 +1,4 @@
-import { title } from 'process';
-import { Config } from '../../deviceManager/configurationTable/types';
+import { Config } from '../../../deviceManager/configurationTable/types';
 // 皮带巷三级防灭火首页
 export const testBeltLaneFire: Config[] = [
   {
@@ -380,9 +379,9 @@ export const testYjkf: Config[] = [
       // mock: doorMock,
     },
     showStyle: {
-      size: 'width:440px;height:810px;',
+      size: 'width:440px;height:825px;',
       version: '原版',
-      position: 'top:40px;left:25px;',
+      position: 'top:20px;left:25px;',
     },
   },
   {
@@ -577,9 +576,9 @@ export const testJcyj: Config[] = [
       // mock: BDfireMock,
     },
     showStyle: {
-      size: 'width:900px;height:280px;',
+      size: 'width:980px;height:280px;',
       version: '原版',
-      position: 'top:640px;left:410px;',
+      position: 'top:570px;left:480px;',
     },
   },
   {