chenyc
2025-06-10 02cda108e3d49036fbfd628458e84ca9c360d257
src/samples/node-api.ts
@@ -2,12 +2,14 @@
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 } from 'element-plus'
import { ElMessage, ElMessageBox, ElNotification } from 'element-plus'
import { on } from 'events'
interface ResultInfo{
@@ -22,8 +24,7 @@
let clientCode=''
// 主进程发送消息到渲染进程
ipcRenderer.on('message-koa', (_event, ...args) => {
  console.log('koa返回http请求消息', ...args)
  // console.log('koa返回http请求消息', ...args)
  const Result:ResultInfo=args[0]
  writeResult(Result)
})
@@ -35,17 +36,17 @@
})
// 主进程获取配置项完成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
      // 建立sockte 通讯
      deviceList=args[0].deviceList
      creatorClient(args[0])
      // 存放conging到仓库
      confingInfoStore().setconfingInfo(args[0])
    }
  }
  
@@ -62,19 +63,18 @@
})
setInterval(function(){
  // 检查网络状态
  internetAvailable({
    domainName: "baidu.com",
    host: '114.114.114.114'
  }).then(()=>{
  internetAvailable().then(()=>{
    sockteStore().setnetLink(true)
  }).catch(()=>{
    sockteStore().setnetLink(false)
    console.log("网路链接失败")
    // console.log("网路链接失败")
    ElMessage.warning('网络已经断开')
  })
},10000)
const writeResult=(res: ResultInfo)=>{
  console.log(res)
  console.log(`写入结果类型${res.deviceType},写入结果=${res.result}`)
  ipcRenderer.invoke('logger', `收到设备回传结果:类型=${res.deviceType},结果=${res.result}`)
  switch(res.deviceType){
      case '读卡器':
          console.log('读卡器收到消息')
@@ -112,6 +112,18 @@
              }
          )
          break
      case "人脸识别":
        sockteStore().setfaceSockte(
          {
            deviceName:res.deviceName,
            type:"人脸识别",
            result:res.result,
            resultTime:res.resultTime,
            state:2
          }
        )
        break
      default:
          console.log('有配置类型没有匹配')
  }