diff --git a/CoreCms.Net.Repository/Good/CoreCmsGoodsRepository.cs b/CoreCms.Net.Repository/Good/CoreCmsGoodsRepository.cs index 0bec07d5..5778054e 100644 --- a/CoreCms.Net.Repository/Good/CoreCmsGoodsRepository.cs +++ b/CoreCms.Net.Repository/Good/CoreCmsGoodsRepository.cs @@ -504,8 +504,7 @@ namespace CoreCms.Net.Repository } //剩余的老数据 var oldDataProducts = products.Where(p => oldPostProductsIds.Contains(p.id)).ToList(); - var oldDistributions = await DbClient.Queryable() - .Where(p => oldPostProductsIds.Contains(p.productsId)).ToListAsync(); + var oldDistributions = await DbClient.Queryable().Where(p => oldPostProductsIds.Contains(p.productsId)).ToListAsync(); if (oldDataProducts.Any()) { oldDataProducts.ForEach(p => @@ -553,8 +552,10 @@ namespace CoreCms.Net.Repository var newDt = new List(); if (oldDistributions.Any()) { + //获取已经存在的序列 var ids = oldDistributions.Select(p => p.productsId).ToList(); - var oldNoDtProduts = oldPostProducts.Where(p => ids.Contains(p.id)).ToList(); + //判断货品里面是否存在三级分销细则没有对应的数据,如果存在未对应的,就新增。 + var oldNoDtProduts = oldPostProducts.Where(p => !ids.Contains(p.id)).ToList(); if (oldNoDtProduts.Any()) { oldNoDtProduts.ForEach(p => @@ -569,20 +570,6 @@ namespace CoreCms.Net.Repository newDt.Add(pd); }); } - else - { - oldPostProducts.ForEach(p => - { - var pd = new CoreCmsProductsDistribution(); - pd.createTime = DateTime.Now; - pd.productsSN = p.sn; - pd.levelOne = p.levelOne; - pd.levelTwo = p.levelTwo; - pd.levelThree = p.levelThree; - pd.productsId = p.id; - newDt.Add(pd); - }); - } } var upOldData = await DbClient.Updateable(oldDataProducts).ExecuteCommandHasChangeAsync();