package com.mindskip.xzs.service; import com.mindskip.xzs.domain.Classes; import com.mindskip.xzs.domain.ClassesUser; import com.mindskip.xzs.domain.User; import com.mindskip.xzs.domain.classes.ClassesUserInfo; import com.mindskip.xzs.domain.other.KeyValue; import com.mindskip.xzs.service.enums.ResultEnum; import com.mindskip.xzs.viewmodel.teacher.classes.ClassesPageRequestVM; import com.mindskip.xzs.viewmodel.teacher.classes.ClassesUserPageRequestVM; import com.github.pagehelper.PageInfo; import java.util.List; /** * @version 2.2.0 * @description: 班级 * Copyright (C), 2020-2021, 武汉思维跳跃科技有限公司 * @date 2021 /9/7 9:45 */ public interface ClassesService { /** * 根据id获取班级 * * @param id the id * @return the classes */ Classes selectById(Integer id); /** * 插入班级 * * @param record the record * @return the int */ int insertByFilter(Classes record); /** * 更新班级 * * @param record the record * @return the int */ int updateByIdFilter(Classes record); /** * 班级分页 * * @param requestVM the request vm * @return the page info */ PageInfo page(ClassesPageRequestVM requestVM); /** * 根据班级口令获取班级 * * @param uid the uid * @return the classes */ Classes selectClassesByUid(String uid); /** * 加入班级 * * @param user the user * @param classes the classes * @return the result enum */ ResultEnum joinClasses(User user, Classes classes); /** * 获取用户创建的班级 * * @param createId the create id * @return the classes by create */ List getClassesByCreate(Integer createId); /** * 获取用户创建的班级id * * @param createId the create id * @return the classes id by create */ List getClassesIdByCreate(Integer createId); /** * 根据用户id、名称,获取班级 * * @param userId the user id * @param name the name * @return the classes */ Classes getClasses(Integer userId, String name); /** * 用户班级分页 * * @param requestVM the request vm * @return the page info */ PageInfo classesUserPageList(ClassesUserPageRequestVM requestVM); /** * 获取加入的班级 * * @param uid the uid * @return the join classes */ List getJoinClasses(Integer uid); /** * 获取班级数量 * * @param classIds the class ids * @return the class count */ List getClassCount(List classIds); /** * 移除班级成员 * * @param id the id */ void removeOutUser(Integer id); }