From 05aa438dd31908fb21e63a7b81e6ed928e32e0b5 Mon Sep 17 00:00:00 2001 From: merdan Date: Thu, 1 Sep 2022 13:54:46 +0500 Subject: [PATCH] desc fx --- controllers/importer.go | 47 ++++++++++++++++++++++++++--------------- 1 file changed, 30 insertions(+), 17 deletions(-) diff --git a/controllers/importer.go b/controllers/importer.go index 0071a55..162a207 100644 --- a/controllers/importer.go +++ b/controllers/importer.go @@ -280,10 +280,10 @@ func importProduct(product models.Product, db *gorm.DB) { {AttributeID: attributesMap["name"].ID, TextValue: colorVariant.Name, Channel: "default", Locale: "tm"}, {AttributeID: attributesMap["weight"].ID, TextValue: colorVariant.Weight, Channel: "default", Locale: "tm"}, {AttributeID: attributesMap["status"].ID, BooleanValue: true, Channel: "default", Locale: "tm"}, - {AttributeID: attributesMap["visible_individually"].ID, BooleanValue: true, Channel: "default", Locale: "tm"}, + //{AttributeID: attributesMap["visible_individually"].ID, BooleanValue: true, Channel: "default", Locale: "tm"}, {AttributeID: attributesMap["url_key"].ID, TextValue: sku, Channel: "default", Locale: "tm"}, {AttributeID: attributesMap["meta_keywords"].ID, TextValue: keywords, Channel: "default", Locale: "tm"}, - {AttributeID: attributesMap["description"].ID, TextValue: description, Channel: "default", Locale: "tm"}, + //{AttributeID: attributesMap["description"].ID, TextValue: description, Channel: "default", Locale: "tm"}, { AttributeID: attributesMap["color"].ID, IntegerValue: int(colorOption.ID), @@ -302,13 +302,13 @@ func importProduct(product models.Product, db *gorm.DB) { //ProductID: productVariant.ID, BrandID: mainProductFlat.BrandID, Status: true, - VisibleIndividually: true, + VisibleIndividually: false, Name: colorVariant.Name, Sku: sku, ProductNumber: productNumber, - Description: description, - UrlKey: sku, - Weight: weight, + //Description: description, + UrlKey: sku, + Weight: weight, // Source: colorVariant.URLKey, FavoritesCount: uint(colorVariant.FavoriteCount), Color: int(colorOption.ID), @@ -459,7 +459,7 @@ func importProduct(product models.Product, db *gorm.DB) { {AttributeID: attributesMap["name"].ID, TextValue: product.Name, Channel: "default", Locale: "tm"}, {AttributeID: attributesMap["weight"].ID, TextValue: product.Weight}, {AttributeID: attributesMap["status"].ID, BooleanValue: true}, - {AttributeID: attributesMap["visible_individually"].ID, BooleanValue: true}, + //{AttributeID: attributesMap["visible_individually"].ID, BooleanValue: true}, {AttributeID: attributesMap["url_key"].ID, TextValue: sku}, {AttributeID: attributesMap["meta_keywords"].ID, TextValue: keywords, Channel: "default", Locale: "tm"}, {AttributeID: attributesMap["size"].ID, IntegerValue: int(sizeOption.ID)}, @@ -469,7 +469,7 @@ func importProduct(product models.Product, db *gorm.DB) { flatVariant := gm.ProductFlat{ Status: true, - VisibleIndividually: true, + VisibleIndividually: false, Name: product.Name, Sku: sku, ProductNumber: fmt.Sprint(sizeVariant.ItemNumber), @@ -478,15 +478,7 @@ func importProduct(product models.Product, db *gorm.DB) { Size: int(sizeOption.ID), SizeLabel: sizeOption.AdminName, MetaKeywords: keywords, - Product: gm.Product{ - ParentID: mainProductFlat.ProductID, - Type: "simple", - Sku: sku, - BrandID: mainProductFlat.BrandID, - AttributeValues: attributes, - AttributeFamilyID: iproduct.AttributeFamilyID, - Categories: categories, - }, + // Source: product.URLKey, FavoritesCount: uint(product.FavoriteCount), ParentID: mainProductFlat.ID, @@ -518,6 +510,26 @@ func importProduct(product models.Product, db *gorm.DB) { if mainProductFlat.MaxPrice < flatVariant.MaxPrice { mainProductFlat.MaxPrice = flatVariant.MaxPrice } + + sizeVariantProduct := gm.Product{ + ParentID: mainProductFlat.ProductID, + Type: "simple", + Sku: sku, + BrandID: mainProductFlat.BrandID, + AttributeValues: attributes, + AttributeFamilyID: iproduct.AttributeFamilyID, + Categories: categories, + } + + errSizeVar := db.Omit("Categories.*").Create(&sizeVariantProduct).Error + + if errSizeVar != nil { + log.Println(errSizeVar) + return + } + + flatVariant.ProductID = sizeVariantProduct.ID + errVariant := db.Omit("Product.Categories.*").Create(&flatVariant).Error if errVariant != nil { @@ -592,6 +604,7 @@ func collectAttributes(variant *models.Product, option *gm.AttributeOption) ([]g Weight: weight, //Source: variant.URLKey, FavoritesCount: uint(variant.FavoriteCount), + Description: description, } attributes := []gm.ProductAttributeValue{