zoujiajian 2 年之前
父節點
當前提交
22a1715276

+ 6 - 1
netflix-service/src/main/java/com/cyksj/service/distribute/impl/DistributeServiceImpl.java

@@ -36,6 +36,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.Optional;
 import java.util.concurrent.ConcurrentHashMap;
+import java.util.stream.Collectors;
 
 /*
  *项目名: netflix
@@ -383,7 +384,11 @@ public class DistributeServiceImpl implements DistributeService {
 
 	@Override
 	public void setDistributeCommonSkuRate(List<DistributeGeneralSkuRate> skuRates) {
-		generalSkuRateMapper.delete(null);
+		List<Long> collect = skuRates.stream().map(DistributeGeneralSkuRate::getSkuId).collect(Collectors.toList());
+		if (CollUtil.isNotEmpty(collect)) {
+			generalSkuRateMapper.delete(Wrappers.lambdaQuery(DistributeGeneralSkuRate.class)
+					.notIn(DistributeGeneralSkuRate::getSkuId, collect));
+		}
 		skuRates.forEach(e -> {
 			Integer rate = e.getRate();
 			if (rate == null || rate < 0 || rate > 100) {

+ 5 - 2
netflix-web/src/main/java/com/cyksj/web/controller/manage/distribute/DistributeController.java

@@ -807,8 +807,11 @@ public class DistributeController {
 
 		//sku规格比例设置
 		if (CollUtil.isNotEmpty(skuRates)) {
-			//先清空
-			businessDistributeDefaultSkuRateConfigMapper.delete(null);
+			List<Long> collect = skuRates.stream().map(BusinessDistributeDefaultSkuRateConfig::getSkuId).collect(Collectors.toList());
+			if (CollUtil.isNotEmpty(collect)) {
+				businessDistributeDefaultSkuRateConfigMapper.delete(Wrappers.lambdaQuery(BusinessDistributeDefaultSkuRateConfig.class)
+						.notIn(BusinessDistributeDefaultSkuRateConfig::getSkuId, collect));
+			}
 			skuRates.forEach(config -> {
 				if (config.getRate() == null) {
 					config.setRate(0);