minor change

This commit is contained in:
Daniel Goc
2026-04-10 09:57:07 +02:00
parent 61ccd32c4a
commit c5832c0cf5
2 changed files with 14 additions and 14 deletions

View File

@@ -19,8 +19,8 @@ type UIProductsRepo interface {
Find(id_lang, userID uint, p find.Paging, filt *filters.FiltersList) (find.Found[model.ProductInList], error) Find(id_lang, userID uint, p find.Paging, filt *filters.FiltersList) (find.Found[model.ProductInList], error)
AddToFavorites(userID uint, productID uint) error AddToFavorites(userID uint, productID uint) error
RemoveFromFavorites(userID uint, productID uint) error RemoveFromFavorites(userID uint, productID uint) error
ExistsInFavorites(userID uint, productID uint) (int64, error) ExistsInFavorites(userID uint, productID uint) (bool, error)
ProductInDatabase(productID uint) (int64, error) ProductInDatabase(productID uint) (bool, error)
} }
type ProductsRepo struct{} type ProductsRepo struct{}
@@ -144,20 +144,20 @@ func (repo *ProductsRepo) RemoveFromFavorites(userID uint, productID uint) error
Delete(&model.B2bFavorite{}).Error Delete(&model.B2bFavorite{}).Error
} }
func (repo *ProductsRepo) ExistsInFavorites(userID uint, productID uint) (int64, error) { func (repo *ProductsRepo) ExistsInFavorites(userID uint, productID uint) (bool, error) {
var count int64 var count int64
err := db.Get(). err := db.Get().
Table("b2b_favorites"). Table("b2b_favorites").
Where("user_id = ? AND product_id = ?", userID, productID). Where("user_id = ? AND product_id = ?", userID, productID).
Count(&count).Error Count(&count).Error
return count, err return count >= 1, err
} }
func (repo *ProductsRepo) ProductInDatabase(productID uint) (int64, error) { func (repo *ProductsRepo) ProductInDatabase(productID uint) (bool, error) {
var count int64 var count int64
err := db.Get(). err := db.Get().
Table(dbmodel.TableNamePsProduct). Table(dbmodel.TableNamePsProduct).
Where(dbmodel.PsProductCols.IDProduct.Col()+" = ?", productID). Where(dbmodel.PsProductCols.IDProduct.Col()+" = ?", productID).
Count(&count).Error Count(&count).Error
return count, err return count >= 1, err
} }

View File

@@ -35,19 +35,19 @@ func (s *ProductService) Find(id_lang, userID uint, p find.Paging, filters *filt
} }
func (s *ProductService) AddToFavorites(userID uint, productID uint) error { func (s *ProductService) AddToFavorites(userID uint, productID uint) error {
count, err := s.productsRepo.ProductInDatabase(productID) exists, err := s.productsRepo.ProductInDatabase(productID)
if err != nil { if err != nil {
return err return err
} }
if count <= 0 { if !exists {
return responseErrors.ErrProductNotFound return responseErrors.ErrProductNotFound
} }
count, err = s.productsRepo.ExistsInFavorites(userID, productID) exists, err = s.productsRepo.ExistsInFavorites(userID, productID)
if err != nil { if err != nil {
return err return err
} }
if count >= 1 { if exists {
return responseErrors.ErrAlreadyInFavorites return responseErrors.ErrAlreadyInFavorites
} }
@@ -55,19 +55,19 @@ func (s *ProductService) AddToFavorites(userID uint, productID uint) error {
} }
func (s *ProductService) RemoveFromFavorites(userID uint, productID uint) error { func (s *ProductService) RemoveFromFavorites(userID uint, productID uint) error {
count, err := s.productsRepo.ProductInDatabase(productID) exists, err := s.productsRepo.ProductInDatabase(productID)
if err != nil { if err != nil {
return err return err
} }
if count <= 0 { if !exists {
return responseErrors.ErrProductNotFound return responseErrors.ErrProductNotFound
} }
count, err = s.productsRepo.ExistsInFavorites(userID, productID) exists, err = s.productsRepo.ExistsInFavorites(userID, productID)
if err != nil { if err != nil {
return err return err
} }
if count <= 0 { if !exists {
return responseErrors.ErrNotInFavorites return responseErrors.ErrNotInFavorites
} }