package com.mmc.iuav.user.dao.userpoints;

import com.mmc.iuav.user.entity.userpoints.UserPointChangeTypeDO;
import com.mmc.iuav.user.entity.userpoints.UserPointsDetails;
import com.mmc.iuav.user.model.qo.userpoints.AppPointsDetailsQO;
import com.mmc.iuav.user.model.qo.userpoints.UserPointsDetailsQO;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * @Author small
 * @Date 2023/8/5 13:21
 * @Version 1.0
 */
@Mapper
public interface UserPointsDetailsDao {
    void insertPointsDetails(UserPointsDetails userPointsDetails);

    List<UserPointsDetails> detailPoint(UserPointsDetailsQO param);

    int detailPointCount(UserPointsDetailsQO param);

    List<UserPointsDetails> appDetailPoint(AppPointsDetailsQO param);

    int appDetailPointCount(AppPointsDetailsQO param);

    /**
     * 查找积分变动类型表 user_points_change_type
     * @param id 积分变动表id
     * @return {@link UserPointChangeTypeDO}
     */
    UserPointChangeTypeDO selectChangePoint(Integer id);
}
