product_photo_dao.go 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. package dao
  2. import (
  3. "github.com/sirupsen/logrus"
  4. "youngee_b_api/app/entity"
  5. )
  6. type ProductPhotoDAO struct{}
  7. func (d ProductPhotoDAO) GetMainPhotoByProductID(productId int64) (string, error) {
  8. var productPhoto entity.ProductPhoto
  9. err := Db.Where("product_id = ? AND symbol = ?", productId, 1).First(&productPhoto).Error
  10. if err != nil {
  11. return "", err
  12. }
  13. return productPhoto.PhotoUrl, nil
  14. }
  15. func (d ProductPhotoDAO) CreateProductPhoto(productPhotos []entity.ProductPhoto) error {
  16. err := Db.Create(&productPhotos).Error
  17. if err != nil {
  18. return err
  19. }
  20. return nil
  21. }
  22. func (d ProductPhotoDAO) GetProductPhotoByProductID(productID int64) ([]entity.ProductPhoto, error) {
  23. var productPhotos []entity.ProductPhoto
  24. err := Db.Where("product_id = ?", productID).Find(&productPhotos).Error
  25. if err != nil {
  26. return nil, err
  27. }
  28. return productPhotos, nil
  29. }
  30. func (d ProductPhotoDAO) GetProductPhotosBySelectionId(selectionId string) ([]*entity.ProductPhoto, error) {
  31. productId := 0
  32. err := Db.Model(entity.SelectionInfo{}).Select("product_id").Where("selection_id = ?", selectionId).Find(&productId).Error
  33. if err != nil {
  34. logrus.Errorf("[GetProductInfo] error query mysql, err:%+v", err)
  35. return nil, err
  36. }
  37. var productPhotos []*entity.ProductPhoto
  38. err = Db.Model(entity.ProductPhoto{}).Where("product_id = ?", productId).Find(&productPhotos).Error
  39. if err != nil {
  40. logrus.Errorf("[GetProductInfo] error query mysql, err:%+v", err)
  41. return nil, err
  42. }
  43. return productPhotos, nil
  44. }