sxwz2.0/src/main/java/art/kexue/sxwz/mapper/SysUserMapper.java

110 lines
2.4 KiB
Java

package art.kexue.sxwz.mapper;
import art.kexue.sxwz.entity.SysUser;
import art.kexue.sxwz.entity.dto.SysUserDto;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* (SysUser)表数据库访问层
*
* @author 王志维
* @since 2025-02-21 23:01:48
*/
@Mapper
public interface SysUserMapper {
/**
* 查询指定行数据
*
* @param sysUserDto 查询条件
* @return 对象列表
*/
List<SysUser> getPageList(SysUserDto sysUserDto);
/**
* 查询指定行数据(包含扩展信息)
*
* @param sysUserDto 查询条件
* @return 对象列表(包含学生、教师、账户、学校信息)
*/
List<SysUser> getPageListWithExt(SysUserDto sysUserDto);
/**
* 通过ID查询单条数据
*
* @param userId 主键
* @return 实例对象
*/
SysUser queryById(Long userId);
/**
* 查询指定行数据
*
* @param offset 查询起始位置
* @param limit 查询条数
* @return 对象列表
*/
List<SysUser> queryAllByLimit(@Param("offset") int offset, @Param("limit") int limit);
/**
* 通过实体作为筛选条件查询
*
* @param sysUser 实例对象
* @return 对象列表
*/
List<SysUser> queryAll(SysUser sysUser);
/**
* 新增数据
*
* @param sysUser 实例对象
* @return 影响行数
*/
int insert(SysUser sysUser);
/**
* 批量新增数据
*
* @param list 实例对象list
* @return 影响行数
*/
int insertBatch(List<SysUser> list);
/**
* 修改数据
*
* @param sysUser 实例对象
* @return 影响行数
*/
int update(SysUser sysUser);
/**
* 通过主键删除数据
*
* @param userId 主键
* @return 影响行数
*/
int deleteById(Long userId);
SysUser getByUsername(String userName);
SysUser getByTel(String tel);
SysUser getBySessionId(String sessionId);
SysUser getByInviteCode(String inviteCode);
SysUser getByWxid(String wxid);
List<SysUser> getUsersBySchoolIdAndRoleType(@Param("schoolId") Long schoolId, @Param("roleType") Integer roleType);
List<SysUser> getUsersWithExtBySchoolIdAndRoleType(@Param("schoolId") Long schoolId, @Param("roleType") Integer roleType);
}