public async Task CreateAsync(TourOperatorCreateDto input) { var agent = new TourOperatorAgent { FirstName = input.Agent.FirstName, LastName = input.Agent.LastName, Email = input.Agent.Email, PhoneNumber = input.Agent.PhoneNumber, }; var company = new TourOperatorCompany { Name = input.Company.Name, Bulstat = input.Company.Bulstat, Email = input.Company.Email, PhoneNumber = input.Company.PhoneNumber, }; var tourOperator = new TourOperator { Name = input.Name, HotelId = input.HotelId, Agent = agent, Company = company, }; await this.tourOperatorRepository.AddAsync(tourOperator); await this.tourOperatorRepository.SaveChangesAsync(); }
public async Task <IActionResult> Create(TourOperatorCreateInputModel input) { if (!this.ModelState.IsValid) { return(this.View(input)); } var user = await this.userManager.GetUserAsync(this.User); var dto = new TourOperatorCreateDto { Name = input.Name, Agent = new TourOperatorAgentCreateDto { FirstName = input.Agent.FirstName, LastName = input.Agent.LastName, Email = input.Agent.Email, PhoneNumber = input.Agent.PhoneNumber, }, Company = new TourOperatorCompanyCreateDto { Name = input.Company.Name, Bulstat = input.Company.Bulstat, Email = input.Company.Email, PhoneNumber = input.Company.PhoneNumber, }, HotelId = (int)user.HotelId, }; await this.tourOperatorsService.CreateAsync(dto); return(this.RedirectToAction("Index")); }