package vip.xiaonuo.disk.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import vip.xiaonuo.disk.domain.CapacityAuditInfo;
import vip.xiaonuo.disk.vo.storage.CapacityAuditInfoVo;

/**
 * 容量审核信息表 mapper
 *
 * @author jinjilong
 */
public interface CapacityAuditInfoMapper extends BaseMapper<CapacityAuditInfo> {

    /**
     * 获取容量审核信息列表
     *
     * @param page 分页对象
     * @param auditState 审核状态
     * @param usernameOrNickname 用户名或昵称
     * @return 容量审核信息列表
     */
    Page<CapacityAuditInfoVo> getCapacityAuditList(@Param("page") Page<?> page, @Param("auditState") Integer auditState, @Param("usernameOrNickname") String usernameOrNickname);

    /**
     * 查询存储空间大小变更申请详情
     *
     * @param id 申请ID
     * @return 申请详情
     */
    CapacityAuditInfoVo getCapacityAuditById(@Param("id") String id);

    /**
     * 查询用户的申请记录列表
     *
     * @param page 分页对象
     * @param auditState 审核状态
     * @param id 用户ID
     *
     * @return 申请记录列表
     */
    Page<CapacityAuditInfoVo> getUserCapacityAuditList(@Param("page") Page<?> page, @Param("auditState") Integer auditState, @Param("id") String id);

}
