コード例 #1
0
        private string Filtro(int idUsuario, OrcamentoFiltro filtro)
        {
            var sb = new StringBuilder();

            if (filtro.DataInicial != null)
            {
                sb.AppendLine(" AND Orc_Data >= " + Funcoes.DataIngles(filtro.DataInicial));
            }
            if (filtro.DataFinal != null)
            {
                sb.AppendLine(" AND Orc_Data <= " + Funcoes.DataIngles(filtro.DataFinal));
            }
            if (filtro.DataSituacaoInicial != null)
            {
                sb.AppendLine(" AND Orc_DataSituacao >= " + Funcoes.DataIngles(filtro.DataSituacaoInicial));
            }
            if (filtro.DataSituacaoFinal != null)
            {
                sb.AppendLine(" AND Orc_DataSituacao <= " + Funcoes.DataIngles(filtro.DataSituacaoFinal));
            }
            if (filtro.CidadeId > 0)
            {
                sb.AppendLine(" AND Orc_Cidade = " + filtro.CidadeId);
            }
            if (filtro.ClienteId > 0)
            {
                sb.AppendLine(" AND Orc_Cliente <= " + filtro.ClienteId);
            }
            if (filtro.EmailEnviado == "S")
            {
                sb.AppendLine(" AND Orc_EmailEnviado = 1");
            }
            if (filtro.EmailEnviado == "N")
            {
                sb.AppendLine(" AND Orc_EmailEnviado = 0");
            }
            if (filtro.Situacao > 0)
            {
                sb.AppendLine(" AND Orc_Situacao = " + filtro.Situacao);
            }
            if (filtro.SubTipo > 0)
            {
                sb.AppendLine(" AND Orc_SubTipo = " + filtro.SubTipo);
            }
            if (filtro.TipoId > 0)
            {
                sb.AppendLine(" AND Orc_Tipo = " + filtro.TipoId);
            }
            if (filtro.UsuarioId > 0)
            {
                sb.AppendLine(" AND Orc_Usuario = " + filtro.UsuarioId);
            }
            if (filtro.Numero > 0)
            {
                sb.AppendLine(" AND Orc_Numero = " + filtro.Numero);
            }

            return(sb.ToString());
        }
コード例 #2
0
 public OrcamentoViewModel()
 {
     Filtro            = new OrcamentoFiltro();
     OrcamentoConsulta = new OrcamentoConsulta();
     Orcamento         = new Orcamento();
     Campos            = new List <OrcamentoCamposPesquisaViewModel>();
     ListaConsulta     = new List <OrcamentoConsulta>();
 }
コード例 #3
0
        public List <OrcamentoConsulta> Filtrar(int idUsuario, OrcamentoFiltro filtro, string campo, string texto)
        {
            var sb = new StringBuilder();

            sb.AppendLine("SELECT ");
            sb.AppendLine("Orc_Data as DataD,");
            sb.AppendLine("Orc_Id as Id,");
            sb.AppendLine("Orc_Numero as Numero,");
            sb.AppendLine("Orc_Situacao as SituacaoI,");
            sb.AppendLine("Orc_RazaoSocial as NomeCliente,");
            sb.AppendLine("Orc_EmailEnviado as EmailEnviadoB,");
            sb.AppendLine("Usu_Nome as NomeUsuario ");
            sb.AppendLine("FROM Orcamento");
            sb.AppendLine("LEFT JOIN Prospect ON Orc_Prospect = Pros_Id   ");
            sb.AppendLine("LEFT JOIN Usuario ON Orc_Usuario = Usu_Id   ");
            sb.AppendLine("LEFT JOIN Cliente ON Orc_Cliente = Cli_Id   ");
            sb.AppendLine("LEFT JOIN Cidade ON Orc_Cidade = Cid_Id   ");
            sb.AppendLine("LEFT JOIN Tipo ON Orc_Tipo = Tip_Id ");
            sb.AppendLine(" WHERE Orc_Id IS NOT NULL");
            sb.AppendLine(" AND " + campo + " like '%" + texto + "%'");

            sb.AppendLine(Filtro(idUsuario, filtro));

            sb.AppendLine(" AND EXISTS(");
            sb.AppendLine(" 	SELECT 1 FROM Usuario WHERE ((Cli_Revenda = Usu_Revenda) OR (Usu_Revenda IS NULL))");
            sb.AppendLine(" 	AND Usu_Id = "+ idUsuario + ")");

            sb.AppendLine(" AND EXISTS(");
            sb.AppendLine(" 	SELECT 1 FROM Usuario WHERE ((Cli_Id = Usu_Cliente) OR (Usu_Cliente IS NULL))");
            sb.AppendLine(" 	AND Usu_Id = "+ idUsuario + ")");

            if (!PermissaoOrcamentoUsuario(idUsuario))
            {
                sb.AppendLine(" AND Orc_Usuario = " + idUsuario);
            }


            List <OrcamentoConsulta> lista = _rep.context.Database.SqlQuery <OrcamentoConsulta>(sb.ToString()).ToList();

            var listaOrcamento = new List <OrcamentoConsulta>();

            foreach (var item in lista)
            {
                var    model        = new OrcamentoConsulta();
                string emailEnviado = "Não";
                if (item.EmailEnviadoB)
                {
                    emailEnviado = "Sim";
                }

                model.EmailEnviado = emailEnviado;
                model.Data         = item.DataD.ToString("dd/MM/yyyy");
                model.NomeCliente  = item.NomeCliente;
                model.NomeUsuario  = item.NomeUsuario;
                model.Numero       = item.Numero;
                model.Id           = item.Id;
                model.Situacao     = item.Situacao;

                listaOrcamento.Add(model);
            }

            return(listaOrcamento);
        }
