package org.jeecg.modules.system.mapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Constants; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Param; import org.jeecg.modules.system.entity.SysUser; import org.jeecg.modules.system.model.SysUserSysDepartModel; import org.jeecg.modules.system.vo.MdcUserProVo; import org.jeecg.modules.system.vo.SysUserDepVo; import java.util.List; /** *

* 用户表 Mapper 接口 *

* * @Author scott * @since 2018-12-20 */ public interface SysUserMapper extends BaseMapper { /** * 通过用户账号查询用户信息 * @param username * @return */ public SysUser getUserByName(@Param("username") String username); /** * 根据部门Id查询用户信息 * @param page * @param departId * @param username 用户登录账户 * @return */ IPage getUserByDepId(Page page, @Param("departId") String departId, @Param("username") String username); /** * 根据用户Ids,查询用户所属部门名称信息 * @param userIds * @return */ List getDepNamesByUserIds(@Param("userIds")List userIds); /** * 根据部门Ids,查询部门下用户信息 * @param page * @param departIds * @param username 用户登录账户 * @return */ IPage getUserByDepIds(Page page, @Param("departIds") List departIds, @Param("username") String username); /** * 根据角色Id查询用户信息 * @param page * @param roleId 角色id * @param username 用户登录账户 * @return */ IPage getUserByRoleId(Page page, @Param("roleId") String roleId, @Param("username") String username); /** * 根据用户名设置部门ID * @param username * @param orgCode */ void updateUserDepart(@Param("username") String username,@Param("orgCode") String orgCode); /** * 根据手机号查询用户信息 * @param phone * @return */ public SysUser getUserByPhone(@Param("phone") String phone); /** 根据工号查询用户信息 */ SysUser getUserByWorkNo(@Param("workNo") String workNo); /** * 根据邮箱查询用户信息 * @param email * @return */ public SysUser getUserByEmail(@Param("email")String email); /** * 根据 orgCode 查询用户,包括子部门下的用户 * * @param page 分页对象, xml中可以从里面进行取值,传递参数 Page 即自动分页,必须放在第一位(你可以继承Page实现自己的分页对象) * @param orgCode * @param userParams 用户查询条件,可为空 * @return */ List getUserByOrgCode(IPage page, @Param("orgCode") String orgCode, @Param("userParams") SysUser userParams); /** * 查询 getUserByOrgCode 的Total * * @param orgCode * @param userParams 用户查询条件,可为空 * @return */ Integer getUserByOrgCodeTotal(@Param("orgCode") String orgCode, @Param("userParams") SysUser userParams); /** * 批量删除角色与用户关系 * @Author scott * @Date 2019/12/13 16:10 * @param roleIdArray */ void deleteBathRoleUserRelation(@Param("roleIdArray") String[] roleIdArray); /** * 批量删除角色与权限关系 * @Author scott * @Date 2019/12/13 16:10 * @param roleIdArray */ void deleteBathRolePermissionRelation(@Param("roleIdArray") String[] roleIdArray); /** * 查询被逻辑删除的用户 * @param wrapper * @return List */ List selectLogicDeleted(@Param(Constants.WRAPPER) Wrapper wrapper); /** * 还原被逻辑删除的用户 * @param userIds 用户id * @param entity * @return int */ int revertLogicDeleted(@Param("userIds") List userIds, @Param("entity") SysUser entity); /** * 彻底删除被逻辑删除的用户 * @param userIds 多个用户id * @return int */ int deleteLogicDeleted(@Param("userIds") List userIds); /** * 更新空字符串为null【此写法有sql注入风险,禁止随便用】 * @param fieldName * @return int */ @Deprecated int updateNullByEmptyString(@Param("fieldName") String fieldName); /** * 根据部门Ids,查询部门下用户信息 * @param departIds * @param username 用户账户名称 * @return */ List queryByDepIds(@Param("departIds")List departIds,@Param("username") String username); /** * 根据用户Ids,查询用户所属产线名称信息 */ List getProNamesByUserIds(@Param("userIds") List userIds); /** * 根据角色Id查询该角色下的所有用户信息 * * @param * @return */ List getAllUsersByRoleId(@Param("roleId") String roleId); /** * 根据角色编码查询用户id集合 */ List getUserByRoleCode(@Param("roleCode") String roleCode); /** * 根据角色编码和设备编号查询用户 */ List getEquipmentAdmin(@Param("roleCode") String roleCode, @Param("equipmentId") String equipmentId); }