zhangqian
2023-11-01 85161cadbaec116bfa0573959484a0b278cc65a7
接收设备信息时保存deviceMac字段
2个文件已修改
10 ■■■■ 已修改文件
model/common/common.go 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
nsq/msg_handler.go 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
model/common/common.go
@@ -132,6 +132,7 @@
    ID                  string                 `gorm:"comment:主键ID;primaryKey;type:varchar(191);" json:"id"`
    DeviceProcedureAttr []*DeviceProcedureAttr `json:"deviceProcedureAttr"` // 设备工序属性列表
    ExtChannelAmount    int                    `gorm:"type:tinyint;comment:额外的通道数量;default:0;" json:"extChannelAmount"`
    DeviceMac           string                 `gorm:"type:varchar(191);comment:设备MAC" json:"deviceMac"`
    PlcAddressList      []*PlcAddress
    PlcConfig           *PlcConfig
}
nsq/msg_handler.go
@@ -267,12 +267,15 @@
        DeviceID:         msg.ID,
        Procedures:       strings.Join(procedures, ","),
        ExtChannelAmount: msg.ExtChannelAmount,
        DeviceMac:        msg.DeviceMac,
    }
    oldRecord, err := model.NewDeviceSearch().SetDeviceId(msg.ID).First()
    if err == gorm.ErrRecordNotFound {
        err = model.NewDeviceSearch().Create(deviceRecord)
    } else if oldRecord.ExtChannelAmount != deviceRecord.ExtChannelAmount || oldRecord.Procedures != deviceRecord.Procedures {
    } else if oldRecord.ExtChannelAmount != deviceRecord.ExtChannelAmount ||
        oldRecord.Procedures != deviceRecord.Procedures ||
        oldRecord.DeviceMac != deviceRecord.DeviceMac {
        err = model.NewDeviceSearch().SetDeviceId(msg.ID).Save(deviceRecord)
    }
@@ -288,10 +291,6 @@
    msg.PlcConfig.Method.ConvertToEnglish()
    var record model.DevicePlc
    err = mapstructure.Decode(msg.PlcConfig, &record)
    if err != nil {
        logx.Infof("decode from PlcAddressList to DevicePlc  Details err:%v", err)
    }
    err = mapstructure.Decode(msg.PlcAddressList, &record.Details)
    if err != nil {
        logx.Infof("decode from PlcAddressList to DevicePlc  Details err:%v", err)
    }