Esempio n. 1
0
        public static RegisterPersonViewModel RegPersonSuccess()
        {
            UserInfoViewModel userInfo = new UserInfoViewModel
            {
                FirstName  = "Ислам",
                SecondName = "Байгазиев",
                MiddleName = "Test",
                BirthDay   = "13.09.1998",
                Email      = "*****@*****.**",
                Inn        = "12345678912345",
            };


            PassportInfoViewModel passportInfo = new PassportInfoViewModel
            {
                Series            = "AN",
                DateofExtradition = "12.05.2011",
                Validaty          = "12.05.2016",
                IssuedBy          = "Lenin",
                Number            = "6542164",
            };
            ContactInfoViewModel contactInfo = new ContactInfoViewModel
            {
                MobilePhone = "0555800565"
            };

            RegisterPersonViewModel model = new RegisterPersonViewModel
            {
                UserInfo     = userInfo,
                PassportInfo = passportInfo,
                ContactInfo  = contactInfo,
            };

            return(model);
        }
        public IActionResult RegisterPerson()
        {
            RegisterPersonViewModel registerPersonViewModel = new RegisterPersonViewModel
            {
                FactAddress = new FactAddressViewModel {
                    Countries = selectListService.GetCountries()
                },
                PlaceOfBirth = new PlaceOfBirthViewModel {
                    Countries = selectListService.GetCountries()
                },
                ContactInfo  = new ContactInfoViewModel(),
                LegalAddress = new LegalAddressViewModel {
                    Countries = selectListService.GetCountries()
                },
                UserInfo = new UserInfoViewModel {
                    Countries = selectListService.GetCountries()
                },

                PassportInfo = new PassportInfoViewModel {
                    TypeOfDocuments = selectListService.GetTypeOfDocuments()
                }
            };


            return(View(registerPersonViewModel));
        }
Esempio n. 3
0
        public IActionResult Register(RegisterPersonViewModel vm)
        {
            if (vm.Password != vm.ConfirmedPassword)
            {
                ErrorHandler(nameof(RegisterPersonViewModel.ConfirmedPassword), "Passwords don't match.");
            }

            if (!ModelState.IsValid)
            {
                return(View(vm));
            }

            var request   = vm.ToRequest();
            var presenter = _presenterFactory.Presenter(MessageHandler, ErrorHandler);

            try
            {
                var uc       = _useCaseFactory.Create;
                var response = uc.Execute(request);
                presenter.Present(response);
                return(RedirectToAction(nameof(Index), new { id = response.Id.ToPresentationIdentity() }));
            }
            catch (InvalidRequestException ire)
            {
                presenter.PresentErrors(ire.Message, ire.Errors);
                return(View(vm));
            }
            catch (Exception e)
            {
                presenter.PresentMessage(MessageType.Error, e.Message);
                return(View(vm));
            }
        }
 public static CreatePersonRequest ToRequest(this RegisterPersonViewModel vm)
 {
     return(new CreatePersonRequest
     {
         DisplayName = vm.DisplayName,
         Email = vm.Email,
         FirstName = vm.FirstName,
         LastName = vm.LastName,
         Password = vm.Password,
     });
 }
Esempio n. 5
0
        public async Task <ActionResult> RegisterPersonUser(RegisterPersonViewModel model)
        {
            if (ModelState.IsValid)
            {
                // check to see if this user is in the existing database
                LogicLayer.UserManager usrMgr = new LogicLayer.UserManager();
                try
                {
                    if (usrMgr.FindUser(model.Email))
                    {
                        // if this user already exists, we need to use the regular Register method
                        return(RedirectToAction("Register", "Account"));
                    }
                    else // not a existing user, creae a DataObjects.User without roles
                    {
                        var person = new DataObjects.User()
                        {
                            Email       = model.Email,
                            FirstName   = model.GivenName,
                            LastName    = model.FamilyName,
                            PhoneNumber = model.PhoneNumber
                        };
                        if (usrMgr.AddUser(person)) // add the DataObjects.User to Person table
                        {
                            var personID = usrMgr.RetrieveUserIDFromEmail(model.Email);
                            var user     = new ApplicationUser // if it worked, create an identity user
                            {
                                PersonID   = personID,
                                GivenName  = model.GivenName,
                                FamilyName = model.FamilyName,
                                UserName   = model.Email,
                                Email      = model.Email
                            };
                            var result = await UserManager.CreateAsync(user, "newuser");

                            if (result.Succeeded) // go back to Admin/Index View
                            {
                                return(RedirectToAction("Index", "Admin"));
                            }
                            AddErrors(result);
                        }
                    }
                }
                catch (Exception)
                {
                    // creating employee failed
                    return(View(model));
                }
            }
            // modelstate was not valid
            return(View(model));
        }
        public async Task <IActionResult> RegisterPerson(RegisterPersonViewModel model)
        {
            validationService.ValidateRegisterPersonViewModel(model, ModelState);
            model.UserInfo.Password        = generatePasswordService.CreatePassword();
            model.UserInfo.PasswordConfirm = model.UserInfo.Password;
            if (ModelState.IsValid)
            {
                User user = new User {
                    Email = model.UserInfo.Email, UserName = userService.CreateLogin(model.UserInfo), IsPasswordChanged = false, IsTwoFactorOn = true
                };
                var result = await userService.CreateUser(user, model.UserInfo);

                if (result.Succeeded)
                {
                    ContactInfo contactInfo = await userService.CreateContactInfo(model.ContactInfo);

                    PassportInfo passportInfo = await userService.CreatePassportInfo(model.PassportInfo);

                    UserInfo userInfo = await userService.CreateUserInfo(user, passportInfo, model.UserInfo, contactInfo);

                    userService.CreateAddress(userInfo, model.FactAddress);
                    userService.CreateAddress(userInfo, model.LegalAddress);
                    userService.CreateAddress(userInfo, model.PlaceOfBirth);
                    StringBuilder message = new StringBuilder("ваш логин:  " + user.UserName + "  ", 120);
                    message.AppendLine("ваш пароль:" + model.UserInfo.Password);
                    await SendMessage("Регистрация в интернет банкинге", message.ToString(), user);

                    return(RedirectToAction("UserAccountCreate", "Account", new { userId = user.Id }));
                }
                else
                {
                    foreach (var error in result.Errors)
                    {
                        ModelState.AddModelError(string.Empty, error.Description);
                    }
                }
            }

            var countries = selectListService.GetCountries();

            model.UserInfo.Countries           = countries;
            model.FactAddress.Countries        = countries;
            model.LegalAddress.Countries       = countries;
            model.PlaceOfBirth.Countries       = countries;
            model.PassportInfo.TypeOfDocuments = selectListService.GetTypeOfDocuments();
            return(View(model));
        }
