コード例 #1
0
ファイル: daoConhecimento.cs プロジェクト: dramosti/Web
        /// <summary>
        /// get all
        /// </summary>
        /// <param name="sBaixa">ABERTO, FECHADO, AMBOS</param>
        /// <param name="sCAMPO"> CD_CONHECI, DT_EMISSAO, DS_DESTINATARIO,CD_NF</param>
        /// <param name="sParametro">IGUAL, MAIOR, MENOR, ENTRE</param>
        /// <param name="sValor1"></param>
        /// <param name="sValor2"></param>
        /// <returns></returns>
        public List<daoConhecimento> GetAll(string sBaixa, string sCAMPO, string sParametro, string sValor1, string sValor2)
        {
            List<daoConhecimento> objListaConhecimento = new List<daoConhecimento>();

            if (sValor1 != null)
            {
                if (sValor1 != "")
                {
                    if (sCAMPO.Equals("CD_NF"))
                    {
                        objListaConhecimento = PesquisaPorNF(sBaixa, sParametro, sValor1, sValor2);
                    }
                    else
                    {
                        #region BUSCA CONHECIMENTOS
                        sValor1 = sValor1.ToUpper();
                        sValor2 = (sValor2 != null ? sValor2.ToUpper() : ""); ;

                        List<CamposSelect> lCampos = new List<CamposSelect>();
                        StringBuilder sCampos = new StringBuilder();
                        sCampos.Append("SELECT ");
                        lCampos.Add(new CamposSelect { sCampo = "conhec.NR_LANC", sAlias = "NR_LANC" });
                        lCampos.Add(new CamposSelect { sCampo = "conhec.CD_CONHECI", sAlias = "CD_CONHECI" });
                        lCampos.Add(new CamposSelect { sCampo = "conhec.DT_EMISSAO", sAlias = "DT_EMISSAO" });
                        lCampos.Add(new CamposSelect { sCampo = "dest.nm_social", sAlias = "DS_DESTINATARIO" });
                        lCampos.Add(new CamposSelect { sCampo = "redesp.nm_social", sAlias = "DS_REDESPACHO" });
                        lCampos.Add(new CamposSelect { sCampo = "conhec.CD_RESPONS", sAlias = "CD_RESPONS" });
                        lCampos.Add(new CamposSelect { sCampo = "coalesce(ST_CONHECI,0)", sAlias = "ST_CONHECI" });
                        lCampos.Add(new CamposSelect { sCampo = "coalesce(DT_CANCCON, '')", sAlias = "DT_CANCCON" });
                        lCampos.Add(new CamposSelect { sCampo = "conhec.ST_BAIXA", sAlias = "ST_BAIXA" });
                        lCampos.Add(new CamposSelect { sCampo = "coalesce(conhec.DT_BAIXA,'')", sAlias = "DT_BAIXA" });
                        lCampos.Add(new CamposSelect { sCampo = "conhec.CD_CFOP", sAlias = "CD_CFOP" });
                        lCampos.Add(new CamposSelect { sCampo = "conhec.DS_COLETA", sAlias = "DS_COLETA" });
                        lCampos.Add(new CamposSelect { sCampo = "conhec.CD_UFCOLE", sAlias = "CD_UFCOLE" });
                        lCampos.Add(new CamposSelect { sCampo = "(case when coalesce(conhec.cd_ocor,'0') <> 0 then (select tabocorr.ds_ocor from tabocorr where conhec.cd_ocor = tabocorr.cd_ocor) else '' end)", sAlias = "DS_OCOR" });
                        lCampos.Add(new CamposSelect { sCampo = "coalesce(conhec.ds_texto,'')", sAlias = "DS_TEXTO" });
                        lCampos.Add(new CamposSelect { sCampo = "conhec.DS_ENDENTREGA", sAlias = "DS_ENDENTREGA" });
                        lCampos.Add(new CamposSelect { sCampo = "(case when coalesce(conhec.cd_motoris,0) <> 0 then (select motorista.nm_motoris from motorista where motorista.cd_motoris = conhec.cd_motoris) else 'S/NOME' end)", sAlias = "NM_MOTORIS" });
                        lCampos.Add(new CamposSelect { sCampo = "coalesce(veiculo.cd_cidplac,'')", sAlias = "cd_cidplac" });
                        lCampos.Add(new CamposSelect { sCampo = "coalesce(veiculo.cd_placa,'')", sAlias = "cd_placa" });
                        lCampos.Add(new CamposSelect { sCampo = "coalesce(veiculo.cd_modelo,'') ", sAlias = "cd_modelo" });

                        ConcatCampos(lCampos, sCampos);

                        StringBuilder sFrom = new StringBuilder();
                        sFrom.Append("FROM conhecim conhec left join remetent dest     on conhec.cd_destinat = dest.cd_remetent " + Environment.NewLine);
                        sFrom.Append("                     left join remetent redesp   on conhec.cd_redes = redesp.cd_remetent " + Environment.NewLine);
                        sFrom.Append("                     left join veiculo         on conhec.cd_veiculo = veiculo.cd_veiculo " + Environment.NewLine);

                        StringBuilder sWhere = new StringBuilder();
                        sWhere.Append("Where " + sCAMPO + " ");

                        string sLike = " Like '%{0}%' ";
                        string soutros = " {0} '{1}' ";
                        string sBetween = "{0} '{1}' and '{2}' ";

                        if (sCAMPO == "conhec.DT_EMISSAO")
                        {
                            sValor1 = (Convert.ToDateTime(sValor1)).ToString("dd.MM.yyyy");
                            if (sParametro == "between")
                            {
                                sValor2 = (Convert.ToDateTime(sValor2)).ToString("dd.MM.yyyy");
                            }
                        }
                        else if (sCAMPO == "conhec.CD_CONHECI")
                        {
                            sValor1 = sValor1.PadLeft(6, '0');
                            sValor2 = sValor2.PadLeft(6, '0');
                        }

                        switch (sParametro)
                        {
                            case "=":
                                {
                                    if (sCAMPO != "conhec.DT_EMISSAO") { sWhere.Append(string.Format(sLike, sValor1)); }
                                    else
                                    { sWhere.Append(string.Format(soutros, sParametro, sValor1)); }
                                }
                                break;
                            case ">": { sWhere.Append(string.Format(soutros, sParametro, sValor1)); }
                                break;
                            case "<": { sWhere.Append(string.Format(soutros, sParametro, sValor1)); }
                                break;
                            case "between": { sWhere.Append(string.Format(sBetween, sParametro, sValor1, sValor2)); }
                                break;
                            case "in": { sWhere.Append(string.Format(" in ('{0}','{1}') ", sValor1, sValor2)); }
                                break;
                        }

                        if (sBaixa != "A")
                        {
                            sWhere.Append(" and conhec.ST_BAIXA = '" + sBaixa + "'");
                        }

                        sWhere.Append(" and conhec.cd_remetent  = " + daoStatic.CD_CLIFOR + " ");

                        sWhere.Append(Environment.NewLine + " ORDER by conhec.dt_emissao desc,conhec.CD_CONHECI, conhec.st_baixa " + Environment.NewLine);

                        string sQuery = sCampos.ToString() + sFrom.ToString() + sWhere.ToString();

                        using (FbConnection Conn = new FbConnection(daoStatic.sConn))
                        {
                            try
                            {

                                Conn.Open();
                                using (FbCommand cmd = new FbCommand(sQuery, Conn))
                                {
                                    FbDataReader dr = cmd.ExecuteReader();
                                    while (dr.Read())
                                    {
                                        daoConhecimento objConhec = new daoConhecimento();
                                        objConhec.NR_LANC = dr["NR_LANC"].ToString();
                                        objConhec.CD_CONHECI = dr["CD_CONHECI"].ToString();
                                        objConhec.DT_EMISSAO = Convert.ToDateTime(dr["DT_EMISSAO"].ToString());
                                        objConhec.DS_DESTINATARIO = dr["DS_DESTINATARIO"].ToString();
                                        objConhec.DS_REDESPACHO = dr["DS_REDESPACHO"].ToString();
                                        objConhec.CD_RESPONS = dr["CD_RESPONS"].ToString();
                                        objConhec.ST_CONHECI = dr["ST_CONHECI"].ToString();
                                        objConhec.DT_CANCCON = dr["DT_CANCCON"].ToString();
                                        objConhec.ST_BAIXA = dr["ST_BAIXA"].ToString();
                                        objConhec.DT_BAIXA = dr["DT_BAIXA"].ToString();
                                        objConhec.DadosAdicionais.DS_TEXTO = dr["DS_TEXTO"].ToString();
                                        objConhec.DadosAdicionais.DS_OCOR = dr["DS_OCOR"].ToString();
                                        objConhec.DadosAdicionais.CD_CFOP = dr["CD_CFOP"].ToString();
                                        objConhec.DadosAdicionais.DS_COLETA = dr["DS_COLETA"].ToString();
                                        objConhec.DadosAdicionais.CD_UFCOLE = dr["CD_UFCOLE"].ToString();
                                        objConhec.DadosAdicionais.DS_ENDENTREGA = dr["DS_ENDENTREGA"].ToString();
                                        objConhec.Complemento.NM_MOTORIS = dr["NM_MOTORIS"].ToString();
                                        objConhec.Complemento.CD_CIDPLAC = dr["CD_CIDPLAC"].ToString();
                                        objConhec.Complemento.CD_PLACA = dr["CD_PLACA"].ToString();
                                        objConhec.Complemento.CD_MODELO = dr["CD_MODELO"].ToString();
                                        objListaConhecimento.Add(objConhec);
                                    }
                                }
                            }
                            catch (Exception ex)
                            {
                                throw ex;
                            }
                            finally
                            { Conn.Close(); }

                        }
                        #endregion
                    }
                }
            }

            return objListaConhecimento;
        }
