Пример #1
0
        public IEnumerable <SolicitacaoConsultaViewModel> Filtrar(SolicitacaoFiltroViewModel filtro, string campo, string texto, int usuarioId, bool contem)
        {
            var sb = new StringBuilder();

            string sTexto = "";

            sTexto = "'" + texto + "%'";
            if (contem)
            {
                sTexto = "'%" + texto + "%'";
            }

            sb.AppendLine(" SELECT");
            sb.AppendLine("  Sol_Id as Id,");
            sb.AppendLine("  Sol_Data as Data,");
            sb.AppendLine("  Sol_Hora as Hora,");
            sb.AppendLine("  Sol_Cliente as ClienteId,");
            sb.AppendLine("  Sol_Status as StatusId,");
            sb.AppendLine("  Sol_Titulo as Titulo,");
            sb.AppendLine("  CASE Sol_Nivel");
            sb.AppendLine("    WHEN 1 THEN '1-Baixo'");
            sb.AppendLine("    WHEN 2 THEN '2-Normal'");
            sb.AppendLine("    WHEN 3 THEN '3-Alto'");
            sb.AppendLine("    WHEN 4 THEN '4-Crítico'");
            sb.AppendLine("  END AS Nivel,");
            sb.AppendLine("  Cli_Codigo as ClienteCodigo,");
            sb.AppendLine("  Cli_Nome as RazaoSocial,");
            sb.AppendLine("  Cli_Fantasia as NomeFantasia,");
            sb.AppendLine("  Sta_Nome as StatusNome,");
            sb.AppendLine("  Tip_Nome as TipoNome,");
            sb.AppendLine("  Ver_Versao as Versao");
            sb.AppendLine(" FROM Solicitacao");
            sb.AppendLine("  INNER JOIN Cliente ON Sol_Cliente = Cli_Id");
            sb.AppendLine("  INNER JOIN Status ON Sol_Status = Sta_Id");
            sb.AppendLine("  LEFT JOIN Tipo ON Sol_Tipo = Tip_Id");
            sb.AppendLine("  LEFT JOIN Versao On Sol_VersaoId = Ver_Id");

            if (!string.IsNullOrWhiteSpace(texto))
            {
                sb.AppendLine(" WHERE " + campo + " LIKE " + sTexto);
            }
            else
            {
                sb.AppendLine("WHERE Sol_Id > 0");
            }

            sb.AppendLine(FiltrarDados(usuarioId, filtro));

            //_rep.context.Database.SqlQuery<SolicitacaoConsulta>(sb.ToString());

            var lista = _repositorioConsulta.GetAll(sb.ToString());

            return(lista);
        }
 public IEnumerable <SolicitacaoConsultaViewModel> Filtrar([FromBody] SolicitacaoFiltroViewModel filtro, string campo, string texto, int usuarioId, bool contem = true)
 {
     try
     {
         return(_solicitacaoServico.Filtrar(filtro, campo, texto, usuarioId, contem));
     }
     catch (Exception ex)
     {
         throw new Exception(ex.Message);
     }
 }
Пример #3
0
 public IEnumerable <SolicitacaoConsultaViewModel> Filtrar(SolicitacaoFiltroViewModel filtro, string campo, string texto, int usuarioId, bool contem)
 {
     return(_solicitacaoRepositorioDapper.Filtrar(filtro, campo, texto, usuarioId, contem));
 }
Пример #4
0
        private string FiltrarDados(int idUsuario, SolicitacaoFiltroViewModel filtro)
        {
            var usuarioCliente = new UsuarioEF();
            var sb             = new StringBuilder();

            sb.AppendLine(usuarioCliente.PermissaoUsuario(idUsuario));

            if ((!string.IsNullOrWhiteSpace(filtro.DataInicial)) && (filtro.DataInicial.Trim() != "/  /"))
            {
                sb.AppendLine(" AND Sol_Data >=" + Funcoes.DataIngles(filtro.DataInicial));
            }

            if ((!string.IsNullOrWhiteSpace(filtro.DataFinal)) && (filtro.DataFinal.Trim() != "/  /"))
            {
                sb.AppendLine(" AND Sol_Data <=" + Funcoes.DataIngles(filtro.DataFinal));
            }

            if (!string.IsNullOrWhiteSpace(filtro.IdUsuarioAbertura))
            {
                sb.AppendLine(" AND Sol_UsuarioAbertura IN " + filtro.IdUsuarioAbertura);
            }

            if (!string.IsNullOrWhiteSpace(filtro.IdCliente))
            {
                sb.AppendLine(" AND Sol_Cliente IN " + filtro.IdCliente);
            }

            if (!string.IsNullOrWhiteSpace(filtro.IdModulo))
            {
                sb.AppendLine(" AND Sol_Modulo IN " + filtro.IdModulo);
            }

            if (!string.IsNullOrWhiteSpace(filtro.IdProduto))
            {
                sb.AppendLine(" AND Sol_Produto IN " + filtro.IdProduto);
            }

            if (!string.IsNullOrWhiteSpace(filtro.IdAnalista))
            {
                sb.AppendLine(" AND Sol_Analista IN " + filtro.IdAnalista);
            }

            if (!string.IsNullOrWhiteSpace(filtro.IdTipo))
            {
                sb.AppendLine(" AND Sol_Tipo IN " + filtro.IdTipo);
            }

            if (!string.IsNullOrWhiteSpace(filtro.IdDesenvolvedor))
            {
                sb.AppendLine(" AND Sol_Desenvolvedor IN " + filtro.IdDesenvolvedor);
            }

            if (!string.IsNullOrWhiteSpace(filtro.IdStatus))
            {
                sb.AppendLine(" AND Sol_Status IN " + filtro.IdStatus);
            }

            //if (filtro.Nivel < 5)
            //    sb.AppendLine(" AND Sol_Nivel = " + filtro.Nivel);

            //if (filtro.ClienteFiltro.UsuarioId != "")
            //    sb.AppendLine(" AND Cli_Usuario IN " + filtro.ClienteFiltro.UsuarioId);

            if (!string.IsNullOrWhiteSpace(filtro.IdVersao))
            {
                sb.AppendLine(" AND Sol_VersaoId IN " + filtro.IdVersao);
            }

            if (filtro.Id > 0)
            {
                sb.AppendLine(" AND Sol_Id = " + filtro.Id);
            }

            return(sb.ToString());
        }
Пример #5
0
        public SolicitacaoConsultaViewModel[] Filtrar(SolicitacaoFiltroViewModel filtro, string campo, string texto, int usuarioId, bool contem)
        {
            string url = Constantes.URL + "solicitacao/Filtrar?campo={0}&texto={1}&usuarioId={2}&contem={3}";

            return(new Operacao <SolicitacaoConsultaViewModel>().ObjetoToJSon(string.Format(url, campo, texto, usuarioId, contem), filtro));
        }