supplier_dao.go 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. package dao
  2. import (
  3. "gorm.io/gorm"
  4. "strconv"
  5. "youngee_b_api/app/entity"
  6. )
  7. type SupplierDao struct{}
  8. func (d SupplierDao) GetSupplierInfoById(supplierId int64) (*entity.Supplier, error) {
  9. var supplier entity.Supplier
  10. err := Db.Debug().Model(&entity.Supplier{}).Where("supplier_id = ?", supplierId).First(&supplier).Error
  11. if err != nil && err != gorm.ErrRecordNotFound {
  12. return nil, err
  13. }
  14. return &supplier, nil
  15. }
  16. // 根据服务商名称/认证名搜索
  17. func (d SupplierDao) GetSuppliersByMsg(fieldName string) ([]*entity.Supplier, error) {
  18. var suppliers []*entity.Supplier
  19. supplierId, err := strconv.ParseInt(fieldName, 10, 64)
  20. if err == nil {
  21. err1 := Db.Debug().Model(&entity.Supplier{}).Where("supplier_id = ? AND supplier_type != 0", supplierId).First(&suppliers).Error
  22. if err1 != nil && err1 != gorm.ErrRecordNotFound {
  23. return nil, err1
  24. }
  25. } else {
  26. err1 := Db.Debug().Model(&entity.Supplier{}).Where("supplier_name = ? OR company_name = ? OR name = ? AND supplier_type != 0", fieldName, fieldName, fieldName).Find(&suppliers).Error
  27. if err1 != nil {
  28. return nil, err
  29. }
  30. }
  31. return suppliers, nil
  32. }
  33. func (d SupplierDao) GetSupplierPhone(supplierId int64) (string, error) {
  34. var phone string
  35. err := Db.Debug().Model(&entity.Supplier{}).Where("supplier_id = ?", supplierId).Select("phone_number").First(&phone).Error
  36. if err != nil && err != gorm.ErrRecordNotFound {
  37. return "", err
  38. }
  39. return phone, nil
  40. }