Esempio n. 1
0
        public static void SaveCompanyInfo(RegisterCompanyBindingModel registerCompanyModel, string userId)
        {
            LoanAndRepayEntities database = new LoanAndRepayEntities();

            CompanyInfo companyInfo = new CompanyInfo();

            DAL.Address address = new DAL.Address();
            if (companyInfo != null)
            {
                //First saves the company information in the company table
                companyInfo.UserId      = userId;
                companyInfo.CompanyName = registerCompanyModel.CompanyName;
                companyInfo.CVR         = registerCompanyModel.CVR;
                companyInfo.Email       = registerCompanyModel.Email;
                companyInfo.Phone       = registerCompanyModel.Phone;
                database.CompanyInfoes.Add(companyInfo);

                //Then saves the company address in the address table
                address.StreetName  = registerCompanyModel.StreetName;
                address.HouseNumber = registerCompanyModel.HouseNumber;
                address.CityName    = registerCompanyModel.CityName;
                address.PostCode    = registerCompanyModel.PostCode;
                address.UserId      = userId;
                database.Addresses.Add(address);
                database.SaveChanges();
            }
        }
Esempio n. 2
0
        public async Task <IHttpActionResult> RegisterCompany(RegisterCompanyBindingModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            using (LoanAndRepayEntities entities = new LoanAndRepayEntities())
            {
                var companyName = entities.CompanyInfoes.FirstOrDefault(x => x.CompanyName == model.CompanyName);
                if (companyName == null)
                {
                    var user = new ApplicationUser()
                    {
                        UserName = model.Email, Email = model.Email
                    };

                    IdentityResult result = await UserManager.CreateAsync(user, model.Password);

                    if (result.Succeeded)
                    {
                        var UserId = UserManager.FindByEmail(model.Email);
                        //Calling provider to save data
                        CompanyProvider.SaveCompanyInfo(model, UserId.Id);
                        UserManager.AddToRole(UserId.Id, "Company");
                    }
                    if (!result.Succeeded)
                    {
                        return(GetErrorResult(result));
                    }

                    return(Ok());
                }
            }
            return(BadRequest("Company name is already taken"));
        }
        public IActionResult Register(RegisterCompanyBindingModel model)
        {
            if (!ModelState.IsValid)
            {
                return(this.View());
            }

            var company = this.Mapper.Map <Company>(model);
            var isTaken = this.CompanyServices.NameIsTaken(company.Name);

            if (isTaken)
            {
                ModelState.AddModelError("Name", "Name is already taken!");
                return(this.View());
            }
            this.CompanyServices.AddToDatabase(company);
            return(RedirectToAction("Details", new{ id = company.Id, slug = company.Name }));
        }