Merge remote-tracking branch 'origin/main' into front-styles

This commit is contained in:
2026-04-15 16:01:01 +02:00
26 changed files with 250 additions and 155 deletions

View File

@@ -17,7 +17,7 @@ func New() *CartsService {
}
}
func (s *CartsService) CreateNewCart(user_id uint) (model.CustomerCart, error) {
func (s *CartsService) CreateNewCart(user_id uint, name string) (model.CustomerCart, error) {
var cart model.CustomerCart
customers_carts_amount, err := s.repo.CartsAmount(user_id)
@@ -28,8 +28,12 @@ func (s *CartsService) CreateNewCart(user_id uint) (model.CustomerCart, error) {
return cart, responseErrors.ErrMaxAmtOfCartsReached
}
if name == "" {
name = constdata.DEFAULT_NEW_CART_NAME
}
// create new cart for customer
cart, err = s.repo.CreateNewCart(user_id)
cart, err = s.repo.CreateNewCart(user_id, name)
return cart, nil
}

View File

@@ -24,3 +24,7 @@ func (s *CustomerService) GetById(id uint) (*model.Customer, error) {
func (s *CustomerService) Find(langId uint, p find.Paging, filt *filters.FiltersList, search string) (*find.Found[model.UserInList], error) {
return s.repo.Find(langId, p, filt, search)
}
func (s *CustomerService) SetCustomerNoVatStatus(customerID uint, isNoVat bool) error {
return s.repo.SetCustomerNoVatStatus(customerID, isNoVat)
}

View File

@@ -231,21 +231,54 @@ func (s *MenuService) GetTopMenu(languageId uint, roleId uint) ([]*model.B2BTopM
func (s *MenuService) appendAdditional(all_categories *[]model.ScannedCategory, id_lang uint, iso_code string) {
for i := 0; i < len(*all_categories); i++ {
(*all_categories)[i].Filter = "category_id_in=" + strconv.Itoa(int((*all_categories)[i].CategoryID))
(*all_categories)[i].Filter = "category_id_eq=" + strconv.Itoa(int((*all_categories)[i].CategoryID))
}
var additional model.ScannedCategory
additional.CategoryID = 10001
additional.Name = "New Products"
additional.Active = 1
additional.Position = 10
additional.ParentID = 2
additional.IsRoot = 0
additional.LinkRewrite = i18n.T___(id_lang, "category.new_products")
additional.IsoCode = iso_code
// the new products category
var new_products_category model.ScannedCategory
new_products_category.CategoryID = constdata.ADDITIONAL_CATEGORIES_INDEX + 1
new_products_category.Name = "New Products"
new_products_category.Active = 1
new_products_category.Position = 10
new_products_category.ParentID = 2
new_products_category.IsRoot = 0
new_products_category.LinkRewrite = i18n.T___(id_lang, "category.new_products")
new_products_category.IsoCode = iso_code
additional.Visited = false
additional.Filter = "is_new_in=true"
new_products_category.Visited = false
new_products_category.Filter = "is_new_eq=true"
*all_categories = append(*all_categories, additional)
*all_categories = append(*all_categories, new_products_category)
// the oem products category
var oem_products_category model.ScannedCategory
oem_products_category.CategoryID = constdata.ADDITIONAL_CATEGORIES_INDEX + 2
oem_products_category.Name = "OEM Products"
oem_products_category.Active = 1
oem_products_category.Position = 11
oem_products_category.ParentID = 2
oem_products_category.IsRoot = 0
oem_products_category.LinkRewrite = i18n.T___(id_lang, "category.oem_products")
oem_products_category.IsoCode = iso_code
oem_products_category.Visited = false
oem_products_category.Filter = "is_oem_eq=true"
*all_categories = append(*all_categories, oem_products_category)
// the favorite products category
var favorite_products_category model.ScannedCategory
favorite_products_category.CategoryID = constdata.ADDITIONAL_CATEGORIES_INDEX + 3
favorite_products_category.Name = "Favourite Products" // British English version.
favorite_products_category.Active = 1
favorite_products_category.Position = 12
favorite_products_category.ParentID = 2
favorite_products_category.IsRoot = 0
favorite_products_category.LinkRewrite = i18n.T___(id_lang, "category.favorite_products")
favorite_products_category.IsoCode = iso_code
favorite_products_category.Visited = false
favorite_products_category.Filter = "is_favorite_eq=true"
*all_categories = append(*all_categories, favorite_products_category)
}