package com.zsElectric.boot.business.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.zsElectric.boot.business.model.entity.UserAccount; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.zsElectric.boot.business.model.query.UserAccountQuery; import com.zsElectric.boot.business.model.vo.UserAccountVO; import com.zsElectric.boot.business.model.vo.RefundCompensationVO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.time.LocalDateTime; import java.util.List; /** * 个人账户Mapper接口 * * @author zsElectric * @since 2025-12-12 10:20 */ @Mapper public interface UserAccountMapper extends BaseMapper { /** * 获取个人账户分页数据 * * @param page 分页对象 * @param queryParams 查询参数 * @return {@link Page} 个人账户分页列表 */ Page getUserAccountPage(Page page, UserAccountQuery queryParams); /** * 查询负余额退款异常用户列表 * 用于查询退款时余额为负值的用户,这些用户退款后余额被异常置为0 * * @param startTime 开始时间 * @return 异常用户列表 */ List listNegativeBalanceRefundUsers(@Param("startTime") LocalDateTime startTime); /** * 执行补偿操作-批量更新用户余额 * * @param startTime 开始时间 * @return 受影响的行数 */ int executeCompensation(@Param("startTime") LocalDateTime startTime); }