|
@@ -0,0 +1,343 @@
|
|
|
+package com.yonge.cooleshow.admin.io.request.coupon;
|
|
|
+
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
+import com.fasterxml.jackson.annotation.JsonFormat;
|
|
|
+import com.yonge.cooleshow.biz.dal.dto.UserParam;
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.SendTypeEnum;
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.coupon.CouponUseStateEnum;
|
|
|
+import com.yonge.toolset.base.page.QueryInfo;
|
|
|
+import io.swagger.annotations.ApiModel;
|
|
|
+import io.swagger.annotations.ApiModelProperty;
|
|
|
+import lombok.AllArgsConstructor;
|
|
|
+import lombok.Data;
|
|
|
+import lombok.NoArgsConstructor;
|
|
|
+import org.springframework.format.annotation.DateTimeFormat;
|
|
|
+
|
|
|
+import javax.validation.constraints.NotNull;
|
|
|
+import javax.validation.constraints.Size;
|
|
|
+import java.io.Serializable;
|
|
|
+import java.util.Date;
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+/**
|
|
|
+ * Description
|
|
|
+ *
|
|
|
+ * @author liujunchi
|
|
|
+ * @date 2022-09-02
|
|
|
+ */
|
|
|
+public class CouponIssueVo {
|
|
|
+
|
|
|
+ @ApiModel(value = "优惠券发放信息分页请求", description = "优惠券发放信息分页请求")
|
|
|
+ public static class PageRequest extends QueryInfo {
|
|
|
+
|
|
|
+ @ApiModelProperty(value = "优惠券id",required = true)
|
|
|
+ @NotNull(message = "优惠券id不能为空")
|
|
|
+ private Long couponId;
|
|
|
+
|
|
|
+ // 真实姓名/昵称/手机号/编号
|
|
|
+ @ApiModelProperty("真实姓名/昵称/手机号/编号")
|
|
|
+ private String keyword;
|
|
|
+
|
|
|
+ // 客户端 TEACHER STUDENT
|
|
|
+ @ApiModelProperty("客户端 TEACHER STUDENT")
|
|
|
+ private ClientEnum client;
|
|
|
+
|
|
|
+ // 发放方式 PLATFORM AVTIVITY
|
|
|
+ @ApiModelProperty("发放方式 PLATFORM:后台发放 AVTIVITY:活动领取")
|
|
|
+ private SendTypeEnum issueWay;
|
|
|
+
|
|
|
+ //使用状态 USED:已使用 USABLE:未使用 EXPIRED:过期
|
|
|
+ @ApiModelProperty("使用状态 USED:已使用 USABLE:未使用 EXPIRED:过期")
|
|
|
+ private CouponUseStateEnum useState;
|
|
|
+
|
|
|
+ // 发放开始时间
|
|
|
+ @ApiModelProperty("发放开始时间")
|
|
|
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
|
|
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
|
|
+ private Date issueStartTime;
|
|
|
+
|
|
|
+ // 发放结束时间
|
|
|
+ @ApiModelProperty("发放结束时间")
|
|
|
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
|
|
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
|
|
+ private Date issueEndTime;
|
|
|
+
|
|
|
+ // 使用开始时间
|
|
|
+ @ApiModelProperty("使用开始时间")
|
|
|
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
|
|
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
|
|
+ private Date usedStartTime;
|
|
|
+
|
|
|
+ // 使用结束时间
|
|
|
+ @ApiModelProperty("使用结束时间")
|
|
|
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
|
|
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
|
|
+ private Date usedEndTime;
|
|
|
+
|
|
|
+ public Long getCouponId() {
|
|
|
+ return couponId;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setCouponId(Long couponId) {
|
|
|
+ this.couponId = couponId;
|
|
|
+ }
|
|
|
+
|
|
|
+ public String getKeyword() {
|
|
|
+ return keyword;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setKeyword(String keyword) {
|
|
|
+ this.keyword = keyword;
|
|
|
+ }
|
|
|
+
|
|
|
+ public ClientEnum getClient() {
|
|
|
+ return client;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setClient(ClientEnum client) {
|
|
|
+ this.client = client;
|
|
|
+ }
|
|
|
+
|
|
|
+ public SendTypeEnum getIssueWay() {
|
|
|
+ return issueWay;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setIssueWay(SendTypeEnum issueWay) {
|
|
|
+ this.issueWay = issueWay;
|
|
|
+ }
|
|
|
+
|
|
|
+ public CouponUseStateEnum getUseState() {
|
|
|
+ return useState;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setUseState(CouponUseStateEnum useState) {
|
|
|
+ this.useState = useState;
|
|
|
+ }
|
|
|
+
|
|
|
+ public Date getIssueStartTime() {
|
|
|
+ return issueStartTime;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setIssueStartTime(Date issueStartTime) {
|
|
|
+ this.issueStartTime = issueStartTime;
|
|
|
+ }
|
|
|
+
|
|
|
+ public Date getIssueEndTime() {
|
|
|
+ return issueEndTime;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setIssueEndTime(Date issueEndTime) {
|
|
|
+ this.issueEndTime = issueEndTime;
|
|
|
+ }
|
|
|
+
|
|
|
+ public Date getUsedStartTime() {
|
|
|
+ return usedStartTime;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setUsedStartTime(Date usedStartTime) {
|
|
|
+ this.usedStartTime = usedStartTime;
|
|
|
+ }
|
|
|
+
|
|
|
+ public Date getUsedEndTime() {
|
|
|
+ return usedEndTime;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setUsedEndTime(Date usedEndTime) {
|
|
|
+ this.usedEndTime = usedEndTime;
|
|
|
+ }
|
|
|
+
|
|
|
+ public String jsonString() {
|
|
|
+ return JSON.toJSONString(this);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ @Data
|
|
|
+ @NoArgsConstructor
|
|
|
+ @AllArgsConstructor
|
|
|
+ @ApiModel(value = "优惠券信息分页信息", description = "优惠券信息分页信息")
|
|
|
+ public static class CouponIssuePageInfo implements Serializable {
|
|
|
+
|
|
|
+ @ApiModelProperty("用户id")
|
|
|
+ private Long userId;
|
|
|
+
|
|
|
+ @ApiModelProperty("优惠券发放id")
|
|
|
+ private Long couponIssueId;
|
|
|
+
|
|
|
+ @ApiModelProperty("用户实名")
|
|
|
+ private String realName;
|
|
|
+
|
|
|
+ @ApiModelProperty("用户昵称")
|
|
|
+ private String username;
|
|
|
+
|
|
|
+ @ApiModelProperty("客户端类型 TEACHER :老师端 STUDENT:学生端")
|
|
|
+ private ClientEnum clientType;
|
|
|
+
|
|
|
+ @ApiModelProperty("使用状态 USED:已使用 USABLE:未使用 EXPIRED:过期")
|
|
|
+ private CouponUseStateEnum useState;
|
|
|
+
|
|
|
+ @ApiModelProperty("订单号")
|
|
|
+ private String orderNo;
|
|
|
+
|
|
|
+ @ApiModelProperty("有效期开始时间")
|
|
|
+ private Date startTime;
|
|
|
+
|
|
|
+ @ApiModelProperty("有效期结束时间")
|
|
|
+ private Date endTime;
|
|
|
+
|
|
|
+ @ApiModelProperty("发放时间")
|
|
|
+ private Date issueTime;
|
|
|
+
|
|
|
+ @ApiModelProperty("使用时间")
|
|
|
+ private Date useTime;
|
|
|
+
|
|
|
+ @ApiModelProperty("发放途径PLATFORM:后台发放 ACTIVITY:活动领取")
|
|
|
+ private SendTypeEnum issueWay;
|
|
|
+
|
|
|
+ @ApiModelProperty("发放人昵称")
|
|
|
+ private String issueUsername;
|
|
|
+
|
|
|
+ @ApiModelProperty("发放人实名")
|
|
|
+ private String issueRealName;
|
|
|
+
|
|
|
+ @ApiModelProperty("备注")
|
|
|
+ private String remark;
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiModel("优惠券发放用户分页查询")
|
|
|
+ public static class CouponIssueUserRequest extends QueryInfo {
|
|
|
+
|
|
|
+ @ApiModelProperty(value = "优惠券id",required = true)
|
|
|
+ @NotNull(message = "优惠券id不能为空")
|
|
|
+ private Long couponId;
|
|
|
+
|
|
|
+ // 真实姓名/昵称/手机号/编号
|
|
|
+ @ApiModelProperty("真实姓名/昵称/手机号/编号")
|
|
|
+ private String keyword;
|
|
|
+
|
|
|
+ // 客户端 TEACHER STUDENT
|
|
|
+ @ApiModelProperty("客户端 TEACHER STUDENT")
|
|
|
+ private ClientEnum client;
|
|
|
+
|
|
|
+ public Long getCouponId() {
|
|
|
+ return couponId;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setCouponId(Long couponId) {
|
|
|
+ this.couponId = couponId;
|
|
|
+ }
|
|
|
+
|
|
|
+ public String getKeyword() {
|
|
|
+ return keyword;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setKeyword(String keyword) {
|
|
|
+ this.keyword = keyword;
|
|
|
+ }
|
|
|
+
|
|
|
+ public ClientEnum getClient() {
|
|
|
+ return client;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setClient(ClientEnum client) {
|
|
|
+ this.client = client;
|
|
|
+ }
|
|
|
+
|
|
|
+ public String jsonString() {
|
|
|
+ return JSON.toJSONString(this);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiModel("发放优惠券用户分页数据")
|
|
|
+ public static class CouponIssueUserPageInfo {
|
|
|
+
|
|
|
+ @ApiModelProperty("用户id")
|
|
|
+ private Long userId;
|
|
|
+
|
|
|
+ @ApiModelProperty("实名")
|
|
|
+ private String realName;
|
|
|
+
|
|
|
+ @ApiModelProperty("昵称")
|
|
|
+ private String username;
|
|
|
+
|
|
|
+ @ApiModelProperty("客户端")
|
|
|
+ private ClientEnum clientType;
|
|
|
+
|
|
|
+ @ApiModelProperty("手机号")
|
|
|
+ private String phone;
|
|
|
+
|
|
|
+ public Long getUserId() {
|
|
|
+ return userId;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setUserId(Long userId) {
|
|
|
+ this.userId = userId;
|
|
|
+ }
|
|
|
+
|
|
|
+ public String getRealName() {
|
|
|
+ return realName;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setRealName(String realName) {
|
|
|
+ this.realName = realName;
|
|
|
+ }
|
|
|
+
|
|
|
+ public String getUsername() {
|
|
|
+ return username;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setUsername(String username) {
|
|
|
+ this.username = username;
|
|
|
+ }
|
|
|
+
|
|
|
+ public ClientEnum getClientType() {
|
|
|
+ return clientType;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setClientType(ClientEnum clientType) {
|
|
|
+ this.clientType = clientType;
|
|
|
+ }
|
|
|
+
|
|
|
+ public String getPhone() {
|
|
|
+ return phone;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setPhone(String phone) {
|
|
|
+ this.phone = phone;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiModel("发送优惠券")
|
|
|
+ public static class CouponIssueUserParam {
|
|
|
+
|
|
|
+ @ApiModelProperty(value = "优惠券id",required = true)
|
|
|
+ @NotNull(message = "优惠券id不能为空")
|
|
|
+ private Long couponId;
|
|
|
+
|
|
|
+ @ApiModelProperty("用户信息")
|
|
|
+ @Size(min = 1,message = "请选择发送优惠券用户")
|
|
|
+ private List<UserParam> userParam;
|
|
|
+
|
|
|
+ public Long getCouponId() {
|
|
|
+ return couponId;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setCouponId(Long couponId) {
|
|
|
+ this.couponId = couponId;
|
|
|
+ }
|
|
|
+
|
|
|
+ public List<UserParam> getUserParam() {
|
|
|
+ return userParam;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setUserParam(List<UserParam> userParam) {
|
|
|
+ this.userParam = userParam;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+}
|