package com.ylx.shopingfundsdetail.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ylx.giftCard.domain.dto.UserShoppingFundsDetailQueryDTO;
import com.ylx.giftCard.domain.vo.UserShoppingFundsDetailItemVO;
import com.ylx.giftCard.domain.vo.UserShoppingFundsSummaryVO;
import com.ylx.shopingfundsdetail.domain.ShoppingFundsDetail;
import com.ylx.shopingfundsdetail.domain.dto.ShoppingFundsDetailQueryDto;
import com.ylx.shopingfundsdetail.domain.vo.ShoppingFundsDetailQueryVo;
import org.apache.ibatis.annotations.Param;

/**
 * 类描述：购物金明细数据库操作
 *
 * @author Administrator
 * @version 1.0
 * @date 2026/6/1 10:51
 */
public interface ShoppingFundsDetailMapper extends BaseMapper<ShoppingFundsDetail> {
    Page<ShoppingFundsDetailQueryVo> queryShoppingFundsDetail(@Param("dto")  ShoppingFundsDetailQueryDto shoppingFundsDetailQueryDto, @Param("page") Page<ShoppingFundsDetailQueryVo> page);

    /**
     * 查询PC端用户购物金支出明细
     *
     * @param page 分页参数
     * @param dto 查询条件
     * @return 购物金支出明细
     */
    Page<UserShoppingFundsDetailItemVO> selectPcExpenseShoppingFundsDetail(
            Page<UserShoppingFundsDetailItemVO> page,
            @Param("dto") UserShoppingFundsDetailQueryDTO dto);

    /**
     * 查询PC端用户购物金支出汇总
     *
     * @param dto 查询条件
     * @return UserShoppingFundsSummaryVO 购物金支出汇总
     */
    UserShoppingFundsSummaryVO selectPcExpenseShoppingFundsSummary(@Param("dto") UserShoppingFundsDetailQueryDTO dto);
}
