【代码评审】商城:满减送活动的实现
This commit is contained in:
parent
4c2ed461d4
commit
f5706972a0
|
@ -60,13 +60,6 @@ public class RewardActivityBaseVO {
|
|||
@Valid // 校验下子对象
|
||||
private List<Rule> rules;
|
||||
|
||||
@AssertTrue(message = "商品范围编号的数组不能为空")
|
||||
@JsonIgnore
|
||||
public boolean isProductScopeValuesValid() {
|
||||
return Objects.equals(productScope, PromotionProductScopeEnum.ALL.getScope()) // 全部范围时,可以为空
|
||||
|| CollUtil.isNotEmpty(productScopeValues);
|
||||
}
|
||||
|
||||
@Schema(description = "优惠规则")
|
||||
@Data
|
||||
public static class Rule {
|
||||
|
@ -114,4 +107,11 @@ public class RewardActivityBaseVO {
|
|||
|
||||
}
|
||||
|
||||
@AssertTrue(message = "商品范围编号的数组不能为空")
|
||||
@JsonIgnore
|
||||
public boolean isProductScopeValuesValid() {
|
||||
return Objects.equals(productScope, PromotionProductScopeEnum.ALL.getScope()) // 全部范围时,可以为空
|
||||
|| CollUtil.isNotEmpty(productScopeValues);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -99,6 +99,7 @@ public class RewardActivityDO extends BaseDO {
|
|||
* 是否包邮
|
||||
*/
|
||||
private Boolean freeDelivery;
|
||||
// TODO @puhui999:是不是大于零,就认为赠送积分哈;简洁一点;
|
||||
/**
|
||||
* 是否赠送积分
|
||||
*/
|
||||
|
@ -107,6 +108,7 @@ public class RewardActivityDO extends BaseDO {
|
|||
* 赠送的积分
|
||||
*/
|
||||
private Integer point;
|
||||
// TODO @puhui999:非空,就认为赠送优惠劵
|
||||
/**
|
||||
* 是否赠送优惠券
|
||||
*/
|
||||
|
|
|
@ -82,6 +82,7 @@ public class RewardActivityServiceImpl implements RewardActivityService {
|
|||
@Override
|
||||
public void closeRewardActivity(Long id) {
|
||||
// 校验存在
|
||||
// TODO @puhui999:去掉 PromotionActivityStatusEnum,使用 CommonStatus 作为状态哈。开启,关闭
|
||||
RewardActivityDO dbRewardActivity = validateRewardActivityExists(id);
|
||||
if (dbRewardActivity.getStatus().equals(PromotionActivityStatusEnum.CLOSE.getStatus())) { // 已关闭的活动,不能关闭噢
|
||||
throw exception(REWARD_ACTIVITY_CLOSE_FAIL_STATUS_CLOSED);
|
||||
|
|
|
@ -190,6 +190,7 @@ public class RewardActivityServiceImplTest extends BaseDbUnitTest {
|
|||
@Test
|
||||
public void testGetRewardActivities_product() {
|
||||
// mock 数据
|
||||
// TODO @puhui999:有单测的问题,也一起瞅瞅
|
||||
RewardActivityDO productActivity01 = randomPojo(RewardActivityDO.class, o -> o.setStatus(PromotionActivityStatusEnum.RUN.getStatus())
|
||||
.setProductScope(PromotionProductScopeEnum.SPU.getScope()).setProductSpuIds(asList(1L, 2L)));
|
||||
rewardActivityMapper.insert(productActivity01);
|
||||
|
|
Loading…
Reference in New Issue