checkitemservice.go 1.1KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. package service
  2. import (
  3. "sws_xcx/models"
  4. "github.com/jinzhu/gorm"
  5. )
  6. type CheckItemService struct {
  7. rdb *gorm.DB
  8. }
  9. func NewCheckItemService() *CheckItemService {
  10. return &CheckItemService{
  11. rdb: ReadDB().Model(&models.CheckItem{}),
  12. }
  13. }
  14. func (s *CheckItemService) GetCheckItems(lang, t string) ([]*models.CheckItem, error) {
  15. var items []*models.CheckItem
  16. db := s.rdb.Where(" delete_flag = ?", 0)
  17. if t != "" {
  18. db = db.Where("device_type = ?", t)
  19. }
  20. if lang != "" {
  21. db = db.Where("language = ? ", lang)
  22. }
  23. err := db.Order("check_item_number").Find(&items).Error
  24. return items, err
  25. }
  26. func (s *CheckItemService) GetCheckItemById(id int64) (item models.CheckItem, err error) {
  27. err = s.rdb.Where("id = ?", id).First(&item).Error
  28. if err == gorm.ErrRecordNotFound {
  29. err = nil
  30. }
  31. return
  32. }
  33. func (s *CheckItemService) GetCheckItemByNumber(number int, lang, deviceType string) (item models.CheckItem, err error) {
  34. err = s.rdb.Where("check_item_number = ? and language= ? and device_type= ? ", number, lang, deviceType).First(&item).Error
  35. if err == gorm.ErrRecordNotFound {
  36. err = nil
  37. }
  38. return
  39. }