package org.dromara.main.service;

import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.main.domain.bo.MainStudentBo;
import org.dromara.main.domain.vo.MainStudentVo;
import org.dromara.main.domain.vo.MiniappLoginVo;


import java.util.Collection;
import java.util.List;

public interface IMainStudentService {
    /**
     * 查询学员详情
     */
    MainStudentVo queryById(Long id);

    /**
     * 分页查询学员列表
     */
    TableDataInfo<MainStudentVo> queryPageList(MainStudentBo bo, PageQuery pageQuery);

    /**
     * 查询学员列表
     */
    List<MainStudentVo> queryList(MainStudentBo bo);

    /**
     * 新增学员
     */
    Boolean insertByBo(MainStudentBo bo);

    /**
     * 修改学员
     */
    Boolean updateByBo(MainStudentBo bo);

    /**
     * 校验并批量删除学员信息
     */
    Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);

    Boolean updateStatus(Long id,String status);

    Boolean updateUserType(Long id,String userType);

    MiniappLoginVo miniAppLogin(String code, String phoneCode);
}
