using Infrastructure.Attribute;
using SqlSugar;
using System.Collections.Generic;
using ZR.Model.System;
namespace ZR.Repository.System
{
[AppService(ServiceLifetime = LifeTime.Transient)]
public class SysUserRoleRepository : BaseRepository
{
///
/// 删除用户角色
///
///
///
public int DeleteUserRoleByUserId(int userId)
{
return Db.Deleteable().Where(it => it.UserId == userId).ExecuteCommand();
}
///
/// 批量删除角色对应用户
///
/// 角色id
/// 用户id集合
///
public int DeleteRoleUserByUserIds(long roleId, List userIds)
{
return Db.Deleteable().Where(it => it.RoleId == roleId && userIds.Contains(it.UserId))
.ExecuteCommand();
}
///
/// 添加用户角色
///
///
///
public int AddUserRole(List sysUsers)
{
return Db.Insertable(sysUsers).ExecuteCommand();
}
///
/// 删除角色关联的用户
///
///
///
public int DeleteUserRoleByRoleId(int roleId)
{
return Db.Deleteable().In(roleId).ExecuteCommand();
}
///
/// 获取角色分配个数
///
///
///
public int CountUserRoleByRoleId(long roleId)
{
return Db.Queryable().Where(it => it.RoleId == roleId).Count();
}
///
/// 获取用户数据根据角色id
///
///
///
public List GetSysUsersByRoleId(long roleId)
{
return Db.Queryable((t1, user) => new JoinQueryInfos(
JoinType.Left, t1.UserId == user.UserId))
.Where((t1, user) => t1.RoleId == roleId && user.DelFlag == "0")
.Select((t1, user) => user)
.ToList();
}
}
}