Ejemplo n.º 1
0
        public async Task <EnviarAvaliacaoProdutoRS> EnviarAvaliacaoProduto(EnviarAvaliacaoProdutoRQ request)
        {
            try
            {
                if (request.Authorization == null)
                {
                    var token = Request.Headers.GetValues("Authorization").FirstOrDefault();
                    request.Authorization = token;
                }

                var container = new UnityContainer();
                container.RegisterType <IClienteRepository, ClienteRepository>();
                var clienteService = container.Resolve <ClienteRepository>();
                if (!clienteService.CheckTokenAuthorization(request.Authorization))
                {
                    return(new EnviarAvaliacaoProdutoRS
                    {
                        CodigoRetorno = 401,
                        Mensagens = new List <Messages.Mensagem> {
                            new Messages.Mensagem {
                                Descricao = "Token invalido", Tipo = Messages.TipoMensagem.ErroAplicacao, CodigoErro = "-1"
                            }
                        },
                        Valido = false,
                        StatusCode = System.Net.HttpStatusCode.BadRequest
                    });
                }

                return(await _avaliacaoService.AdicionarAvaliacaoProduto(request));
            }
            catch (Exception ex)
            {
                return(new EnviarAvaliacaoProdutoRS
                {
                    CodigoRetorno = 400,
                    Mensagens = new List <Messages.Mensagem> {
                        new Messages.Mensagem {
                            Descricao = ex.Message, Tipo = Messages.TipoMensagem.ErroAplicacao, CodigoErro = "-1"
                        }
                    },
                    Valido = false,
                    StatusCode = System.Net.HttpStatusCode.BadRequest
                });
            }
        }