public async Task <GeneralResponse> CreateCompany(NewCompany newCompany) { var response = new GeneralResponse(); var user = new User() { FirstName = newCompany.CompanyName, Email = newCompany.Email, UserName = newCompany.Email.ToLower() }; var existingUser = await _userManager.FindByEmailAsync(newCompany.Email); if (existingUser != null) { return(response.ErrorHandling <ClientManager>("Email already in use", objects: newCompany.Email)); } var result = await _userManager.CreateAsync(user, "ClientDefaultPassword"); if (!result.Succeeded) { return(response.ErrorHandling(ErrorConstants.FailedToUpdateDatabase, _logger, user)); } var company = new Client() { User = user, }; company = _mapper.Map(newCompany, company); Create(company, RoleConstants.ADMIN); response.Succeeded = true; return(response); }
public Company(NewCompany companyDate) { Houses = new List <House>(); Name = companyDate.Name; Date = DateTime.Now; Password = companyDate.Password; }
public async Task <IActionResult> CreateCompany(NewCompany newCompany) { var result = await _clientManager.CreateCompany(newCompany); if (result.Succeeded) { return(Ok(result)); } return(BadRequest(result)); }
public ActionResult NewCompany(NewCompany companyData) { if (ModelState.IsValid) { CompanyRepository repo = new CompanyRepository(new BaseContext()); if (repo.IsValid(companyData)) { var id = repo.CreateCompany(new Company(companyData), User.Identity.GetUserId <int>()); return(Redirect("Account/MyCompany/" + id)); } else { ModelState.AddModelError("Name", "Данное имя уже занято!"); } } return(View(companyData)); }
public bool IsValid(NewCompany newData) { return(this.DbSet.FirstOrDefault(p => p.Name == newData.Name) == null); }