123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124 |
- package dao
- import (
- "errors"
- "github.com/sirupsen/logrus"
- "gorm.io/gorm"
- "youngee_b_api/app/entity"
- )
- type ProductPhotoDAO struct{}
- func (d ProductPhotoDAO) CreateProductPhoto(productPhotos []entity.ProductPhoto) error {
- err := Db.Debug().Create(&productPhotos).Error
- if err != nil {
- return err
- }
- return nil
- }
- // 获取所属商品的图片
- func (d ProductPhotoDAO) GetProductPhotoByProductID(productId int64) ([]entity.ProductPhoto, error) {
- var productPhotos []entity.ProductPhoto
- err := Db.Where("product_id = ?", productId).Order("created_at asc").Find(&productPhotos).Error
- if err != nil {
- return nil, err
- }
- return productPhotos, nil
- }
- // 获取所属商品的主图详情
- func (d ProductPhotoDAO) GetMainProductPhotoInfoByProductID(productId int64) (*entity.ProductPhoto, error) {
- var productPhoto entity.ProductPhoto
- err := Db.Where("product_id = ? AND symbol = ?", productId, 1).First(&productPhoto).Error
- if err != nil {
- if errors.Is(err, gorm.ErrRecordNotFound) {
- return nil, nil
- } else {
- return nil, err
- }
- }
- return &productPhoto, nil
- }
- // 获取所属商品的主图
- func (d ProductPhotoDAO) GetMainPhotoByProductID(productId int64) (string, error) {
- var productPhoto entity.ProductPhoto
- err := Db.Where("product_id = ? AND symbol = ?", productId, 1).Find(&productPhoto).Error
- if err != nil {
- return "", err
- }
- return productPhoto.PhotoUrl, nil
- }
- // 获取所属门店的图片
- func (d ProductPhotoDAO) GetProductPhotoByStoreID(storeId int64) ([]entity.ProductPhoto, error) {
- var productPhotos []entity.ProductPhoto
- err := Db.Where("store_id = ?", storeId).Order("created_at asc").Find(&productPhotos).Error
- if err != nil {
- return nil, err
- }
- return productPhotos, nil
- }
- // 获取所属门店的主图
- func (d ProductPhotoDAO) GetMainPhotoByStoreID(storeId int64) (string, error) {
- var productPhoto entity.ProductPhoto
- err := Db.Where("store_id = ? AND symbol = ?", storeId, 1).Find(&productPhoto).Error
- if err != nil {
- return "", err
- }
- return productPhoto.PhotoUrl, nil
- }
- // 获取所属团购的图片
- func (d ProductPhotoDAO) GetProductPhotoByTeamBuyingID(teamBuyingId int64) ([]entity.ProductPhoto, error) {
- var productPhotos []entity.ProductPhoto
- err := Db.Where("team_buying_id = ?", teamBuyingId).Order("created_at asc").Find(&productPhotos).Error
- if err != nil {
- return nil, err
- }
- return productPhotos, nil
- }
- // 获取所属团购的主图
- func (d ProductPhotoDAO) GetMainPhotoByTeamBuyingID(teamBuyingId int64) (string, error) {
- var productPhoto entity.ProductPhoto
- err := Db.Where("team_buying_id = ? AND symbol = ?", teamBuyingId, 1).Find(&productPhoto).Error
- if err != nil {
- return "", err
- }
- return productPhoto.PhotoUrl, nil
- }
- func (d ProductPhotoDAO) GetProductPhotosBySelectionId(selectionId string) ([]*entity.ProductPhoto, error) {
- productId := 0
- err := Db.Model(entity.SelectionInfo{}).Select("product_id").Where("selection_id = ?", selectionId).Find(&productId).Error
- if err != nil {
- logrus.Errorf("[GetProductInfo] error query mysql, err:%+v", err)
- return nil, err
- }
- var productPhotos []*entity.ProductPhoto
- err = Db.Model(entity.ProductPhoto{}).Where("product_id = ?", productId).Find(&productPhotos).Error
- if err != nil {
- logrus.Errorf("[GetProductInfo] error query mysql, err:%+v", err)
- return nil, err
- }
- return productPhotos, nil
- }
- func (d ProductPhotoDAO) GetProductPhotosByProjectId(projectId string) ([]*entity.ProductPhoto, error) {
- productId := 0
- err := Db.Model(entity.Project{}).Select("product_id").Where("project_id = ?", projectId).Find(&productId).Error
- if err != nil {
- logrus.Errorf("[GetProductInfo] error query mysql, err:%+v", err)
- return nil, err
- }
- var productPhotos []*entity.ProductPhoto
- err = Db.Model(entity.ProductPhoto{}).Where("product_id = ?", productId).Find(&productPhotos).Error
- if err != nil {
- logrus.Errorf("[GetProductInfo] error query mysql, err:%+v", err)
- return nil, err
- }
- return productPhotos, nil
- }
|