protected void UnregisteredUsersListView_ItemCommand(object sender, ListViewCommandEventArgs e) { if (e.CommandName == "Add") { var idCtrl = e.Item.FindControl("IdHiddenField") as HiddenField; var typeCtrl = e.Item.FindControl("UserTypeLabel") as Label; var userNameCtrl = e.Item.FindControl("AssignedUserNameTextBox") as TextBox; var emailCtrl = e.Item.FindControl("AssignedEmailTextBox") as TextBox; if (idCtrl != null && typeCtrl != null && userNameCtrl != null && emailCtrl != null) { MessageUserControl.TryRun(() => { var controller = new RegistrationController(); var user = new UnregisteredUser { Id = int.Parse(idCtrl.Value), AssignedUserName = userNameCtrl.Text, AssignedEmail = emailCtrl.Text, Position = Convert.ToInt32(typeCtrl.Text) }; //if (typeCtrl.Text == UserType.Employee.ToString()) // user.UserType = UserType.Employee; //else if (typeCtrl.Text == UserType.Customer.ToString()) // user.UserType = UserType.Customer; //else // throw new Exception("Unrecognized Northwind User Type. Only exmployees and customers can be added on this page."); controller.RegisterUser(user); UnregisteredUsersListView.DataBind(); }, "Added User", $"Successfully added the {typeCtrl.Text} {userNameCtrl.Text}."); } } }
public static int AddUnregisteredUser(UnregisteredUser unregisteredUser) { int newUnregisteredUserId = 0; const string query = @"insert into dbo.UnregisteredUsers (ContactName, CompanyName, Email, TypeOfOwnershipId, CityId, INN, OGRN, PhoneNumber, Created, SbisCompanyName, SbisTypeOfOwnershipId, SbisOGRN, SbisWorksFrom) values (@ContactName, @CompanyName, @Email, @TypeOfOwnershipId, @CityId, @INN, @OGRN, @PhoneNumber, @Created, @SbisCompanyName, @SbisTypeOfOwnershipId, @SbisOGRN, @SbisWorksFrom); DECLARE @newUnregisteredUserID int; SELECT @newUnregisteredUserID = SCOPE_IDENTITY(); SELECT @newUnregisteredUserID"; var connect = new SqlConnection(connStr); var sqlCommand = new SqlCommand(query, connect); var parameters = sqlCommand.Parameters; AddAddOrUpdateSqlParameters(parameters, unregisteredUser); parameters.AddWithValue("OpenDialogRespondentIds", ""); parameters.AddWithValue("CurrentRespondentId", 0); try { connect.Open(); newUnregisteredUserId = (int)sqlCommand.ExecuteScalar(); } catch (Exception ex) { string methodName = MethodBase.GetCurrentMethod().Name; throw new Exception("in UnregisteredUsersDAL." + methodName + "(): " + ex); } finally { connect.Close(); } return(newUnregisteredUserId); }
public void RegisterUser(UnregisteredUser userInfo) { // string randomPassword = Guid.NewGuid().ToString().Replace("-", ""); var userAccount = new ApplicationUser() { UserName = userInfo.AssignedUserName, Email = userInfo.AssignedEmail }; switch (userInfo.UserType) { case UnregisteredUserType.Customer: userAccount.CustomerID = userInfo.Id; break; case UnregisteredUserType.Employee: userAccount.EmployeeID = userInfo.Id; break; } this.Create(userAccount, STR_DEFAULT_PASSWORD); // or randomPassword switch (userInfo.UserType) { case UnregisteredUserType.Employee: this.AddToRole(userAccount.Id, SecurityRoles.Staff); break; case UnregisteredUserType.Customer: this.AddToRole(userAccount.Id, SecurityRoles.RegisteredUsers); break; } }
public static UnregisteredUser GetUnregisteredUser(int id) { UnregisteredUser result = null; const string query = @"select * from dbo.UnregisteredUsers where Id=@Id"; var connection = new SqlConnection(connStr); var sqlCommand = new SqlCommand(query, connection); sqlCommand.Parameters.AddWithValue("Id", id); try { connection.Open(); var reader = sqlCommand.ExecuteReader(); if (reader.Read()) { result = ReadUnregisteredUserInfo(reader); } reader.Close(); } catch (Exception ex) { string methodName = MethodBase.GetCurrentMethod().Name; throw new Exception("in UnregisteredUsersDAL." + methodName + "(): " + ex); } finally { connection.Close(); } return(result); }
public async Task <IEnumerable <UnregisteredUserDto> > ImportExcelFileAndGetImportDataAsync(string fullFileLocation) { FileInfo fileInfo = new FileInfo(fullFileLocation); List <UnregisteredUserDto> importDataListDto = new List <UnregisteredUserDto> (); using (ExcelPackage package = new ExcelPackage(fileInfo)) { var workSheet = package.Workbook.Worksheets[1]; int totalRows = workSheet.Dimension.Rows; List <UnregisteredUser> importDataList = new List <UnregisteredUser> (); for (int i = 2; i <= totalRows; i++) { var importData = new UnregisteredUser(); importData.SetName(workSheet.Cells[i, 1].Value.ToString()); importData.SetSurname(workSheet.Cells[i, 2].Value.ToString()); importData.SetEmail(workSheet.Cells[i, 3].Value.ToString().ToLowerInvariant()); importDataList.Add(importData); importDataListDto.Add(_mapper.Map <UnregisteredUserDto> (importData)); } await _unregisteredUserRepository.AddAllAsync(importDataList); } Directory.Delete(fileInfo.DirectoryName, true); return(importDataListDto); }
public void RegisterUser(UnregisteredUser userInfo) { // Basic validation if (userInfo == null) { throw new ArgumentNullException(nameof(userInfo), "Data for unregistered users is required"); } if (string.IsNullOrEmpty(userInfo.AssignedUserName)) { throw new ArgumentException("New users must have a username", nameof(userInfo.AssignedUserName)); } var userAccount = new ApplicationUser() { UserName = userInfo.AssignedUserName, Email = userInfo.AssignedEmail }; switch (userInfo.UserType) { case UserType.Customer: userAccount.CustomerId = int.Parse(userInfo.Id); break; case UserType.Employee: userAccount.EmployeeId = int.Parse(userInfo.Id); break; } var userManager = HttpContext.Current.Request.GetOwinContext().GetUserManager <ApplicationUserManager>(); var identityResult = userManager.Create(userAccount, ConfigurationManager.AppSettings["newUserPassword"]); // or randomPassword if (identityResult.Succeeded) { switch (userInfo.UserType) { case UserType.Employee: userManager.AddToRole(userAccount.Id, ConfigurationManager.AppSettings["employeeRole"]); break; case UserType.Customer: userManager.AddToRole(userAccount.Id, ConfigurationManager.AppSettings["customerRole"]); break; } } else { throw new Exception($@"Security changes were not applied:<ul> {string.Join(string.Empty, identityResult.Errors .Select(x => $"<li>{x}</li>"))}</ul>"); } }
private static UnregisteredUser ReadUnregisteredUserInfo(SqlDataReader reader) { var result = new UnregisteredUser { Id = (int)reader["Id"], CompanyName = ((string)reader["CompanyName"]).Trim(), ContactName = ((string)reader["ContactName"]).Trim(), Email = ((string)reader["Email"]).Trim(), TypeOfOwnership = (TypesOfOwnership)(int)reader["TypeOfOwnershipId"], CityId = (int)reader["CityId"], INN = ((string)reader["INN"]).Trim(), OGRN = ((string)reader["OGRN"]).Trim(), PhoneNumber = ((string)reader["PhoneNumber"]).Trim(), Created = (DateTime)reader["Created"] }; if (reader["PhoneNumberCity"] != DBNull.Value) { result.PhoneNumberCity = ((string)reader["PhoneNumberCity"]).Trim(); } #region поля СБИС if (reader["SbisCompanyName"] != DBNull.Value) { result.SbisCompanyName = ((string)reader["SbisCompanyName"]).Trim(); } if (reader["SbisTypeOfOwnershipId"] != DBNull.Value) { result.SbisTypeOfOwnershipId = (int)reader["SbisTypeOfOwnershipId"]; } if (reader["SbisOGRN"] != DBNull.Value) { result.SbisOGRN = ((string)reader["SbisOGRN"]).Trim(); } if (reader["SbisWorksFrom"] != DBNull.Value) { result.SbisWorksFrom = (DateTime)reader["SbisWorksFrom"]; } #endregion return(result); }
public UnregisteredUser Create(IUnitOfWork unitOfWork, UnregisteredUser obj) { obj.Email = obj.Email.Trim(); var repository = unitOfWork.GetRepository<User>(); if (repository.All().Any(x => x.Email.Equals(obj.Email, StringComparison.InvariantCultureIgnoreCase))) { throw new Exception("Пользователь с таким адресом электронной почты уже существует. Вы можете найти данный контакт через поиск."); } var catRepo = unitOfWork.GetRepository<UserCategory>(); var cat = catRepo.All().FirstOrDefault(x => x.SystemName == "Unregistered") ?? new UserCategory { Name = "Незарегистрированные пользователи", SystemName = "Unregistered" }; var user = new User { Login = obj.Email, FirstName = obj.FirstName, LastName = obj.LastName, MiddleName = obj.MiddleName, Email = obj.Email, OfficePhone = obj.OfficePhone, PersonPhone = obj.PersonPhone, MailAddress = obj.MailAddress, UserCategory = cat, IsUnregistered = true }; repository.Create(user); unitOfWork.SaveChanges(); obj.ID = user.ID; return obj; }
protected void UnregisteredUsersGridView_SelectedIndexChanging(object sender, GridViewSelectEventArgs e) { UnregisteredUsersGridView.SelectedIndex = e.NewSelectedIndex; GridViewRow row = UnregisteredUsersGridView.SelectedRow; if (row != null) { string userName = null, email = null; UnregisteredUserType userType; TextBox input; input = row.FindControl("GivenUserName") as TextBox; if (input != null) { userName = input.Text; } input = row.FindControl("GivenEmail") as TextBox; if (input != null) { email = input.Text; } userType = (UnregisteredUserType)Enum.Parse(typeof(UnregisteredUserType), row.Cells[1].Text); UnregisteredUser user = new UnregisteredUser() { Id = int.Parse(UnregisteredUsersGridView.SelectedDataKey.Value.ToString()), UserType = userType, Name = row.Cells[2].Text, OtherName = row.Cells[3].Text, AssignedUserName = userName, AssignedEmail = email }; UserManager manager = new UserManager(); manager.RegisterUser(user); DataBind(); } }
public async Task DeleteAsync(UnregisteredUser unregisteredUser) { _context.UnregisteredUsers.Remove(unregisteredUser); await _context.SaveChangesAsync(); }
public async Task UpdateAsync(UnregisteredUser unregisteredUser) { _context.UnregisteredUsers.Update(unregisteredUser); await _context.SaveChangesAsync(); }
public async Task AddAsync(UnregisteredUser unregisteredUser) { await _context.UnregisteredUsers.AddAsync(unregisteredUser); await _context.SaveChangesAsync(); }
private static void AddAddOrUpdateSqlParameters(SqlParameterCollection parameters, UnregisteredUser unregisteredUser) { parameters.AddWithValue("ContactName", unregisteredUser.ContactName); parameters.AddWithValue("CompanyName", unregisteredUser.CompanyName); parameters.AddWithValue("Email", unregisteredUser.Email); parameters.AddWithValue("TypeOfOwnershipId", unregisteredUser.TypeOfOwnership); parameters.AddWithValue("CityId", unregisteredUser.CityId); parameters.AddWithValue("INN", unregisteredUser.INN); parameters.AddWithValue("OGRN", unregisteredUser.OGRN); parameters.AddWithValue("PhoneNumber", unregisteredUser.PhoneNumber); if (unregisteredUser.PhoneNumberCity != null) { parameters.AddWithValue("PhoneNumberCity", unregisteredUser.PhoneNumberCity); } else { parameters.AddWithValue("PhoneNumberCity", DBNull.Value); } parameters.AddWithValue("Created", unregisteredUser.Created); if (unregisteredUser.SbisCompanyName != null) { parameters.AddWithValue("SbisCompanyName", unregisteredUser.SbisCompanyName); } else { parameters.AddWithValue("SbisCompanyName", DBNull.Value); } if (unregisteredUser.SbisTypeOfOwnershipId.HasValue) { parameters.AddWithValue("SbisTypeOfOwnershipId", unregisteredUser.SbisTypeOfOwnershipId.Value); } else { parameters.AddWithValue("SbisTypeOfOwnershipId", DBNull.Value); } if (unregisteredUser.SbisOGRN != null) { parameters.AddWithValue("SbisOGRN", unregisteredUser.SbisOGRN); } else { parameters.AddWithValue("SbisOGRN", DBNull.Value); } if (unregisteredUser.SbisWorksFrom != null) { parameters.AddWithValue("SbisWorksFrom", unregisteredUser.SbisWorksFrom); } else { parameters.AddWithValue("SbisWorksFrom", DBNull.Value); } }
public void ChangeSortOrder(IUnitOfWork unitOfWork, UnregisteredUser obj, int newSortOrder) { throw new NotImplementedException(); }
public void Delete(IUnitOfWork unitOfWork, UnregisteredUser obj) { throw new NotImplementedException(); }