private void dtgPromociones_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e) { IPromocionOrigenDestinoUVenta promocion = PromocionOrigenDestinoUVentaFactory.GetPromocionOrigenDestinoUVenta(); promocion.PromocionOrigenDestinoUVentaID = Convert.ToInt32(this.dtgPromociones.DataKeys[e.Item.ItemIndex]); promocion.UnidadNegocioID = this.UnidadNegocioID; promocion.Consultar(); try { ///// T.Laz Promociones WEB 27-12-17 //////////////////////////// int user = Convert.ToInt32(UsuarioID); promocion.Usuario = user; //////////////////////////// T.Laz Promociones WEB 27-12-17 ///// promocion.Eliminar(); this.dtgPromociones.EditItemIndex = -1; //this.BindGrid(); try { this.BindGrid(false); } catch (Exception) { this.dtgPromociones.CurrentPageIndex = 0; this.BindGrid(false); } } catch (Exception ex) { string mensaje = ex.Message; try { mensaje = this.TraducirTexto(ex.Message); if (mensaje == "" || mensaje == null) { mensaje = ex.Message; } } catch (Exception) { mensaje = ex.Message; } ((ErrorWeb)this.phErrores.Controls[0]).setMensaje(mensaje); } }
private void CalcularImportes() { double pesoAf = (this.txtPesoTotalAforado.Text == "")? 0 : Convert.ToDouble(this.txtPesoTotalAforado.Text); double pesoReal = (this.txtPeso.Text == "")? 0 : Convert.ToDouble(this.txtPeso.Text); //Crear instancia de la que resuelve los calculos de los importes //Cargar los datos necesarios para calcular el importe del flete admGuiaO.PesoKgReal = pesoReal; if (this.txtAlto.Text != "" && this.txtAncho.Text != "" && this.txtLargo.Text != "") { admGuiaO.VolumenTotal = Convert.ToDouble(this.txtAlto.Text) * Convert.ToDouble(this.txtAncho.Text) * Convert.ToDouble(this.txtLargo.Text); } double pesoAfM3 = 0; /*SFE: 22/03/2013. Valor de conversion a M3. Si se ingresa un valor en el campo de conversion, hay que calcular en base a esto*/ if (txtM3.Text.Length > 0 && txtM3.Text.Trim() != string.Empty && txtM3.Text != "0") { double valorConversionM3 = 0; //Si es cliente corporativo, buscar el parametro para el convenio y la unidad de venta. if (admGuiaO.ClienteCorpRemitente.ClienteID != 0 || (admGuiaO.ClienteCorpDestinatario.ClienteID != 0 && admGuiaO.AgenteGuiaPagoID == NegociosSisPackInterface.SisPack.TipoAgenteGuia.Destinatario)) { admGuiaO.UnidadVentaID = Utiles.Validaciones.obtieneEntero(Request.Form[ddlUnidadVenta.UniqueID]); valorConversionM3 = admGuiaO.ObtenerValorConversionM3ClienteCorp(); //Si no está definido, buscar el parámetro por Unidad de Venta. if (valorConversionM3 == 0) { // Busco la Unidad de Venta y consulto si tiene definido un valor de conversion m3 int uniVenta = Utiles.Validaciones.obtieneEntero(Request.Form[ddlUnidadVenta.UniqueID]); IUnidadVenta uVenta = UnidadVentaFactory.GetUnidadVenta(); uVenta.UnidadVentaID = uniVenta; uVenta.Consultar(); if (uVenta.ValorConversionM3 != 0) //tiene definido un valor de conversion de m3, usarlos { valorConversionM3 = uVenta.ValorConversionM3; } else // si no esta definido a nivel de Unidad de Venta tengo que utilizar el de parámetro general { IParametroUNegocio paramMin = ParametroUNegocioFactory.GetParametroUNegocio(); paramMin.UnidadNegocioID = this.UnidadNegocioID; paramMin.Parametro = NegociosSisPackInterface.SisPack.Parametro.ValorConversionM3; paramMin.Consultar(); valorConversionM3 = Convert.ToDouble(paramMin.ValorString); } } } // Si es cliente eventual, buscar valor de conversion a nivel de unidad de venta else { // Busco la Unidad de Venta y consulto si tiene definido un valor de conversion m3 int uniVenta = Utiles.Validaciones.obtieneEntero(Request.Form[ddlUnidadVenta.UniqueID]); IUnidadVenta uVenta = UnidadVentaFactory.GetUnidadVenta(); uVenta.UnidadVentaID = uniVenta; uVenta.Consultar(); if (uVenta.ValorConversionM3 != 0) { valorConversionM3 = uVenta.ValorConversionM3; } else // si no esta definido a nivel de Unidad de Venta tengo que utilizar el de parámetro general { IParametroUNegocio paramMin = ParametroUNegocioFactory.GetParametroUNegocio(); paramMin.UnidadNegocioID = this.UnidadNegocioID; paramMin.Parametro = NegociosSisPackInterface.SisPack.Parametro.ValorConversionM3; paramMin.Consultar(); valorConversionM3 = Convert.ToDouble(paramMin.ValorString); } } //Si se encontró algun valor de conversion. if (valorConversionM3 > 0) { admGuiaO.MetrosCubicos = Utiles.Validaciones.obtieneDouble(txtM3.Text); pesoAfM3 = admGuiaO.MetrosCubicos * valorConversionM3; } } double pesoTotalAforado = (pesoAf > pesoReal) ? pesoAf : pesoReal; if (pesoAfM3 > 0) { if (pesoTotalAforado > pesoAfM3) { admGuiaO.PesoTotal = pesoTotalAforado; } else { admGuiaO.PesoTotal = pesoAfM3; } } else { admGuiaO.PesoTotal = (pesoAf > pesoReal)? pesoAf : pesoReal; } admGuiaO.CantBultos = Convert.ToInt32(this.txtBultos.Text); admGuiaO.UnidadVentaID = Utiles.Validaciones.obtieneEntero(Request.Form[ddlUnidadVenta.UniqueID]); admGuiaO.ModalidadEntregaID = Utiles.Validaciones.obtieneEntero(this.ddlModalidadEntrega.SelectedValue); admGuiaO.LimiteKg = 3000; admGuiaO.PorcentajeBonificacionAutorizacion = 0; admGuiaO.ImporteACobrarAutorizacion = 0; admGuiaO.ValorDeclarado = Convert.ToDouble(this.txtValorDeclarado.Text); int modalidadEntregaID = Utiles.Validaciones.obtieneEntero(this.ddlModalidadEntrega.SelectedValue); //admGuiaO.UnidadNegocioID = this.UnidadNegocioID; IAgencia agencia = AgenciaFactory.GetAgencia(); agencia.AgenciaByLocalidadSimulador(Utiles.Validaciones.obtieneEntero(ddlLocalidadRemitente), Utiles.Validaciones.obtieneEntero(ddlCodigoPostalRemitente), 1, 0, Utiles.Validaciones.obtieneEntero(this.ddlUnidadVenta.SelectedValue), modalidadEntregaID, 0, false); if (agencia.AgenciaID != 0) { admGuiaO.AgenciaOrigenID = agencia.AgenciaID; } else { throw new Exception("No es posible realizar el envío desde el origen hacia el destino seleccionado."); } agencia.AgenciaByLocalidadSimulador(Utiles.Validaciones.obtieneEntero(ddlLocalidadDestinatario), Utiles.Validaciones.obtieneEntero(ddlCodigoPostalDestinatario), 0, 1, Utiles.Validaciones.obtieneEntero(this.ddlUnidadVenta.SelectedValue), modalidadEntregaID, 0, false); if (agencia.AgenciaID != 0) { admGuiaO.AgenciaDestinoID = agencia.AgenciaID; } else { throw new Exception("No es posible realizar el envío desde el origen hacia el destino seleccionado."); } admGuiaO.TipoDestinoID = (int)NegociosSisPackInterface.SisPack.TipoOrigenDestino.Agencia; //Por si hay que calcular comision de contrareembolso admGuiaO.ImporteCRGuia = 0; //(this.txtImporteContraReembolso.Text== "")? 0 : Convert.ToDouble(this.txtImporteContraReembolso.Text); //admGuiaO.ImporteCRGuia = admGuiaO.ValorDeclarado; admGuiaO.PagaEntregaEnDomicilio = false; //this.chkPagaEnDomicilio.Checked; admGuiaO.PromocionServicioTransporteID = 0; admGuiaO.BonificacionAgencia = 0; //Utiles.Validaciones.obtieneEntero(this.txtBonificacionAgencia.Text); admGuiaO.UsuarioID = 1; //this.usuario.UsuarioID; //esto le indica a AdminstracionGuias, que la agencia que calcula los importes //es automatizada, por lo tanto debe tener en cuenta el área de influencia admGuiaO.NoAutomatizada = false; admGuiaO.UnidadNegocioID = 1; admGuiaO.ClienteEventRemitente.Domicilio.Localidad.LocalidadID = Utiles.Validaciones.obtieneEntero(ddlLocalidadRemitente); admGuiaO.ClienteEventDestinatario.Domicilio.Localidad.LocalidadID = Utiles.Validaciones.obtieneEntero(ddlLocalidadDestinatario); admGuiaO.ClienteEventRemitente.Domicilio.Localidad.CodigoPostal = ddlCodigoPostalRemitenteCodigo; admGuiaO.ClienteEventDestinatario.Domicilio.Localidad.CodigoPostal = ddlCodigoPostalDestinatarioCodigo; admGuiaO.ClienteEventRemitente.Domicilio.OCodigoPostal.CodigoPostalID = Utiles.Validaciones.obtieneEntero(ddlCodigoPostalRemitente); admGuiaO.ClienteEventDestinatario.Domicilio.OCodigoPostal.CodigoPostalID = Utiles.Validaciones.obtieneEntero(ddlCodigoPostalDestinatario); admGuiaO.NoCalcularPromociones = false; admGuiaO.CalcularImportes(); this.lblBonificacion.Text = ""; this.lblNombrePromo.Text = ""; if (admGuiaO.TipoPromocion == 1) { IPromocionOrigenDestinoUVenta promo = PromocionOrigenDestinoUVentaFactory.GetPromocionOrigenDestinoUVenta(); promo.PromocionOrigenDestinoUVentaID = admGuiaO.PromoID; promo.UnidadNegocioID = 1; promo.Consultar(); if (promo.IncrementoBonificacionPorcentaje < 0 && promo.IncrementoBonificacionImporteFijo <= 0) { this.lblNombrePromo.Text = " - Promoción: " + promo.PromocionOrigenDestinoUVentaDescrip; string bonificacion = ""; if (promo.IncrementoBonificacionPorcentaje < 0) { bonificacion = promo.IncrementoBonificacionPorcentaje.ToString() + "%"; } else if (promo.IncrementoBonificacionImporteFijo < 0) { bonificacion = "$ " + promo.IncrementoBonificacionImporteFijo.ToString(); } this.lblBonificacion.Text = "(" + bonificacion + ")"; } } if (admGuiaO.TipoGuia == "A" || admGuiaO.TipoGuia == "E") { this.lblImporteFlete.Text = Formatos.Importe(admGuiaO.ImporteFlete); this.lblImporteSeguro.Text = Formatos.Importe(admGuiaO.ImporteSeguro); this.lblImporteRetiro.Text = Formatos.Importe(admGuiaO.ImporteRetiro); //if(!this.chkPagaEnDomicilio.Checked) this.lblImporteEntrega.Text = Formatos.Importe(admGuiaO.ImporteEntrega); //else // this.lblImporteEntrega.Text = "0"; this.lblImporteComisCR.Text = Formatos.Importe(admGuiaO.ImporteComisCR); this.lblImporteNeto.Text = Formatos.Importe(admGuiaO.ImporteNetoTotal); this.lblImporteIVAInscripto.Text = Formatos.Importe(admGuiaO.ImporteIVAInscripto); //} } else { this.lblImporteFlete.Text = Formatos.Importe(admGuiaO.ImporteFlete + admGuiaO.ImporteFleteIVA); //+ admGuiaO.ImporteRedespachoIVA this.lblImporteSeguro.Text = Formatos.Importe(admGuiaO.ImporteSeguro + admGuiaO.ImporteSeguroIVA); this.lblImporteRetiro.Text = Formatos.Importe(admGuiaO.ImporteRetiro + admGuiaO.ImporteRetiroIVA); //if(!this.chkPagaEnDomicilio.Checked) this.lblImporteEntrega.Text = Formatos.Importe(admGuiaO.ImporteEntrega + admGuiaO.ImporteEntregaIVA); //else // this.lblImporteEntrega.Text = "0"; this.lblImporteComisCR.Text = Formatos.Importe(admGuiaO.ImporteComisCR + admGuiaO.ImporteComisCRIVA); this.lblImporteIVAInscripto.Text = ""; this.lblImporteNeto.Text = ""; //} } this.lblImporteRedondeo.Text = Formatos.Importe(admGuiaO.ImporteRedondeo); this.lblImporteTotalCobrar.Text = Formatos.Importe(admGuiaO.ImporteTotalCobrar); }
private void BindGrid(bool configurarExportarExcel) { SisPackController.AdministrarGrillas.Configurar(this.dtgPromociones, "PromocionOrigenDestinoUVentaID", this.CantidadOpciones); if (configurarExportarExcel) { // Tengo que configurar para exportar a excel dtgPromociones.AllowPaging = false; //dtgObservacion.Columns[1].Visible = false; // dtgObservacion.BorderWidth = Unit.Pixel(0); dtgPromociones.BorderColor = System.Drawing.Color.White; dtgPromociones.BorderStyle = BorderStyle.None; } IPromocionOrigenDestinoUVenta promocion = PromocionOrigenDestinoUVentaFactory.GetPromocionOrigenDestinoUVenta(); //filtros promocion.PromocionOrigenDestinoUVentaDescrip = this.txtDescripcionPromocion.Text; promocion.UnidadNegocioID = this.UnidadNegocioID; string desde = this.txtFechaInicioDesde.Text == "" ? "01/01/1900" : this.txtFechaInicioDesde.Text; //string hasta = this.txtFechaInicioHasta.Text == "" ? DateTime.Now.ToString("dd/MM/yyyy") : this.txtFechaInicioHasta.Text; //T.Laz 10-05-18 string hasta = this.txtFechaInicioHasta.Text == "" ? "01/01/2100" : this.txtFechaInicioHasta.Text; DateTime desdeDateTime = DateTime.ParseExact(desde, "dd/MM/yyyy", CultureInfo.InvariantCulture); DateTime hastaDateTime = DateTime.ParseExact(hasta, "dd/MM/yyyy", CultureInfo.InvariantCulture); //T.Laz 10-05-18 hastaDateTime.AddDays(1); promocion.FechaInicio = desdeDateTime; promocion.FechaFin = hastaDateTime; promocion.Web = Convert.ToInt32(ddlWeb.SelectedValue); //1º obtengo todas las promociones con origenes y destinos que no son zonas DsPromocionOrigenDestinoUVenta ds = promocion.GetPromocionesALL(); DsPromocionOrigenDestinoUVenta dsAux = new DsPromocionOrigenDestinoUVenta(); //2º obtengo todas las promociones con origenes y destino que sí son zonas, y los pongo en un ds auxiliar if (ddlWeb.SelectedValue == "2") { dsAux = promocion.GetPromocionesZonasALL(); //cargo el contenido del aux en el ds final foreach (DsPromocionOrigenDestinoUVenta.DatosRow row in dsAux.Tables[0].Rows) { ds.Datos.AddDatosRow(row.PromocionOrigenDestinoUVentaID, row.UnidadVentaID, row.FechaInicio, row.IsFechaFinNull() ? new DateTime() : row.FechaFin, row.PromocionOrigenDestinoUVentaDescrip, row.IsIncrementoBonificacionPorcentajeNull() ? 0 : row.IncrementoBonificacionPorcentaje, row.IsIncrementoBonificacionImporteFijoNull() ? 0 : row.IncrementoBonificacionImporteFijo, row.IsUnidadNegocioIDNull() ? 0 : row.UnidadNegocioID, row.IsBajaNull() ? false : row.Baja, row.IsDestinoFleteIDNull() ? 0 : row.DestinoFleteID, row.IsOrigenFleteIDNull() ? 0 : row.OrigenFleteID, row.IsOrigenDescripNull() ? "" : row.OrigenDescrip, row.IsTipoOrigenDescripNull() ? "" : row.TipoOrigenDescrip, row.IsDestinoDescripNull() ? "" : row.DestinoDescrip, row.IsTipoDestinoDescripNull() ? "" : row.TipoDestinoDescrip, row.UnidadVentaDescrip, row.IsTipoOrigenIDNull() ? 0 : row.TipoOrigenID, row.IsTipoDestinoIDNull() ? 0 : row.TipoDestinoID, row.IsZonaOrigenIDNull() ? 0 : row.ZonaOrigenID, row.IsZonaDestinoIDNull() ? 0 : row.ZonaDestinoID, row.IsZonaOrigenDescripNull() ? "" : row.ZonaOrigenDescrip, row.IsZonaDestinoDescripNull() ? "" : row.ZonaDestinoDescrip, row.IsDestinoFleteIDNull() ? 0 : row.DestinoFleteID, row.IsOrigenFleteIDNull() ? 0 : row.OrigenFleteID, row.IsPromocionSispackWebIDNull() ? 0 : row.PromocionSispackWebID, row.SispackDescrip, row.WebDescrip ); //ds.Datos.AddDatosRow(row); } } //3º obtengo todas las promociones con origenes zonas y destino no zonas y los pongo en un ds auxiliar if (ddlWeb.SelectedValue == "2") { dsAux = promocion.GetPromocionesZonasOrigenALL(); //cargo el contenido del aux en el ds final foreach (DsPromocionOrigenDestinoUVenta.DatosRow row in dsAux.Tables[0].Rows) { ds.Datos.AddDatosRow(row.PromocionOrigenDestinoUVentaID, row.UnidadVentaID, row.FechaInicio, row.IsFechaFinNull() ? new DateTime() : row.FechaFin, row.PromocionOrigenDestinoUVentaDescrip, row.IsIncrementoBonificacionPorcentajeNull() ? 0 : row.IncrementoBonificacionPorcentaje, row.IsIncrementoBonificacionImporteFijoNull() ? 0 : row.IncrementoBonificacionImporteFijo, row.IsUnidadNegocioIDNull() ? 0 : row.UnidadNegocioID, row.IsBajaNull() ? false : row.Baja, row.IsDestinoFleteIDNull() ? 0 : row.DestinoFleteID, row.IsOrigenFleteIDNull() ? 0 : row.OrigenFleteID, row.IsOrigenDescripNull() ? "" : row.OrigenDescrip, row.IsTipoOrigenDescripNull() ? "" : row.TipoOrigenDescrip, row.IsDestinoDescripNull() ? "" : row.DestinoDescrip, row.IsTipoDestinoDescripNull() ? "" : row.TipoDestinoDescrip, row.UnidadVentaDescrip, row.IsTipoOrigenIDNull() ? 0 : row.TipoOrigenID, row.IsTipoDestinoIDNull() ? 0 : row.TipoDestinoID, row.IsZonaOrigenIDNull() ? 0 : row.ZonaOrigenID, row.IsZonaDestinoIDNull() ? 0 : row.ZonaDestinoID, row.IsZonaOrigenDescripNull() ? "" : row.ZonaOrigenDescrip, row.IsZonaDestinoDescripNull() ? "" : row.ZonaDestinoDescrip, row.IsDestinoFleteIDNull() ? 0 : row.DestinoFleteID, row.IsOrigenFleteIDNull() ? 0 : row.OrigenFleteID, row.IsPromocionSispackWebIDNull() ? 0 : row.PromocionSispackWebID, row.SispackDescrip, row.WebDescrip ); } } //4º obtengo todas las promociones con origenes no zonas y destinos zonas y los pongo en un ds auxiliar if (ddlWeb.SelectedValue == "2") { dsAux = promocion.GetPromocionesZonasDestinoALL(); //cargo el contenido del aux en el ds final foreach (DsPromocionOrigenDestinoUVenta.DatosRow row in dsAux.Tables[0].Rows) { ds.Datos.AddDatosRow(row.PromocionOrigenDestinoUVentaID, row.UnidadVentaID, row.FechaInicio, row.IsFechaFinNull() ? new DateTime() : row.FechaFin, row.PromocionOrigenDestinoUVentaDescrip, row.IsIncrementoBonificacionPorcentajeNull() ? 0 : row.IncrementoBonificacionPorcentaje, row.IsIncrementoBonificacionImporteFijoNull() ? 0 : row.IncrementoBonificacionImporteFijo, row.IsUnidadNegocioIDNull() ? 0 : row.UnidadNegocioID, row.IsBajaNull() ? false : row.Baja, row.IsDestinoFleteIDNull() ? 0 : row.DestinoFleteID, row.IsOrigenFleteIDNull() ? 0 : row.OrigenFleteID, row.IsOrigenDescripNull() ? "" : row.OrigenDescrip, row.IsTipoOrigenDescripNull() ? "" : row.TipoOrigenDescrip, row.IsDestinoDescripNull() ? "" : row.DestinoDescrip, row.IsTipoDestinoDescripNull() ? "" : row.TipoDestinoDescrip, row.UnidadVentaDescrip, row.IsTipoOrigenIDNull() ? 0 : row.TipoOrigenID, row.IsTipoDestinoIDNull() ? 0 : row.TipoDestinoID, row.IsZonaOrigenIDNull() ? 0 : row.ZonaOrigenID, row.IsZonaDestinoIDNull() ? 0 : row.ZonaDestinoID, row.IsZonaOrigenDescripNull() ? "" : row.ZonaOrigenDescrip, row.IsZonaDestinoDescripNull() ? "" : row.ZonaDestinoDescrip, row.IsDestinoFleteIDNull() ? 0 : row.DestinoFleteID, row.IsOrigenFleteIDNull() ? 0 : row.OrigenFleteID, row.IsPromocionSispackWebIDNull() ? 0 : row.PromocionSispackWebID, row.SispackDescrip, row.WebDescrip ); } } this.Session["dtgPromociones"] = ds; this.dtgPromociones.DataSource = ds; this.dtgPromociones.CurrentPageIndex = 0; this.dtgPromociones.DataBind(); }