product_photo_dao.go 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  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) CreateProductPhoto(productPhotos []entity.ProductPhoto) error {
  8. err := Db.Create(&productPhotos).Error
  9. if err != nil {
  10. return err
  11. }
  12. return nil
  13. }
  14. // 获取所属商品的图片
  15. func (d ProductPhotoDAO) GetProductPhotoByProductID(productId int64) ([]entity.ProductPhoto, error) {
  16. var productPhotos []entity.ProductPhoto
  17. err := Db.Where("product_id = ?", productId).Order("created_at asc").Find(&productPhotos).Error
  18. if err != nil {
  19. return nil, err
  20. }
  21. return productPhotos, nil
  22. }
  23. // 获取所属商品的主图
  24. func (d ProductPhotoDAO) GetMainPhotoByProductID(productId int64) (string, error) {
  25. var productPhoto entity.ProductPhoto
  26. err := Db.Where("product_id = ? AND symbol = ?", productId, 1).Find(&productPhoto).Error
  27. if err != nil {
  28. return "", err
  29. }
  30. return productPhoto.PhotoUrl, nil
  31. }
  32. // 获取所属门店的图片
  33. func (d ProductPhotoDAO) GetProductPhotoByStoreID(storeId int64) ([]entity.ProductPhoto, error) {
  34. var productPhotos []entity.ProductPhoto
  35. err := Db.Where("store_id = ?", storeId).Order("created_at asc").Find(&productPhotos).Error
  36. if err != nil {
  37. return nil, err
  38. }
  39. return productPhotos, nil
  40. }
  41. // 获取所属门店的主图
  42. func (d ProductPhotoDAO) GetMainPhotoByStoreID(storeId int64) (string, error) {
  43. var productPhoto entity.ProductPhoto
  44. err := Db.Where("store_id = ? AND symbol = ?", storeId, 1).Find(&productPhoto).Error
  45. if err != nil {
  46. return "", err
  47. }
  48. return productPhoto.PhotoUrl, nil
  49. }
  50. // 获取所属团购的图片
  51. func (d ProductPhotoDAO) GetProductPhotoByTeamBuyingID(teamBuyingId int64) ([]entity.ProductPhoto, error) {
  52. var productPhotos []entity.ProductPhoto
  53. err := Db.Where("team_buying_id = ?", teamBuyingId).Order("created_at asc").Find(&productPhotos).Error
  54. if err != nil {
  55. return nil, err
  56. }
  57. return productPhotos, nil
  58. }
  59. // 获取所属团购的主图
  60. func (d ProductPhotoDAO) GetMainPhotoByTeamBuyingID(teamBuyingId int64) (string, error) {
  61. var productPhoto entity.ProductPhoto
  62. err := Db.Where("team_buying_id = ? AND symbol = ?", teamBuyingId, 1).Find(&productPhoto).Error
  63. if err != nil {
  64. return "", err
  65. }
  66. return productPhoto.PhotoUrl, nil
  67. }
  68. func (d ProductPhotoDAO) GetProductPhotosBySelectionId(selectionId string) ([]*entity.ProductPhoto, error) {
  69. productId := 0
  70. err := Db.Model(entity.SelectionInfo{}).Select("product_id").Where("selection_id = ?", selectionId).Find(&productId).Error
  71. if err != nil {
  72. logrus.Errorf("[GetProductInfo] error query mysql, err:%+v", err)
  73. return nil, err
  74. }
  75. var productPhotos []*entity.ProductPhoto
  76. err = Db.Model(entity.ProductPhoto{}).Where("product_id = ?", productId).Find(&productPhotos).Error
  77. if err != nil {
  78. logrus.Errorf("[GetProductInfo] error query mysql, err:%+v", err)
  79. return nil, err
  80. }
  81. return productPhotos, nil
  82. }
  83. func (d ProductPhotoDAO) GetProductPhotosByProjectId(projectId string) ([]*entity.ProductPhoto, error) {
  84. productId := 0
  85. err := Db.Model(entity.Project{}).Select("product_id").Where("project_id = ?", projectId).Find(&productId).Error
  86. if err != nil {
  87. logrus.Errorf("[GetProductInfo] error query mysql, err:%+v", err)
  88. return nil, err
  89. }
  90. var productPhotos []*entity.ProductPhoto
  91. err = Db.Model(entity.ProductPhoto{}).Where("product_id = ?", productId).Find(&productPhotos).Error
  92. if err != nil {
  93. logrus.Errorf("[GetProductInfo] error query mysql, err:%+v", err)
  94. return nil, err
  95. }
  96. return productPhotos, nil
  97. }