Esempio n. 7
0
        public ModelStateDictionary ValidateRegisterPersonViewModel(RegisterPersonViewModel model, ModelStateDictionary ModelState)
        {
            DateTime dateOfExtradition = new DateTime();
            DateTime validaty          = new DateTime();
            DateTime birthDay          = new DateTime();

            if (DateTime.TryParse(model.PassportInfo.DateofExtradition, out dateOfExtradition))
            {
                if (DateTime.Now < dateOfExtradition || dateOfExtradition.AddYears(10) < DateTime.Now)
                {
                    ModelState.AddModelError("PassportInfo.DateofExtradition", "Дата выдачи не может быть из будущего или прошлого");
                }
            }
            else
            {
                ModelState.AddModelError("PassportInfo.DateofExtradition", "*Введите дату!");
            }
            if (DateTime.TryParse(model.PassportInfo.Validaty, out validaty))
            {
                if (validaty <= dateOfExtradition)
                {
                    ModelState.AddModelError("PassportInfo.Validaty", "Срок действия не может быть раньше даты выдачи");
                }
                if (validaty > dateOfExtradition.AddYears(10))
                {
                    ModelState.AddModelError("PassportInfo.Validaty", "Срок действия не может превышать 10 лет");
                }
            }
            else
            {
                ModelState.AddModelError("PassportInfo.Validaty", "*Введите дату!");
            }
            if (DateTime.TryParse(model.UserInfo.BirthDay, out birthDay))
            {
                if (DateTime.Now < birthDay || birthDay.AddYears(118) < DateTime.Now)
                {
                    ModelState.AddModelError("UserInfo.BirthDay", "Дата рождения не может быть из будущего или прошлого");
                }
            }
            else
            {
                ModelState.AddModelError("UserInfo.BirthDay", "*Введите дату!");
            }
            return(ModelState);
        }
        public void ЕслиЗаполняюВсеПоляВФормеРегистрацииПравильно()
        {
            RegisterPersonViewModel model = ModelData.RegPersonSuccess();

            TextToElement("FName", model.UserInfo.FirstName);
            TextToElement("SName", model.UserInfo.SecondName);
            TextToElement("TName", model.UserInfo.MiddleName);
            Click("id", "PassportTODselect");
            Click("xpath", "//option[text()='Паспорт']");
            TextToElement("PassportSeries", model.PassportInfo.Series);
            TextToElement("PassportDate", model.PassportInfo.DateofExtradition);
            TextToElement("PassportValidaty", model.PassportInfo.Validaty);
            TextToElement("PassportNumber", model.PassportInfo.Number);
            TextToElement("PassportIssedBy", model.PassportInfo.IssuedBy);
            TextToElement("Inn", model.UserInfo.Inn);
            Click("id", "Male");
            TextToElement("BirthDay", model.UserInfo.BirthDay);
            TextToElement("MobilePhone", model.ContactInfo.MobilePhone);
            TextToElement("ContactEmail", model.UserInfo.Email);
            Click("id", "SendClick");
        }
        public async Task <IActionResult> RegisterPerson([FromBody] RegisterPersonViewModel person_model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var email = person_model.email.ToLower();

            if (await _context.People.AnyAsync(e => e.email == email))
            {
                return(BadRequest("El email ya está registrado"));
            }


            Person person = new Person
            {
                kind_of_person   = person_model.kind_of_person,
                name             = person_model.name,
                kind_of_document = person_model.kind_of_document,
                document_number  = person_model.document_number,
                adress           = person_model.adress,
                telephone        = person_model.telephone,
                email            = person_model.email
            };

            _context.People.Add(person);

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (Exception e)
            {
                return(BadRequest(e));
            }

            return(Ok());
        }
Esempio n. 10
0
 public RegisterPersonPage()
 {
     InitializeComponent();
     BindingContext = new RegisterPersonViewModel();
 }