private void butGuardarTarifario_Click(object sender, System.EventArgs e) { RequiredFieldValidator reqDescrip = (RequiredFieldValidator)this.phValidTarifarioDescrip.FindControl("reqDescrip"); RegularExpressionValidator valDescrip = (RegularExpressionValidator)this.phValidTarifarioDescrip.FindControl("valDescrip"); reqDescrip.Enabled = true; valDescrip.Enabled = true; reqDescrip.Validate(); valDescrip.Validate(); if (!reqDescrip.IsValid || !valDescrip.IsValid) { return; } //Habilitar CustomValidator valValorizacion = (CustomValidator)this.phValidValorizacion.FindControl("valValorizacion"); valValorizacion.Enabled = true; valValorizacion.Validate(); if (!valValorizacion.IsValid) { return; } RegularExpressionValidator valImporteKgExc = (RegularExpressionValidator)this.phValidImporteKgExcedente.FindControl("valImporteKgExc"); valImporteKgExc.Enabled = true; valImporteKgExc.Validate(); if (!valImporteKgExc.IsValid) { return; } CustomValidator valImporte = (CustomValidator)this.phValidImporteKgExcedente.FindControl("valImporte"); valImporte.Enabled = true; valImporte.Validate(); if (!valImporte.IsValid) { return; } // Obtenemos el usuario que ejecuta la acción. IUsuarios usuarioConectado = UsuariosFactory.GetUsuario(); usuarioConectado.Login = this.UsuarioConectadoID; usuarioConectado.ConsultarByLogin(); if (chkVariacionTarifario.Checked) { if (rbtImporte.Checked && ddlTarifarioReferencia.SelectedIndex > 0 && chkVariacionTarifario.Checked) { RequiredFieldValidator reqImporteAjuste = (RequiredFieldValidator)this.phValidImporteAjuste.FindControl("reqImporteAjuste"); RegularExpressionValidator valImporteAjuste = (RegularExpressionValidator)this.phValidImporteAjuste.FindControl("valImporteAjuste"); reqImporteAjuste.Enabled = true; valImporteAjuste.Enabled = true; valImporteAjuste.Validate(); reqImporteAjuste.Validate(); if (!reqImporteAjuste.IsValid || !valImporteAjuste.IsValid) { return; } /*if(Convert.ToDouble(txtImporteAjuste.Text)==0) * { * ((ErrorWeb)this.phErrores.Controls[0]).setMensaje(this.TraducirTexto("Errores.Invalidos.ImportePositivo")); * return; * }*/ } else if (rbtPorcentaje.Checked && ddlTarifarioReferencia.SelectedIndex > 0 && chkVariacionTarifario.Checked) { RequiredFieldValidator reqPorcenAjuste = (RequiredFieldValidator)this.phValidImporteAjuste.FindControl("reqPorcenAjuste"); RegularExpressionValidator valPorcenAjuste = (RegularExpressionValidator)this.phValidImporteAjuste.FindControl("valPorcenAjuste"); reqPorcenAjuste.Enabled = true; valPorcenAjuste.Enabled = true; reqPorcenAjuste.Validate(); valPorcenAjuste.Validate(); if (!reqPorcenAjuste.IsValid || !valPorcenAjuste.IsValid) { return; } if (Convert.ToDouble(txtPorcentajeAjuste.Text) == 0) { ((ErrorWeb)this.phErrores.Controls[0]).setMensaje(this.TraducirTexto("Errores.Invalidos.Porcentaje")); return; } } } //Ver de habilitar todos los validadores y nunca usar el Page.Validate //Page.Validate(); //if (!Page.IsValid) // return; tari = (ITarifario)Session["tarifario"]; //Verificar si hubo cambios...ver si acepta que se realice un recalculo de los importes bool okChange = CambiaronDatos(); tari.UnidadNegocioID = this.UnidadNegocioID; tari.EsTarifarioGeneral = chkTarifarioGeneral.Checked; //tari.ImporteKgExcedente=Convert.ToDouble(this.txtImporteKgExcedente.Text); tari.TarifarioDescrip = this.txtTarifarioDescrip.Text.Trim(); if (ddlValorizacion.SelectedIndex > 0) { tari.ValorizacionTarifario = (NegociosSisPackInterface.SisPack.ValorizacionTarifario)Convert.ToInt32(ddlValorizacion.SelectedValue); } else { tari.ValorizacionTarifario = (NegociosSisPackInterface.SisPack.ValorizacionTarifario)Convert.ToInt32(this.txtValorizacionSelec.Text); } if (this.txtImporteKgExcedente.Text != "") { tari.ImporteKgExcedente = Convert.ToDouble(this.txtImporteKgExcedente.Text); } else { tari.ImporteKgExcedente = Convert.ToDouble(this.txtImporteKg.Text); } if (ddlTarifarioReferencia.SelectedIndex > 0) { tari.TarifarioRefID = Convert.ToInt32(ddlTarifarioReferencia.SelectedValue); if (chkVariacionTarifario.Checked) { if (rbtPorcentaje.Checked) { tari.PorcentajeAjuste = Convert.ToDouble(this.txtPorcentajeAjuste.Text); tari.ImporteAjuste = 0; //Ver si esto queda this.txtImporteAjuste.Text = ""; } else { tari.ImporteAjuste = Convert.ToDouble(this.txtImporteAjuste.Text); tari.PorcentajeAjuste = 0; //Ver si esto queda this.txtPorcentajeAjuste.Text = ""; } if (rbtFactorPositivo.Checked) { tari.FactorAjuste = "+"; } else { tari.FactorAjuste = "-"; } } else { tari.FactorAjuste = ""; tari.PorcentajeAjuste = 0; tari.ImporteAjuste = 0; this.txtPorcentajeAjuste.Text = ""; this.txtImporteAjuste.Text = ""; } } /*SFE Guardar el Importe Minimo de Valor Declarado para el tipo de Valorizacion Valor Declarado*/ if (tari.ValorizacionTarifario == NegociosSisPackInterface.SisPack.ValorizacionTarifario.ValorDeclarado) { tari.ImporteMinimoValorDeclarado = Utiles.Validaciones.obtieneDouble(this.txtImporteMinValorDeclarado.Text); RegularExpressionValidator valImporteMinValorDeclarado = (RegularExpressionValidator)this.phValidImporteMinimo.FindControl("valImporteMinValorDeclarado"); valImporteMinValorDeclarado.Enabled = true; valImporteMinValorDeclarado.Validate(); if (!valImporteMinValorDeclarado.IsValid) { return; } } Label lblResul = new Label(); try { //Si cambiaron los datos tengo que empezar una transaccion en la que guarde todo. if (okChange) { if (AdministrarTarifarios.RecalcularImportesTarifarioTope(tari, this.Request.QueryString["Tipo"], usuarioConectado.UsuarioID)) { tari.Guardar(usuarioConectado.UsuarioID); Session["tarifario"] = tari; this.ConsultarTarifario(); this.LoadUCTopes(); //this.LoadUCZonasTopes(); } } else { if (tari.Guardar(usuarioConectado.UsuarioID)) { txtTarifarioID.Text = tari.TarifarioID.ToString(); if (!modal) { string mensaje = "Los datos se guardaron correctamente. "; string script = "<script language='javascript'>\n"; script += "alert('" + mensaje + "');"; script += "</script>"; //Page.RegisterStartupScript("scriptOk", script); Page.RegisterClientScriptBlock("scriptOK", script); } Session["tarifario"] = tari; this.LoadUCTopes(); this.ConsultarTarifario(); } } // this.SetUC(); } 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 butTopes_Click(object sender, System.EventArgs e) { ITarifariosTopeCol tariTopes = tari.TopesCol; tariTopes.TarifarioID = tari.TarifarioID; string vol = ""; double importe, importeBultoExc; bool bul = false; bool bulKilo = false; bool isOK = true; /*SFE Se agrega validador de volumen para Bulto_Variable, a pedido de Carlos Marcon*/ if (tari.ValorizacionTarifario == SisPack.ValorizacionTarifario.Bulto || tari.ValorizacionTarifario == SisPack.ValorizacionTarifario.Bulto_Variable) { bul = true; } if (tari.ValorizacionTarifario == SisPack.ValorizacionTarifario.Bulto_Kilogramo) { bul = true; bulKilo = true; } // SFE: Borrar esto si no se usa. Es decir si no se muestra el excedente por bulto_variable // /*SFE Agregar Validador para Bulto Variable en el importe bulto excedente*/ // if(tari.ValorizacionTarifario == SisPack.ValorizacionTarifario.Bulto_Variable) // { // bulKilo = true; // } foreach (DataGridItem item in dtgTopesDisponibles.Items) { if (((CheckBox)item.FindControl("chkTopeDisp")).Checked) { if (bul) { BaseValidator valVolumen = (RegularExpressionValidator)((PlaceHolder)item.FindControl("phValidVol")).FindControl("valVolumen"); RequiredFieldValidator reqVolumen = (RequiredFieldValidator)((PlaceHolder)item.FindControl("phValidVol")).FindControl("reqVolumen"); valVolumen.Enabled = true; reqVolumen.Enabled = true; valVolumen.Validate(); reqVolumen.Validate(); if (!valVolumen.IsValid || !reqVolumen.IsValid) { isOK = false; } //} if (bulKilo) { BaseValidator valImporteBultoDisp = (RegularExpressionValidator)((PlaceHolder)item.FindControl("phValidImporteBultoDisp")).FindControl("valImporteBultoDisp"); RequiredFieldValidator reqImporteBultoDisp = (RequiredFieldValidator)((PlaceHolder)item.FindControl("phValidImporteBultoDisp")).FindControl("reqImporteBultoDisp"); valImporteBultoDisp.Enabled = true; reqImporteBultoDisp.Enabled = true; valImporteBultoDisp.Validate(); reqImporteBultoDisp.Validate(); if (!valImporteBultoDisp.IsValid || !reqImporteBultoDisp.IsValid) { isOK = false; } } } BaseValidator valImporteDisp = (RegularExpressionValidator)((PlaceHolder)item.FindControl("phValidImporteDisp")).FindControl("valImporteDisp"); RequiredFieldValidator reqImporteDisp = (RequiredFieldValidator)((PlaceHolder)item.FindControl("phValidImporteDisp")).FindControl("reqImporteDisp"); valImporteDisp.Enabled = true; reqImporteDisp.Enabled = true; valImporteDisp.Validate(); reqImporteDisp.Validate(); if (!valImporteDisp.IsValid || !reqImporteDisp.IsValid) { isOK = false; } } } if (!isOK) { return; } foreach (DataGridItem item in dtgTopesDisponibles.Items) { if (((CheckBox)item.FindControl("chkTopeDisp")).Checked) { importe = Convert.ToDouble(((TextBox)item.FindControl("txtImporteDisp")).Text); vol = ((TextBox)item.FindControl("txtVolumen")).Text; importeBultoExc = ((TextBox)item.FindControl("txtImporteBultoDisp")).Text == "" ? 0 : Convert.ToDouble(((TextBox)item.FindControl("txtImporteBultoDisp")).Text); ITarifarioTope oTariTope = tariTopes.AddTarifarioTope(); oTariTope.Tope.TopeID = Convert.ToInt32(dtgTopesDisponibles.DataKeys[item.DataSetIndex]); oTariTope.Tope.TopeKgHasta = Convert.ToInt32(((Label)item.FindControl("lblTopeKgHasta")).Text); /*SFE Asignar el item checkeado o no en la tabla TopesDisponibles*/ oTariTope.KgVariable = ((CheckBox)item.FindControl("chkTopeDispVar")).Checked; //oTariTope.Importe = Convert.ToDouble(((TextBox)item.FindControl("txtImporteDisp")).Text); if (bul) { oTariTope.Cm3Hasta = Convert.ToDouble(vol); } if (bulKilo) { oTariTope.ImporteBultoExc = importeBultoExc; } if (tari.TarifarioRefID != 0) { oTariTope.Importe = CalcularImporte(importe); if (bulKilo) { oTariTope.ImporteBultoExc = AdministrarTarifarios.CalcularImporte(importeBultoExc, tari.FactorAjuste, tari.PorcentajeAjuste, tari.ImporteAjuste); if (oTariTope.ImporteBultoExc < 0) { oTariTope.ImporteBultoExc = 0; } } } else { oTariTope.Importe = importe; if (bulKilo) { oTariTope.ImporteBultoExc = importeBultoExc; } } } } try { // Obtenemos el usuario que ejecuta la acción. IUsuarios usuarioConectado = UsuariosFactory.GetUsuario(); usuarioConectado.Login = this.UsuarioConectadoID; usuarioConectado.ConsultarByLogin(); tariTopes.Guardar(usuarioConectado.UsuarioID); this.BindGridTopesDisp(0); this.BindGridTopesTarif(0); //this.SetearPorTarifarioReferencia(); } catch (Exception ex) { throw ex; } Session["tarifario"] = tari; }
private void butZonas_Click(object sender, System.EventArgs e) { ITarifariosFleteZonaCol tariZonas = tariFlete.ZonasCol; tariZonas.TarifarioFleteID = tariFlete.TarifarioFleteID; double importe; bool isOK = true; foreach (DataGridItem item in dtgZonasDisponibles.Items) { if (((CheckBox)item.FindControl("chkZonaDisp")).Checked) { /*SFE No requerir el excedente si es Valorizacion por Valor Declarado*/ if ((tariFlete.TarifarioFleteRefID == 0) && (tariFlete.ValorizacionTarifario != SisPack.ValorizacionTarifario.ValorDeclarado)) { BaseValidator valImporteExc = (RegularExpressionValidator)((PlaceHolder)item.FindControl("phValidKgExc")).FindControl("valImporteExc"); RequiredFieldValidator reqImporteExc = (RequiredFieldValidator)((PlaceHolder)item.FindControl("phValidKgExc")).FindControl("reqImporteExc"); valImporteExc.Enabled = true; reqImporteExc.Enabled = true; valImporteExc.Validate(); reqImporteExc.Validate(); if (!valImporteExc.IsValid || !reqImporteExc.IsValid) { isOK = false; } } } } if (!isOK) { return; } foreach (DataGridItem item in dtgZonasDisponibles.Items) { if (((CheckBox)item.FindControl("chkZonaDisp")).Checked) { importe = Utiles.Validaciones.obtieneDouble(((TextBox)item.FindControl("txtKgExc")).Text); ITarifarioFleteZona oTariZona = tariZonas.AddTarifarioFleteZona(); oTariZona.Zona.ZonaID = Convert.ToInt32(dtgZonasDisponibles.DataKeys[item.DataSetIndex]); oTariZona.Zona.ZonaDescrip = ((Label)item.FindControl("lblZonaDescripDisp")).Text; oTariZona.Zona.KmDesde = Convert.ToInt32(((TextBox)item.FindControl("txtKmDesdeDisp")).Text); /*SFE No requerir el excedente si es Valorizacion por Valor Declarado*/ if ((tariFlete.TarifarioFleteRefID != 0) && (tariFlete.ValorizacionTarifario != SisPack.ValorizacionTarifario.ValorDeclarado)) { //oTariZona.ImporteKgExcedente = CalcularImporte(importe); oTariZona.ImporteKgExcedente = AdministrarTarifarios.CalcularImporte(importe, tariFlete.FactorAjuste, tariFlete.PorcentajeAjuste, tariFlete.ImporteAjusteKgExcedente); } else { oTariZona.ImporteKgExcedente = importe; } } } try { // Obtenemos el usuario que graba el tope. IUsuarios usuarioConectado = UsuariosFactory.GetUsuario(); usuarioConectado.Login = this.UsuarioConectadoID; usuarioConectado.ConsultarByLogin(); tariZonas.Guardar(usuarioConectado.UsuarioID); this.BindGridZonasDisp(0); this.BindGridZonasTarif(0); this.SetearPorTarifarioReferencia(); } catch (Exception ex) { throw ex; } Session["tarifario"] = tariFlete; }