zxl
2025-06-16 0fb6b9d8d414822668c401a2b507df1fe6d1fa2d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
package cn.lili.test.promotion;
 
import cn.hutool.core.util.RandomUtil;
import cn.lili.common.enums.PromotionTypeEnum;
import cn.lili.common.vo.PageVO;
import cn.lili.modules.goods.entity.dos.GoodsSku;
import cn.lili.modules.goods.service.GoodsSkuService;
import cn.lili.modules.order.cart.entity.vo.FullDiscountVO;
import cn.lili.modules.promotion.entity.dos.FullDiscount;
import cn.lili.modules.promotion.entity.dos.PromotionGoods;
import cn.lili.modules.promotion.entity.dto.search.FullDiscountSearchParams;
import cn.lili.modules.promotion.service.FullDiscountService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit.jupiter.SpringExtension;
 
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
 
/**
 * @author paulG
 * @since 2020/10/22
 **/
@ExtendWith(SpringExtension.class)
@SpringBootTest
class FullDiscountTest {
 
    @Autowired
    private FullDiscountService fullDiscountService;
 
    @Autowired
    private GoodsSkuService goodsSkuService;
 
    @Test
    void addFullDiscount() {
        FullDiscountVO fullDiscountVO = new FullDiscountVO();
        fullDiscountVO.setStoreId("131");
        fullDiscountVO.setStoreName("小米自营旗舰店");
        fullDiscountVO.setDescription("full discount test " + RandomUtil.randomNumber());
        fullDiscountVO.setFullMinusFlag(true);
        fullDiscountVO.setFullMoney(130D);
        fullDiscountVO.setFullMinus(100D);
        fullDiscountVO.setFreeFreightFlag(true);
 
        fullDiscountVO.setPromotionName("FullDiscount-" + fullDiscountVO.getId());
        fullDiscountVO.setTitle("满" + fullDiscountVO.getFullMoney() + "减" + fullDiscountVO.getFullMinus());
        fullDiscountVO.setStartTime(cn.hutool.core.date.DateUtil.parse("2020-11-30 10:35:00"));
        fullDiscountVO.setEndTime(cn.hutool.core.date.DateUtil.parse("2020-12-25 23:20:00"));
 
        List<PromotionGoods> promotionGoodsLis = new ArrayList<>();
        GoodsSku sku121 = goodsSkuService.getGoodsSkuByIdFromCache("121");
        PromotionGoods promotionGoods = new PromotionGoods(sku121);
        promotionGoods.setPrice(sku121.getPrice());
        promotionGoods.setLimitNum(100);
        promotionGoods.setStartTime(fullDiscountVO.getStartTime());
        promotionGoods.setEndTime(fullDiscountVO.getEndTime());
        promotionGoods.setNum(10);
        promotionGoods.setQuantity(100);
        promotionGoods.setPromotionId(fullDiscountVO.getId());
        promotionGoods.setPromotionType(PromotionTypeEnum.FULL_DISCOUNT.name());
        promotionGoods.setTitle("满" + fullDiscountVO.getFullMoney() + "减" + fullDiscountVO.getFullMinus());
        promotionGoodsLis.add(promotionGoods);
        fullDiscountVO.setPromotionGoodsList(promotionGoodsLis);
 
        Assertions.assertTrue(fullDiscountService.savePromotions(fullDiscountVO));
    }
 
    @Test
    void search() {
        PageVO pageVo = new PageVO();
        pageVo.setPageSize(10);
        pageVo.setPageNumber(0);
        pageVo.setNotConvert(true);
        pageVo.setSort("startTime");
        pageVo.setOrder("asc");
 
        IPage<FullDiscount> fullDiscountByPage = fullDiscountService.pageFindAll(new FullDiscountSearchParams(), null);
 
        Assertions.assertNotNull(fullDiscountByPage);
    }
 
    @Test
    void update() {
        FullDiscountVO fullDiscountVO = new FullDiscountVO();
        fullDiscountVO.setId("1325981729404248064");
        fullDiscountVO.setStoreId("132");
        fullDiscountVO.setStoreName("联想自营旗舰店");
        fullDiscountVO.setDescription("Not worth");
        fullDiscountVO.setFullMinusFlag(true);
        fullDiscountVO.setFullMoney(100D);
        fullDiscountVO.setFullMinus(80D);
        fullDiscountVO.setFreeFreightFlag(true);
 
        fullDiscountVO.setPromotionName("FullDiscount-" + fullDiscountVO.getId());
        fullDiscountVO.setTitle("满" + fullDiscountVO.getFullMoney() + "减" + fullDiscountVO.getFullMinus());
        fullDiscountVO.setStartTime(cn.hutool.core.date.DateUtil.parse("2020-11-10 10:15:00"));
        fullDiscountVO.setEndTime(cn.hutool.core.date.DateUtil.parse("2020-11-10 10:30:00"));
 
        List<PromotionGoods> promotionGoodsLis = new ArrayList<>();
        PromotionGoods promotionGoods = new PromotionGoods();
        promotionGoods.setSkuId("134");
        promotionGoods.setPrice(18000D);
        promotionGoods.setStartTime(fullDiscountVO.getStartTime());
        promotionGoods.setEndTime(fullDiscountVO.getEndTime());
        promotionGoods.setNum(1);
        promotionGoods.setQuantity(100);
        promotionGoods.setPromotionType(PromotionTypeEnum.FULL_DISCOUNT.name());
        promotionGoods.setTitle("满" + fullDiscountVO.getFullMoney() + "减" + fullDiscountVO.getFullMinus());
        promotionGoods.setLimitNum(100);
        promotionGoods.setPromotionId("200");
        promotionGoods.setStoreId("132");
        promotionGoodsLis.add(promotionGoods);
        fullDiscountVO.setPromotionGoodsList(promotionGoodsLis);
        Assertions.assertTrue(fullDiscountService.updatePromotions(fullDiscountVO));
    }
 
    @Test
    void delete() {
        Assertions.assertTrue(fullDiscountService.removePromotions(Collections.singletonList("1325995092947525632")));
    }
 
 
}