From 65b4e8e00bd32f1f0968f0f992bdce447eaaa092 Mon Sep 17 00:00:00 2001 From: merdan Date: Sat, 15 Oct 2022 15:27:56 +0500 Subject: [PATCH] fix relations --- repositories/ImportRepository.go | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/repositories/ImportRepository.go b/repositories/ImportRepository.go index d680495..f60b1a9 100644 --- a/repositories/ImportRepository.go +++ b/repositories/ImportRepository.go @@ -241,9 +241,18 @@ func (importer *Importer) ImportProduct(product models.Product) (instance *Impor var relation []gm.ProductRelation for index, variant := range linkedProducts { //spoint := "color" + strconv.Itoa(index) - for _, item := range append(linkedProducts[:index], linkedProducts[index+1:]...) { - relation = append(relation, gm.ProductRelation{ParentID: variant.ID, ChildID: item.ID}) + temp := make([]gm.Product, len(linkedProducts)) + + copy(temp, linkedProducts) + + if index+1 <= len(temp) { + temp = append(temp[:index], temp[index+1:]...) + + for _, item := range temp { + relation = append(relation, gm.ProductRelation{ParentID: variant.ID, ChildID: item.ID}) + } } + } if err := importer.baza.Create(&relation).Error; err != nil {