|
@@ -43,7 +43,7 @@ public class DiscountActivityServiceImpl implements DiscountActivityService {
|
|
|
|
|
|
@Override
|
|
|
public List<DiscountProductDO> getMatchDiscountProductList(Collection<Long> skuIds) {
|
|
|
-
|
|
|
+
|
|
|
List<DiscountProductDO> matchDiscountProductList = discountProductMapper.getMatchDiscountProductList(skuIds);
|
|
|
return matchDiscountProductList;
|
|
|
}
|
|
@@ -55,9 +55,11 @@ public class DiscountActivityServiceImpl implements DiscountActivityService {
|
|
|
|
|
|
|
|
|
DiscountActivityDO discountActivity = DiscountActivityConvert.INSTANCE.convert(createReqVO)
|
|
|
+
|
|
|
.setStatus(PromotionUtils.calculateActivityStatus(createReqVO.getEndTime()));
|
|
|
discountActivityMapper.insert(discountActivity);
|
|
|
|
|
|
+
|
|
|
List<DiscountProductDO> discountProducts = convertList(createReqVO.getProducts(),
|
|
|
product -> DiscountActivityConvert.INSTANCE.convert(product).setActivityId(discountActivity.getId()));
|
|
|
discountProductMapper.insertBatch(discountProducts);
|
|
@@ -84,6 +86,8 @@ public class DiscountActivityServiceImpl implements DiscountActivityService {
|
|
|
}
|
|
|
|
|
|
private void updateDiscountProduct(DiscountActivityUpdateReqVO updateReqVO) {
|
|
|
+
|
|
|
+
|
|
|
List<DiscountProductDO> dbDiscountProducts = discountProductMapper.selectListByActivityId(updateReqVO.getId());
|
|
|
|
|
|
List<Long> deleteIds = convertList(dbDiscountProducts, DiscountProductDO::getId,
|
|
@@ -102,7 +106,6 @@ public class DiscountActivityServiceImpl implements DiscountActivityService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-
|
|
|
|
|
|
* 校验商品是否冲突
|
|
|
*
|
|
@@ -114,13 +117,11 @@ public class DiscountActivityServiceImpl implements DiscountActivityService {
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
-
|
|
|
+
|
|
|
List<DiscountProductDO> list = discountProductMapper.selectListByActivityId(id);
|
|
|
+
|
|
|
List<Long> skuIds = list.stream().map(item -> item.getSkuId()).collect(Collectors.toList());
|
|
|
List<DiscountProductDO> matchDiscountProductList = getMatchDiscountProductList(skuIds);
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
if (id != null) {
|
|
|
matchDiscountProductList.removeIf(product -> id.equals(product.getActivityId()));
|
|
|
}
|
|
@@ -133,15 +134,12 @@ public class DiscountActivityServiceImpl implements DiscountActivityService {
|
|
|
@Override
|
|
|
public void closeDiscountActivity(Long id) {
|
|
|
|
|
|
- DiscountActivityDO dbDiscountActivity = validateDiscountActivityExists(id);
|
|
|
- if (dbDiscountActivity.getStatus().equals(CommonStatusEnum.DISABLE.getStatus())) {
|
|
|
+ DiscountActivityDO activity = validateDiscountActivityExists(id);
|
|
|
+ if (activity.getStatus().equals(CommonStatusEnum.DISABLE.getStatus())) {
|
|
|
throw exception(DISCOUNT_ACTIVITY_CLOSE_FAIL_STATUS_CLOSED);
|
|
|
}
|
|
|
- if (dbDiscountActivity.getStatus().equals(CommonStatusEnum.DISABLE.getStatus())) {
|
|
|
- throw exception(DISCOUNT_ACTIVITY_CLOSE_FAIL_STATUS_END);
|
|
|
- }
|
|
|
|
|
|
-
|
|
|
+
|
|
|
DiscountActivityDO updateObj = new DiscountActivityDO().setId(id).setStatus(PromotionActivityStatusEnum.CLOSE.getStatus());
|
|
|
discountActivityMapper.updateById(updateObj);
|
|
|
}
|
|
@@ -185,4 +183,5 @@ public class DiscountActivityServiceImpl implements DiscountActivityService {
|
|
|
public List<DiscountProductDO> getDiscountProductsByActivityId(Collection<Long> activityIds) {
|
|
|
return discountProductMapper.selectList("activity_id", activityIds);
|
|
|
}
|
|
|
+
|
|
|
}
|