在线状态

main
wangbin 3 days ago
parent d15a4b40c5
commit 6309cb7d6b

@ -1039,6 +1039,7 @@ func GetAvailableEndpoint() string {
} }
func IsIPReachable(ip string, port string) bool { func IsIPReachable(ip string, port string) bool {
conn, err := net.DialTimeout("tcp", ip+":"+port, 10*time.Millisecond) conn, err := net.DialTimeout("tcp", ip+":"+port, 10*time.Millisecond)
if err != nil { if err != nil {
return false return false

@ -4,6 +4,7 @@ import (
"flx/Common" "flx/Common"
"flx/cite/holmes" "flx/cite/holmes"
"flx/cite/tao" "flx/cite/tao"
"flx/localcache"
"fmt" "fmt"
"net" "net"
"strconv" "strconv"
@ -185,7 +186,12 @@ func ConnectToServer() {
} }
} }
IsConnect = true IsConnect = true
if strip == Common.LoadConfig().SeverData.ServerIP {
localcache.LineStatus = "在线:连接主机"
}
if strip == Common.LoadConfig().SeverData.BackUpServerIP {
localcache.LineStatus = "在线:连接备机"
}
for i := 0; i < len(UnSendToServerData); { for i := 0; i < len(UnSendToServerData); {
AsClicent.Write(UnSendToServerData[i]) AsClicent.Write(UnSendToServerData[i])
UnSendToServerData = append(UnSendToServerData[:i], UnSendToServerData[i+1:]...) UnSendToServerData = append(UnSendToServerData[:i], UnSendToServerData[i+1:]...)
@ -195,11 +201,13 @@ func ConnectToServer() {
}) })
onError := tao.OnErrorOption(func(c tao.WriteCloser) { onError := tao.OnErrorOption(func(c tao.WriteCloser) {
localcache.LineStatus = "离线"
holmes.Infoln("on error") holmes.Infoln("on error")
IsConnect = false IsConnect = false
}) })
onClose := tao.OnCloseOption(func(c tao.WriteCloser) { onClose := tao.OnCloseOption(func(c tao.WriteCloser) {
localcache.LineStatus = "离线"
holmes.Infoln("连接关闭,尝试重连...") holmes.Infoln("连接关闭,尝试重连...")
IsConnect = false IsConnect = false
go ConnectToServer() // 异步触发重连 go ConnectToServer() // 异步触发重连
@ -209,8 +217,6 @@ func ConnectToServer() {
Remote_IP := strings.Split((c.(*tao.ClientConn)).Name(), ":")[0] Remote_IP := strings.Split((c.(*tao.ClientConn)).Name(), ":")[0]
IsConnect = true IsConnect = true
fmt.Println(msg.(Message).Content, Remote_IP) fmt.Println(msg.(Message).Content, Remote_IP)
//有问题 第一次能进 以后就进不去
FLXNetConnect.AsClicent_DatagramReceived(Remote_IP, (c.(*tao.ClientConn)).NetID(), msg.(Message).Content) FLXNetConnect.AsClicent_DatagramReceived(Remote_IP, (c.(*tao.ClientConn)).NetID(), msg.(Message).Content)
}) })

@ -26,6 +26,8 @@ var AllPerson []*Model.T_AgendaPerson
// 当前会议信息 // 当前会议信息
var CurrentAgenda Model.T_Agenda var CurrentAgenda Model.T_Agenda
var LineStatus string = "离线"
var CurrentCongress Model.T_Congress var CurrentCongress Model.T_Congress
// 应到人员 // 应到人员

@ -566,6 +566,12 @@ func DefaultLayout() fyne.CanvasObject {
lblTime.Resize(fyne.NewSize(300*BigPara, 50*BigPara)) lblTime.Resize(fyne.NewSize(300*BigPara, 50*BigPara))
lblTime.Move(fyne.NewPos(150*BigPara, 1000*BigPara)) lblTime.Move(fyne.NewPos(150*BigPara, 1000*BigPara))
LblLine = canvas.NewText(localcache.LineStatus, color.Black)
LblLine.TextSize = 20
LblLine.Alignment = fyne.TextAlignCenter
LblLine.Resize(fyne.NewSize(300*BigPara, 50*BigPara))
LblLine.Move(fyne.NewPos(400*BigPara, 1000*BigPara))
// datebind := binding.NewString() // datebind := binding.NewString()
// checkLabel := widget.NewLabelWithData(datebind) // checkLabel := widget.NewLabelWithData(datebind)
// lbltext := widget.NewLabel(time.Now().Format("2006年01月02日 15:04:05")) // lbltext := widget.NewLabel(time.Now().Format("2006年01月02日 15:04:05"))
@ -638,6 +644,7 @@ func DefaultLayout() fyne.CanvasObject {
btnClose, btnClose,
btnCardManage, btnCardManage,
btnPersonManage, btnPersonManage,
LblLine,
) )
go ShowTime(lblTime) go ShowTime(lblTime)
@ -802,7 +809,10 @@ func ShowTime(lblt *canvas.Text) {
fyne.DoAndWait(func() { fyne.DoAndWait(func() {
lblt.Refresh() lblt.Refresh()
}) })
LblLine.Text = localcache.LineStatus
fyne.DoAndWait(func() {
LblLine.Refresh()
})
time.Sleep(1 * time.Second) time.Sleep(1 * time.Second)
} }
} }
@ -873,6 +883,9 @@ var lblRCArriveNum *canvas.Text
// 时间 // 时间
var lblTime *canvas.Text var lblTime *canvas.Text
// 在线状态
var LblLine *canvas.Text
// 当前报到人图片 // 当前报到人图片
var imgCurrentPerson *canvas.Image var imgCurrentPerson *canvas.Image
@ -1073,6 +1086,12 @@ func ReportLayout() fyne.CanvasObject {
lblReTime.Resize(fyne.NewSize(300*BigPara, 50*BigPara)) lblReTime.Resize(fyne.NewSize(300*BigPara, 50*BigPara))
lblReTime.Move(fyne.NewPos(150*BigPara, 1000*BigPara)) lblReTime.Move(fyne.NewPos(150*BigPara, 1000*BigPara))
LblLine = canvas.NewText(localcache.LineStatus, color.Black)
LblLine.TextSize = 20
LblLine.Alignment = fyne.TextAlignCenter
LblLine.Resize(fyne.NewSize(300*BigPara, 50*BigPara))
LblLine.Move(fyne.NewPos(400*BigPara, 1000*BigPara))
// //证卡管理 // //证卡管理
// btnCardManage := widget.NewButton("证卡管理", func() { // btnCardManage := widget.NewButton("证卡管理", func() {
// //证卡管理 // //证卡管理
@ -1139,7 +1158,7 @@ func ReportLayout() fyne.CanvasObject {
content := container.NewWithoutLayout( content := container.NewWithoutLayout(
imgIcon, lblRCongressName, lblRAgendaName, lblRShoudNumName, lblRShoudNum, lblRArriveNumName, lblRArriveNum, lblRNoNumName, imgIcon, lblRCongressName, lblRAgendaName, lblRShoudNumName, lblRShoudNum, lblRArriveNumName, lblRArriveNum, lblRNoNumName,
lblRNoNum, lblRCArriveNumName, lblRCArriveNum, imgCurrentPerson, imgPerson1, imgPerson2, imgPerson3, imgPerson4, imgPerson5, imgPerson6, lblRNoNum, lblRCArriveNumName, lblRCArriveNum, imgCurrentPerson, imgPerson1, imgPerson2, imgPerson3, imgPerson4, imgPerson5, imgPerson6,
imgOnline, lblReTime, btnRClose, btnCardManage, btnPersonManage, btnMergeImage_, imgOnline, lblReTime, btnRClose, btnCardManage, btnPersonManage, btnMergeImage_, LblLine,
) )
// go ShowTime(lblReTime) // go ShowTime(lblReTime)
fyne.DoAndWait(func() { fyne.DoAndWait(func() {

Loading…
Cancel
Save