From 0084921d13fef72699fb996a432606d54c101bee Mon Sep 17 00:00:00 2001 From: suyl <770236076@qq.com> Date: Sat, 22 May 2021 11:45:59 +0800 Subject: [PATCH] aa --- business/jxstore/cms/store_sku.go | 87 +++++++++++++++++-------------- 1 file changed, 48 insertions(+), 39 deletions(-) diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go index c48a68950..b4fe72b90 100644 --- a/business/jxstore/cms/store_sku.go +++ b/business/jxstore/cms/store_sku.go @@ -378,48 +378,57 @@ func GetStoresSkusForStore(ctx *jxcontext.Context, storeID int, isFocus, isAct b TotalCount: dao.GetLastTotalRowCount2(db, txDB), } // skuNamesInfo.TotalCount = dao.GetLastTotalRowCount2(db, txDB) + //for _, v := range tmpList { + //var skus []*dao.StoreSkuExt + //sql2 := ` + // SELECT a.id sku_id, a.spec_quality sku_spec_quality, a.spec_unit sku_spec_unit, a.status sku_status, + // b.stock, b.price bind_price, b.unit_price, + // b.status store_sku_status + // FROM sku a + // JOIN sku_name c ON a.name_id = c.id AND c.deleted_at = ? AND c.status = ? + //` + //sqlParams2 := []interface{}{ + // utils.DefaultTimeValue, model.SkuStatusNormal, + //} + //if !isFocus { + // sql2 += ` + // LEFT + // ` + //} + //sql2 += ` JOIN store_sku_bind b ON a.id = b.sku_id AND b.deleted_at = ? AND b.store_id = ? + // WHERE a.deleted_at = ? AND a.name_id = ? AND a.status = ? + //` + //sqlParams2 = append(sqlParams2, utils.DefaultTimeValue, storeID, + // utils.DefaultTimeValue, v.ID, model.SkuStatusNormal, + //) + //if status != -1 { + // sql2 += " AND b.status = ?" + // sqlParams2 = append(sqlParams2, status) + //} + //if err = dao.GetRows(db, &skus, sql2, sqlParams2); err == nil { + // v.Skus = skus + //} + //} + storeNameMap := make(map[int64]*dao.StoreSkuNameExt) for _, v := range tmpList { - //var skus []*dao.StoreSkuExt - //sql2 := ` - // SELECT a.id sku_id, a.spec_quality sku_spec_quality, a.spec_unit sku_spec_unit, a.status sku_status, - // b.stock, b.price bind_price, b.unit_price, - // b.status store_sku_status - // FROM sku a - // JOIN sku_name c ON a.name_id = c.id AND c.deleted_at = ? AND c.status = ? - //` - //sqlParams2 := []interface{}{ - // utils.DefaultTimeValue, model.SkuStatusNormal, - //} - //if !isFocus { - // sql2 += ` - // LEFT - // ` - //} - //sql2 += ` JOIN store_sku_bind b ON a.id = b.sku_id AND b.deleted_at = ? AND b.store_id = ? - // WHERE a.deleted_at = ? AND a.name_id = ? AND a.status = ? - //` - //sqlParams2 = append(sqlParams2, utils.DefaultTimeValue, storeID, - // utils.DefaultTimeValue, v.ID, model.SkuStatusNormal, - //) - //if status != -1 { - // sql2 += " AND b.status = ?" - // sqlParams2 = append(sqlParams2, status) - //} - //if err = dao.GetRows(db, &skus, sql2, sqlParams2); err == nil { - // v.Skus = skus - //} var storeName *dao.StoreSkuNameExt - storeName = &dao.StoreSkuNameExt{ - StoreID: v.StoreID, - StoreName: v.StoreName, - SkuName: v.SkuName, - UnitPrice: v.UnitPrice, - PayPercentage: v.PayPercentage, - RealMidUnitPrice: v.RealMidUnitPrice, - YbSkuName: v.YbSkuName, - AuditUnitPrice: v.AuditUnitPrice, + index := jxutils.Combine2Int(v.StoreID, v.ID) + if storeNameMap[index] == nil { + storeName = &dao.StoreSkuNameExt{ + StoreID: v.StoreID, + StoreName: v.StoreName, + SkuName: v.SkuName, + UnitPrice: v.UnitPrice, + PayPercentage: v.PayPercentage, + RealMidUnitPrice: v.RealMidUnitPrice, + YbSkuName: v.YbSkuName, + AuditUnitPrice: v.AuditUnitPrice, + } + storeNameMap[index] = storeName + skuNamesInfo.SkuNames = append(skuNamesInfo.SkuNames, storeName) + } else { + storeName = storeNameMap[index] } - skuNamesInfo.SkuNames = append(skuNamesInfo.SkuNames, storeName) storeName.Skus = append(storeName.Skus, &v.StoreSkuExt) } //skuNamesInfo.SkuNames = SkuNames