|
import { cwd } from 'process'
|
import { ipcRenderer } from 'electron'
|
import {creatorClient} from './sockteStomp'
|
import {sockteStore} from '@/stores/sockteInfo'
|
import { patientInfoStore } from '@/stores/patient'
|
import os from 'os'
|
// import internetAvailable from "internet-available"
|
var internetAvailable = require("internet-available")
|
import { ElMessage, ElMessageBox } 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("config.json",...args)
|
if(args[0]===undefined){
|
// alert("配置文件没有写入配置,请检查配置文件 文件路径:"+args[2])
|
ElMessageBox.prompt('没有设定客户编号,请输入客户编号并保存', '警告', {
|
confirmButtonText: '保存',
|
showClose:false,
|
showCancelButton:false,
|
inputErrorMessage: 'Invalid Email',
|
})
|
.then(({ value }) => {
|
const mode={
|
clientCode:value,
|
machineName:os.hostname(),
|
screenTimeout: 300,
|
devices:[]
|
}
|
ipcRenderer.send('setConfingData',mode)
|
})
|
|
}
|
else if(args.length>0&&args[0].length>0){
|
clientCode=args[0]
|
deviceList=args[1]
|
// 建立sockte 通讯
|
creatorClient(deviceList,clientCode)
|
|
}
|
})
|
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({
|
domainName: "baidu.com",
|
host: '114.114.114.114'
|
}).then(()=>{
|
sockteStore().setnetLink(true)
|
}).catch(()=>{
|
sockteStore().setnetLink(false)
|
console.log("网路链接失败")
|
})
|
},10000)
|
const writeResult=(res: ResultInfo)=>{
|
console.log(res)
|
console.log(`写入结果类型${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
|
default:
|
console.log('有配置类型没有匹配')
|
}
|
}
|