コード例 #1
0
        public IActionResult Patch(int id, FuncionarioModel editedModel)
        {
            try
            {
                Funcionario currentModel = _funcionarioBusiness.Get(id);

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

                if (!editedModel.ValidPassword())
                {
                    return(BadRequest("A senha informada não é válida.\nDeve conter 6 ou mais caracteres."));
                }

                if (editedModel.SenhasIguais(currentModel.Senha))
                {
                    return(BadRequest("A senha informada não é válida.\nTente outra senha."));
                }

                _funcionarioBusiness.TrocarSenha(currentModel, editedModel.Senha);

                return(Ok(FuncionarioModel.ToModel(currentModel).ToBody()));
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex.Message));
            }
        }
コード例 #2
0
        public IActionResult Post(FuncionarioModel newModel)
        {
            try
            {
                if (newModel != null && newModel.IsValid())
                {
                    newModel.Cadastro = DateTime.Now;
                    newModel.Ativo    = true;
                    _funcionarioBusiness.Add(newModel.ToDomain());
                    return(Ok(newModel.ToBody()));
                }

                if (!newModel.ValidPassword())
                {
                    return(BadRequest("A senha informada não é válida.\nDeve conter 6 ou mais caracteres."));
                }

                return(BadRequest("Preencha corretamente todos os campos do funcionário."));
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex.Message));
            }
        }