public async Task <IActionResult> Register(CompanyRegisterDTO company)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            await companyService.AddCommpanyAsync(company);

            return(RedirectToAction("Index", "Home"));
        }
示例#2
0
        public async Task AddCommpanyAsync(CompanyRegisterDTO companyInfo)
        {
            Company company = Mapper.Map <CompanyRegisterDTO, Company>(companyInfo);

            company.ApiKey = encryptService.GenerateHash(company.Login, company.ContactPhone);
            await db.Companies.CreateAsync(company);

            await db.Users.CreateAsync(new User()
            {
                Login     = company.Login,
                Password  = encryptService.GeneratePassword(company.Login, company.Password),
                CompanyId = company.Id,
                RoleId    = 2
            });
        }
示例#3
0
        public async Task Create(CompanyRegisterDTO companyDto)
        {
            var account = new Account();
            var role    = await _unitOfWork.RoleRepository.GetByIdAsync((long)RoleType.Company);

            var socialAccounts = new List <SocialAccount>();
            var socialAccount  = new SocialAccount();
            var company        = new Company();

            account.Role        = role;
            account.Avatar      = companyDto.Image;
            account.DateCreated = DateTime.Now;
            account.Email       = companyDto.Email;

            account.Location = new Location()
            {
                Adress    = companyDto.Location.Adress,
                City      = companyDto.Location.City,
                IsDeleted = false,
                Latitude  = companyDto.Location.Latitude,
                Longitude = companyDto.Location.Longitude,
                PostIndex = companyDto.Location.PostIndex
            };
            socialAccount.Provider = companyDto.Provider;
            socialAccount.Uid      = companyDto.Uid;
            socialAccount.Account  = account;

            socialAccounts.Add(socialAccount);
            account.SocialAccounts = socialAccounts;

            company.Staff          = companyDto.Staff;
            company.Name           = companyDto.Name;
            company.Description    = companyDto.Description;
            company.Account        = account;
            company.FoundationDate = companyDto.Foundation;

            _unitOfWork.CompanyRepository.Create(company);
            await _unitOfWork.SaveAsync();
        }
        public async Task <HttpResponseMessage> ConfirmCompany(CompanyRegisterDTO company)
        {
            string token = null;

            try
            {
                await companyService.Create(company);

                token = await authService.GenerateJwtTokenAsync(company.Provider, company.Uid);
            }
            catch
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest));
            }

            HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.OK);

            response.Headers.Add("Access-Control-Expose-Headers", "Token");
            response.Headers.Add("Token", token);

            return(response);
        }