/// <summary> /// Update a role for a given user. This is usually /// triggered by the checkbox dropdown on the edit /// form. /// </summary> /// <param name="repoId"></param> /// <param name="userId"></param> /// <param name="roleId"></param> /// <param name="isSelected"></param> /// <returns></returns> public async Task <bool> UpdateUserRoleOnRepository(Guid repoId, Guid userId, Guid roleId, bool isSelected = false) { var userRole = await Context.UserRoles.FirstOrDefaultAsync(ur => ur.RepositoryId == repoId && ur.UserId == userId && ur.RoleId == roleId); if (userRole == null) { userRole = new RoleUserRepository() { UserId = userId, RepositoryId = repoId, RoleId = roleId, }; Context.UserRoles.Add(userRole); } else { Context.UserRoles.Remove(userRole); } return(await SaveChangesAsync() > -1); }
public SaleController GetController() { ISaleRepository saleRepository = new SaleRepository(); ISaleRemarkRepository saleRemarkRepository = new SaleRemarkRepository(); IAccountRepository accountRepository = new AccountRepository(); IOrgInfoRepository orgInfoRepository = new OrgInfoRepository(); IRoleUserRepository roleUserRepository = new RoleUserRepository(); ISectionRepository sectionRepository = new SectionRepository(); IStoreRepository storeRepository = new StoreRepository(); IAccountService accountService = new AccountService(accountRepository, orgInfoRepository, roleUserRepository, sectionRepository, storeRepository); ISaleService saleService = new SaleService(saleRepository, saleRemarkRepository, accountService); //IBrandRepository brandRepository = new BrandRepository(); IShippingSaleRepository shippingSaleRepository = new ShippingSaleRepository(); IOrderRepository orderRepository = new OrderRepository(); //IOrderRemarkRepository orderRemarkRepository = new OrderRemarkRepository(); //IOrderItemRepository orderItemRepository = new OrderItemRepository(); //ISaleDetailRepository saleDetailRepository = new SaleDetailRepository(); ISaleRMARepository saleRmaRepository = new SaleRMARepository(); // IOrderService orderService = new OrderService(orderRepository, orderRemarkRepository, orderItemRepository, brandRepository, accountService, saleDetailRepository, saleRmaRepository); IShippingSaleService shippingSaleService = new ShippingSaleService(shippingSaleRepository, orderRepository, saleRmaRepository, accountService); ISaleRepository saleOrderRepository = new SaleRepository(); ISalesOrderService saleOrderService = new SalesOrderService(saleOrderRepository); _controller = new SaleController(saleService, shippingSaleService, saleOrderService); _controller.Request = new HttpRequestMessage(); _controller.Request.SetConfiguration(new HttpConfiguration()); return(_controller); }
/// <summary> /// Simplest Add Role to Repository routine /// </summary> /// <param name="repositoryId"></param> /// <param name="roleId"></param> /// <param name="userId"></param> /// <returns></returns> public async Task <bool> AddRoleToRepository(Guid repositoryId, Guid roleId, Guid userId) { var role = Context.UserRoles .FirstOrDefault(ur => ur.RepositoryId == repositoryId && ur.RoleId == roleId && ur.UserId == userId); if (role == null) { role = new RoleUserRepository() { RepositoryId = repositoryId, RoleId = roleId, UserId = userId }; } Context.UserRoles.Add(role); return(await SaveAsync()); }
public RoleUserService() { _roleUserRepository = new RoleUserRepository(); }
public EditUserModel InitializeEditUserModel(Guid? id) { var model = new EditUserModel(); if (id.HasValue) { var user = _userRepository.Find(id.Value); model.FormData.Account = user.Account; model.FormData.DepartmentId = user.Department != null ? user.Department.Id : default(Guid?); model.FormData.Mobile = user.PhoneBookRecord != null ? user.PhoneBookRecord.Mobile : string.Empty; model.FormData.Name = user.Name; model.FormData.QQ = user.QQ; model.FormData.OrderSort = user.OrderSort; var roleUserRepository = new RoleUserRepository(); var roleUser = roleUserRepository.GetRoleUserByUserId(id.Value); if (roleUser != null) model.FormData.RoleNames = string.Join(",", roleUser.Roles.Select(o => o.Code)); } var roleRepository = new RoleRepository(); model.Roles = roleRepository.GetAllRoleByUnitId(NpcContext.CurrentUser.Unit.Id); return model; }
private void SaveOrUpdateRoleUser(Guid userId, IList<string> roleCodes) { var userInContext = NpcContext.CurrentUser; if (roleCodes == null || !roleCodes.Any()) return; var roleUserRepository = new RoleUserRepository(); var roleRepository = new RoleRepository(); var roleUser = roleUserRepository.GetRoleUserByUserId(userId) ?? new RoleUser(); roleUser.Roles.Clear(); roleUser.UserId = userId; var roles = roleRepository.GetRolesByCodes(roleCodes, userInContext.Unit.Id); roles.ToList().ForEach(role => roleUser.Roles.Add(role)); roleUserRepository.Save(roleUser); }
public UserListModel InitializeUserListModel(UserQueryItem userQueryItem) { var model = new UserListModel(); model.Users = _userRepository.Query(userQueryItem); model.UserSearchModel.UserQueryItem = userQueryItem; var roleUserRepository = new RoleUserRepository(); model.RoleUsers = roleUserRepository.GetRoleUsersByUserIds(model.Users.Select(o => o.Id)); return model; }
private void InitUnitPermissions(Unit unit, User admin) { var privilegeRepository = new PrivilegeRepository(); var privileges = privilegeRepository.GetAllPrivileges(); var roleRepository = new RoleRepository(); var roles = roleRepository.GetAllRoleByUnitId(unit.Id); var role = roles.FirstOrDefault(r => r.Code == "SuperAdmin"); if (role == null) { role = new Role(); role.Name = "超级管理员"; role.Code = "SuperAdmin"; role.UnitId = unit.Id; privileges.ToList().ForEach(privilege => role.Privileges.Add(privilege)); roleRepository.Save(role); } var roleUserRepository = new RoleUserRepository(); var roleUser = roleUserRepository.GetRoleUserByUserId(admin.Id); if (roleUser == null) { roleUser = new RoleUser(); roleUser.UserId = admin.Id; roleUser.Roles.Add(role); roleUserRepository.Save(roleUser); } }
public NpcContext() { RoleUserRepository = new RoleUserRepository(); UserRepository = new UserRepository(); }
public RoleUserRepositoryTests() { _target = new RoleUserRepository(_dataAccess); }