コード例 #4
0
        private List <OrcamentoConsulta> Filtrar(OrcamentoViewModel model, OrcamentoFiltro filtro)
        {
            var lista = _servico.Filtrar(UsuarioId, filtro, model.Campo, model.Texto);

            return(lista);
        }
コード例 #5
0
        public List <OrcamentoConsulta> Filtrar(int idUsuario, OrcamentoFiltro filtro, string campo, string texto)
        {
            var sb = new StringBuilder();

            sb.AppendLine("SELECT ");
            sb.AppendLine("Orc_Data,");
            sb.AppendLine("Orc_Id,");
            sb.AppendLine("Orc_Numero,");
            sb.AppendLine("Orc_Situacao,");
            sb.AppendLine("Orc_RazaoSocial,");
            sb.AppendLine("Orc_EmailEnviado,");
            sb.AppendLine("Pros_Nome, ");
            sb.AppendLine("Usu_Nome, ");
            sb.AppendLine("Cli_Codigo, ");
            sb.AppendLine("Cli_Nome ");
            sb.AppendLine("FROM Orcamento");
            sb.AppendLine("LEFT JOIN Prospect ON Orc_Prospect = Pros_Id   ");
            sb.AppendLine("LEFT JOIN Usuario ON Orc_Usuario = Usu_Id   ");
            sb.AppendLine("LEFT JOIN Cliente ON Orc_Cliente = Cli_Id   ");
            sb.AppendLine("LEFT JOIN Cidade ON Orc_Cidade = Cid_Id   ");
            sb.AppendLine("LEFT JOIN Tipo ON Orc_Tipo = Tip_Id ");
            sb.AppendLine(" WHERE Orc_Id IS NOT NULL");
            sb.AppendLine(" AND " + campo + " like '%" + texto + "%'");

            sb.AppendLine(Filtro(idUsuario, filtro));

            sb.AppendLine(" AND EXISTS(");
            sb.AppendLine(" 	SELECT 1 FROM Usuario WHERE ((Cli_Revenda = Usu_Revenda) OR (Usu_Revenda IS NULL))");
            sb.AppendLine(" 	AND Usu_Id = "+ idUsuario + ")");

            sb.AppendLine(" AND EXISTS(");
            sb.AppendLine(" 	SELECT 1 FROM Usuario WHERE ((Cli_Id = Usu_Cliente) OR (Usu_Cliente IS NULL))");
            sb.AppendLine(" 	AND Usu_Id = "+ idUsuario + ")");

            if (!PermissaoOrcamentoUsuario(idUsuario))
            {
                sb.AppendLine(" AND Orc_Usuario = " + idUsuario);
            }

            var lista = new List <OrcamentoConsulta>();

            using (var db = new BancoADO())
            {
                db.RetornoReader(sb.ToString());

                while (db.Read())
                {
                    var model = new OrcamentoConsulta();

                    string emailEnviado = "Não";
                    if (db.CampoBool("Orc_EmailEnviado"))
                    {
                        emailEnviado = "Sim";
                    }

                    model.EmailEnviado = emailEnviado;
                    model.Data         = db.CampoData("Orc_Data").ToString("dd/MM/yyyy");
                    model.NomeCliente  = db.CampoStr("Cli_Nome");
                    model.NomeUsuario  = db.CampoStr("Usu_Nome");
                    model.Numero       = db.CampoInt32("Orc_Numero");
                    model.Id           = db.CampoInt32("Orc_Id");
                    model.Situacao     = db.CampoStr("Orc_Situacao");

                    lista.Add(model);
                }
                db.CloseReader();
            }
            return(lista);
        }
コード例 #6
0
 public List <OrcamentoConsulta> Filtrar(int idUsuario, OrcamentoFiltro filtro, string campo, string texto)
 {
     //return _repADO.Filtrar(idUsuario, filtro, campo, texto);
     return(_rep.Filtrar(idUsuario, filtro, campo, texto));
 }