public async Task <EnviarAvaliacaoLojaRS> AdicionarAvaliacaoLoja(EnviarAvaliacaoLojaRQ request) { EnviarAvaliacaoLojaRS response = request.AdicionarAvaliacaoLojaValidar(); try { if (response.Valido) { if (response.Mensagens.All(m => m.Tipo == TipoMensagem.Negocio)) { var addAvaliacao = await avaliacaoService.EnviarAvaliacaoLoja(request); response.CodigoRetorno = addAvaliacao; } } } catch (Exception ex) { var jsonRequest = JsonConvert.SerializeObject(request); logService.AdicionarLogErro("AdicionarAvaliacaoLoja", response.ProtocoloRetorno.ToString(), CodigoMensagem.ERRO_APLICAO.CodigoErro, CodigoMensagem.ERRO_APLICAO.SetFormat(string.Format("MENSAGEM={0}\nINNER_EXCEPTION={1}\nSTACK_TRACE={2}\n JSON REQUEST=={3}", ex.Message, (ex.InnerException != null ? ex.InnerException.ToString() : ""), ex.StackTrace.ToString()), jsonRequest).Descricao, TipoMensagem.ErroAplicacao); response.AdicionarMensagemErro(CodigoMensagem.ERRO_APLICAO_GENERICO.CodigoErro, CodigoMensagem.ERRO_APLICAO_GENERICO.Descricao, TipoMensagem.ErroAplicacao); } response.Valido = response.Mensagens.All(m => m.Tipo == TipoMensagem.Negocio); return(response); }
public static EnviarAvaliacaoLojaRS AdicionarAvaliacaoLojaValidar(this EnviarAvaliacaoLojaRQ request) { var response = new EnviarAvaliacaoLojaRS(); response.Mensagens = new System.Collections.Generic.List <Mensagem>(); response.ProtocoloRetorno = Guid.NewGuid(); if (request == null && request.Avaliacao == null && request.Loja == null) { response.AdicionarMensagemErro(CodigoMensagem.REQUEST_INVALIDO.CodigoErro, CodigoMensagem.REQUEST_INVALIDO.Descricao, TipoMensagem.ErroValidacao); response.Valido = false; return(response); } if (string.IsNullOrEmpty(request.Loja.LojaCodigo)) { response.AdicionarMensagemErro(CodigoMensagem.NAO_INFORMADO_ID_LOJA.CodigoErro, CodigoMensagem.NAO_INFORMADO_ID_LOJA.Descricao, TipoMensagem.ErroValidacao); } if (!string.IsNullOrEmpty(request.Loja.LojaCodigo) && request.Loja.LojaCodigo.ToLower().Equals("string")) { response.AdicionarMensagemErro(CodigoMensagem.NAO_INFORMADO_ID_LOJA.CodigoErro, CodigoMensagem.NAO_INFORMADO_ID_LOJA.Descricao, TipoMensagem.ErroValidacao); } if (string.IsNullOrEmpty(request.Loja.LojaNome)) { response.AdicionarMensagemErro(CodigoMensagem.NAO_INFORMADO_NOME_LOJA.CodigoErro, CodigoMensagem.NAO_INFORMADO_NOME_LOJA.Descricao, TipoMensagem.ErroValidacao); } if (!string.IsNullOrEmpty(request.Loja.LojaNome) && request.Loja.LojaNome.ToLower().Equals("string")) { response.AdicionarMensagemErro(CodigoMensagem.NAO_INFORMADO_NOME_LOJA.CodigoErro, CodigoMensagem.NAO_INFORMADO_NOME_LOJA.Descricao, TipoMensagem.ErroValidacao); } if (request.Avaliacao.ClienteClassificacao <= 0 || request.Avaliacao.ClienteClassificacao > 5) { response.AdicionarMensagemErro(CodigoMensagem.AVALIACAO_GERAL_INVALIDO.CodigoErro, CodigoMensagem.AVALIACAO_GERAL_INVALIDO.Descricao, TipoMensagem.ErroValidacao); } if (string.IsNullOrWhiteSpace(request.Avaliacao.ClienteEmail.IfEmptyOrWhiteSpace("")) || string.IsNullOrWhiteSpace(request.Avaliacao.ClienteNome.IfEmptyOrWhiteSpace("")) || string.IsNullOrWhiteSpace(request.Avaliacao.ClienteComentario.IfEmptyOrWhiteSpace(""))) { response.AdicionarMensagemErro(CodigoMensagem.NAO_INFORMADO_CAMPOS.CodigoErro, CodigoMensagem.NAO_INFORMADO_CAMPOS.SetFormat("Nome, email ou comentários").Descricao, TipoMensagem.ErroValidacao); } response.Valido = response.Mensagens.Count == 0; return(response); }