示例#1
0
        /// <summary>
        /// Funcao Interna: Retorna uma Lista de Apresentações do tipo Apresentação,
        /// a partir de uma clausula WHERE
        /// </summary>
        public TaxaEntregaLista TaxasDisponiveis(int clienteID, string estado, string sessionID, bool entregaGratuita)
        {
            string strSql = string.Empty;

            int celularTaxaEntregaID = Convert.ToInt32(ConfigurationManager.AppSettings["EntregaCelularTaxaID"]);

            Carrinho oCarrinho         = new Carrinho();
            DateTime menorApresentacao = oCarrinho.DataMaisProxima(clienteID, sessionID);

            //strSql = "SELECT ID, IR_TaxaEntregaID AS IR_ID, Nome, Valor, PrazoEntrega " +
            //         "FROM TaxaEntrega " +
            //         "WHERE (Estado = '" + estado.ToUpper() + "' AND '" + DateTime.Now.ToString("yyyyMMdd") +
            //         "' + PrazoEntrega < '" + menorApresentacao.ToString("yyyyMMdd") + "') OR PrazoEntrega = -1";


            //        sp_GetTaxasEntrega @ClienteID, '@SessionID', @SetEntregaGratuita, '@MenorApresentacao', '@DataAtual','@Estado'"
            strSql = "sp_GetTaxasEntrega1 " + clienteID + ", '" + sessionID + "', " + (entregaGratuita ? 1 : 0) + ", '" + menorApresentacao.ToString("yyyyMMdd") + "', '" + DateTime.Now.ToString("yyyyMMdd") + "','" + estado.ToUpper() + "'" + "," + celularTaxaEntregaID;

            try
            {
                using (IDataReader dr = oDAL.SelectToIDataReader(strSql, CommandType.StoredProcedure))
                {
                    while (dr.Read())
                    {
                        oTaxaEntrega                     = new TaxaEntrega(Convert.ToInt32(dr["ID"]));
                        oTaxaEntrega.IR_ID               = Convert.ToInt32(dr["IR_ID"]);
                        oTaxaEntrega.Valor               = Convert.ToDecimal(dr["Valor"]);
                        oTaxaEntrega.Nome                = Util.LimparTitulo(dr["Nome"].ToString());
                        oTaxaEntrega.PrazoEntrega        = Convert.ToInt32(dr["PrazoEntrega"]);
                        oTaxaEntrega.ProcedimentoEntrega = Convert.ToString(dr["ProcedimentoEntrega"]) + Environment.NewLine + Convert.ToString(dr["DetalhesEntrega"]);

                        this.Add(oTaxaEntrega);
                    }
                }

                oDAL.ConnClose(); // Fecha conexão da classe DataAccess
                return(this);
            }
            catch (Exception ex)
            {
                oDAL.ConnClose();
                throw new Exception(ex.Message);
            }
            finally
            {
                oDAL.ConnClose();
            }
        }
示例#2
0
        /// <summary>
        ///
        ///
        /// </summary>
        public TaxaEntrega TaxaCompra(int clienteID, string estado, string sessionID, bool entregaGratuita, int taxaID)
        {
            string strSql = string.Empty;

            TaxaEntrega oTaxaEntrega = new TaxaEntrega();

            Carrinho oCarrinho         = new Carrinho();
            DateTime menorApresentacao = oCarrinho.DataMaisProxima(clienteID, sessionID);

            strSql = "sp_GetTaxasEntrega1 " + clienteID + ", '" + sessionID + "', " + (entregaGratuita ? 1 : 0) + ", '" + menorApresentacao.ToString("yyyyMMdd") + "', '" + DateTime.Now.ToString("yyyyMMdd") + "','" + estado.ToUpper() + "'";

            try
            {
                using (IDataReader dr = oDAL.SelectToIDataReader(strSql, CommandType.StoredProcedure))
                {
                    if (!dr.Read())
                    {
                        throw new ApplicationException("Taxa Inexistente");
                    }

                    if ((int)dr["IR_ID"] != taxaID)
                    {
                        throw new ApplicationException("Taxa Inexistente");
                    }

                    this.ID           = Convert.ToInt32(dr["ID"]);
                    this.IR_ID        = Convert.ToInt32(dr["IR_ID"]);
                    this.Valor        = Convert.ToDecimal(dr["Valor"]);
                    this.Nome         = Util.LimparTitulo(dr["Nome"].ToString());
                    this.PrazoEntrega = Convert.ToInt32(dr["PrazoEntrega"]);
                    this.PermitirImpressaoInternet = Convert.ToBoolean(dr["PermitirImpressaoInternet"]);
                }

                return(this);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
            finally
            {
                oDAL.ConnClose();
            }
        }