Beispiel #1
0
        public Resultado Atualizar(UsuarioUpdateModel model)
        {
            Resultado resultado = DadosValidos(model);

            resultado.Acao = "Atualização de Usuário";

            if (resultado.Inconsistencias.Count == 0)
            {
                Usuario usuario = _data.Obter(model.ID);

                if (usuario == null)
                {
                    resultado.Inconsistencias.Add(
                        "Usuário não encontrado");
                }
                else
                {
                    //Só pode atualizar o nome
                    usuario.Nome = model.Nome;
                    _data.Salvar(usuario);
                }
            }

            return(resultado);
        }
Beispiel #2
0
        public void Put()
        {
            this.DataCreate();

            var list = _controller.Get();

            Assert.NotNull(list);
            Assert.NotEmpty(list);
            var items = Assert.IsType <List <UsuarioModel> >(list);

            Assert.Single(items);

            var usuario = items.First();

            var nomeAntigo = usuario.Nome;
            var nome       = "James Lavanda";

            UsuarioUpdateModel model = new UsuarioUpdateModel()
            {
                ID   = usuario.ID,
                Nome = nome
            };

            // Act
            var result = _controller.Put(model);

            // Assert
            Assert.NotNull(result);
            var item = Assert.IsType <Resultado>(result);

            Assert.True(item.Sucesso);
            Assert.Empty(item.Inconsistencias);

            var resultGet = _controller.Get();

            Assert.NotNull(resultGet);
            Assert.NotEmpty(resultGet);
            var itemsResult = Assert.IsType <List <UsuarioModel> >(resultGet);

            Assert.Single(itemsResult);

            var usuarioResult = itemsResult.First();

            Assert.Equal(nome, usuarioResult.Nome);

            //Back
            model.Nome = nomeAntigo;
            result     = _controller.Put(model);
            Assert.NotNull(result);
            Assert.True(item.Sucesso);
            Assert.Empty(item.Inconsistencias);
        }
Beispiel #3
0
        public async Task <IActionResult> Actualizar([FromBody] UsuarioUpdateModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (model.Id <= 0)
            {
                return(BadRequest());
            }

            var fechaHora = DateTime.Now;
            var usuario   = await _context.Usuarios.FirstOrDefaultAsync(u => u.Id == model.Id);

            if (usuario == null)
            {
                return(NotFound());
            }

            usuario.rolId      = model.rolId;
            usuario.personaId  = model.personaId;
            usuario.userid     = model.userid;
            usuario.telefono   = model.telefono;
            usuario.email      = model.email.ToLower();
            usuario.pxch       = model.pxch;
            usuario.iduserumod = model.iduserumod;
            usuario.fecumod    = fechaHora;


            if (model.act_password == true)
            {
                CrearPasswordHash(model.password, out byte[] passwordHash, out byte[] passwordSalt);
                usuario.password_hash = passwordHash;
                usuario.password_salt = passwordSalt;
            }

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                // Guardar Excepción
                return(BadRequest());
            }

            return(Ok());
        }
Beispiel #4
0
        private Resultado DadosValidos(UsuarioUpdateModel model)
        {
            var resultado = new Resultado();

            if (model == null)
            {
                resultado.Inconsistencias.Add(
                    "Preencha os Dados do Usuário");
            }
            else
            {
                if (String.IsNullOrWhiteSpace(model.Nome))
                {
                    resultado.Inconsistencias.Add(
                        "Preencha o Nome do Usuário");
                }
            }

            return(resultado);
        }
Beispiel #5
0
 public Resultado Put([FromBody] UsuarioUpdateModel model)
 {
     return(_service.Atualizar(model));
 }