public async Task <IActionResult> Cadastro(UsuarioCadastroViewModel cadastroViewModel) { if (!ModelState.IsValid) { return(View("Cadastro", cadastroViewModel)); } List <string> resultadoValidacao = Usuario.ValidarCadastro(cadastroViewModel); if (resultadoValidacao.Count == 0) { Usuario usuarioExistente = _contexto.Usuarios.FirstOrDefault(u => u.Nome == cadastroViewModel.Nome); if (usuarioExistente != null) { ModelState.AddModelError(string.Empty, "Já existe um usuário cadastrado com esse nome."); return(View("Cadastro", cadastroViewModel)); } Usuario novoUsuario = new Usuario(cadastroViewModel); _contexto.Usuarios.Add(novoUsuario); await _contexto.SaveChangesAsync(); } else { foreach (string resultado in resultadoValidacao) { ModelState.AddModelError(string.Empty, resultado); } return(View("Cadastro", cadastroViewModel)); } return(RedirectToAction("Login")); }
public async Task <Usuario> Post([FromBody] UsuarioCadastroViewModel model) { Usuario user = default(Usuario); switch (model.Discriminator) { case nameof(Instituicao): user = new Instituicao(model.BeginDate); break; case nameof(Gestor): user = new Gestor(model.BeginDate); break; case nameof(RecursosHumano): user = new RecursosHumano(model.BeginDate); break; default: throw new HttpException(422); //break; } user.Email = model.Email; user.SetPassword(model.Password); user.UserName = model.Username; user.Nome = model.Nome; user.Sobrenome = model.Sobrenome; db.Usuarios.Add(user); await db.SaveChangesAsync(); return(user); }
public void CadastrarMedicoComCpfSemMascara() { // given var usuarioCadastro = new UsuarioCadastroViewModel("*****@*****.**", "25d55ad283aa400af464c76d713c07ad", "Médico"); var enderecoCadastro = new EnderecoViewModel("29500-000", "Rua nova", "123", "Casa", "Centro", "Alegre", "ES"); var medicoCadastro = new MedicoCadastroViewModel("Marcos", "12345678912", "12.345.678-1", "1234567", new DateTime(1980, 2, 5), "M", "(34)98543-3241", "*****@*****.**", enderecoCadastro, usuarioCadastro); var endereco = new Endereco(new Guid("1EF2F5CB-A04B-4761-3C44-08D78CC135ED"), "29500-000", "Rua nova", "123", "Casa", "Centro", "Alegre", "ES"); var medico = new Medico(new Guid("16E16A8D-469F-4286-A470-08D78CC0F920"), "Marcos", "12345678912", "12.345.678-1", 1234567, new DateTime(1980, 2, 5), "M", "(34)98543-3241", "*****@*****.**", endereco.IdEndereco); var usuarioMedico = new Usuario(new Guid("1A7C25A0-896F-49DF-A75E-EE7DD53AECB9"), "*****@*****.**", "25d55ad283aa400af464c76d713c07ad", "Médico", medico, null); this.medicoRepositoryMock.Setup(m => m.BuscarMedicoPorCpf(medicoCadastro.Cpf)).Returns((Medico)null); this.medicoRepositoryMock.Setup(m => m.BuscarMedicoPorRg(medicoCadastro.Rg)).Returns((Medico)null); this.medicoRepositoryMock.SetupSequence(m => m.BuscarMedicoPorCrm(int.Parse(medicoCadastro.Crm))).Returns((Medico)null).Returns(medico); this.usuarioRepositoryMock.Setup(u => u.ObterUsuarioPorEmail(medicoCadastro.Usuario.Email)).Returns((Usuario)null); this.enderecoRepositoryMock.Setup(e => e.BuscaIdEndereco(It.IsAny <Endereco>())).Returns(Guid.NewGuid()); this.enderecoRepositoryMock.Setup(e => e.CadastrarEndereco(It.IsAny <Endereco>())).Returns(true); this.medicoRepositoryMock.Setup(m => m.CadastrarMedico(It.IsAny <Medico>())).Returns(true); this.usuarioRepositoryMock.Setup(u => u.CadastrarUsuario(It.IsAny <Usuario>())).Returns(true); var medicoService = new MedicoService(this.medicoRepositoryMock.Object, this.usuarioRepositoryMock.Object, this.enderecoRepositoryMock.Object); // when var resultado = medicoService.CadastrarMedico(medicoCadastro); // then Assert.NotNull(resultado); Assert.True(resultado.Id == 1); }
[ResponseType(typeof(string))] //conteúdo retornado pelo serviço public HttpResponseMessage Cadastrar(UsuarioCadastroViewModel model) { //verificar se os dados da model estão corretos if (ModelState.IsValid) { try { Usuario usuario = Mapper.Map <Usuario>(model); usuarioBusiness.Cadastrar(usuario); //retornar um status de sucesso... return(Request.CreateResponse(HttpStatusCode.OK, $"Usuário {model.Nome} cadastrado com sucesso.")); } catch (Exception e) { //retorna um status de erro... return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e.Message)); } } else { //retornar um status de erro... return(Request.CreateResponse(HttpStatusCode.BadRequest, ModelStationValidation.GetErrors(ModelState))); } }
public void CadastrarAtendenteComCpfSemMascaraTest() { // given var usuarioCadastro = new UsuarioCadastroViewModel("*****@*****.**", "25d55ad283aa400af464c76d713c07ad", "Atendente"); var enderecoCadastro = new EnderecoViewModel("29500-000", "Rua nova", "123", "Casa", "Centro", "Alegre", "ES"); var atendenteCadastro = new AtendenteCadastroViewModel("Joana", new DateTime(1980, 2, 5), "F", "12245778912", "12.345.678-1", "*****@*****.**", "(34)98543-3241", enderecoCadastro, usuarioCadastro); var endereco = new Endereco(new Guid("1EF2F5CB-A04B-4761-3C44-08D78CC135ED"), "29500-000", "Rua nova", "123", "Casa", "Centro", "Alegre", "ES"); var atendente = new Atendente(new Guid("16E16A8D-469F-4286-A470-08D78CC0F920"), "Joana", new DateTime(1980, 2, 5), "F", "12245778912", "12.345.678-1", "*****@*****.**", "(34)98543-3241", endereco.IdEndereco); var usuarioAtendente = new Usuario(new Guid("1A7C25A0-896F-49DF-A75E-EE7DD53AECB9"), "*****@*****.**", "25d55ad283aa400af464c76d713c07ad", "Atendente", null, atendente); this.atendenteRepositoryMock.SetupSequence(a => a.BuscarAtendentePorCpf("122.457.789-12")).Returns((Atendente)null).Returns(atendente); this.atendenteRepositoryMock.Setup(a => a.BuscarAtendentePorRg(atendenteCadastro.Rg)).Returns((Atendente)null); this.usuarioRepositoryMock.Setup(u => u.ObterUsuarioPorEmail(atendenteCadastro.Usuario.Email)).Returns((Usuario)null); this.enderecoRepositoryMock.Setup(e => e.BuscaIdEndereco(It.IsAny <Endereco>())).Returns(Guid.NewGuid()); this.enderecoRepositoryMock.Setup(e => e.CadastrarEndereco(It.IsAny <Endereco>())).Returns(true); this.atendenteRepositoryMock.Setup(a => a.CadastrarAtendente(It.IsAny <Atendente>())).Returns(true); this.usuarioRepositoryMock.Setup(u => u.CadastrarUsuario(It.IsAny <Usuario>())).Returns(true); var atendenteService = new AtendenteService(this.atendenteRepositoryMock.Object, this.enderecoRepositoryMock.Object, this.usuarioRepositoryMock.Object); // when var resultado = atendenteService.CadastrarAtendente(atendenteCadastro); // then Assert.NotNull(resultado); Assert.True(resultado.Id == 1); }
// POST: Auth/Register public ActionResult Register(UsuarioCadastroViewModel viewModel) { if (User.Identity.IsAuthenticated) { return(RedirectToAction("Index", "Home")); } if (!ModelState.IsValid) { return(View(viewModel)); } if (db.Usuarios.Any(u => u.Login == viewModel.Login)) { ModelState.AddModelError(nameof(UsuarioCadastroViewModel.Login), "Esse login já está em uso."); return(View(viewModel)); } var usuario = new Usuario { Nome = viewModel.Nome, Login = viewModel.Login, Senha = Hash.Generate(viewModel.Senha) }; db.Usuarios.Add(usuario); db.SaveChanges(); TempData["message"] = "Cadastro realizado com sucesso. Efetue o login."; return(RedirectToActionPermanent("Login")); }
public async Task Adicionar(UsuarioCadastroViewModel usuarioCadastro) { _context.Usuarios.Add(usuarioCadastro.Usuario); await _context.SaveChangesAsync(); usuarioCadastro.Endereco.Usuario = await UsuarioPorEmail(usuarioCadastro.Usuario.Email, true); _context.EnderecoEntrega.Add(usuarioCadastro.Endereco); await _context.SaveChangesAsync(); }
public AtendenteCadastroViewModel(string nome, DateTime dataNascimento, string sexo, string cpf, string rg, string email, string telefone, EnderecoViewModel endereco, UsuarioCadastroViewModel usuario) { this.Nome = nome; this.DataNascimento = dataNascimento; this.Sexo = sexo; this.Cpf = cpf; this.Rg = rg; this.Email = email; this.Telefone = telefone; this.Endereco = endereco; this.Usuario = usuario; }
public Usuario Post([FromBody] UsuarioCadastroViewModel model) { Usuario usuario = new Usuario(); usuario.active = true; usuario.password = model.password; usuario.username = model.username; _Db.Usuarios.Add(usuario); _Db.SaveChanges(); return(usuario); }
public ActionResult Cadastro(UsuarioCadastroViewModel model) { if (ModelState.IsValid) { try { if (repository.HasLogin(model.Login)) { ViewBag.Mensagem = $"O login {model.Login} já foi cadastrado. Tente outro."; } else { Usuario u = new Usuario(); u.Nome = model.Nome; u.Email = model.Email; u.Login = model.Login; u.Senha = Criptografia.EncriptarSenhaMD5(model.Senha); if (model.Foto != null) { u.Foto = Guid.NewGuid().ToString() + Path.GetExtension(model.Foto.FileName); } else { u.Foto = "anonimous.jpg"; } u.IdPerfil = 2; repository.Insert(u); if (model.Foto != null) { //upload da foto.. string path = Server.MapPath("/images/users/"); model.Foto.SaveAs(path + u.Foto); } ViewBag.Mensagem = $"Usuário {u.Nome}, cadastrado com sucesso."; ModelState.Clear(); //limpar os campos do formulário.. return(RedirectToAction("Login", "Usuario")); } } catch (Exception e) { ViewBag.Mensagem = $"Ocorreu um erro:{e.Message}"; } } return(View()); }
public HttpResponseMessage Post(UsuarioCadastroViewModel model) { try { if (ModelState.IsValid) { if (repository.hasLogin(model.Login)) { return(Request.CreateResponse(HttpStatusCode.BadRequest, $"Já existe o login: {model.Login} cadastrado.")); } else { Usuario u = new Usuario(); u.Nome = model.Nome; u.Login = model.Login; u.Senha = Criptografia.EncriptarSenhaMD5(model.Senha); u.IdPerfil = model.IdPerfil; repository.Insert(u); return(Request.CreateResponse(HttpStatusCode.OK, "Usuário cadastrado com sucesso!")); } } else { Hashtable erros = new Hashtable(); foreach (var m in ModelState) { if (m.Value.Errors.Count > 0) { erros[m.Key] = m.Value.Errors.Select(e => e.ErrorMessage); } } return(Request.CreateResponse(HttpStatusCode.BadRequest, erros)); } } catch (Exception e) { return(Request.CreateResponse(HttpStatusCode.InternalServerError, e.Message)); } }
//método para receber a requisição //AJAX realizada pelo JQuery.. public JsonResult CadastrarUsuario(UsuarioCadastroViewModel model) { Usuario result = repositorio.ObterPermissaoUsuario(EmailUsuario()); if (result.Permissao == "Administrador") { if (ModelState.IsValid) { try { if (repositorio.ObterPorEmail(model.Email)) { return(Json($"Este email já foi cadastrado, por favor tente outro.")); } else { Usuario u = new Usuario(); u.Nome = model.Nome; u.Email = model.Email; u.Permissao = model.Permissao; u.Senha = Criptografia.MD5Encrypti(model.Senha); repositorio.Inserir(u); return(Json($"Usuário {u.Nome}, cadastrado com sucesso.")); } } catch (Exception e) { return(Json("Ocorreu um erro: " + e.Message)); } } else { Response.StatusCode = 400; //BAD REQUEST return(Json(ValidacaoUtil.ObterErros(ModelState))); } } else { return(Json($"Usuário não possui permissão.")); } }
public IActionResult Post([FromBody] UsuarioCadastroViewModel model) { if (ModelState.IsValid) { try { var usuario = Mapper.Map <Usuario>(model); business.Cadastrar(usuario); return(Ok($"Usuário {usuario.Nome}, cadastrado com sucesso")); } catch (Exception e) { return(StatusCode(500, e.Message)); } } else { return(BadRequest("Ocorrem erros de validação")); } }
public async Task <IActionResult> CriarUsuario([FromBody] UsuarioCadastroViewModel usuario) { IdentityResult result = null; if (ModelState.IsValid) { var user = new User { UserName = usuario.Usuario.Email, Email = usuario.Usuario.Email }; result = await _userManager.CreateAsync(user, usuario.Usuario.Senha); if (!result.Succeeded) { await _usuarioRepository.Adicionar(usuario); var errors = result.Errors.Select(e => e.Description); return(BadRequest(errors)); } await _userManager.AddToRoleAsync(user, "Administrator"); } return(Ok(result.Succeeded)); }
public ActionResult Cadastro(UsuarioCadastroViewModel model) { if (ModelState.IsValid) { try { Usuario usuario = new Usuario(); usuario.Login = model.Login; usuario.Nome = model.Nome; usuario.Senha = Criptografia.EncriptarSenha(model.Senha); UsuarioRepositorio rep = new UsuarioRepositorio(); if (!rep.HasLogin(usuario.Login)) { rep.Insert(usuario); ViewBag.Mensagem = $"Usuário {usuario.Login}, foi cadastrado com sucesso !"; } else { throw new Exception($"Usuário {usuario.Login} já existe no sistema, por favor selecione outro !"); } ModelState.Clear(); } catch (Exception ex) { ViewBag.Mensagem = "Erro:" + ex.Message; } } return(View()); }
public IActionResult Post([FromBody] UsuarioCadastroViewModel model) { if (ModelState.IsValid) { try { var u = Mapper.Map <Usuario>(model); u.Senha = Criptografia.EncriptarSenhaMD5(u.Senha); repository.Insert(u); return(Ok("Usuário cadastrado com sucesso.")); } catch (Exception e) { return(StatusCode(500, e.Message)); } } else { return(BadRequest(ModelState)); } }
public ActionResult Index(UsuarioCadastroViewModel model) { return(View()); }