zhangqian
2023-10-21 2ea23e2364f742f528fb8b97657212c174d1bbd7
model/device_plc.go
@@ -13,6 +13,7 @@
   // DevicePlc 设备的PLC配置
   DevicePlc struct {
      gorm.Model
      DeviceID   string             `gorm:"unique;column:device_id;type:varchar(255);not null;default ''" json:"deviceID"` //设备编号
      Brand      string             `gorm:"type:varchar(191)" json:"brand"`
      Method     constvar.PlcMethod `gorm:"type:varchar(191)" json:"method"`
      Address    string             `gorm:"type:varchar(191)" json:"address"` //plc ip地址, method = modbusTCP用
@@ -84,11 +85,20 @@
   return slf
}
func (slf *DevicePlcSearch) SetDeviceId(deviceId string) *DevicePlcSearch {
   slf.DeviceID = deviceId
   return slf
}
func (slf *DevicePlcSearch) build() *gorm.DB {
   var db = slf.Orm.Table(slf.TableName())
   if slf.ID > 0 {
      db = db.Where("id = ?", slf.ID)
   }
   if slf.DeviceID != "" {
      db = db.Where("device_id = ?", slf.DeviceID)
   }
   if slf.Order != "" {
@@ -104,17 +114,6 @@
   if err := db.Create(record).Error; err != nil {
      return fmt.Errorf("create err: %v, record: %+v", err, record)
   }
   return nil
}
// CreateBatch 批量插入
func (slf *DevicePlcSearch) CreateBatch(records []*DevicePlc) error {
   var db = slf.build()
   if err := db.Create(&records).Error; err != nil {
      return fmt.Errorf("create batch err: %v, records: %+v", err, records)
   }
   return nil