zoujiajian před 9 měsíci
rodič
revize
5a28ced8ef

+ 2 - 0
netflix-dao/src/main/java/com/cyksj/mapper/UserDistributeRateChangeRecordMapper.java

@@ -15,4 +15,6 @@ import java.util.List;
  */
 public interface UserDistributeRateChangeRecordMapper extends BaseMapper<UserDistributeRateChangeRecord> {
 	void batchInsertGoodsRateChangeRecord(@Param("list") List<UserDistribute> list, @Param("goodsId") Long goodsId, @Param("skuId") Long skuId, @Param("changeInfo") String changeInfo, @Param("rate") Integer rate);
+
+	void batchInsertGoodsRateChangeNoSetSkuRecord(@Param("list") List<UserDistribute> list, @Param("goodsId") Long goodsId, @Param("skuId") Long skuId, @Param("changeInfo") String changeInfo);
 }

+ 9 - 0
netflix-dao/src/main/resources/mapper/UserDistributeRateChangeRecordMapper.xml

@@ -12,4 +12,13 @@
             (#{item.id},#{item.userId},#{goodsId},#{skuId},#{changeInfo},now(),now())
         </foreach>
     </insert>
+
+    <insert id="batchInsertGoodsRateChangeNoSetSkuRecord">
+        insert into
+        user_distribute_rate_change_record(`distribute_id`,`user_id`,`goods_id`,`sku_id`,`change_info`,`created_time`,`update_time`)
+        values
+        <foreach collection="list" item="item" separator=",">
+            (#{item.id},#{item.userId},#{goodsId},#{skuId},concat(#{changeInfo},(select ifnull(rate,(select rate from business_distribute_default_rate_config where goods_id = #{goodsId} limit 1)) from user_plat_distribute_rate where distribute_id = #{item.id} and goods_id = #{goodsId} limit 1),'%'),now(),now())
+        </foreach>
+    </insert>
 </mapper>

+ 5 - 0
netflix-service/src/main/java/com/cyksj/service/distribute/UserDistributeRateChangeRecordService.java

@@ -1,8 +1,11 @@
 package com.cyksj.service.distribute;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.cyksj.model.entity.BusinessDistributeDefaultSkuRateConfig;
 import com.cyksj.model.entity.UserDistributeRateChangeRecord;
 
+import java.util.List;
+
 /**
  * 项目名: yhlxj11111111
  * 文件名: UserDistributeRateChangeRecordService
@@ -13,4 +16,6 @@ public interface UserDistributeRateChangeRecordService extends IService<UserDist
 	void recordDefaultGoodsRate(Long goodsId, Integer rate);
 
 	void recordDefaultGoodsSkuRate(Long goodsId, Long skuId, Integer rate);
+
+	void recordDefaultGoodsSkuDelRate(List<BusinessDistributeDefaultSkuRateConfig> delLists);
 }

+ 17 - 4
netflix-service/src/main/java/com/cyksj/service/distribute/impl/UserDistributeRateChangeRecordServiceImpl.java

@@ -5,10 +5,7 @@ import com.cyksj.mapper.GoodsDonMapper;
 import com.cyksj.mapper.GoodsDonSkuMapper;
 import com.cyksj.mapper.UserDistributeRateChangeRecordMapper;
 import com.cyksj.mapper.manage.distribute.UserDistributeMapper;
-import com.cyksj.model.entity.GoodsDon;
-import com.cyksj.model.entity.GoodsDonSku;
-import com.cyksj.model.entity.UserDistribute;
-import com.cyksj.model.entity.UserDistributeRateChangeRecord;
+import com.cyksj.model.entity.*;
 import com.cyksj.service.distribute.UserDistributeRateChangeRecordService;
 import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
@@ -54,4 +51,20 @@ public class UserDistributeRateChangeRecordServiceImpl extends ServiceImpl<UserD
 		String changeInfo = String.format("%s%s规格分销比例变为%s%%", goodsDon.getTitle(), sku.getSpecVal(), rate);
 		userDistributeRateChangeRecordMapper.batchInsertGoodsRateChangeRecord(userDistributeList, goodsId, skuId, changeInfo, rate);
 	}
+
+	@Override
+	public void recordDefaultGoodsSkuDelRate(List<BusinessDistributeDefaultSkuRateConfig> delLists) {
+		for (BusinessDistributeDefaultSkuRateConfig skuRateConfig : delLists) {
+			Long skuId = skuRateConfig.getSkuId();
+			List<UserDistribute> userDistributeList = userDistributeMapper.selectNoSetGoodsSkuRateDistirbutors(skuId);
+			if (userDistributeList.isEmpty()) {
+				continue;
+			}
+			Long goodsId = skuRateConfig.getGoodsId();
+			GoodsDon goodsDon = goodsDonMapper.selectById(goodsId);
+			GoodsDonSku sku = skuMapper.selectById(skuId);
+			String changeInfo = String.format("%s%s规格分销比例变为", goodsDon.getTitle(), sku.getSpecVal());
+			userDistributeRateChangeRecordMapper.batchInsertGoodsRateChangeNoSetSkuRecord(userDistributeList, goodsId, skuId, changeInfo);
+		}
+	}
 }

+ 4 - 0
netflix-web/src/main/java/com/cyksj/web/controller/manage/distribute/DistributeController.java

@@ -852,6 +852,10 @@ public class DistributeController {
 		if (CollUtil.isNotEmpty(skuRates)) {
 			List<Long> collect = skuRates.stream().map(BusinessDistributeDefaultSkuRateConfig::getSkuId).collect(Collectors.toList());
 			if (CollUtil.isNotEmpty(collect)) {
+				List<BusinessDistributeDefaultSkuRateConfig> businessDistributeDefaultSkuRateConfigs = businessDistributeDefaultSkuRateConfigMapper.selectList(Wrappers.lambdaQuery(BusinessDistributeDefaultSkuRateConfig.class).notIn(BusinessDistributeDefaultSkuRateConfig::getSkuId, collect));
+				//默认平台规格比例变更记录
+				changeRecordService.recordDefaultGoodsSkuDelRate(businessDistributeDefaultSkuRateConfigs);
+
 				businessDistributeDefaultSkuRateConfigMapper.delete(Wrappers.lambdaQuery(BusinessDistributeDefaultSkuRateConfig.class)
 						.notIn(BusinessDistributeDefaultSkuRateConfig::getSkuId, collect));
 			}