zhangqian
2023-11-01 548a50f98aa6cab54047028417dfbc9511123df6
程序启动时初始化当前设备,选绑定的设备列表第一个
2个文件已修改
36 ■■■■ 已修改文件
main.go 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/device.go 27 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
main.go
@@ -54,10 +54,11 @@
        return
    }
    //从文件里读取当前生产设备id
    conf.Conf.CurrentDeviceID = service.ReadDeviceIDFromFile()
    if conf.Conf.CurrentDeviceID == "" {
        conf.Conf.CurrentDeviceID = conf.Conf.System.DeviceId
    //从文件里读取当前生产设备id获取设备列表第一个
    err := service.InitCurrentDeviceID()
    if err != nil {
        logx.Errorf("InitCurrentDeviceID error: %v, exit", err)
        return
    }
    // 判断当前集群状态
service/device.go
@@ -3,7 +3,7 @@
import (
    "apsClient/conf"
    "apsClient/model"
    "fmt"
    "apsClient/pkg/logx"
    "os"
)
@@ -19,21 +19,40 @@
    return deviceIds, nil
}
func InitCurrentDeviceID() (err error) {
    currentDeviceID := ReadDeviceIDFromFile()
    if currentDeviceID != "" {
        conf.Conf.CurrentDeviceID = currentDeviceID
        return
    }
    deviceList, err := GetDeviceIDList()
    if err != nil {
        return err
    }
    if len(deviceList) == 0 {
        conf.Conf.CurrentDeviceID = conf.Conf.System.DeviceId
        return nil
    }
    conf.Conf.CurrentDeviceID = deviceList[0]
    SetDeviceIDToFile(conf.Conf.CurrentDeviceID)
    return nil
}
const deviceIDFile = "currentDeviceID.txt"
func SetDeviceIDToFile(deviceID string) {
    err := os.WriteFile(deviceIDFile, []byte(deviceID), 0644)
    if err != nil {
        fmt.Printf("无法写入设备ID到文件: %v\n", err)
        logx.Errorf("无法写入设备ID到文件: %v\n", err)
    } else {
        fmt.Println("设备ID已写入文件")
        logx.Infof("设备ID已写入文件")
    }
}
func ReadDeviceIDFromFile() string {
    data, err := os.ReadFile(deviceIDFile)
    if err != nil {
        fmt.Printf("无法读取设备ID文件: %v\n", err)
        logx.Errorf("无法读取设备ID文件: %v\n", err)
        return ""
    }
    return string(data)