コード例 #2
0
        /// <summary>
        /// get all
        /// </summary>
        /// <param name="sBaixa">ABERTO, FECHADO, AMBOS</param>
        /// <param name="sCAMPO"> CD_CONHECI, DT_EMISSAO, DS_DESTINATARIO,CD_NF</param>
        /// <param name="sParametro">IGUAL, MAIOR, MENOR, ENTRE</param>
        /// <param name="sValor1"></param>
        /// <param name="sValor2"></param>
        /// <returns></returns>
        public List <daoConhecimento> GetAll(string sBaixa, string sCAMPO, string sParametro, string sValor1, string sValor2)
        {
            List <daoConhecimento> objListaConhecimento = new List <daoConhecimento>();

            if (sValor1 != null)
            {
                if (sValor1 != "")
                {
                    if (sCAMPO.Equals("CD_NF"))
                    {
                        objListaConhecimento = PesquisaPorNF(sBaixa, sParametro, sValor1, sValor2);
                    }
                    else
                    {
                        #region BUSCA CONHECIMENTOS
                        sValor1 = sValor1.ToUpper();
                        sValor2 = (sValor2 != null ? sValor2.ToUpper() : "");;

                        List <CamposSelect> lCampos = new List <CamposSelect>();
                        StringBuilder       sCampos = new StringBuilder();
                        sCampos.Append("SELECT ");
                        lCampos.Add(new CamposSelect {
                            sCampo = "conhec.NR_LANC", sAlias = "NR_LANC"
                        });
                        lCampos.Add(new CamposSelect {
                            sCampo = "conhec.CD_CONHECI", sAlias = "CD_CONHECI"
                        });
                        lCampos.Add(new CamposSelect {
                            sCampo = "conhec.DT_EMISSAO", sAlias = "DT_EMISSAO"
                        });
                        lCampos.Add(new CamposSelect {
                            sCampo = "dest.nm_social", sAlias = "DS_DESTINATARIO"
                        });
                        lCampos.Add(new CamposSelect {
                            sCampo = "redesp.nm_social", sAlias = "DS_REDESPACHO"
                        });
                        lCampos.Add(new CamposSelect {
                            sCampo = "conhec.CD_RESPONS", sAlias = "CD_RESPONS"
                        });
                        lCampos.Add(new CamposSelect {
                            sCampo = "coalesce(ST_CONHECI,0)", sAlias = "ST_CONHECI"
                        });
                        lCampos.Add(new CamposSelect {
                            sCampo = "coalesce(DT_CANCCON, '')", sAlias = "DT_CANCCON"
                        });
                        lCampos.Add(new CamposSelect {
                            sCampo = "conhec.ST_BAIXA", sAlias = "ST_BAIXA"
                        });
                        lCampos.Add(new CamposSelect {
                            sCampo = "coalesce(conhec.DT_BAIXA,'')", sAlias = "DT_BAIXA"
                        });
                        lCampos.Add(new CamposSelect {
                            sCampo = "conhec.CD_CFOP", sAlias = "CD_CFOP"
                        });
                        lCampos.Add(new CamposSelect {
                            sCampo = "conhec.DS_COLETA", sAlias = "DS_COLETA"
                        });
                        lCampos.Add(new CamposSelect {
                            sCampo = "conhec.CD_UFCOLE", sAlias = "CD_UFCOLE"
                        });
                        lCampos.Add(new CamposSelect {
                            sCampo = "(case when coalesce(conhec.cd_ocor,'0') <> 0 then (select tabocorr.ds_ocor from tabocorr where conhec.cd_ocor = tabocorr.cd_ocor) else '' end)", sAlias = "DS_OCOR"
                        });
                        lCampos.Add(new CamposSelect {
                            sCampo = "coalesce(conhec.ds_texto,'')", sAlias = "DS_TEXTO"
                        });
                        lCampos.Add(new CamposSelect {
                            sCampo = "conhec.DS_ENDENTREGA", sAlias = "DS_ENDENTREGA"
                        });
                        lCampos.Add(new CamposSelect {
                            sCampo = "(case when coalesce(conhec.cd_motoris,0) <> 0 then (select motorista.nm_motoris from motorista where motorista.cd_motoris = conhec.cd_motoris) else 'S/NOME' end)", sAlias = "NM_MOTORIS"
                        });
                        lCampos.Add(new CamposSelect {
                            sCampo = "coalesce(veiculo.cd_cidplac,'')", sAlias = "cd_cidplac"
                        });
                        lCampos.Add(new CamposSelect {
                            sCampo = "coalesce(veiculo.cd_placa,'')", sAlias = "cd_placa"
                        });
                        lCampos.Add(new CamposSelect {
                            sCampo = "coalesce(veiculo.cd_modelo,'') ", sAlias = "cd_modelo"
                        });

                        ConcatCampos(lCampos, sCampos);

                        StringBuilder sFrom = new StringBuilder();
                        sFrom.Append("FROM conhecim conhec left join remetent dest     on conhec.cd_destinat = dest.cd_remetent " + Environment.NewLine);
                        sFrom.Append("                     left join remetent redesp   on conhec.cd_redes = redesp.cd_remetent " + Environment.NewLine);
                        sFrom.Append("                     left join veiculo         on conhec.cd_veiculo = veiculo.cd_veiculo " + Environment.NewLine);

                        StringBuilder sWhere = new StringBuilder();
                        sWhere.Append("Where " + sCAMPO + " ");

                        string sLike    = " Like '%{0}%' ";
                        string soutros  = " {0} '{1}' ";
                        string sBetween = "{0} '{1}' and '{2}' ";


                        if (sCAMPO == "conhec.DT_EMISSAO")
                        {
                            sValor1 = (Convert.ToDateTime(sValor1)).ToString("dd.MM.yyyy");
                            if (sParametro == "between")
                            {
                                sValor2 = (Convert.ToDateTime(sValor2)).ToString("dd.MM.yyyy");
                            }
                        }
                        else if (sCAMPO == "conhec.CD_CONHECI")
                        {
                            sValor1 = sValor1.PadLeft(6, '0');
                            sValor2 = sValor2.PadLeft(6, '0');
                        }

                        switch (sParametro)
                        {
                        case "=":
                        {
                            if (sCAMPO != "conhec.DT_EMISSAO")
                            {
                                sWhere.Append(string.Format(sLike, sValor1));
                            }
                            else
                            {
                                sWhere.Append(string.Format(soutros, sParametro, sValor1));
                            }
                        }
                        break;

                        case ">": { sWhere.Append(string.Format(soutros, sParametro, sValor1)); }
                        break;

                        case "<": { sWhere.Append(string.Format(soutros, sParametro, sValor1)); }
                        break;

                        case "between": { sWhere.Append(string.Format(sBetween, sParametro, sValor1, sValor2)); }
                        break;

                        case "in": { sWhere.Append(string.Format(" in ('{0}','{1}') ", sValor1, sValor2)); }
                        break;
                        }

                        if (sBaixa != "A")
                        {
                            sWhere.Append(" and conhec.ST_BAIXA = '" + sBaixa + "'");
                        }

                        sWhere.Append(" and conhec.cd_remetent  = " + daoStatic.CD_CLIFOR + " ");

                        sWhere.Append(Environment.NewLine + " ORDER by conhec.dt_emissao desc,conhec.CD_CONHECI, conhec.st_baixa " + Environment.NewLine);


                        string sQuery = sCampos.ToString() + sFrom.ToString() + sWhere.ToString();

                        using (FbConnection Conn = new FbConnection(daoStatic.sConn))
                        {
                            try
                            {
                                Conn.Open();
                                using (FbCommand cmd = new FbCommand(sQuery, Conn))
                                {
                                    FbDataReader dr = cmd.ExecuteReader();
                                    while (dr.Read())
                                    {
                                        daoConhecimento objConhec = new daoConhecimento();
                                        objConhec.NR_LANC                       = dr["NR_LANC"].ToString();
                                        objConhec.CD_CONHECI                    = dr["CD_CONHECI"].ToString();
                                        objConhec.DT_EMISSAO                    = Convert.ToDateTime(dr["DT_EMISSAO"].ToString());
                                        objConhec.DS_DESTINATARIO               = dr["DS_DESTINATARIO"].ToString();
                                        objConhec.DS_REDESPACHO                 = dr["DS_REDESPACHO"].ToString();
                                        objConhec.CD_RESPONS                    = dr["CD_RESPONS"].ToString();
                                        objConhec.ST_CONHECI                    = dr["ST_CONHECI"].ToString();
                                        objConhec.DT_CANCCON                    = dr["DT_CANCCON"].ToString();
                                        objConhec.ST_BAIXA                      = dr["ST_BAIXA"].ToString();
                                        objConhec.DT_BAIXA                      = dr["DT_BAIXA"].ToString();
                                        objConhec.DadosAdicionais.DS_TEXTO      = dr["DS_TEXTO"].ToString();
                                        objConhec.DadosAdicionais.DS_OCOR       = dr["DS_OCOR"].ToString();
                                        objConhec.DadosAdicionais.CD_CFOP       = dr["CD_CFOP"].ToString();
                                        objConhec.DadosAdicionais.DS_COLETA     = dr["DS_COLETA"].ToString();
                                        objConhec.DadosAdicionais.CD_UFCOLE     = dr["CD_UFCOLE"].ToString();
                                        objConhec.DadosAdicionais.DS_ENDENTREGA = dr["DS_ENDENTREGA"].ToString();
                                        objConhec.Complemento.NM_MOTORIS        = dr["NM_MOTORIS"].ToString();
                                        objConhec.Complemento.CD_CIDPLAC        = dr["CD_CIDPLAC"].ToString();
                                        objConhec.Complemento.CD_PLACA          = dr["CD_PLACA"].ToString();
                                        objConhec.Complemento.CD_MODELO         = dr["CD_MODELO"].ToString();
                                        objListaConhecimento.Add(objConhec);
                                    }
                                }
                            }
                            catch (Exception ex)
                            {
                                throw ex;
                            }
                            finally
                            { Conn.Close(); }
                        }
                        #endregion
                    }
                }
            }

            return(objListaConhecimento);
        }