/// <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(); } }
/// <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(); } }