Commit 47c2dfa6237c478b9964041813494da66f08d210

Authored by YunaiV
1 parent 86b6b859

promotion:增加优惠劵的前端分页界面 100%

Showing 24 changed files with 53 additions and 53 deletions
yudao-module-mall/yudao-module-promotion-api/src/main/java/cn/iocoder/yudao/module/promotion/enums/coupon/CouponTakeTypeEnum.java
1 package cn.iocoder.yudao.module.promotion.enums.coupon; 1 package cn.iocoder.yudao.module.promotion.enums.coupon;
2 2
3 import cn.iocoder.yudao.framework.common.core.IntArrayValuable; 3 import cn.iocoder.yudao.framework.common.core.IntArrayValuable;
  4 +import lombok.AllArgsConstructor;
  5 +import lombok.Getter;
4 6
5 import java.util.Arrays; 7 import java.util.Arrays;
6 8
@@ -9,6 +11,8 @@ import java.util.Arrays; @@ -9,6 +11,8 @@ import java.util.Arrays;
9 * 11 *
10 * @author 芋道源码 12 * @author 芋道源码
11 */ 13 */
  14 +@AllArgsConstructor
  15 +@Getter
12 public enum CouponTakeTypeEnum implements IntArrayValuable { 16 public enum CouponTakeTypeEnum implements IntArrayValuable {
13 17
14 BY_USER(1, "直接领取"), // 用户可在首页、每日领劵直接领取 18 BY_USER(1, "直接领取"), // 用户可在首页、每日领劵直接领取
@@ -26,19 +30,6 @@ public enum CouponTakeTypeEnum implements IntArrayValuable { @@ -26,19 +30,6 @@ public enum CouponTakeTypeEnum implements IntArrayValuable {
26 */ 30 */
27 private final String name; 31 private final String name;
28 32
29 - CouponTakeTypeEnum(Integer value, String name) {  
30 - this.value = value;  
31 - this.name = name;  
32 - }  
33 -  
34 - public Integer getValue() {  
35 - return value;  
36 - }  
37 -  
38 - public String getName() {  
39 - return name;  
40 - }  
41 -  
42 @Override 33 @Override
43 public int[] array() { 34 public int[] array() {
44 return ARRAYS; 35 return ARRAYS;
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/CouponController.java
@@ -6,8 +6,8 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult; @@ -6,8 +6,8 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult;
6 import cn.iocoder.yudao.framework.common.util.collection.MapUtils; 6 import cn.iocoder.yudao.framework.common.util.collection.MapUtils;
7 import cn.iocoder.yudao.module.member.api.user.MemberUserApi; 7 import cn.iocoder.yudao.module.member.api.user.MemberUserApi;
8 import cn.iocoder.yudao.module.member.api.user.dto.UserRespDTO; 8 import cn.iocoder.yudao.module.member.api.user.dto.UserRespDTO;
9 -import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponPageItemRespVO;  
10 -import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponPageReqVO; 9 +import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.coupon.CouponPageItemRespVO;
  10 +import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.coupon.CouponPageReqVO;
11 import cn.iocoder.yudao.module.promotion.convert.coupon.CouponConvert; 11 import cn.iocoder.yudao.module.promotion.convert.coupon.CouponConvert;
12 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponDO; 12 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponDO;
13 import cn.iocoder.yudao.module.promotion.service.coupon.CouponService; 13 import cn.iocoder.yudao.module.promotion.service.coupon.CouponService;
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/CouponTemplateController.java
@@ -2,7 +2,7 @@ package cn.iocoder.yudao.module.promotion.controller.admin.coupon; @@ -2,7 +2,7 @@ package cn.iocoder.yudao.module.promotion.controller.admin.coupon;
2 2
3 import cn.iocoder.yudao.framework.common.pojo.CommonResult; 3 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
4 import cn.iocoder.yudao.framework.common.pojo.PageResult; 4 import cn.iocoder.yudao.framework.common.pojo.PageResult;
5 -import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.*; 5 +import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.template.*;
6 import cn.iocoder.yudao.module.promotion.convert.coupon.CouponTemplateConvert; 6 import cn.iocoder.yudao.module.promotion.convert.coupon.CouponTemplateConvert;
7 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponTemplateDO; 7 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponTemplateDO;
8 import cn.iocoder.yudao.module.promotion.service.coupon.CouponTemplateService; 8 import cn.iocoder.yudao.module.promotion.service.coupon.CouponTemplateService;
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/vo/CouponBaseVO.java renamed to yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/vo/coupon/CouponBaseVO.java
1 -package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo; 1 +package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.coupon;
2 2
3 import cn.iocoder.yudao.framework.common.validation.InEnum; 3 import cn.iocoder.yudao.framework.common.validation.InEnum;
4 import cn.iocoder.yudao.module.promotion.enums.common.PromotionDiscountTypeEnum; 4 import cn.iocoder.yudao.module.promotion.enums.common.PromotionDiscountTypeEnum;
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/vo/CouponPageItemRespVO.java renamed to yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/vo/coupon/CouponPageItemRespVO.java
1 -package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo; 1 +package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.coupon;
2 2
3 import io.swagger.annotations.ApiModel; 3 import io.swagger.annotations.ApiModel;
4 import io.swagger.annotations.ApiModelProperty; 4 import io.swagger.annotations.ApiModelProperty;
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/vo/CouponPageReqVO.java renamed to yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/vo/coupon/CouponPageReqVO.java
1 -package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo; 1 +package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.coupon;
2 2
3 import cn.iocoder.yudao.framework.common.pojo.PageParam; 3 import cn.iocoder.yudao.framework.common.pojo.PageParam;
4 import io.swagger.annotations.ApiModel; 4 import io.swagger.annotations.ApiModel;
@@ -21,6 +21,9 @@ public class CouponPageReqVO extends PageParam { @@ -21,6 +21,9 @@ public class CouponPageReqVO extends PageParam {
21 @ApiModelProperty(value = "优惠劵模板编号", example = "2048") 21 @ApiModelProperty(value = "优惠劵模板编号", example = "2048")
22 private Long templateId; 22 private Long templateId;
23 23
  24 + @ApiModelProperty(value = "优惠码状态", example = "1", notes = "参见 CouponStatusEnum 枚举")
  25 + private Integer status;
  26 +
24 @ApiModelProperty(value = "创建时间") 27 @ApiModelProperty(value = "创建时间")
25 @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) 28 @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
26 private Date[] createTime; 29 private Date[] createTime;
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/vo/CouponRespVO.java renamed to yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/vo/coupon/CouponRespVO.java
1 -package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo; 1 +package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.coupon;
2 2
3 import io.swagger.annotations.ApiModel; 3 import io.swagger.annotations.ApiModel;
4 import io.swagger.annotations.ApiModelProperty; 4 import io.swagger.annotations.ApiModelProperty;
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/vo/CouponTemplateBaseVO.java renamed to yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/vo/template/CouponTemplateBaseVO.java
1 -package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo; 1 +package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.template;
2 2
3 import cn.hutool.core.collection.CollUtil; 3 import cn.hutool.core.collection.CollUtil;
4 import cn.hutool.core.util.ObjectUtil; 4 import cn.hutool.core.util.ObjectUtil;
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/vo/CouponTemplateCreateReqVO.java renamed to yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/vo/template/CouponTemplateCreateReqVO.java
1 -package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo; 1 +package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.template;
2 2
3 import io.swagger.annotations.ApiModel; 3 import io.swagger.annotations.ApiModel;
4 import lombok.Data; 4 import lombok.Data;
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/vo/CouponTemplatePageReqVO.java renamed to yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/vo/template/CouponTemplatePageReqVO.java
1 -package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo; 1 +package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.template;
2 2
3 import cn.iocoder.yudao.framework.common.pojo.PageParam; 3 import cn.iocoder.yudao.framework.common.pojo.PageParam;
4 import cn.iocoder.yudao.framework.common.validation.InEnum; 4 import cn.iocoder.yudao.framework.common.validation.InEnum;
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/vo/CouponTemplateRespVO.java renamed to yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/vo/template/CouponTemplateRespVO.java
1 -package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo; 1 +package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.template;
2 2
3 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; 3 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
4 import cn.iocoder.yudao.framework.common.validation.InEnum; 4 import cn.iocoder.yudao.framework.common.validation.InEnum;
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/vo/CouponTemplateUpdateReqVO.java renamed to yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/vo/template/CouponTemplateUpdateReqVO.java
1 -package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo; 1 +package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.template;
2 2
3 import io.swagger.annotations.ApiModel; 3 import io.swagger.annotations.ApiModel;
4 import io.swagger.annotations.ApiModelProperty; 4 import io.swagger.annotations.ApiModelProperty;
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/vo/CouponTemplateUpdateStatusReqVO.java renamed to yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/coupon/vo/template/CouponTemplateUpdateStatusReqVO.java
1 -package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo; 1 +package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.template;
2 2
3 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; 3 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
4 import cn.iocoder.yudao.framework.common.validation.InEnum; 4 import cn.iocoder.yudao.framework.common.validation.InEnum;
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/convert/coupon/CouponConvert.java
1 package cn.iocoder.yudao.module.promotion.convert.coupon; 1 package cn.iocoder.yudao.module.promotion.convert.coupon;
2 2
3 import cn.iocoder.yudao.framework.common.pojo.PageResult; 3 import cn.iocoder.yudao.framework.common.pojo.PageResult;
4 -import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponPageItemRespVO; 4 +import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.coupon.CouponPageItemRespVO;
5 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponDO; 5 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponDO;
6 import org.mapstruct.Mapper; 6 import org.mapstruct.Mapper;
7 import org.mapstruct.factory.Mappers; 7 import org.mapstruct.factory.Mappers;
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/convert/coupon/CouponTemplateConvert.java
1 package cn.iocoder.yudao.module.promotion.convert.coupon; 1 package cn.iocoder.yudao.module.promotion.convert.coupon;
2 2
3 import cn.iocoder.yudao.framework.common.pojo.PageResult; 3 import cn.iocoder.yudao.framework.common.pojo.PageResult;
4 -import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplateCreateReqVO;  
5 -import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplateRespVO;  
6 -import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplateUpdateReqVO; 4 +import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.template.CouponTemplateCreateReqVO;
  5 +import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.template.CouponTemplateRespVO;
  6 +import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.template.CouponTemplateUpdateReqVO;
7 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponTemplateDO; 7 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponTemplateDO;
8 import org.mapstruct.Mapper; 8 import org.mapstruct.Mapper;
9 import org.mapstruct.factory.Mappers; 9 import org.mapstruct.factory.Mappers;
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/dal/mysql/coupon/CouponMapper.java
@@ -3,7 +3,7 @@ package cn.iocoder.yudao.module.promotion.dal.mysql.coupon; @@ -3,7 +3,7 @@ package cn.iocoder.yudao.module.promotion.dal.mysql.coupon;
3 import cn.iocoder.yudao.framework.common.pojo.PageResult; 3 import cn.iocoder.yudao.framework.common.pojo.PageResult;
4 import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; 4 import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
5 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; 5 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
6 -import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponPageReqVO; 6 +import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.coupon.CouponPageReqVO;
7 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponDO; 7 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponDO;
8 import org.apache.ibatis.annotations.Mapper; 8 import org.apache.ibatis.annotations.Mapper;
9 9
@@ -20,6 +20,7 @@ public interface CouponMapper extends BaseMapperX<CouponDO> { @@ -20,6 +20,7 @@ public interface CouponMapper extends BaseMapperX<CouponDO> {
20 default PageResult<CouponDO> selectPage(CouponPageReqVO reqVO, Collection<Long> userIds) { 20 default PageResult<CouponDO> selectPage(CouponPageReqVO reqVO, Collection<Long> userIds) {
21 return selectPage(reqVO, new LambdaQueryWrapperX<CouponDO>() 21 return selectPage(reqVO, new LambdaQueryWrapperX<CouponDO>()
22 .eqIfPresent(CouponDO::getTemplateId, reqVO.getTemplateId()) 22 .eqIfPresent(CouponDO::getTemplateId, reqVO.getTemplateId())
  23 + .eqIfPresent(CouponDO::getStatus, reqVO.getStatus())
23 .inIfPresent(CouponDO::getUserId, userIds) 24 .inIfPresent(CouponDO::getUserId, userIds)
24 .betweenIfPresent(CouponDO::getCreateTime, reqVO.getCreateTime()) 25 .betweenIfPresent(CouponDO::getCreateTime, reqVO.getCreateTime())
25 .orderByDesc(CouponDO::getId)); 26 .orderByDesc(CouponDO::getId));
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/dal/mysql/coupon/CouponTemplateMapper.java
@@ -3,7 +3,7 @@ package cn.iocoder.yudao.module.promotion.dal.mysql.coupon; @@ -3,7 +3,7 @@ package cn.iocoder.yudao.module.promotion.dal.mysql.coupon;
3 import cn.iocoder.yudao.framework.common.pojo.PageResult; 3 import cn.iocoder.yudao.framework.common.pojo.PageResult;
4 import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; 4 import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
5 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; 5 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
6 -import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplatePageReqVO; 6 +import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.template.CouponTemplatePageReqVO;
7 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponTemplateDO; 7 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponTemplateDO;
8 import org.apache.ibatis.annotations.Mapper; 8 import org.apache.ibatis.annotations.Mapper;
9 9
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/service/coupon/CouponService.java
1 package cn.iocoder.yudao.module.promotion.service.coupon; 1 package cn.iocoder.yudao.module.promotion.service.coupon;
2 2
3 import cn.iocoder.yudao.framework.common.pojo.PageResult; 3 import cn.iocoder.yudao.framework.common.pojo.PageResult;
4 -import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponPageReqVO; 4 +import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.coupon.CouponPageReqVO;
5 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponDO; 5 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponDO;
6 6
7 /** 7 /**
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/service/coupon/CouponServiceImpl.java
@@ -6,7 +6,7 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult; @@ -6,7 +6,7 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult;
6 import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; 6 import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
7 import cn.iocoder.yudao.module.member.api.user.MemberUserApi; 7 import cn.iocoder.yudao.module.member.api.user.MemberUserApi;
8 import cn.iocoder.yudao.module.member.api.user.dto.UserRespDTO; 8 import cn.iocoder.yudao.module.member.api.user.dto.UserRespDTO;
9 -import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponPageReqVO; 9 +import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.coupon.CouponPageReqVO;
10 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponDO; 10 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponDO;
11 import cn.iocoder.yudao.module.promotion.dal.mysql.coupon.CouponMapper; 11 import cn.iocoder.yudao.module.promotion.dal.mysql.coupon.CouponMapper;
12 import org.springframework.stereotype.Service; 12 import org.springframework.stereotype.Service;
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/service/coupon/CouponTemplateService.java
1 package cn.iocoder.yudao.module.promotion.service.coupon; 1 package cn.iocoder.yudao.module.promotion.service.coupon;
2 2
3 import cn.iocoder.yudao.framework.common.pojo.PageResult; 3 import cn.iocoder.yudao.framework.common.pojo.PageResult;
4 -import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplateCreateReqVO;  
5 -import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplatePageReqVO;  
6 -import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplateUpdateReqVO; 4 +import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.template.CouponTemplateCreateReqVO;
  5 +import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.template.CouponTemplatePageReqVO;
  6 +import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.template.CouponTemplateUpdateReqVO;
7 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponTemplateDO; 7 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponTemplateDO;
8 8
9 import javax.validation.Valid; 9 import javax.validation.Valid;
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/service/coupon/CouponTemplateServiceImpl.java
@@ -2,9 +2,9 @@ package cn.iocoder.yudao.module.promotion.service.coupon; @@ -2,9 +2,9 @@ package cn.iocoder.yudao.module.promotion.service.coupon;
2 2
3 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; 3 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
4 import cn.iocoder.yudao.framework.common.pojo.PageResult; 4 import cn.iocoder.yudao.framework.common.pojo.PageResult;
5 -import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplateCreateReqVO;  
6 -import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplatePageReqVO;  
7 -import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplateUpdateReqVO; 5 +import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.template.CouponTemplateCreateReqVO;
  6 +import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.template.CouponTemplatePageReqVO;
  7 +import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.template.CouponTemplateUpdateReqVO;
8 import cn.iocoder.yudao.module.promotion.convert.coupon.CouponTemplateConvert; 8 import cn.iocoder.yudao.module.promotion.convert.coupon.CouponTemplateConvert;
9 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponTemplateDO; 9 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponTemplateDO;
10 import cn.iocoder.yudao.module.promotion.dal.mysql.coupon.CouponTemplateMapper; 10 import cn.iocoder.yudao.module.promotion.dal.mysql.coupon.CouponTemplateMapper;
yudao-module-mall/yudao-module-promotion-biz/src/test/java/cn/iocoder/yudao/module/promotion/service/coupon/CouponTemplateServiceImplTest.java
@@ -3,9 +3,9 @@ package cn.iocoder.yudao.module.promotion.service.coupon; @@ -3,9 +3,9 @@ package cn.iocoder.yudao.module.promotion.service.coupon;
3 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; 3 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
4 import cn.iocoder.yudao.framework.common.pojo.PageResult; 4 import cn.iocoder.yudao.framework.common.pojo.PageResult;
5 import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest; 5 import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest;
6 -import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplateCreateReqVO;  
7 -import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplatePageReqVO;  
8 -import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplateUpdateReqVO; 6 +import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.template.CouponTemplateCreateReqVO;
  7 +import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.template.CouponTemplatePageReqVO;
  8 +import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.template.CouponTemplateUpdateReqVO;
9 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponTemplateDO; 9 import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponTemplateDO;
10 import cn.iocoder.yudao.module.promotion.dal.mysql.coupon.CouponTemplateMapper; 10 import cn.iocoder.yudao.module.promotion.dal.mysql.coupon.CouponTemplateMapper;
11 import cn.iocoder.yudao.module.promotion.enums.common.PromotionDiscountTypeEnum; 11 import cn.iocoder.yudao.module.promotion.enums.common.PromotionDiscountTypeEnum;
yudao-ui-admin/src/utils/dict.js
@@ -65,6 +65,7 @@ export const DICT_TYPE = { @@ -65,6 +65,7 @@ export const DICT_TYPE = {
65 PROMOTION_PRODUCT_SCOPE: 'promotion_product_scope', // 营销的商品范围 65 PROMOTION_PRODUCT_SCOPE: 'promotion_product_scope', // 营销的商品范围
66 PROMOTION_COUPON_TEMPLATE_VALIDITY_TYPE: 'promotion_coupon_template_validity_type', // 优惠劵模板的有限期类型 66 PROMOTION_COUPON_TEMPLATE_VALIDITY_TYPE: 'promotion_coupon_template_validity_type', // 优惠劵模板的有限期类型
67 PROMOTION_COUPON_STATUS: 'promotion_coupon_status', // 优惠劵的状态 67 PROMOTION_COUPON_STATUS: 'promotion_coupon_status', // 优惠劵的状态
  68 + PROMOTION_COUPON_TAKE_TYPE: 'promotion_coupon_take_type', // 优惠劵的领取方式
68 } 69 }
69 70
70 /** 71 /**
yudao-ui-admin/src/views/mall/promotion/coupon/index.vue
@@ -29,27 +29,31 @@ @@ -29,27 +29,31 @@
29 <el-table v-loading="loading" :data="list"> 29 <el-table v-loading="loading" :data="list">
30 <el-table-column label="会员信息" align="center" prop="nickname" /> <!-- TODO 芋艿:以后支持头像,支持跳转 --> 30 <el-table-column label="会员信息" align="center" prop="nickname" /> <!-- TODO 芋艿:以后支持头像,支持跳转 -->
31 <el-table-column label="优惠劵" align="center" prop="name" /> 31 <el-table-column label="优惠劵" align="center" prop="name" />
32 - <el-table-column label="优惠码状态" align="center" prop="status" />  
33 - <el-table-column label="生效开始时间" align="center" prop="validStartTime" width="180"> 32 + <el-table-column label="优惠券类型" align="center" prop="discountType">
34 <template slot-scope="scope"> 33 <template slot-scope="scope">
35 - <span>{{ parseTime(scope.row.validStartTime) }}</span> 34 + <dict-tag :type="DICT_TYPE.PROMOTION_DISCOUNT_TYPE" :value="scope.row.discountType" />
36 </template> 35 </template>
37 </el-table-column> 36 </el-table-column>
38 - <el-table-column label="生效结束时间" align="center" prop="validEndTime" width="180"> 37 + <el-table-column label="领取方式" align="center" prop="takeType">
39 <template slot-scope="scope"> 38 <template slot-scope="scope">
40 - <span>{{ parseTime(scope.row.validEndTime) }}</span> 39 + <dict-tag :type="DICT_TYPE.PROMOTION_COUPON_TAKE_TYPE" :value="scope.row.takeType" />
41 </template> 40 </template>
42 </el-table-column> 41 </el-table-column>
43 - <el-table-column label="使用时间" align="center" prop="useTime" width="180"> 42 + <el-table-column label="状态" align="center" prop="status">
44 <template slot-scope="scope"> 43 <template slot-scope="scope">
45 - <span>{{ parseTime(scope.row.useTime) }}</span> 44 + <dict-tag :type="DICT_TYPE.PROMOTION_COUPON_STATUS" :value="scope.row.status" />
46 </template> 45 </template>
47 </el-table-column> 46 </el-table-column>
48 - <el-table-column label="创建时间" align="center" prop="createTime" width="180"> 47 + <el-table-column label="领取时间" align="center" prop="createTime" width="180">
49 <template slot-scope="scope"> 48 <template slot-scope="scope">
50 <span>{{ parseTime(scope.row.createTime) }}</span> 49 <span>{{ parseTime(scope.row.createTime) }}</span>
51 </template> 50 </template>
52 </el-table-column> 51 </el-table-column>
  52 + <el-table-column label="使用时间" align="center" prop="useTime" width="180">
  53 + <template slot-scope="scope">
  54 + <span>{{ parseTime(scope.row.useTime) }}</span>
  55 + </template>
  56 + </el-table-column>
53 <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> 57 <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
54 <template slot-scope="scope"> 58 <template slot-scope="scope">
55 <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" 59 <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
@@ -94,7 +98,7 @@ export default { @@ -94,7 +98,7 @@ export default {
94 createTime: [], 98 createTime: [],
95 status: undefined, 99 status: undefined,
96 }, 100 },
97 - // Tab 想选 101 + // Tab 筛选
98 activeTab: 'all', 102 activeTab: 'all',
99 statusTabs: [{ 103 statusTabs: [{
100 label: '全部', 104 label: '全部',
@@ -148,9 +152,9 @@ export default { @@ -148,9 +152,9 @@ export default {
148 this.$modal.msgSuccess("删除成功"); 152 this.$modal.msgSuccess("删除成功");
149 }).catch(() => {}); 153 }).catch(() => {});
150 }, 154 },
  155 + /** tab 切换 */
151 tabClick(tab) { 156 tabClick(tab) {
152 this.queryParams.status = tab.name === 'all' ? undefined : tab.name; 157 this.queryParams.status = tab.name === 'all' ? undefined : tab.name;
153 - this.list = [];  
154 this.getList(); 158 this.getList();
155 } 159 }
156 } 160 }