|
|
7c906d5529
|
feat(pricing): 优化优惠券领取逻辑与并发控制
- 为 CouponInvalidException 添加错误码支持
- 在 countUserCouponClaims 查询中添加 FOR UPDATE 锁
- 新增 incrementClaimedQuantityIfAvailable 方法用于原子性增加已领取数量
- 移除重复的用户优惠券领取检查逻辑
- 调整领取流程步骤编号并优化事务回滚处理
- 增加对优惠券库存耗尽情况的业务异常处理
- 使用
|
2025-11-17 00:53:48 +08:00 |
|
|
|
88ad6d6b6f
|
fix(pricing): 修复优惠券库存检查逻辑
- 修正totalQuantity为NULL或0时不限制总量的判断逻辑
- 优化claimedQuantity为空时的默认值处理
- 仅在totalQuantity大于0时更新已领取数量
- 完善MD文档中字段语义描述和配置示例
- 更新SQL表字段说明及典型配置组合示例
|
2025-11-17 00:30:58 +08:00 |
|
|
|
7835283f0f
|
feat(pricing): 添加优惠券用户领取数量限制功能
- 新增用户领取数量限制字段 userClaimLimit
- 区分已领取数量 claimedQuantity 和已使用数量 usedQuantity
- 添加用户领取次数统计方法 countUserCouponClaims
- 实现领取上限检查逻辑和错误码 CLAIM_LIMIT_REACHED
- 更新数据库表结构和索引优化建议
- 完善文档说明和版本更新记录
|
2025-11-17 00:26:15 +08:00 |
|
|
|
9ee466bd5e
|
fix(pricing): 移除自动发券中不必要的faceId校验
- 删除了对faceId参数的非空校验逻辑
- 保持其他参数校验不变
- 更新了日志记录中的参数列表
|
2025-11-16 13:17:53 +08:00 |
|
|
|
4ccb563557
|
feat(pricing): 调整价格计算请求参数并完善优惠券使用逻辑
- 将 previewOnly 默认值从 false 改为 true
- 新增 orderId 字段用于实际使用优惠时的订单标识
- 实现优惠券使用标记逻辑,调用 couponService.useCoupon
- 添加优惠券使用日志记录,包括 couponId、userId 和 orderId
- 补充 scenicId 参数转换处理逻辑
|
2025-11-15 15:54:13 +08:00 |
|
|
|
a1b0687526
|
feat(pricing): 添加折扣优先级设置并优化价格计算请求
- 在折扣信息中增加优先级字段,提升折扣策略的灵活性
- 为价格计算请求默认启用自动使用优惠券功能
- 设置价格预览模式为非预览状态,确保实际计算准确性
- 完善打印服务中的价格计算逻辑,提高系统稳定性
|
2025-11-15 14:52:53 +08:00 |
|
|
|
932081abf0
|
refactor(pricing): 重构自动发券服务方法命名及逻辑
- 将 autoGrantFirstPrintCoupon 方法重命名为 autoGrantCoupon
- 修改 findFirstPrintCouponId 方法名为 findFirstCouponId
- 调整优惠券名称匹配逻辑,移除对"first"关键字的检查
- 更新调用方 PrinterServiceImpl 中的方法引用
- 优化自动发券异常处理,确保不影响主流程
|
2025-11-15 14:28:56 +08:00 |
|
|
|
19fae4bd00
|
feat(pricing): 实现首次打印自动发券功能
- 新增自动发券服务接口 IAutoCouponService- 实现自动发券逻辑,包括参数校验、优惠券配置查询和发券记录检查
- 在打印服务中集成自动发券调用,确保首次打印时触发发券- 添加异常处理,避免发券失败影响主流程
- 支持通过优惠券名称和商品类型匹配规则查找目标优惠券
|
2025-11-14 09:10:06 +08:00 |
|
|
|
661aa4567f
|
feat(print): 支持多种照片打印类型的价格计算
- 新增手机照片打印(PHOTO_PRINT_MU)和特效照片打印(PHOTO_PRINT_FX)枚举类型
- 在价格计算服务中增加isPrintProduct方法统一判断打印类商品
- 修改订单服务跳过打印类商品重复购买检查逻辑
-优化打印机服务根据sourceId分类统计不同照片类型数量
- 分别计算普通、手机、特效照片打印的价格和数量- 更新价格计算逻辑以支持多种打印类型商品项
|
2025-11-14 01:08:12 +08:00 |
|
|
|
19ca91778f
|
fix(pricing): 调整一口价优惠默认支持逻辑
ZhenTu-BE/pipeline/head This commit looks good
- 修改默认情况下不支持一口价优惠
- 更新异常处理逻辑,异常时默认返回不支持
-修复日志描述与实际逻辑不符的问题
|
2025-10-20 11:18:18 +08:00 |
|
|
|
59baf8811b
|
feat(pricing): 添加商品一口价优惠支持检查
- 在 PriceProductConfig 实体中新增 canUseOnePrice 字段
- 更新数据库插入和更新语句,支持 canUseOnePrice 字段持久化- 在 OnePricePurchaseDiscountProvider 中实现商品一口价优惠支持检查逻辑
- 新增 areAllProductsSupportOnePrice 方法,验证购物车商品是否支持一口价优惠
- 支持查询具体商品配置和默认配置的一口价优惠设置
- 添加日志记录和异常处理,确保检查过程不影响主流程
|
2025-09-25 10:40:10 +08:00 |
|
|
|
da71e6d16f
|
debug
|
2025-09-20 15:51:22 +08:00 |
|
|
|
e9102e8e58
|
feat(pricing): 新增打包购买优惠功能
- 添加打包购买优惠信息类 BundleDiscountInfo
- 实现打包购买优惠提供者 BundleDiscountProvider
- 添加打包购买优惠服务接口 IBundleDiscountService 及其实现类 BundleDiscountServiceImpl
- 在 DiscountInfo 中添加 bundleDiscountInfo 字段以支持打包优惠
- 更新 CLAUDE.md 文档,详细说明打包购买优惠系统的设计和实现
|
2025-09-18 11:37:23 +08:00 |
|
|
|
e86dc85afe
|
refactor(pricing): 调整优惠优先级顺序
-
|
2025-09-18 10:28:35 +08:00 |
|
|
|
ad111cdebb
|
Merge branch 'page_info' into price_inquery
|
2025-09-17 16:54:59 +08:00 |
|
|
|
1c0c0393aa
|
feat(pricing): 实现批次统计功能
- 查询批次配置和券码数据
- 统计每个券码的使用情况,包括状态、使用次数、剩余次数等信息
- 计算是否还能使用和剩余使用次数
- 获取使用记录数和最后使用时间
- 返回批次统计结果列表
|
2025-09-17 16:36:50 +08:00 |
|
|
|
5626498002
|
refactor(coupon): 重构优惠券领取结果封装
- 在 CouponClaimResult 类中添加 PriceCouponConfig 类型的 coupon 字段
- 修改 success 静态方法,接收 PriceCouponConfig 对象作为参数
- 更新方法内部逻辑,使用 coupon 对象替代单独的 couponName 字段
- 调整 CouponServiceImpl 中的代码,适应新的 CouponClaimResult 结构
|
2025-09-17 15:29:16 +08:00 |
|
|
|
b323450708
|
refactor(paging): 重构分页查询使用 PageHelper
-将 MyBatis-Plus 的分页插件替换为 PageHelper
- 更新了相关控制器、服务接口和实现类中的分页查询方法
- 优化了分页查询的逻辑,提高了代码的可读性和维护性
|
2025-09-17 12:53:32 +08:00 |
|
|
|
6006fe460c
|
feat(pricing): 优惠券增加有效期时间范围功能
- 在VoucherBatchCreateReqV2、VoucherBatchResp、VoucherInfo 和 PriceVoucherBatchConfig 类中添加有效期开始时间和结束时间字段
- 实现有效期时间范围的验证和检查逻辑
- 更新 VoucherBatchServiceImpl 和 VoucherServiceImpl 以支持有效期时间范围功能
|
2025-09-16 23:49:39 +08:00 |
|
|
|
1506ae95b8
|
feat(pricing): 增加券码重复使用功能并优化相关数据结构
- 在 PriceVoucherUsageRecord 和 VoucherUsageRecordResp 中添加 usageSequence 字段,用于记录券码的使用序号- 更新 PriceVoucherCode 实体和相关 mapper,增加 currentUseCount 和 lastUsedTime 字段
- 修改 VoucherCodeServiceImpl 和 VoucherServiceImpl 中的券码使用逻辑,支持重复使用
- 新增VoucherBatchOverviewResp、VoucherDetailResp、VoucherUsageSummaryResp 和 VoucherValidationResp 等新的响应 DTO 类,用于提供券码批次概览、详情、使用统计和验证等功能
|
2025-09-16 20:54:37 +08:00 |
|
|
|
8380b02fbb
|
feat(pricing): 增加券码重复使用功能并优化相关接口
- 在 VoucherCodeResp 和 VoucherInfo 中添加可重复使用券码相关字段
- 新增 getVoucherDetail、getVoucherUsageSummary 和 getBatchOverview接口
- 优化 calculateVoucherDiscount 接口,支持重复使用券码的计算
- 在 PriceVoucherUsageRecordMapper 中添加按券码ID和用户ID查询使用记录的方法
|
2025-09-16 19:46:56 +08:00 |
|
|
|
90a21c0933
|
fix(pricing): 完善券码验证逻辑并优化使用权限判断
- 新增用户在指定批次下的使用次数统计和最后使用时间获取功能
- 重构券码验证逻辑,支持未领取券码的使用权限判断
- 优化已领取券码的使用限制检查,包括使用次数和间隔时间- 改进日志记录,增加剩余使用次数信息
-修复一些潜在的逻辑问题和边界情况处理
|
2025-09-16 17:55:24 +08:00 |
|
|
|
57266eb535
|
refactor(order): 重构订单创建和价格计算逻辑
- 修改订单服务中的券码使用逻辑,增加人脸 ID 参数
- 优化价格计算控制器和服务中的预览模式
- 更新券码使用记录,支持人脸 ID 记录
- 修复零金额订单的处理逻辑
- 优化日志输出级别和内容
|
2025-09-16 17:54:31 +08:00 |
|
|
|
ce3f7aae1e
|
feat(voucher): 支持券码重复使用
- 新增VoucherBatchCreateReqV2 请求对象,用于创建支持重复使用的券码批次
- 添加 VoucherUsageController 控制器,实现券码使用记录和统计功能
- 在VoucherInfo 对象中增加与重复使用相关的字段
- 修改 PriceVoucherBatchConfig 和 PriceVoucherCode 实体,支持重复使用相关属性
- 更新 VoucherBatchServiceImpl 和 VoucherServiceImpl,增加处理重复使用逻辑的方法
|
2025-09-16 01:08:54 +08:00 |
|
|
|
6fb3cb93a9
|
feat(pricing): 增加商品参数校验和默认值设置
ZhenTu-BE/pipeline/head This commit looks good
- 为每个产品增加产品类型和产品 ID 的非空校验
- 为购买数量和数量设置默认值为 1,如果未提供
|
2025-09-08 14:03:15 +08:00 |
|
|
|
13bd60f24b
|
feat(pricing): 新增景区一口价配置查询功能
- 在 IOnePricePurchaseService 接口中添加 getActiveConfigByScenic 方法- 在 OnePricePurchaseServiceImpl 类中实现该方法
- 方法用于查询指定景区的启用的一口价配置,通常每个景区只有一个生效配置
|
2025-09-05 15:27:28 +08:00 |
|
|
|
50c84ac1c9
|
feat(pricing): 添加一口价购买功能
- 新增 OnePricePurchaseController 控制器
- 新增 OnePriceConfigFilterRequest、OnePriceConfigRequest、OnePriceInfo等 DTO 类
- 新增 PriceOnePriceConfig 实体类和对应的 Mapper 接口
- 实现 OnePricePurchaseDiscountProvider 优惠提供者
- 实现 OnePricePurchaseServiceImpl 服务实现类
-定义 IOnePricePurchaseService服务接口
- 优化 DiscountDetail 类,添加创建一口价折扣的方法
- 修改 CLAUDE.md,将 error 方法改为 fail 方法
|
2025-09-05 11:09:54 +08:00 |
|
|
|
5210b50adb
|
feat(pricing): 增加商品和打包配置的优惠券及券码使用限制
- 在 PriceBundleConfig 和 PriceProductConfig 中添加是否可使用优惠券和券码的字段
- 修改 CouponDiscountProvider 和 VoucherDiscountProvider,增加对商品和打包配置的检查
- 更新 PriceCalculationServiceImpl 中的优惠计算逻辑,将一口价改为打包购买
- 调整 DiscountDetail 中的描述和排序顺序,以适应新的优惠方式
|
2025-09-05 11:09:28 +08:00 |
|
|
|
8ad999f779
|
Merge branch 'device-microservice'
ZhenTu-BE/pipeline/head This commit looks good
# Conflicts:
# src/main/java/com/ycwl/basic/integration/scenic/service/ScenicConfigIntegrationService.java
# src/main/java/com/ycwl/basic/integration/scenic/service/ScenicIntegrationService.java
|
2025-09-04 12:28:32 +08:00 |
|
|
|
7d2666128a
|
refactor(pricing): 优化代金券可用性判断逻辑
ZhenTu-BE/pipeline/head This commit looks good
- 移除了对 canClaimVoucher 方法的调用,暂时注释掉以简化逻辑
- 此修改可能会影响代金券领取功能
|
2025-09-03 14:35:10 +08:00 |
|
|
|
829ab50b03
|
feat(voucher): 优化优惠券打印逻辑
- 添加景区配置管理器验证逻辑,确保只有指定的代理可以打印优惠券
-优化代码结构,提高可读性和可维护性
|
2025-09-03 14:34:42 +08:00 |
|
|
|
aa717d0c2a
|
feat(pricing): 后端新增分页查询接口
- 新增了三个分页查询接口:商品配置、阶梯配置和一口价配置
- 实现了对应的筛选条件和排序功能
- 添加了新的请求DTO类:PricingFilterRequest、TierConfigFilterRequest和BundleConfigFilterRequest
- 修改了服务接口和实现类,增加了分页查询相关的方法
|
2025-09-02 19:23:22 +08:00 |
|
|
|
8e770a5b97
|
refactor(integration): 重构配置管理功能
- 新增通用 ConfigManager 类,实现配置管理的通用功能
- 新增 DeviceConfigManager 和 ScenicConfigManager 类,分别实现设备和景区的配置管理- 更新相关控制器和服务,使用新的配置管理器类
-调整设备和景区的配置数据结构,以适应新的管理方式
|
2025-09-02 15:30:54 +08:00 |
|
|
|
cdd434317f
|
feat(pricing): 集成定价服务并优化价格查询逻辑- 在 OrderBiz 中添加 IPriceCalculationService 依赖,用于计算价格
ZhenTu-BE/pipeline/head This commit looks good
- 重构 queryPrice 方法,使用定价服务计算价格而不是直接从数据库读取
- 移除 PriceObj 中未使用的 scenicAllPrice 字段
- 删除 ScenicEntity 和 ScenicAddOrUpdateReq 中的冗余价格字段
-优化 ProductConfigServiceImpl 中的 getTierConfig 方法,增加参数校验
|
2025-09-01 09:21:26 +08:00 |
|
|
|
ada7158a48
|
refactor(basic): 重构景区配置管理逻辑
- 移除 AppOrderV2Controller 中的价格缓存逻辑
- 修正 VoucherServiceImpl 中的购买数量计算方式- 重构 ScenicRepository 中的景区配置获取逻辑
-增加 ScenicConfigManager 的扁平化配置和驼峰转换功能
|
2025-08-30 16:21:40 +08:00 |
|
|
|
047feec045
|
refactor(pricing): 重构适用商品类型处理逻辑
- 移除 ProductTypeListTypeHandler,直接在实体类中处理 JSON转换
- 为 PriceVoucherBatchConfig 添加 ObjectMapper 静态实例和日志记录
- 实现 JSON 字符串与 ProductType 列表之间的转换方法- 更新数据库映射,将 applicableProducts 映射为 JSON 字符串
- 优化 VoucherServiceImpl 中的产品适用性检查逻辑
|
2025-08-30 15:55:26 +08:00 |
|
|
|
966568156c
|
feat(voucher): 增加券码适用商品类型功能
- 在 VoucherBatchCreateReq、VoucherBatchResp 和 VoucherInfo 中添加适用商品类型列表字段
- 在 PriceVoucherBatchConfig 中添加适用商品类型列表字段,并使用 ProductTypeListTypeHandler 进行 JSON 序列化和反序列化
- 实现 ProductTypeListTypeHandler 以处理商品类型列表的 JSON 序列化和反序列化
- 更新 VoucherBatchServiceImpl 和 VoucherServiceImpl 以支持适用商品类型的筛选和计算
|
2025-08-30 15:31:35 +08:00 |
|
|
|
607c5bc057
|
refactor(print): 优化门票打印逻辑
- 移除了 AppClaimController 中的重复代码
- 在 VoucherPrintServiceImpl 中增加了打印配置的判断和警告日志
- 保留了 FeiETicketPrinter 的调用逻辑,增加了配置判断
|
2025-08-30 13:18:26 +08:00 |
|
|
|
fc8818a595
|
feat(voucher): 电子凭证打印增加预约功能
- 在 AppClaimController 中添加了对 morphId 的非空判断,只有在 morphId 存在时才进行打印操作
- 在 VoucherPrintServiceImpl 中增加了景点配置的检查,包括预约功能是否启用和指定的经纪人 ID
|
2025-08-30 12:59:03 +08:00 |
|
|
|
b1deabc7c1
|
feat(pricing): 新增打印小票和查询券码批次配置功能
- 新增 AppClaimController 控制器处理移动设备端的领券请求
- 实现 ClaimReq 和 ClaimResp 模型类用于领券请求和响应
- 在 VoucherPrintService 接口中新增打印小票方法
- 在VoucherPrintServiceImpl 中实现打印小票和查询券码批次配置的逻辑
- 更新 PriceVoucherBatchConfigMapper 接口和 XML 文件,添加查询券码批次配置的方法
|
2025-08-30 12:52:08 +08:00 |
|
|
|
1ac375e491
|
refactor(pricing): 移除商品阶梯定价中的 default 配置逻辑
- 删除了尝试使用 default 配置的代码块
- 保留了缓存注释(已注释)
- 优化了日志输出,当找不到配置时直接记录警告日志
|
2025-08-30 11:31:26 +08:00 |
|
|
|
792deb5c4d
|
feat(order): 添加重复购买检测功能
- 新增 DuplicatePurchaseException 类用于处理重复购买异常
- 在 OrderServiceImpl 中实现重复购买检查逻辑
- 更新 CustomExceptionHandle 以处理新的重复购买异常
-优化订单创建流程,在生成订单号前增加重复购买检查
|
2025-08-30 10:52:26 +08:00 |
|
|
|
98ae9f2930
|
refactor(order): 重构订单相关代码并优化商品哈希计算逻辑
- 修改 DiscountType 枚举,将 FLASH_SALE 改为 LIMITED_TIME
- 优化 OrderServiceImpl 中的商品信息设置逻辑,增加空值判断
- 更新 IDiscountProvider 接口和 FlashSaleDiscountProvider 类中的提供者类型标识- 优化 ScenicServiceImpl 中的字符串判空逻辑,使用 Strings.isNotBlank 方法
- 重构 PriceCacheService 中的商品列表哈希值计算逻辑,仅基于必传字段生成哈希
|
2025-08-29 16:54:46 +08:00 |
|
|
|
3fbfb7df54
|
feat(coupon): 添加优惠券领取功能
- 新增 CouponClaimRequest 和 CouponClaimResult 类用于处理优惠券领取请求和结果
- 在 ICouponService 接口中添加 claimCoupon 方法
- 在 CouponServiceImpl 中实现 claimCoupon 方法,包括参数验证、优惠券查询、库存检查、记录创建等步骤
- 优化日志记录和异常处理
|
2025-08-29 13:49:30 +08:00 |
|
|
|
f451b835b9
|
feat(pricing): 添加快速设置商品价格功能并集成到模板服务
- 在 PricingManagementServiceImpl 中实现 quickSetupProductPrice 方法,用于快速设置商品价格
- 在 IPricingManagementService 接口中添加 quickSetupProductPrice 方法的声明
- 在 TemplateServiceImpl 中调用 quickSetupProductPrice 方法,为模板设置价格
|
2025-08-28 12:09:47 +08:00 |
|
|
|
e694aac928
|
refactor(pricing): 修正凭证打印服务中的 URL 链接参数
- 在生成 URL链接时,添加了 scenicId
|
2025-08-26 10:37:30 +08:00 |
|
|
|
581efa327c
|
fix(basic-pricing): 修复代金券码为空的问题
Gitea/FrameTour-BE/pipeline/head This commit looks good
- 在 VoucherPrintServiceImpl 类中,为 existingRecord 对象添加代金券码
- 将 existingRecord 的 voucherCode 字段值赋给
|
2025-08-26 01:26:11 +08:00 |
|
|
|
3d79777b84
|
refactor(VoucherPrintServiceImpl):优化小票打印内容与格式- 更新小票内容描述,使其更加准确
- 调整小票格式,使布局更合理
- 增加赠品兑换码相关提示
- 优化已存在打印记录的处理逻辑
|
2025-08-25 21:07:57 +08:00 |
|
|
|
2710bfce2c
|
refactor(voucher): 重构凭证相关服务
- 移除VoucherClaimReq 中的 brokerId 字段
- 更新 VoucherCodeServiceImpl 中的逻辑,移除与推客相关的验证
- 在 VoucherPrintServiceImpl 中添加打印小票功能的实现
- 新增与微信小程序相关的配置和功能
|
2025-08-25 17:21:16 +08:00 |
|
|
|
6b20e700f0
|
feat(voucher): 增加查询已打印凭证和自动领券功能
- 新增 queryPrintedVoucher 方法查询已打印的凭证
- 新增 claimVoucher 方法实现自动领取凭证
- 优化 printVoucherTicket 方法,移除冗余参数
- 更新相关 mapper 和 XML 文件以支持新功能
|
2025-08-25 09:36:40 +08:00 |
|