Forráskód Böngészése

Merge branch 'gpt_upgrade' into pre

# Conflicts:
#	netflix-web/src/main/java/com/cyksj/web/controller/manage/goods/CmsGoodsDonSkuController.java
zoujiajian 2 éve
szülő
commit
b4f6367eb0

+ 23 - 18
netflix-service/src/main/java/com/cyksj/service/mange/goods/CmsGoodsDonSkuServiceImpl.java

@@ -175,25 +175,30 @@ public class CmsGoodsDonSkuServiceImpl extends ServiceImpl<GoodsDonSkuMapper,Goo
 				}
 
 				//被绑定升级套餐
-				UpgradePackage toUpgradePackage = upgradePackageMapper.selectOne(Wrappers.lambdaQuery(UpgradePackage.class)
-						.eq(UpgradePackage::getUpgradeSkuId, sku.getId())
-						.last("limit 1"));
-				if (toUpgradePackage != null) {
-					if (price.compareTo(sku.getPrice()) != 0) {
-						Long skuId = Jsons.parseList(toUpgradePackage.getSkuIds(), Long.class).get(0);
-						//需升级的规格
-						GoodsDonSku oriSku = skuMapper.selectById(skuId);
-						if (oriSku == null) {
-							return;
+				List<UpgradePackage> toUpgradePackages = upgradePackageMapper.selectList(Wrappers.lambdaQuery(UpgradePackage.class)
+						.eq(UpgradePackage::getUpgradeSkuId, sku.getId()));
+				if (CollUtil.isNotEmpty(toUpgradePackages)) {
+					toUpgradePackages.forEach(toUpgradePackage->{
+						if (price.compareTo(sku.getPrice()) != 0) {
+							Long skuId = null;
+							try {
+								skuId = Jsons.parseList(toUpgradePackage.getSkuIds(), Long.class).get(0);
+								//需升级的规格
+								GoodsDonSku oriSku = skuMapper.selectById(skuId);
+								if (oriSku == null) {
+									return;
+								}
+								BigDecimal differ = sku.getPrice().subtract(oriSku.getPrice());
+								if (differ.compareTo(BigDecimal.ZERO) > 0) {
+									toUpgradePackage.setPrice(differ);
+								}
+							} catch (Exception e) {
+							}
 						}
-						BigDecimal differ = sku.getPrice().subtract(oriSku.getPrice());
-						if (differ.compareTo(BigDecimal.ZERO) > 0) {
-							toUpgradePackage.setPrice(differ);
-						}
-					}
-					toUpgradePackage.setTime(sku.getGptLimitTime());
-					toUpgradePackage.setNum(sku.getGptLimitNum());
-					upgradePackageMapper.updateById(toUpgradePackage);
+						toUpgradePackage.setTime(sku.getGptLimitTime());
+						toUpgradePackage.setNum(sku.getGptLimitNum());
+						upgradePackageMapper.updateById(toUpgradePackage);
+					});
 				}
 			}
 		}

+ 2 - 2
netflix-web/src/main/java/com/cyksj/web/controller/manage/goods/CmsGoodsDonSkuController.java

@@ -171,9 +171,9 @@ public class CmsGoodsDonSkuController {
         //前后两次价格不同 下架店铺低于这个折扣最低价格
         BigDecimal oldPrice = dbSku.getPrice();
         BigDecimal newPrice = sku.getPrice();
-        //规格变化
+        //规格新价 变高
 	    //下架店铺不在平台设置的价格区间
-	    goodsDonSkuService.setBelowPriceShopSkuDown(skuId, newPrice);
+        goodsDonSkuService.setBelowPriceShopSkuDown(skuId, newPrice);
         //套餐包关联规格
         goodsDonSkuService.handleGptPackageSku(dbSku,sku);
         refreshCacheService.refreshYhHomePageCache();