Ejemplo n.º 1
0
        public async Task <CompanyDTO> CreateCompany(CompanyDTO companyDTO, string vkToken)
        {
            var newCompany   = _mapper.Map <CompanyDTO, Company>(companyDTO);
            var savedCompany = (await _context.Companies.AddAsync(newCompany)).Entity;
            var newUser      = await _authService.RegisterNoSave(new UserRegisterDTO
            {
                Email    = companyDTO.Email,
                Password = companyDTO.Password,
                Company  = savedCompany,
                UserName = companyDTO.Email
            });

            var vkId = await _vkService.GetCompanyIdFromVk(companyDTO.VkStr, vkToken);

            newCompany.VkId = vkId;
            await _context.SaveChangesAsync();

            await _authService.RegisterSendEmail(newUser);

            var savedCompanyDTO = _mapper.Map <Company, CompanyDTO>(savedCompany);

            return(savedCompanyDTO);
        }