示例#1
0
 protected ActionResult <TViewModel> TratarRetorno <TViewModel>(IResultadoApplication <TViewModel> resultado)
 {
     if (resultado.CodigoRetorno == CodigoRetornoEnum.Sucesso)
     {
         if (resultado.Mensagem != null && resultado.Data != null)
         {
             return(TratarRetornoComDadosEMensagem(resultado));
         }
         else
         {
             return(Ok(resultado.Data));
         }
     }
     else
     {
         if (resultado.Data != null)
         {
             return(TratarRetornoErroComDados(resultado));
         }
         else
         {
             return(TratarRetornoPadrao(resultado));
         }
     }
 }
示例#2
0
 protected ActionResult TratarRetornoArquivo(IResultadoApplication <MemoryStream> resultado, string nomeArquivo)
 {
     if (resultado.CodigoRetorno == CodigoRetornoEnum.Sucesso)
     {
         var mediaTypeHeaderValue = new MediaTypeHeaderValue("application/octet-stream");
         return(File(resultado.Data.GetBuffer(), mediaTypeHeaderValue.MediaType, nomeArquivo));
     }
     return(StatusCode((int)resultado.CodigoRetorno, resultado.Mensagem));
 }
示例#3
0
 protected ActionResult TratarRetorno(IResultadoApplication resultado)
 {
     if (resultado.CodigoRetorno == CodigoRetornoEnum.Sucesso && (resultado.Mensagem == null || resultado.Mensagem.Length == 0))
     {
         return(NoContent());
     }
     else
     {
         return(TratarRetornoPadrao(resultado));
     }
 }
示例#4
0
        protected ActionResult TratarRetornoPadrao(IResultadoApplication resultado)
        {
            switch (resultado.CodigoRetorno)
            {
            case CodigoRetornoEnum.NaoEncontrado:
                return(NotFound());

            case CodigoRetornoEnum.SemPermissao:
                return(Unauthorized());
            }
            return(StatusCode((int)resultado.CodigoRetorno, resultado.Mensagem));
        }
示例#5
0
        protected ActionResult <TViewModel> TratarRetornoErroComDados <TViewModel>(IResultadoApplication <TViewModel> resultado)
        {
            switch (resultado.CodigoRetorno)
            {
            case CodigoRetornoEnum.NaoEncontrado:
                return(NotFound());

            case CodigoRetornoEnum.SemPermissao:
                return(Unauthorized());
            }
            var objResponse = new
            {
                mensagens = resultado.Mensagem,
                dados     = resultado.Data
            };

            return(StatusCode((int)resultado.CodigoRetorno, objResponse));
        }
示例#6
0
 protected ActionResult <TViewModel> TratarRetornoComDadosEMensagem <TViewModel>(IResultadoApplication <TViewModel> resultado)
 {
     if (resultado.CodigoRetorno == CodigoRetornoEnum.Sucesso)
     {
         if (resultado.Mensagem != null && resultado.Data != null)
         {
             var objResponse = new
             {
                 mensagens = resultado.Mensagem,
                 dados     = resultado.Data
             };
             return(Ok(objResponse));
         }
         else
         {
             return(Ok(resultado.Data));
         }
     }
     else
     {
         if (resultado.Data != null)
         {
             return(TratarRetornoErroComDados(resultado));
         }
         else
         {
             return(TratarRetornoPadrao(resultado));
         }
     }
 }