コード例 #1
0
        public async Task <IActionResult> Update([FromBody] Models.DadosAcessoPut pDadosAcesso)
        {
            DadosAcessoModelValidator validator = new DadosAcessoModelValidator();
            var dadosAcesso = _mapper.Map <Models.DadosAcessoPut, Model.Models.DadosAcesso>(pDadosAcesso);

            if (dadosAcesso.CpfCnpj != 0)
            {
                _logger.LogInformation(LoggingEvents.GetItem, $"Buscando Dados de Acesso pelo CPF {pDadosAcesso.CpfCnpj}");

                var item = await _DadosAcessoServico.Read(pDadosAcesso.CpfCnpj);

                if (item == null)//QUERY RETORNOU NULA, NÃO HÁ O CPF NA BASE DE DADOS
                {
                    var message = Mensagem.GetMensagem("CpfInexistente");
                    _logger.LogWarning(message);

                    return(Ok(new
                    {
                        Codigo = message.Split('-')[0],
                        Mensagem = message.Split('-')[1]
                    }));
                }
                else//DADOS ATUALIZADOS
                {
                    //var dadosAcesso = await _mapper.Map<Task<IEnumerable<DadosAcesso>>, Task<IEnumerable<DadosAcessoViewModel>>>(_DadosAcessoServico.Update(pDadosAcesso));
                    IActionResult result = Ok(await _DadosAcessoServico.Update(dadosAcesso));
                    return(StatusCode(200, new
                    {
                        Mensagem = "Dados atualizados com sucesso!"
                    }));
                };
            }
            else//MODELO FORA DO FORMATO ESPERADO
            {
                return(StatusCode(503, new
                {
                    Mensagem = "CPF CNPJ Inválido"
                }));
            }
        }
コード例 #2
0
        public async Task <IActionResult> Create([FromBody] Models.DadosAcessoPost pDadosAcesso)
        {
            DadosAcessoModelValidator validator = new DadosAcessoModelValidator();
            ValidationResult          results   = validator.Validate(_mapper.Map <Models.DadosAcessoPost, Model.Models.DadosAcesso>(pDadosAcesso));

            if (results.IsValid)
            {
                _logger.LogInformation(LoggingEvents.GetItem, $"Listando os Dados de Acesso pelo CPF {pDadosAcesso.CpfCnpj}");
                var dadosAcesso = await _mapper.Map <Task <Model.Models.DadosAcesso>, Task <Models.DadosAcessoPost> >(_DadosAcessoServico.Read(pDadosAcesso.CpfCnpj));

                if (dadosAcesso == null)
                {
                    if (Task.Run(() => _DadosAcessoServico.Create(_mapper.Map <Models.DadosAcessoPost, Model.Models.DadosAcesso>(pDadosAcesso))).Result)
                    {
                        _logger.LogInformation(LoggingEvents.InsertItem, $"CPF {pDadosAcesso.CpfCnpj} criado com sucesso");

                        var message = Mensagem.GetMensagem("DadosAcessoCriados");

                        return(StatusCode(200, new
                        {
                            Mensagem = message.Split('-')[1]
                        }));
                    }
                    else
                    {
                        var message = results.Errors.Select(e => e.ErrorMessage).FirstOrDefault();
                        _logger.LogError("Dados de acesso inválidos." + message);

                        return(StatusCode(503, new
                        {
                            Codigo = message.Split('-')[0],
                            Mensagem = message.Split('-')[1]
                        }));
                    }
                }
                else if (dadosAcesso != null)
                {
                    //Já existe só pode atualizar o Assessor
                    IActionResult result = Ok(await _DadosAcessoServico.Update(_mapper.Map <Models.DadosAcessoPost, Model.Models.DadosAcesso>(pDadosAcesso)));
                    return(StatusCode(200, new
                    {
                        Mensagem = "Dados atualizados com sucesso!"
                    }));
                }
                else
                {
                    _logger.LogInformation(LoggingEvents.InsertItem, $"Erro ao tentar criar os dados acesso do CPF {pDadosAcesso.CpfCnpj}");

                    var message = Mensagem.GetMensagem("ErroCriarDadosAcesso");

                    return(StatusCode(503, new
                    {
                        Codigo = message.Split('-')[0],
                        Mensagem = message.Split('-')[1]
                    }));
                }
            }
            else
            {
                var message = results.Errors.Select(e => e.ErrorMessage).FirstOrDefault();
                _logger.LogError("Dados de acesso inválidos." + message);

                return(StatusCode(503, new
                {
                    Codigo = message.Split('-')[0],
                    Mensagem = message.Split('-')[1]
                }));
            }
        }