You've already forked FrameTour-BE
-将 MyBatis-Plus 的分页插件替换为 PageHelper - 更新了相关控制器、服务接口和实现类中的分页查询方法 - 优化了分页查询的逻辑,提高了代码的可读性和维护性
67 lines
1.8 KiB
Java
67 lines
1.8 KiB
Java
package com.ycwl.basic.pricing.service;
|
|
|
|
import com.github.pagehelper.PageInfo;
|
|
import com.ycwl.basic.pricing.dto.req.VoucherUsageHistoryReq;
|
|
import com.ycwl.basic.pricing.dto.resp.VoucherUsageRecordResp;
|
|
import com.ycwl.basic.pricing.dto.resp.VoucherUsageStatsResp;
|
|
|
|
import java.util.List;
|
|
|
|
/**
|
|
* 券码使用记录服务接口
|
|
*/
|
|
public interface IVoucherUsageService {
|
|
|
|
/**
|
|
* 分页查询券码使用记录
|
|
*
|
|
* @param req 查询请求
|
|
* @return 分页结果
|
|
*/
|
|
PageInfo<VoucherUsageRecordResp> getUsageHistory(VoucherUsageHistoryReq req);
|
|
|
|
/**
|
|
* 获取指定券码的使用记录
|
|
*
|
|
* @param voucherCode 券码
|
|
* @return 使用记录列表
|
|
*/
|
|
List<VoucherUsageRecordResp> getUsageRecordsByCode(String voucherCode);
|
|
|
|
/**
|
|
* 获取用户在指定景区的券码使用记录
|
|
*
|
|
* @param faceId 用户faceId
|
|
* @param scenicId 景区ID
|
|
* @return 使用记录列表
|
|
*/
|
|
List<VoucherUsageRecordResp> getUserUsageRecords(Long faceId, Long scenicId);
|
|
|
|
/**
|
|
* 获取券码使用统计信息
|
|
*
|
|
* @param voucherCode 券码
|
|
* @return 统计信息
|
|
*/
|
|
VoucherUsageStatsResp getUsageStats(String voucherCode);
|
|
|
|
/**
|
|
* 获取批次券码使用统计信息
|
|
*
|
|
* @param batchId 批次ID
|
|
* @return 统计信息列表
|
|
*/
|
|
List<VoucherUsageStatsResp> getBatchUsageStats(Long batchId);
|
|
|
|
/**
|
|
* 记录券码使用(内部方法,由VoucherService调用)
|
|
*
|
|
* @param voucherCode 券码
|
|
* @param faceId 用户faceId
|
|
* @param orderId 订单ID
|
|
* @param discountAmount 优惠金额
|
|
* @param remark 备注
|
|
*/
|
|
void recordVoucherUsage(String voucherCode, Long faceId, String orderId,
|
|
java.math.BigDecimal discountAmount, String remark);
|
|
} |