安琪酵母(西藏)益生菌信息采集中心智能实验室
longyvfengyun
2023-09-05 d6f23984d45ddab08a7f32fef182c0116ca9bf79
src/views/home/js/homeInfoModule.js
@@ -1,6 +1,32 @@
import {reactive} from "vue";
import {onMounted, reactive} from "vue";
import createWs from "@/assets/js/tools/websocket/createWs";
import regEquipType from "@/assets/js/tools/regEquipType";
const homeInfoModule = ()=>{
  const {
    SOCKET
  } = createWs("homePageSocket");
  const handleOpen = ()=>{};
  const handleMessage = (res=>{
    const rs = JSON.parse(res.data);
    if(rs.code === 1 && rs.data) {
      const data = rs.data2;
      for(let i=0; i<data.length;i++) {
        let iData = data[i];
        for(let j=0; j<homeInfo.length; j++) {
          let jData = homeInfo[j];
          if(iData.roomName === jData.name && regEquipType(iData.devId, 'env')) {
            jData.info.tmp = iData.envirState.devTemp.toHold(2);
            jData.info.hum = iData.envirState.devHumid.toHold(2);
            jData.info.diff = iData.envirState.devPresss.toHold(2);
          }
        }
      }
    }
  });
  const homeInfo = reactive([
    {
      name: "数据机房",
@@ -9,19 +35,33 @@
      diffPre: 1,
      pos: {
        visible: true,
        placement: "left",
        x: 710,
        y: 690
      },
      info: {
        num: 99,
        tmp: 20,
        hum: 35,
        diff: 5
      }
    },
    {
      name: "培养间",
      name: "无菌室",
      temp: 32,
      hum: 7,
      diffPre: 1,
      pos: {
        visible: true,
        x: 916,
        placement: "top",
        x: 900,
        y: 690
      },
      info: {
        num: 99,
        tmp: 0,
        hum: 0,
        diff: 0
      }
    },
    {
@@ -31,8 +71,15 @@
      diffPre: 1,
      pos: {
        visible: true,
        x: 1212,
        placement: "left",
        x: 1230,
        y: 690
      },
      info: {
        num: 3,
        tmp: 0,
        hum: 0,
        diff: 0
      }
    },
    {
@@ -42,19 +89,33 @@
      diffPre: 1,
      pos: {
        visible: true,
        placement: "top",
        x: 1395,
        y: 690
      },
      info: {
        num: 5,
        tmp: 0,
        hum: 0,
        diff: 0
      }
    },
    {
      name: "文库扩展",
      name: "文库扩增室",
      temp: 32,
      hum: 7,
      diffPre: 1,
      pos: {
        visible: true,
        placement: "top",
        x: 1576,
        y: 650
      },
      info: {
        num: 1,
        tmp: 0,
        hum: 0,
        diff: 0
      }
    },
    {
@@ -64,8 +125,15 @@
      diffPre: 1,
      pos: {
        visible: true,
        placement: "top",
        x: 1495,
        y: 337
      },
      info: {
        num: 99,
        tmp: 0,
        hum: 0,
        diff: 0
      }
    },
    {
@@ -75,8 +143,15 @@
      diffPre: 1,
      pos: {
        visible: true,
        placement: "top",
        x: 1190,
        y: 355
      },
      info: {
        num: 4,
        tmp: 0,
        hum: 0,
        diff: 0
      }
    },
    {
@@ -86,11 +161,189 @@
      diffPre: 1,
      pos: {
        visible: true,
        x: 1009,
        placement: "top",
        x: 1000,
        y: 378
      },
      info: {
        num: 99,
        tmp: 0,
        hum: 0,
        diff: 0
      }
    }
    },
    {
      name: "库房",
      temp: 0,
      hum: 0,
      diffPre: 0,
      pos: {
        visible: true,
        placement: "top",
        x: 550,
        y: 380
      },
      info: {
        num: 99,
        tmp: 20,
        hum: 35,
        diff: 5
      }
    },
    {
      name: "灭菌室",
      temp: 0,
      hum: 0,
      diffPre: 0,
      pos: {
        visible: true,
        placement: "top",
        x: 750,
        y: 360
      },
      info: {
        num: 99,
        tmp: 20,
        hum: 35,
        diff: 5
      }
    },
    {
      name: "理化间",
      temp: 0,
      hum: 0,
      diffPre: 0,
      pos: {
        visible: true,
        placement: "top",
        x: 420,
        y: 700
      },
      info: {
        num: 99,
        tmp: 20,
        hum: 35,
        diff: 5
      }
    },
    {
      name: "空调机房",
      temp: 0,
      hum: 0,
      diffPre: 0,
      pos: {
        visible: true,
        placement: "top",
        x: 420,
        y: 1100
      },
      info: {
        num: 99,
        tmp: 20,
        hum: 35,
        diff: 5
      }
    },
    {
      name: "缓冲间",
      temp: 32,
      hum: 7,
      diffPre: 1,
      pos: {
        visible: true,
        placement: "left",
        x: 820,
        y: 490
      },
      info: {
        num: 99,
        tmp: 0,
        hum: 0,
        diff: 0
      }
    },
    {
      name: "洁净走廊",
      temp: 32,
      hum: 7,
      diffPre: 1,
      pos: {
        visible: true,
        placement: "left",
        x: 1240,
        y: 490
      },
      info: {
        num: 99,
        tmp: 0,
        hum: 0,
        diff: 0
      }
    },
    {
      name: "会议室",
      temp: 32,
      hum: 7,
      diffPre: 1,
      noInfo: true,
      pos: {
        visible: true,
        placement: "top",
        x: 1900,
        y: 450
      },
      info: {
        num: 99,
        tmp: 0,
        hum: 0,
        diff: 0
      }
    },
    {
      name: "茶水间",
      temp: 32,
      hum: 7,
      diffPre: 1,
      noInfo: true,
      pos: {
        visible: true,
        placement: "top",
        x: 1790,
        y: 730
      },
      info: {
        num: 99,
        tmp: 0,
        hum: 0,
        diff: 0
      }
    },
    {
      name: "仓库",
      temp: 32,
      hum: 7,
      diffPre: 1,
      noInfo: true,
      pos: {
        visible: true,
        placement: "top",
        x: 2180,
        y: 730
      },
      info: {
        num: 99,
        tmp: 0,
        hum: 0,
        diff: 0
      }
    },
  ]);
  onMounted(()=>{
    SOCKET.value.addEventListener("open", handleOpen, false);
    SOCKET.value.addEventListener("message", handleMessage, false);
  });
  return {homeInfo};
};
export default homeInfoModule;