package com.kxs.system.biz.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.kxs.system.api.model.KxsCampUser;
import com.kxs.system.api.vo.admin.camp.SysCampUserPageVO;
import com.kxs.system.api.vo.kxsapp.camp.CampUserPageVO;

import java.util.List;

/**
 * 训练营参与创客(KxsCampUser)表服务接口
 *
 * @author 系统
 * @since 2024-04-08 15:44:02
 */
public interface KxsCampUserService extends IService<KxsCampUser> {

    /**
     * 参与创客列表
     *
     * @param page   页
     * @param campId 营地ID
     * @return {@link IPage}<{@link CampUserPageVO}>
     */
    IPage<CampUserPageVO> getByPage(Page<CampUserPageVO> page, Integer campId);

    /**
     * 获取当前创客参与的训练营信息
     *
     * @return {@link Object}
     */
    Object getByCampInfo();


    /**
     * 后台分页
     *
     * @param page  页
     * @param param 参数
     * @return {@link IPage}<{@link SysCampUserPageVO}>
     */
    IPage<SysCampUserPageVO> getSysByPage(Page<SysCampUserPageVO> page, KxsCampUser param);

    /**
     * 导出组用户
     *
     * @param param 参数
     * @return {@link List}<{@link SysCampUserPageVO}>
     */
    List<SysCampUserPageVO> exportGroupUser(KxsCampUser param);

}

