Exemplo n.º 1
0
        public async Task <IActionResult> RegisterPost([FromForm] UsuarioDTO registerModel)
        {
            if (ModelState.IsValid)
            {
                Usuario user = new Usuario
                {
                    UserName = registerModel.UserName,
                    Email    = registerModel.Email,
                    RoleName = registerModel.RoleName
                };

                var result = await _userManager.CreateAsync(user, registerModel.Password);

                if (result.Succeeded)
                {
                    bool roleExists = await _roleManager.RoleExistsAsync(registerModel.RoleName);

                    if (!roleExists)
                    {
                        await _roleManager.CreateAsync(new IdentityRole(registerModel.RoleName));
                    }

                    if (!await _userManager.IsInRoleAsync(user, registerModel.RoleName))
                    {
                        await _userManager.AddToRoleAsync(user, registerModel.RoleName);
                    }

                    var resultSignIn = await _signInManager.PasswordSignInAsync(registerModel.UserName, registerModel.Password, false, false);

                    if (resultSignIn.Succeeded)
                    {
                        var usuario = await _userManager.FindByNameAsync(registerModel.UserName);

                        if (usuario.RoleName.Equals("Aluno"))
                        {
                            var dto = new EstudanteDTO();
                            dto.EstudanteSessao = usuario.Id;
                            dto.Nome            = usuario.UserName;
                            _alunoService.Add(dto);
                        }
                        if (usuario.RoleName.Equals("Professor"))
                        {
                            var dto = new ProfessorDTO();
                            dto.ProfessorSessao = usuario.Id;
                            _professorService.Add(dto);
                            return(RedirectToAction("Index", "Home", new { id = dto.ProfessorSessao }));
                        }
                    }
                }
            }
            return(RedirectToAction("Index", "Login"));
        }
Exemplo n.º 2
0
        public override void AddData()
        {
            var turmas = _turmaService.GetAll();

            var dialog = new AlunoDialog(turmas);

            dialog.Aluno = new AlunoDTO();

            if (dialog.ShowDialog() == DialogResult.OK)
            {
                _alunoService.Add(dialog.Aluno);

                _control.RefreshGrid();
            }
        }
        public IActionResult Post([FromBody] Aluno value)
        {
            try
            {
                var retorno = _service.Add(value);

                return(retorno ? new ObjectResult("Aluno cadastrado com sucesso!")
                {
                    StatusCode = StatusCodes.Status201Created
                }
                               : new ObjectResult("Não foi possível cadastrar o aluno.")
                {
                    StatusCode = StatusCodes.Status400BadRequest
                });
            }
            catch (Exception ex)
            {
                return(BadRequest(ex));
            }
        }