socket丟失修改
This commit is contained in:
parent
71ed3fb4d4
commit
b8aa90e86e
@ -166,9 +166,9 @@ export async function getDataBaseTable(params,reqParam) {
|
||||
let str='('
|
||||
map[params.tableName].ACCOUNT_TABLE.columns.map((res,index)=>{
|
||||
if(map[params.tableName].ACCOUNT_TABLE.columns.length-1==index){
|
||||
str+=`"${data[res]||'1'}"`
|
||||
str+=data[res]?`"${data[res]}"`:'NULL'
|
||||
}else{
|
||||
str+=`"${data[res]||'1'}"`+','
|
||||
str+=(data[res]?`"${data[res]}"`:'NULL')+','
|
||||
}
|
||||
})
|
||||
if(i==res.body[params.tableName].length-1){
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import socket from '@ohos.net.socket';
|
||||
import buffer from '@ohos.buffer';
|
||||
|
||||
const TAG = '[TcpDemo.TcpClient]'
|
||||
const TAG = 'socketTag[TcpDemo.TcpClient]'
|
||||
import prompt from '@ohos.prompt'
|
||||
import hilog from '@ohos.hilog';
|
||||
|
||||
@ -18,12 +18,12 @@ export default class TcpClient {
|
||||
this.oppositeIp = tcpOppositeIp
|
||||
this.localIpPort = tcplocalIpPort
|
||||
this.oppositeIpPort = tcpOppositePort
|
||||
console.log('tcp1111',this.localIp,this.localIpPort,this.oppositeIp,this.oppositeIpPort)
|
||||
console.log(TAG,'new Tcp',this.localIp,this.localIpPort,this.oppositeIp,this.oppositeIpPort)
|
||||
this.tcp = socket.constructTCPSocketInstance();
|
||||
}
|
||||
onError(callback?){
|
||||
this.tcp.on('error', err => {
|
||||
hilog.info(0x0000, 'testTag', "on error, err:" + JSON.stringify(err));
|
||||
console.log(TAG,'tcpOnerror', JSON.stringify(err))
|
||||
callback&&callback()
|
||||
// this.closeUdp(()=>{
|
||||
// this.bindUdp()
|
||||
@ -32,11 +32,11 @@ export default class TcpClient {
|
||||
}
|
||||
rebindTcp(localIp: string, localIpPort:string,oppositeIp: string,oppositeIpPort:string){
|
||||
return new Promise((resolve, reject)=>{
|
||||
|
||||
this.localIp = localIp
|
||||
this.oppositeIp = oppositeIp
|
||||
this.localIpPort = localIpPort
|
||||
this.oppositeIpPort = oppositeIpPort
|
||||
console.log(TAG,'tcpreBind', this.localIp,this.localIpPort)
|
||||
let promise=this.tcp.bind({ address: this.localIp, port:parseInt(this.localIpPort), family: 1 }, err => {
|
||||
if (err) {
|
||||
hilog.info(0x0000, 'testTag', "tcpreBinderror:" + JSON.stringify(err));
|
||||
@ -57,7 +57,7 @@ export default class TcpClient {
|
||||
|
||||
}
|
||||
bindTcp() {
|
||||
console.log('tcpoppositeIp',this.oppositeIp,'localIp',this.localIp)
|
||||
console.log(TAG,'tcpbind',this.localIp,'localIp',this.localIpPort)
|
||||
return new Promise((resolve,reject)=>{
|
||||
let promise=this.tcp.bind({ address: this.localIp, port:parseInt(this.localIpPort), family: 1 }, err => {
|
||||
if (err) {
|
||||
@ -82,8 +82,7 @@ export default class TcpClient {
|
||||
|
||||
}
|
||||
connectTcp(){
|
||||
console.log('testTagtcbpoppositeIp',this.oppositeIp,this.oppositeIpPort,'localIp',this.localIp,this.localIpPort)
|
||||
console.log('22323')
|
||||
console.log(TAG,'tcpConnect',this.oppositeIp,'localIp',this.oppositeIpPort)
|
||||
return new Promise((resolve,reject)=>{
|
||||
let promise = this.tcp.connect({ address: {address: this.oppositeIp, port: parseInt(this.oppositeIpPort), family: 1} , timeout: 6000});
|
||||
promise.then(() => {
|
||||
@ -112,7 +111,7 @@ export default class TcpClient {
|
||||
}
|
||||
|
||||
sendMsg(msg: string) {
|
||||
console.log('testTagsendoppositeIp',this.oppositeIp)
|
||||
console.log(TAG,'tcpSend',msg.length,msg)
|
||||
return new Promise((reslove,reject)=>{
|
||||
let promise = this.tcp.send({
|
||||
data:msg
|
||||
@ -123,29 +122,12 @@ export default class TcpClient {
|
||||
reslove(false)
|
||||
});
|
||||
})
|
||||
|
||||
// let promise = this.udp.send({
|
||||
// data: msg,
|
||||
// address: {
|
||||
// // address: '192.168.7.124',
|
||||
// // port: 30013,
|
||||
// // address: '192.168.7.124',
|
||||
// // port: 20022,
|
||||
// address: this.oppositeIp,
|
||||
// port: parseInt(this.oppositeIpPort),
|
||||
// family: 1
|
||||
// }
|
||||
// });
|
||||
|
||||
// promise.then(() => {
|
||||
// console.log(`${TAG} udp send success:${msg}`);
|
||||
// }).catch(err => {
|
||||
// console.log(`${TAG} udp send fail:${JSON.stringify(err)}`);
|
||||
// });
|
||||
}
|
||||
|
||||
onMessage(callback?) {
|
||||
this.tcp.on('message', value => {
|
||||
console.log(TAG,'Tcponmessage',value.length,value)
|
||||
|
||||
// console.log('messageLengt',,value.message.length))
|
||||
console.log('testTagtcpmsg')
|
||||
// console.log("on message, message:" + value.message+ ", remoteInfo:" )
|
||||
@ -160,39 +142,22 @@ export default class TcpClient {
|
||||
}
|
||||
// callback(value.message)
|
||||
});
|
||||
// this.udp.on('message', value => {
|
||||
// // 收到的是ArrayBuffer 需要进行转换解析
|
||||
// if (value) {
|
||||
// let dataView = new DataView(value.message)
|
||||
// // console.log(`${TAG} udp message length:${dataView?.byteLength}`);
|
||||
// let str = ""
|
||||
// for (let i = 0;i < dataView?.byteLength; ++i) {
|
||||
// let c = String.fromCharCode(dataView?.getUint8(i))
|
||||
// if (c !== "\n") {
|
||||
// str += c
|
||||
// }
|
||||
// }
|
||||
// console.log(`${TAG} udp on message array buffer:${str}`);
|
||||
// callback(str)
|
||||
// }else{
|
||||
// callback('')
|
||||
// }
|
||||
//
|
||||
//
|
||||
// });
|
||||
}
|
||||
offTcp(callback) {
|
||||
this.tcp.off('testTagofmessg', callback);
|
||||
console.log(TAG,'tcpofff')
|
||||
|
||||
this.tcp.off('testTagofmessg', callback);
|
||||
}
|
||||
closeTcp(callback) {
|
||||
return new Promise((reslove,reject)=>{
|
||||
console.log(TAG,'tcpClose')
|
||||
let promise = this.tcp.close();
|
||||
promise.then(() => {
|
||||
console.log('testTagclose success');
|
||||
console.log(TAG,'tcpCloseSuccess')
|
||||
callback()
|
||||
reslove(true)
|
||||
}).catch(err => {
|
||||
console.log('testTagclose fail');
|
||||
console.log(TAG,'tcpClosefailed')
|
||||
reslove(false)
|
||||
});
|
||||
})
|
||||
|
||||
@ -17,10 +17,11 @@ import socket from '@ohos.net.socket';
|
||||
import { Array2Byte } from '../utils/tools'
|
||||
import {getChuankouFn} from '../../common/service/indexService'
|
||||
|
||||
const TAG = '[PLC.UdpClient]'
|
||||
const TAG = 'socketTag[PLC.UdpClient]'
|
||||
import prompt from '@ohos.prompt'
|
||||
|
||||
import hilog from '@ohos.hilog';
|
||||
let num=0
|
||||
export default class UdpClient {
|
||||
private localIp: string = ''
|
||||
private localIpPort: string = ''
|
||||
@ -36,39 +37,40 @@ export default class UdpClient {
|
||||
this.localIpPort = udplocalIpPort
|
||||
this.oppositeIpPort = udpOppositeIpPort
|
||||
getChuankouFn()
|
||||
console.log(TAG,'newUdp')
|
||||
// this.stashFn=()=>{}
|
||||
this.udp = socket.constructUDPSocketInstance();
|
||||
}
|
||||
|
||||
rebindUdp(localIp: string, localIpPort: string, oppositeIp: string, oppositeIpPort: string) {
|
||||
console.log(TAG,'rebindUdp',this.localIp,this.localIpPort)
|
||||
|
||||
this.localIp = localIp
|
||||
this.oppositeIp = oppositeIp
|
||||
this.localIpPort = localIpPort
|
||||
this.oppositeIpPort = oppositeIpPort
|
||||
hilog.info(0x0000, 'udpCLient', 'rebind'+this.localIp+this.localIpPort);
|
||||
let promise = this.udp.bind({
|
||||
address: this.localIp, port: parseInt(this.localIpPort), family: 1
|
||||
});
|
||||
promise.then(() => {
|
||||
console.log(`${TAG}udpCLient udp rebind success`);
|
||||
globalThis.closeUDPSocket=false
|
||||
|
||||
console.log(`${TAG},udpCLient udp rebind success`);
|
||||
}).catch(err => {
|
||||
|
||||
console.log(`${TAG}udpCLient udp rebind failed:${JSON.stringify(err)}`);
|
||||
console.log(`${TAG},udpCLient udp rebind failed:${JSON.stringify(err)}`);
|
||||
});
|
||||
}
|
||||
|
||||
bindUdp() {
|
||||
console.log('localIp', this.localIp)
|
||||
console.log('localIpPort', this.localIpPort)
|
||||
hilog.info(0x0000, 'udpCLient', 'bind'+ this.localIp+this.localIpPort);
|
||||
|
||||
console.log(TAG,'udpbind',this.localIp,this.localIpPort)
|
||||
let promise = this.udp.bind({
|
||||
// address: '192.168.7.170', port: 20122, family: 1
|
||||
// address: '192.168.7.170', port: 31013, family: 1
|
||||
address: this.localIp, port: parseInt(this.localIpPort), family: 1
|
||||
});
|
||||
promise.then(() => {
|
||||
globalThis.closeUDPSocket=false
|
||||
console.log(`${TAG}udpCLient udp bind success`);
|
||||
}).catch(err => {
|
||||
|
||||
@ -79,9 +81,7 @@ export default class UdpClient {
|
||||
// this.stashFn=callback?callback:()=>{}
|
||||
}
|
||||
sendMsg(msg) {
|
||||
console.log('sendsnd01')
|
||||
hilog.info(0x0000, 'udpCLient', 'send');
|
||||
console.log('udpdiushisend')
|
||||
console.log(TAG,'UdpSend1111',this.oppositeIp,this.oppositeIpPort)
|
||||
|
||||
let promise = this.udp.send({
|
||||
data: msg,
|
||||
@ -96,16 +96,14 @@ export default class UdpClient {
|
||||
}
|
||||
});
|
||||
promise.then(() => {
|
||||
console.log(`${TAG}udpCLient udp send success:${msg}`);
|
||||
console.log(`${TAG}udpCLient udp send success:oppositeIp${this.oppositeIp},oppositeIpPort:${this.oppositeIpPort},localIp:${this.localIp},localIpPort,${this.localIpPort}`);
|
||||
}).catch(err => {
|
||||
console.log(`${TAG}udpCLient udp send fail:${JSON.stringify(err)}`);
|
||||
console.log(`${TAG}udpCLient udp send fail:oppositeIp${this.oppositeIp},oppositeIpPort:${this.oppositeIpPort},localIp:${this.localIp},localIpPort,${this.localIpPort}`);
|
||||
});
|
||||
}
|
||||
onError(callback?){
|
||||
this.udp.on('error',async err => {
|
||||
console.log('udpdiushierroring')
|
||||
hilog.info(0x0000, 'udpCLientonerror', 'error'+ JSON.stringify(err));
|
||||
console.log("on error, err:" + JSON.stringify(err))
|
||||
console.log(TAG,'udpError',JSON.stringify(err))
|
||||
await this.bindUdp()
|
||||
await this.sendMsg('111')
|
||||
await this.onMessage(callback)
|
||||
@ -119,11 +117,8 @@ export default class UdpClient {
|
||||
onMessage(callback?) {
|
||||
|
||||
this.udp.on('message', value => {
|
||||
console.log('udpdiushimsg')
|
||||
|
||||
console.log(TAG,'udponmessage')
|
||||
// 收到的是ArrayBuffer 需要进行转换解析
|
||||
hilog.info(0x0000, 'udpCLient', 'onmessage');
|
||||
|
||||
globalThis.plcUdpError = false
|
||||
if (value) {
|
||||
|
||||
@ -169,10 +164,18 @@ export default class UdpClient {
|
||||
globalThis.messageTimer = setInterval(() => {
|
||||
const lightLineUdp = globalThis.lightLineUdp
|
||||
const isJudge = globalThis.isJudge
|
||||
setTimeout(() => {
|
||||
setTimeout(async () => {
|
||||
//程序断开
|
||||
lightLineUdp?.send(globalThis.plcUdpError ? arrRedBuffer : (isJudge ? arrGreenBugger : arrBlueBuffer));
|
||||
if (globalThis.plcUdpError) {
|
||||
num++
|
||||
console.log(TAG,'plc udp信号丢失')
|
||||
// if(num==2){
|
||||
// await this.bindUdp()
|
||||
// await this.sendMsg('111')
|
||||
// await this.onMessage(callback)
|
||||
// num=0
|
||||
// }
|
||||
prompt.showToast({
|
||||
message: 'plc udp信号丢失',
|
||||
duration: 2000
|
||||
@ -186,10 +189,10 @@ export default class UdpClient {
|
||||
closeUdp(callback) {
|
||||
|
||||
this.udp.close(err => {
|
||||
hilog.info(0x0000, 'udpCLient', 'close');
|
||||
hilog.info(0x0000,TAG, 'udpCLient', 'close');
|
||||
|
||||
if (err) {
|
||||
hilog.info(0x0000, 'udpCLient', 'closeonerror');
|
||||
hilog.info(0x0000,TAG, 'udpCLient', 'closeonerror');
|
||||
|
||||
} else {
|
||||
this.udp.getState((err, data) => {
|
||||
|
||||
@ -61,6 +61,7 @@ export default class UdpClientByCenter {
|
||||
});
|
||||
|
||||
promise.then(() => {
|
||||
globalThis.closeHeartSocket=false
|
||||
console.log(`${TAG} udp bind success`);
|
||||
}).catch(err => {
|
||||
|
||||
@ -77,6 +78,7 @@ export default class UdpClientByCenter {
|
||||
address: this.localIp, port: parseInt(this.localIpPort), family: 1
|
||||
});
|
||||
promise.then(() => {
|
||||
globalThis.closeHeartSocket=false
|
||||
console.log(`${TAG} udp bind success`);
|
||||
}).catch(err => {
|
||||
|
||||
@ -182,7 +184,6 @@ export default class UdpClientByCenter {
|
||||
}
|
||||
onMessage(callback,type?) {
|
||||
this.udp.on('message', value => {
|
||||
console.log('tttttttt')
|
||||
let arr=[]
|
||||
let dataView = new DataView(value.message)
|
||||
for (let i = 0;i < dataView?.byteLength; ++i) {
|
||||
|
||||
@ -71,13 +71,8 @@ export default struct Index {
|
||||
username: this.inputTextArr[0],
|
||||
password: Md5.Instance.get_md5(this.inputTextArr[1])
|
||||
}
|
||||
console.log('paramparam', JSON.stringify(globalThis.carInfo))
|
||||
console.log('carInfo', JSON.stringify(globalThis.carInfo))
|
||||
examinerLoginService(param).then(res => {
|
||||
// this.vocObj.playAudio({
|
||||
// type: 1,
|
||||
// name: 'media_button.wav'
|
||||
// })
|
||||
// this.url='pages/userInfo'
|
||||
router.pushUrl({
|
||||
url: 'pages/UserInfo',
|
||||
}, router.RouterMode.Single);
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
// @ts-nocheck
|
||||
import promptAction from '@ohos.promptAction'
|
||||
import { VideoConfig } from './interfaces'
|
||||
import common from '@ohos.app.ability.common';
|
||||
import router from '@ohos.router'
|
||||
@ -86,10 +87,28 @@ struct Index {
|
||||
})
|
||||
Image($r('app.media.btn_back')).width('14.4%').height('12.2%')
|
||||
.onClick(() => {
|
||||
if (this.loading) {
|
||||
return
|
||||
}
|
||||
router.back()
|
||||
promptAction.showDialog({
|
||||
title: '提示',
|
||||
message: '确认是否退出应用',
|
||||
buttons: [
|
||||
{
|
||||
text: '确认',
|
||||
color: '#000000',
|
||||
},
|
||||
{
|
||||
text: '取消',
|
||||
color: '#000000',
|
||||
}
|
||||
],
|
||||
})
|
||||
.then(data => {
|
||||
if(data.index==0){
|
||||
router.back()
|
||||
}
|
||||
})
|
||||
.catch(err => {
|
||||
// reslove(false)
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
@ -244,13 +263,6 @@ struct Index {
|
||||
}, router.RouterMode.Single)
|
||||
}
|
||||
this.loading=false
|
||||
// let workData: WorkData = e.data;
|
||||
// if (workData) {
|
||||
// this.isComplete = workData.isComplete;
|
||||
// this.json_Str = workData.jsonStr;
|
||||
// console.log("baoyihu after postMessage json_Str:"+this.json_Str);
|
||||
// workerInstance.terminate();
|
||||
// }
|
||||
}
|
||||
}
|
||||
async heartMsg() {
|
||||
@ -266,7 +278,9 @@ struct Index {
|
||||
|
||||
const param= {id: 31,list:tmpList,carNo: globalThis.carInfo.carNo,placeId: globalThis.carInfo.examinationRoomId}
|
||||
// globalThis.udpClient2.initHeartSendMsg(param,this.context)
|
||||
globalThis.udpClient2.sendMsg(param, this.context)
|
||||
if(!globalThis.closeHeartSocket){
|
||||
globalThis.udpClient2.sendMsg(param, this.context)
|
||||
}
|
||||
}
|
||||
|
||||
onPageShow() {
|
||||
|
||||
@ -253,13 +253,13 @@ struct UserInfo {
|
||||
const faceParam = syssetParams.filter(sys => sys.v_no === '2313')
|
||||
that.FaceOpenStatue =faceParam?.[0]?.v_value=='3'? '1':'0'
|
||||
that.FaceOpenStatue = '0'
|
||||
console.log('that.FaceOpenStatue',that.FaceOpenStatue)
|
||||
// faceParam?.[0]?.v_value ||
|
||||
// 1身份证读卡器 2指纹 3人脸
|
||||
this.faceFlag=faceParam?.[0]?.v_value ||'0'
|
||||
if(faceParam?.[0]?.v_value=='1'){
|
||||
that.openDeviceByIDCard()
|
||||
}
|
||||
console.log('studentRefreshStatue',this.studentRefreshStatue)
|
||||
//0不自动更新 1自动更新(不限次数) 2没有考生更新2次
|
||||
if (that.studentRefreshStatue == '2') {
|
||||
clearInterval(that.interval)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user