checkPointDao.go 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. package dao
  2. import "time"
  3. //CheckPoint 卡口
  4. type CheckPoint struct {
  5. ID int `gorm:"primary_key" json:"id"` //编号
  6. PointName string `gorm:"type:varchar(64)" json:"pointName"` //卡口名称
  7. PointSN string `gorm:"type:varchar(60)" json:"pointSn"` //卡口编码
  8. PointLocation string `gorm:"type:varchar(150)" json:"pointLocation"` //卡口位置
  9. TenantId string `gorm:"type:varchar(12)" json:"tenantId"` //租户ID
  10. CreateTime time.Time `gorm:"type:datetime" json:"createTime"` //新增时间
  11. CreateUser string `gorm:"type:varchar(30)" json:"createUser"` //新增记录操作用户ID
  12. UpdateTime time.Time `gorm:"type:datetime" json:"updateTime"` //修改时间
  13. UpdateUser string `gorm:"type:varchar(30)" json:"updateUser"` //修改用户
  14. IsDeleted int `gorm:"type:int;default 0" json:"isDeleted"` //是否删除 0=未删除,1=删除
  15. }
  16. func (CheckPoint) TableName() string {
  17. return "t_dev_check_point"
  18. }
  19. func (c CheckPoint) IsExistedBySN() bool {
  20. var count = 0
  21. _ = GDb.Model(&c).Where("point_sn = ? and is_deleted = ?",
  22. c.PointSN, c.IsDeleted).Count(&count).Error
  23. return count > 0
  24. }
  25. func (c *CheckPoint) Create() error {
  26. return GDb.Model(&c).Save(&c).Error
  27. }
  28. func (c *CheckPoint) Update() error {
  29. return GDb.Model(&c).Where(" id = ? ", c.ID).Update(&c).Error
  30. }
  31. func (c *CheckPoint) GetDevice() error {
  32. err := GDb.Model(&c).Where(" id = ? ", c.ID).First(&c).Error
  33. return err
  34. }
  35. func (c CheckPoint) GetDevices(offset, limit int) ([]CheckPoint, error) {
  36. var Points []CheckPoint
  37. db := GDb.Model(&c)
  38. if c.PointSN != "" {
  39. db = db.Where("point_name like ? or point_sn like ?", "%"+c.PointSN+"%", "%"+c.PointSN+"%")
  40. }
  41. err := db.Where("is_deleted = 0").Offset(offset).Limit(limit).Find(&Points).Error
  42. return Points, err
  43. }
  44. func (c *CheckPoint) Delete() error {
  45. return GDb.Model(&c).Where("id = ?", c.ID).Updates(map[string]interface{}{"update_time": c.UpdateTime,
  46. "update_user": c.UpdateUser, "is_deleted": c.IsDeleted}).Error
  47. }
  48. func (c CheckPoint) GetAllDevices() ([]*CheckPoint, error) {
  49. var Points []*CheckPoint
  50. err := GDb.Model(&c).Where(" tenant_id = ? and is_deleted = ? ", c.TenantId, c.IsDeleted).Scan(&Points).Error
  51. return Points, err
  52. }