package com.xhkjedu.sapi.mapper.system;

import com.xhkjedu.base.TkMapper;
import com.xhkjedu.sapi.model.system.TUser;
import com.xhkjedu.vo.system.UserVo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
 * @ClassName UserMapper
 * Description
 * Author WN
 * Date 2020/5/29 17:00
 **/
@Repository
public interface UserMapper extends TkMapper<TUser> {

    //根据班级id用户名获取学生id和数量
    Map getUserIdByName(Integer schoolid, Integer classid, String username);

    //根据班级科目id用户名获取教师id和数量
    Map getUserIdByName2(Integer schoolid, Integer classid, String username);


    //根据用户id获取用户类型
    Integer getUsertypeById(Integer userid);

    //获取学校管理员
    UserVo getSchoolAdminBySchoolid(@Param("schoolid")Integer schoolid);

    //批量修改学生状态
    int batchUpdateState(@Param("users")List<Integer> users, @Param("userstate")Integer userstate);

    //根据用户id获取学校id
    Integer getSchoolIdByUserId(Integer userid);

    //删除学生绑定信息
    void delBindmac(@Param("schoolid") Integer schoolid);

    //获取用户信息
    TUser getUserTypeAndSchool(@Param("userid") Integer userid);

    //获取用户信息用于操作日志
    UserVo getUserInfoForHandleLog(@Param("userid") Integer userid);

    //获取用户信息以及学段
    UserVo getUserAndSchoolInfo(@Param("userid") Integer userid);

    //获取用户类型以及科目
    UserVo getUserTypeAndSubjectid(@Param("userid") Integer userid);
}
