wx-server/internal/dao/bluetooth.go

38 lines
1.2 KiB
Go
Raw Permalink Normal View History

2024-06-04 21:22:50 +08:00
package dao
import "gorm.io/gorm"
type Bluetooth struct {
ID uint64 `gorm:"primaryKey"`
DeviceId string `gorm:"unique;type varchar(64);not null;comment:'设备Id唯一标识每个蓝牙设备'"`
DeviceName string `gorm:"type varchar(64);comment:'蓝牙名称'"`
DeviceType string `gorm:"type varchar(64);comment:'设备类型'"`
UserId int32 `gorm:"index;comment:'用户ID'"`
}
func AddBluetooth(data *Bluetooth) error {
if err := s.db.Where("device_id = ? AND user_id = ?", data.DeviceId, data.UserId).FirstOrCreate(data).Error; err != nil {
return err
}
return nil
}
func DeleteBluetooth(deviceid string, userid int32) error {
var data *Bluetooth
if err := s.db.Where("device_id = ? AND user_id = ?", deviceid, userid).First(&data).Error; err != nil && err != gorm.ErrRecordNotFound {
return err
}
if err := s.db.Delete(&data).Error; err != nil && err != gorm.ErrRecordNotFound {
return err
}
return nil
}
func GetAllBluetooth(userid int32) ([]*Bluetooth, error) {
var list []*Bluetooth
if err := s.db.Where("user_id = ?", userid).Find(&list).Error; err != nil && err != gorm.ErrRecordNotFound {
return nil, err
}
return list, nil
}