favorites #57

Merged
goc_daniel merged 6 commits from favorites into main 2026-04-10 08:09:14 +00:00
Showing only changes of commit f7f56c2928 - Show all commits

View File

@@ -10,6 +10,7 @@ import (
"git.ma-al.com/goc_daniel/b2b/app/model/dbmodel"
"git.ma-al.com/goc_daniel/b2b/app/utils/query/filters"
"git.ma-al.com/goc_daniel/b2b/app/utils/query/find"
"git.ma-al.com/goc_daniel/b2b/app/utils/responseErrors"
"git.ma-al.com/goc_marek/gormcol"
"github.com/WinterYukky/gorm-extra-clause-plugin/exclause"
)
@@ -129,6 +130,29 @@ func (repo *ProductsRepo) Find(id_lang, userID uint, p find.Paging, filt *filter
}
func (repo *ProductsRepo) AddToFavorites(userID uint, productID uint) error {
var count int64
err := db.Get().
Table(dbmodel.TableNamePsProduct).
Where(dbmodel.PsProductCols.IDProduct.Col()+" = ?", productID).
Count(&count).Error
if err != nil {
return err
}
if count == 0 {
return responseErrors.ErrProductNotFound
}
err = db.Get().
Table("b2b_favorites").
Where("user_id = ? AND product_id = ?", userID, productID).
Count(&count).Error
if err != nil {
return err
}
if count > 0 {
return responseErrors.ErrAlreadyInFavorites
}
fav := model.B2bFavorite{
UserID: userID,
ProductID: productID,