Esempio n. 1
0
        public async Task <IActionResult> CrearUsuario(UsuarioCreationDto dto)
        {
            if (await _usuarioRepositorio.VerificarSiExiste(dto.Usuario))
            {
                return(Ok("El Usuario que está intentando crear ya existe"));
            }


            var persona = _mapper.Map <PersonaDto>(dto.Persona);

            var nuevoUsuario = new UsuarioDto
            {
                Usuario  = dto.Usuario,
                Password = dto.Password,
                Persona  = persona
            };

            await _usuarioRepositorio.Crear(nuevoUsuario);

            return(Ok(dto));
        }
Esempio n. 2
0
        public HttpResponseMessage Post([FromBody] UsuarioCreationDto usuario)
        {
            if (usuario == null)
            {
                return(Request.CreateResponse(HttpStatusCode.NotFound));
            }

            if (usuario.Nome == usuario.Sobrenome)
            {
                ModelState.AddModelError("Sobrenome", "O sobrenome informado deverá ser diferente do nome...");
            }

            if (!ModelState.IsValid)
            {
                return(Request.CreateResponse(HttpStatusCode.NotFound));
            }

            var finalUsuario = AutoMapper.Mapper.Map <Entities.Usuario>(usuario);

            _usuarioRepository.AddUsuario(finalUsuario);

            if (!_usuarioRepository.Save())
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, "Ocorreu um problema com a sua solicitação..."));
            }

            _usuarioRepository.AddDetalheUsuario(finalUsuario.Id, new Entities.DetalheUsuario()
            {
                UsuarioId = finalUsuario.Id, Telefone = usuario.Telefone, Endereco = usuario.Endereco
            });
            if (!_usuarioRepository.Save())
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, "Ocorreu um problema com a sua solicitação..."));
            }
            var createUsuarioToReturn = AutoMapper.Mapper.Map <ViewModels.UsuarioDto>(finalUsuario);

            return(Request.CreateResponse(HttpStatusCode.Created, createUsuarioToReturn));
        }