chenyc
2025-06-30 d518ec81bbdb5f9f66584609bf5ae4c18347cd59
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
 
import { cwd } from 'process'
import { ipcRenderer } from 'electron'
import {creatorClient} from './sockteStomp'
import {connect} from './socketClient'
import {sockteStore} from '@/stores/sockteInfo'
import { patientInfoStore } from '@/stores/patient'
import { confingInfoStore } from '@/stores/StoresConfing'
import os from 'os'
// import internetAvailable  from "internet-available"
var internetAvailable = require("internet-available")
import { ElMessage, ElMessageBox, ElNotification } from 'element-plus'
import { on } from 'events'
 
interface ResultInfo{
  clientCode:string;
  commCode :string;
  deviceType:string;
  deviceName :string;
  result :string;
  resultTime :string
}
let deviceList=[]
let clientCode=''
// 主进程发送消息到渲染进程
ipcRenderer.on('message-koa', (_event, ...args) => {
  // console.log('koa返回http请求消息', ...args)
  const Result:ResultInfo=args[0]
  writeResult(Result)
})
ipcRenderer.on('main-process-message', (_event, ...args) => {
  console.log('[Receive Main-process message]:', ...args)
})
ipcRenderer.on('main-process-message', (_event, ...args) => {
  console.log('[Receive Main-process message]:', ...args)
})
// 主进程获取配置项完成sockte注册和httpshu
ipcRenderer.on('getConfigData',(_event,...args)=>{
  console.log('----------------')
  console.log("config.json",...args)
  if(args!==null){
    if(args[0]===undefined){  
      console.log('配置文件没有配置')
    }
    else if(args.length>0&&args[0].clientCode.length>0){
      console.log('配置文件读取')
      clientCode=args[0].clientCode
      // 存放conging到仓库
      confingInfoStore().setconfingInfo(args[0])
    }
  }
  
})
ipcRenderer.on("getScreenTimeout",(_event,args)=>{
  if(args!==undefined){
    patientInfoStore().setViewNumber(args)
  }
})
ipcRenderer.on("getPcName",(_event,arg)=>{
  if(arg!==undefined){
    sockteStore().setPcName(arg)
  }
})
setInterval(function(){
  // 检查网络状态
  internetAvailable().then(()=>{
    sockteStore().setnetLink(true)
 
  }).catch(()=>{
    sockteStore().setnetLink(false)
    // console.log("网路链接失败")
    ElMessage.warning('网络已经断开')
    
  })
},10000)
const writeResult=(res: ResultInfo)=>{
  ipcRenderer.invoke('logger', `收到设备回传结果:类型=${res.deviceType},结果=${res.result}`)
  switch(res.deviceType){
      case '读卡器':
          console.log('读卡器收到消息')
          if(res.clientCode!==null){
              sockteStore().setdkqSockte(
                  {
                      deviceName:res.deviceName,
                      type:"读卡器",
                      result:res.result,
                      resultTime:res.resultTime,
                      state:2
                  }
              )
          }
          break
      case "体重秤":
          sockteStore().setweightSockte(
              {
                  deviceName:res.deviceName,
                  type:"体重秤",
                  result:Number(res.result).toString(),
                  resultTime:res.resultTime,
                  state:2
              }
          )
          break
      case "血压计":
          sockteStore().setxyjSockte(
              {
                  deviceName:res.deviceName,
                  type:"血压计",
                  result:res.result,
                  resultTime:res.resultTime,
                  state:2
              }
          )
          break
      case "人脸识别":
        sockteStore().setfaceSockte(
          {
            deviceName:res.deviceName,
            type:"人脸识别",
            result:res.result,
            resultTime:res.resultTime,
            state:2
          }
        )
        break
 
      default:
          console.log('有配置类型没有匹配')
  }
}