diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/Impl/MallProductInfoServiceImpl.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/Impl/MallProductInfoServiceImpl.java index 9e86a2b..eadd7ec 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/Impl/MallProductInfoServiceImpl.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/Impl/MallProductInfoServiceImpl.java @@ -72,22 +72,30 @@ public class MallProductInfoServiceImpl implements MallProductInfoService @Override public int insertMallProductInfo(MallProductInfoForm mallProductInfo) { + + // 获取当前登录用户的ID,并设置产品创建者和更新者信息 Long userId = SecurityUtils.getLoginUser().getUserid(); mallProductInfo.setCreateBy(String.valueOf(userId)); Long loginUserId = SecurityUtils.getLoginUser().getUserid(); mallProductInfo.setUpdateBy(String.valueOf(loginUserId)); + // 设置产品创建时间和更新时间 mallProductInfo.setCreateTime(DateUtils.getNowDate()); mallProductInfo.setUpdateTime(DateUtils.getNowDate()); + // 插入商城产品基本信息 int num = mallProductInfoMapper.insertMallProductInfo(mallProductInfo); + // 获取产品SKU信息列表 ListskuInfoList=mallProductInfo.getSkuInfoList(); + // 如果产品信息插入成功且SKU信息不为空,则进行SKU信息的插入 if(num > 0 && CollectionUtils.isNotEmpty(skuInfoList)){ + // 准备插入的SKU信息列表 Long productInfoId = mallProductInfo.getId(); ListmallProductSkuInfoList=new ArrayList<>(); Date createTime = new Date(); + // 先删除该产品之前的SKU信息,准备插入新的SKU信息 mallProductSkuInfoService.deleteMallProductSkuInfoId(productInfoId); - + // 遍历SKU信息列表,复制属性并设置SKU信息的关联产品ID及其他默认值 skuInfoList.stream().forEach(item ->{ MallProductSkuInfo mallProductSkuInfo = new MallProductSkuInfo(); BeanUtils.copyProperties(item,mallProductSkuInfo); @@ -99,6 +107,7 @@ public class MallProductInfoServiceImpl implements MallProductInfoService mallProductSkuInfo.setUpdateTime(createTime); mallProductSkuInfoList.add(mallProductSkuInfo); }); + // 批量插入处理后的SKU信息 mallProductSkuInfoService.insertMallProductSkuInfoList(mallProductSkuInfoList); } return num;