using Infrastructure.Attribute; using System; using System.Collections.Generic; using System.Text; using ARW.Model; using ARW.Model.System.Dto; using ARW.Model.System; using ARW.Repository.System; using ARW.Service.System.IService; namespace ARW.Service.System { /// /// 用户角色 /// [AppService(ServiceType = typeof(ISysUserRoleService), ServiceLifetime = LifeTime.Transient)] public class SysUserRoleService : ISysUserRoleService { public SysUserRoleRepository SysUserRoleRepository; public SysUserRoleService(SysUserRoleRepository sysUserRoleRepository) { SysUserRoleRepository = sysUserRoleRepository; } /// /// 通过角色ID查询角色使用数量 /// /// /// public int CountUserRoleByRoleId(long roleId) { return SysUserRoleRepository.CountUserRoleByRoleId(roleId); } /// /// 删除用户角色 /// /// /// public int DeleteUserRoleByUserId(int userId) { return SysUserRoleRepository.DeleteUserRoleByUserId(userId); } /// /// 批量删除角色对应用户 /// /// /// /// public int DeleteRoleUserByUserIds(long roleId, List userIds) { return SysUserRoleRepository.DeleteRoleUserByUserIds(roleId, userIds); } /// /// 添加用户角色 /// /// /// public int AddUserRole(List sysUsers) { return SysUserRoleRepository.AddUserRole(sysUsers); } /// /// 获取用户数据根据角色id /// /// /// public List GetSysUsersByRoleId(long roleId) { return SysUserRoleRepository.GetSysUsersByRoleId(roleId); } /// /// 获取用户数据根据角色id /// /// /// public PagedInfo GetSysUsersByRoleId(RoleUserQueryDto roleUserQueryDto) { return SysUserRoleRepository.GetSysUsersByRoleId(roleUserQueryDto); } /// /// 获取尚未指派的用户数据根据角色id /// /// /// public PagedInfo GetExcludedSysUsersByRoleId(RoleUserQueryDto roleUserQueryDto) { return SysUserRoleRepository.GetExcludedSysUsersByRoleId(roleUserQueryDto); } /// /// 新增用户角色信息 /// /// /// public int InsertUserRole(SysUser user) { List userRoles = new List(); foreach (var item in user.RoleIds) { userRoles.Add(new SysUserRole() { RoleId = item, UserId = user.UserId }); } return userRoles.Count > 0 ? AddUserRole(userRoles) : 0; } /// /// 新增加角色用户 /// /// 角色id /// 用户ids /// public int InsertRoleUser(RoleUsersCreateDto roleUsersCreateDto) { List userRoles = new List(); foreach (var item in roleUsersCreateDto.UserIds) { userRoles.Add(new SysUserRole() { RoleId = roleUsersCreateDto.RoleId, UserId = item }); } return userRoles.Count > 0 ? AddUserRole(userRoles) : 0; } } }