Commit Graph

57 Commits

Author SHA1 Message Date
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
5212547b3a docs 2025-09-17 17:18:48 +08:00
f3fdb44742 refactor(mybatis): 移除 XML 配置,使用注解替代
- 在 PriceVoucherBatchConfigMapper、PriceVoucherCodeMapper 和 VoucherPrintRecordMapper 中添加了 @Select 和 @Update 注解
- 删除了对应的 XML 配置文件
- 优化了 SQL 查询,直接在 Java 接口中定义
2025-09-17 17:03:12 +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
7cfcc44531 refactor(pricing): 重构券码使用记录相关接口和映射
- 移除了 VoucherUsageController 中的 Swagger 注解
- 更新了 PriceVoucherUsageRecordMapper 中的 SQL 查询
- 新增了 PriceVoucherUsageRecordMapper.xml 文件,用于定义分页查询
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): 增加商品参数校验和默认值设置
All checks were successful
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
1b1e5f1690 refactor(pricing): 将 PriceOnePriceConfig 中的 LocalDateTime 类型替换为 Date 类型
-将 createTime、updateTime 和 deletedAt 字段的类型从 LocalDateTime 改为 Date
- 此修改统一了时间类型的使用,提高了代码的一致性和可维护性
2025-09-05 15:27:06 +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'
All checks were successful
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): 优化代金券可用性判断逻辑
All checks were successful
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 依赖,用于计算价格
All checks were successful
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
4dac46bb46 refactor(order): 调整优惠排序逻辑
- 将券码优惠的排序顺序从 1 调整为 2,使其显示顺序低于限时立减- 将限时立减优惠的排序顺序从 2 调整为 1,使其显示在最前面
2025-08-29 14:50:49 +08:00
3fbfb7df54 feat(coupon): 添加优惠券领取功能
- 新增 CouponClaimRequest 和 CouponClaimResult 类用于处理优惠券领取请求和结果
- 在 ICouponService 接口中添加 claimCoupon 方法
- 在 CouponServiceImpl 中实现 claimCoupon 方法,包括参数验证、优惠券查询、库存检查、记录创建等步骤
- 优化日志记录和异常处理
2025-08-29 13:49:30 +08:00
5c2629237e feat(mobile): 新增移动端订单V2接口
- 添加 AppOrderV2Controller 控制器,实现移动端价格计算和下单功能
- 新增 MobilePriceCalculationRequest DTO 类,用于移动端价格计算请求- 集成 Redis 缓存机制,提升价格查询性能- 实现人脸权限验证和价格缓存验证逻辑
- 优化日志记录和异常处理
2025-08-28 18:13:59 +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): 修复代金券码为空的问题
All checks were successful
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
ea9945b9e0 fix(pricing): 优化优惠券打印流水号生成逻辑
-引入 AtomicLong 作为原子计数器,确保流水号的唯一性
- 修改生成流水号的方法,使用毫秒级时间戳和原子计数器组合
- 新方案解决了原方法在高并发情况下可能出现的重复流水号问题
- 优化了 FaceEntity 查询逻辑,确保 faceId 属于当前用户
2025-08-24 15:43:14 +08:00
0204b3bc23 feat(pricing): 实现优惠券打印功能
- 新增 AppVoucherController 控制器处理打印请求
- 实现 VoucherPrintService 接口和 VoucherPrintServiceImpl 实现类
- 添加 VoucherPrintReq 请求对象和 VoucherPrintResp 响应对象
- 创建 VoucherPrintRecord 实体和对应的 Mapper
- 更新 PriceVoucherCodeMapper 接口,添加随机获取未打印券码的方法
- 实现分布式锁机制防止重复打印- 生成流水号并记录打印状态
2025-08-24 01:16:16 +08:00
dc8d9448e6 feat(voucher): 添加获取用户券码详情列表功能
- 新增 getVoucherDetails 方法,用于获取指定用户在指定景区的券码详情列表
- 方法会根据券码状态设置可用性状态和不可用原因
- 优化了券码信息的构建过程,提高了代码复用性
2025-08-22 17:59:15 +08:00
2c0b7a094d refactor(mapper): 统一时间字段命名
- 将 created_time 修改为 create_time
-将 updated_time 修改为 update_time
- 调整相关 SQL 查询和插入语句中的字段名称
2025-08-21 18:08:41 +08:00
3d49c47006 refactor(entity): 重构实体类并优化券码生成逻辑
- 移除 BaseEntity 类,将通用字段直接集成到各实体类中
- 更新实体类字段名称,如 createdTime 改为 createTime- 在 PriceVoucherCode 实体中添加生成安全券码的逻辑
- 更新相关服务类中的方法调用,以适应新的字段名称
2025-08-21 14:37:55 +08:00
b4b542046f refactor(pricing): 重构优惠券管理相关代码
- 替换 Lombok 的 @RequiredArgsConstructor 注解为 Spring 的 @Autowired 和 @Lazy 注解
- 更新 VoucherManagementController、VoucherBatchServiceImpl 和 VoucherCodeServiceImpl 类的依赖注入方式
- 优化代码结构,提高可读性和可维护性
2025-08-21 10:44:08 +08:00