public UpdateResult UpdateRoles(UserDto user) { var result = GetDefault <UpdateResult>(); var model = _userRepository.FindSingle(x => x.Id == user.Id); if (model == null) { result.Message = "USE_NOT_EXIST"; result.StateCode = 0x00402; return(result); } var list = model.UserRoles.ToList(); if (user.Roles != null) { foreach (var item in user.Roles) { if (!list.Exists(x => x.Role.Id == item.Id)) { _userRoleRepository.Add(new UserRole { RoleId = item.Id, UserId = model.Id }); } } foreach (var item in list) { if (!user.Roles.Exists(x => x.Id == item.Id)) { _userRoleRepository.Delete(item); } } _userRoleRepository.Commit(); _userRepository.Commit(); } result.IsSaved = true; return(result); }
private void addUserToRole(User user, int roleId) { var role = _roleRepository.GetSingle(roleId); if (role == null) { throw new Exception("Role does not exist."); } var userRole = new UserRole() { RoleId = role.Id, UserId = user.Id }; _userRoleRepository.Add(userRole); _userRoleRepository.Commit(); // change from base }
public void AddUserToRole(User user, int roleId) { var role = _roleRepository.GetSingle(roleId); if (role == null) { throw new Exception("Role doesn't exist."); } var userRole = new UserRole() { RoleId = role.Id, UserId = user.Id }; _userRoleRepository.Add(userRole); _userRoleRepository.Commit(); }
public int SetupFranchisee(FranchiseeTenant franchiseeTenant, FranchiseeConfiguration franchiseeConfiguration) { using (var scope = new TransactionScope()) { //Add Franchise ValidateBusinessRules(franchiseeTenant); _franchiseeTenantRepository.Add(franchiseeTenant); _franchiseeTenantRepository.Commit(); int i = 0; var connectionString = PersistenceHelper.GenerateConnectionString(franchiseeTenant.Server, franchiseeTenant.Database, franchiseeTenant.UserName, franchiseeTenant.Password); var database = franchiseeTenant.Database; // Create franchisee configuaration // Check franchisee configuaration has exists #region _franchiseeConfigurationRepository.DeleteAllFranchiseeConfigurationBySqlString(database); var franchiseeId = PasswordHelper.HashString(franchiseeTenant.Id.ToString(), franchiseeTenant.Name); var licenseKey = franchiseeTenant.LicenseKey; var franchiseeContact = franchiseeConfiguration.FranchiseeContact; var primaryContactPhone = franchiseeConfiguration.PrimaryContactPhone; var primaryContactEmail = franchiseeConfiguration.PrimaryContactEmail; var primaryContactFax = franchiseeConfiguration.PrimaryContactFax; var primaryContactCellNumber = franchiseeConfiguration.PrimaryContactCellNumber; var name = franchiseeConfiguration.Name; var city = franchiseeConfiguration.City; var state = franchiseeConfiguration.State; var zip = franchiseeConfiguration.Zip; var address1 = franchiseeConfiguration.Address1; var address2 = franchiseeConfiguration.Address2; var officePhone = franchiseeConfiguration.OfficePhone; var faxNumber = franchiseeConfiguration.FaxNumber; var industryId = franchiseeConfiguration.IndustryId; var logo = franchiseeConfiguration.Logo; var franchiseeconfig = new FranchiseeConfiguration { FranchiseeId = franchiseeId, LicenseKey = licenseKey, FranchiseeContact = franchiseeContact, PrimaryContactPhone = primaryContactPhone, PrimaryContactEmail = primaryContactEmail, PrimaryContactFax = primaryContactFax, PrimaryContactCellNumber = primaryContactCellNumber, Name = name, City = city, State = state, Zip = zip, Address1 = address1, Address2 = address2, OfficePhone = officePhone, FaxNumber = faxNumber, Logo = logo, IndustryId = industryId }; _franchiseeConfigurationRepository.AddFranchiseeConfigurationBySqlString(franchiseeconfig, database); #endregion // Create a franchisee admin role #region _userRoleRepository.ChangeConnectionString(connectionString); var franchiseeAdminRole = _userRoleRepository.FirstOrDefault(o => o.AppRoleName == AppRole.GlobalAdmin.ToString()); var idFranchiseeAdminRole = 0; if (franchiseeAdminRole == null) { // Create franchisee admin role var franchiseeAdminRoleAdd = new UserRole { Name = "Franchisee Admin", AppRoleName = AppRole.GlobalAdmin.ToString(), UserRoleFunctions = new List <UserRoleFunction>() }; // Create list userRoleFunction for franchisee admin var objListDocumentType = _userRoleRepository.GetAllDocumentType(); foreach (var documentType in objListDocumentType) { var objViewAdd = new UserRoleFunction { DocumentTypeId = documentType.Id, SecurityOperationId = (int)OperationAction.View }; franchiseeAdminRoleAdd.UserRoleFunctions.Add(objViewAdd); //Implement View insert var objInsertAdd = new UserRoleFunction { DocumentTypeId = documentType.Id, SecurityOperationId = (int)OperationAction.Add, }; franchiseeAdminRoleAdd.UserRoleFunctions.Add(objInsertAdd); //Implement View update var objUpdateAdd = new UserRoleFunction { DocumentTypeId = documentType.Id, SecurityOperationId = (int)OperationAction.Update, }; franchiseeAdminRoleAdd.UserRoleFunctions.Add(objUpdateAdd); //Implement View delete var objDeleteAdd = new UserRoleFunction { DocumentTypeId = documentType.Id, SecurityOperationId = (int)OperationAction.Delete, }; franchiseeAdminRoleAdd.UserRoleFunctions.Add(objDeleteAdd); var objProcessAdd = new UserRoleFunction { DocumentTypeId = documentType.Id, SecurityOperationId = (int)OperationAction.Process, }; franchiseeAdminRoleAdd.UserRoleFunctions.Add(objProcessAdd); } _userRoleRepository.Add(franchiseeAdminRoleAdd); _userRoleRepository.Commit(); idFranchiseeAdminRole = franchiseeAdminRoleAdd.Id; } else { idFranchiseeAdminRole = franchiseeAdminRole.Id; } #endregion // Create franchisee admin user // Check user admin has exists #region _userRepository.ChangeConnectionString(connectionString); var isExistsUserFranchiseeAdmin = _userRepository.CheckExist(o => o.UserRoleId == idFranchiseeAdminRole); if (!isExistsUserFranchiseeAdmin) { var randomPassword = "******"; string username = franchiseeTenant.Name.Replace(" ", ""); var password = PasswordHelper.HashString(randomPassword, username); var phoneNumber = franchiseeConfiguration.PrimaryContactPhone; // "1111111111"; var email = franchiseeConfiguration.PrimaryContactEmail; // "*****@*****.**"; var cellPhone = franchiseeConfiguration.PrimaryContactCellNumber; // "1111111111"; // Create user franchisee admin var userFranchiseeAdmin = new User { UserName = username, Password = password, UserRoleId = idFranchiseeAdminRole, IsActive = true, FirstName = "Admin", LastName = "Franchisee", HomePhone = phoneNumber, MobilePhone = cellPhone, Email = email, }; _userRepository.AddUserBySqlString(userFranchiseeAdmin, database); } #endregion scope.Complete(); return(franchiseeTenant.Id); } }