feat(pricing): 添加券码管理和使用功能

- 新增券码批次配置和券码实体
- 实现券码创建、领取、使用等接口
- 添加券码状态和优惠类型枚举
- 优化价格计算逻辑,支持券码优惠
- 新增优惠检测和应用相关功能
This commit is contained in:
2025-08-21 09:35:08 +08:00
parent e9035af542
commit eb327723cd
52 changed files with 2572 additions and 455 deletions

View File

@@ -0,0 +1,25 @@
package com.ycwl.basic.pricing.dto.resp;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class VoucherBatchResp {
private Long id;
private String batchName;
private Long scenicId;
private Long brokerId;
private Integer discountType;
private String discountTypeName;
private BigDecimal discountValue;
private Integer totalCount;
private Integer usedCount;
private Integer claimedCount;
private Integer availableCount;
private Integer status;
private String statusName;
private Date createTime;
private Long createBy;
}

View File

@@ -0,0 +1,15 @@
package com.ycwl.basic.pricing.dto.resp;
import lombok.Data;
@Data
public class VoucherBatchStatsResp {
private Long batchId;
private String batchName;
private Integer totalCount;
private Integer claimedCount;
private Integer usedCount;
private Integer availableCount;
private Double claimedRate;
private Double usedRate;
}

View File

@@ -0,0 +1,27 @@
package com.ycwl.basic.pricing.dto.resp;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class VoucherCodeResp {
private Long id;
private Long batchId;
private String batchName;
private Long scenicId;
private String code;
private Integer status;
private String statusName;
private Long faceId;
private Date claimedTime;
private Date usedTime;
private String remark;
private Date createTime;
private Integer discountType;
private String discountTypeName;
private String discountDescription;
private BigDecimal discountValue;
}