Esempio n. 1
0
        public bool GuardarTarifarioRedespacho(int UsuarioID)
        {
            using (SqlConnection conexion = new SqlConnection())
            {
                SqlTransaction transaccion = null;
                conexion.ConnectionString = Config.ConnectionString;
                try
                {
                    conexion.Open();
                    transaccion = conexion.BeginTransaction();

                    for (int i = 0; i < cotizacionesClienteUVentaModOrigenDestinos.Count; i++)
                    {
                        ICotizacionClienteUVentaModOrigenDestino cotizacionClienteUVentaModOrigenDestino = (ICotizacionClienteUVentaModOrigenDestino)cotizacionesClienteUVentaModOrigenDestinos[i];
                        cotizacionClienteUVentaModOrigenDestino.GuardarTarifarioRedespacho(transaccion, UsuarioID);

                        /*if (!cotizacionClienteUVentaModOrigenDestino.GuardarTarifarioFlete(transaccion))
                         * {
                         *      return false;
                         * }*/
                    }
                    transaccion.Commit();
                    return(true);
                }
                catch (Exception ex)
                {
                    //guardar en el log
                    transaccion.Rollback();
                    throw ex;
                }
            }
        }
        private void butAgregar_Click(object sender, System.EventArgs e)
        {
            try
            {
                BaseValidator bv;
                bv         = (BaseValidator)phServicoOrigen.FindControl("servOrigenRequerido");
                bv.Enabled = true;
                bv.Validate();
                if (!bv.IsValid)
                {
                    return;
                }
                ICotizacionClienteUVentaModOrigenDestino horaCotizacion = CotizacionClienteUVentaModOrigenDestinoFactory.GetCotizacionClienteUVentaModOrigenDestino();
                horaCotizacion.CotizacionClienteUVentaModalidadOrigenDestinoID = Utiles.Validaciones.obtieneEntero(this.txtCotizacionClienteUVentaModOrigenDestino.Text);
                horaCotizacion.DiaRetiro  = this.ddlDiasOrigen.SelectedValue;
                horaCotizacion.HoraRetiro = this.txtHorarioOrigen.Text;
                horaCotizacion.Servicio   = txtServicioOrigen.Text;
                bool retiro = true;
                if (this.rbtEntregaOrigen.Checked)
                {
                    retiro = false;
                }
                horaCotizacion.GuardarHorario(retiro, true);

                BindGridRetiroOrigen();
                BindGridEntregaOrigen();
                this.txtHorarioOrigen.Text       = "";
                this.ddlDiasOrigen.SelectedIndex = 0;
            }
            catch (Exception ex)
            {
                ManejaErrores(ex);
            }
        }
        private void dtgHorariosRetiroDestino_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
        {
            ICotizacionClienteUVentaModOrigenDestino horaCotizacion = CotizacionClienteUVentaModOrigenDestinoFactory.GetCotizacionClienteUVentaModOrigenDestino();

            horaCotizacion.CotizacionClienteUVentaModalidadOrigenDestinoID = Utiles.Validaciones.obtieneEntero(this.txtCotizacionClienteUVentaModOrigenDestino.Text);
            horaCotizacion.DiaRetiro = dtgHorariosRetiroDestino.DataKeys[(int)e.Item.ItemIndex].ToString();
            horaCotizacion.EliminarHorarios();
            BindGridRetiroDestino();
        }
        private void BindGridEntregaDestino()
        {
            SisPackController.AdministrarGrillas.ConfigurarChica(this.dtgHorariosEntregaDestino, "DiaID");
            ICotizacionClienteUVentaModOrigenDestino horaCotizacion = CotizacionClienteUVentaModOrigenDestinoFactory.GetCotizacionClienteUVentaModOrigenDestino();

            horaCotizacion.CotizacionClienteUVentaModalidadOrigenDestinoID = Utiles.Validaciones.obtieneEntero(this.txtCotizacionClienteUVentaModOrigenDestino.Text);
            dtgHorariosEntregaDestino.DataSource = horaCotizacion.ConsultarHorariosEntregaDestino();
            dtgHorariosEntregaDestino.DataBind();
        }
Esempio n. 5
0
        public ICotizacionClienteUVentaModOrigenDestino GetCotizacionClienteUVentaModOrigenDestinoByID(int clave)
        {
            ICotizacionClienteUVentaModOrigenDestino oCotOriDest = null;

            for (int i = 0; i < this.cotizacionesClienteUVentaModOrigenDestinos.Count; i++)
            {
                oCotOriDest = (ICotizacionClienteUVentaModOrigenDestino)cotizacionesClienteUVentaModOrigenDestinos[i];
                if (oCotOriDest.CotizacionClienteUVentaModalidadOrigenDestinoID == clave)
                {
                    break;
                }
            }
            return(oCotOriDest);
        }
Esempio n. 6
0
        public bool Guardar(int UsuarioID)
        {
            using (SqlConnection conexion = new SqlConnection())
            {
                SqlTransaction transaccion = null;
                conexion.ConnectionString = Config.ConnectionString;
                try
                {
                    conexion.Open();
                    transaccion = conexion.BeginTransaction();

                    for (int i = 0; i < cotizacionesClienteUVentaModOrigenDestinos.Count; i++)
                    {
                        ICotizacionClienteUVentaModOrigenDestino cotizacionClienteUVentaModOrigenDestino = (ICotizacionClienteUVentaModOrigenDestino)cotizacionesClienteUVentaModOrigenDestinos[i];
                        cotizacionClienteUVentaModOrigenDestino.Guardar(transaccion, UsuarioID);

                        /*if (!cotizacionClienteUVentaModOrigenDestino.Guardar(transaccion))
                         * {
                         *      if(cotizacionClienteUVentaModOrigenDestino.ErrorDescrip == "Errores.Invalidos.TarifarioSinZona")
                         *      {
                         *
                         *      }*/
                        /*if(ex.Message == "Errores.Invalidos.TarifarioSinZona")
                         * {
                         * this.ErrorDescrip = "Zona: " + this.ClienteZona.Getzona.ZonaDescrip
                         * }*/
                        //return false;
                        //}
                    }
                    transaccion.Commit();
                    return(true);
                }
                catch (Exception ex)
                {
                    //guardar en el log
                    transaccion.Rollback();
                    throw ex;
                }
            }
        }
Esempio n. 7
0
        private void ValidarSeleccion(object source, System.Web.UI.WebControls.ServerValidateEventArgs args)
        {
            bool modalidad     = false;
            bool origen        = false;
            bool destino       = false;
            int  cantOrigen    = 0;
            int  cantDestino   = 0;
            int  cantModalidad = 0;
            int  idOrigen      = 0;
            int  idDestino     = 0;
            int  idModalidad   = 0;
            bool yaEsta        = false;

            //ICotizacionClienteUVentaModalidadOrigenDestinoCol
            cotizacionclienteUVentaModOrigenDestinos = CotizacionClienteUVentaModOrigenDestinoColFactory.GetCotizacionClienteUVentaModOrigenDestinoCol();

            ICotizacionClienteUVentaModOrigenDestino oExistente = CotizacionClienteUVentaModOrigenDestinoFactory.GetCotizacionClienteUVentaModOrigenDestino();

            //BETY
            //IF ZonaOrigen.Checked
            //if (objCheck1.Checked)
            //{	origen=true;
            //ELSE

            if (this.chkZonasOrigen.Checked)
            {
                foreach (ListItem item1 in this.lstZonasOrigen.Items)
                {
                    if (item1.Selected)
                    {
                        origen   = true;
                        idOrigen = Convert.ToInt32(item1.Value);
                        cantOrigen++;
                        if (cantOrigen > 1)
                        {
                            origen = false;
                            break;
                        }
                    }
                }
            }
            else
            {
                foreach (ListItem item1 in this.lstOrigenFlete.Items)
                {
                    if (item1.Selected)
                    {
                        origen   = true;
                        idOrigen = Convert.ToInt32(item1.Value);
                        cantOrigen++;
                        if (cantOrigen > 1)
                        {
                            origen = false;
                            break;
                        }
                    }
                }
            }

            if (!origen)
            {
                args.IsValid = false;
                ((CustomValidator)source).ErrorMessage = this.TraducirTexto("Errores.Obligatorios.Origenes");
                return;
            }

            if (this.chkZonas.Checked)
            {
                foreach (ListItem item1 in this.lstZonas.Items)
                {
                    if (item1.Selected)
                    {
                        destino   = true;
                        idDestino = Convert.ToInt32(item1.Value);
                        cantDestino++;
                        if (cantDestino > 1)
                        {
                            destino = false;
                            break;
                        }
                    }
                }
            }
            else
            {
                foreach (ListItem item1 in this.lstDestinoFlete.Items)
                {
                    if (item1.Selected)
                    {
                        destino   = true;
                        idDestino = Convert.ToInt32(item1.Value);
                        cantDestino++;
                        if (cantDestino > 1)
                        {
                            destino = false;
                            break;
                        }
                    }
                }
            }

            if (!destino)
            {
                args.IsValid = false;
                ((CustomValidator)source).ErrorMessage = this.TraducirTexto("Errores.Obligatorios.Destinos");
                return;
            }

            // modalidad entrega

            foreach (DataGridItem item in dtgModalidadEntrega.Items)
            {
                CheckBox objCheck = (CheckBox)(item.FindControl("chkModalidades"));
                if (objCheck.Checked)
                {
                    modalidad = true;
                    cantModalidad++;
                    idModalidad = Convert.ToInt32(dtgModalidadEntrega.DataKeys[item.ItemIndex]);
                    if (cantModalidad > 1)
                    {
                        modalidad = false;
                        break;
                    }
                }
            }

            if (!modalidad)
            {
                args.IsValid = false;
                ((CustomValidator)source).ErrorMessage = "Debe seleccionar al menos una modalidad de entrega y no más de una.";
                return;
            }
            ISolicitudCotizacionUVentaModalidadOrigenDestino oSolCotizacion = SolicitudCotizacionUVentaOrigenDestinoFactory.GetSolicitudCotizacionUVentaOrigenDestino();

            oSolCotizacion.OrigenFleteID  = idOrigen;
            oSolCotizacion.DestinoFleteID = idDestino;
            oSolCotizacion.SolicitudCotizacionUVentaModalidadID = idModalidad;

            if (oSolCotizacion.Existe())                   //VER store
            {
                yaEsta = true;
            }

            if (yaEsta)
            {
                args.IsValid = false;
                ((CustomValidator)source).ErrorMessage = "Ya existe una combinación con las mismas características.";
                return;
            }
        }
        private void dtgTarifarios_ItemCommandNew(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
        {
            bool UPDTarifario = false;

            //Cuando se asigna un tarifario, puede ocurrir:
            //							- Se setea por primera vez el tarifario: no tengo ID de registro
            //							- Se realiza un update del dato del tarifario: recibo un ID
            if (e.CommandName == "Asignar")
            {
                int IDTarifActual = Convert.ToInt32(dtgTarifarios.DataKeys[(int)e.Item.ItemIndex]);
                //Para cada ID que obtengo, crear una instancia, consultar y guardar
                for (int i = 0; i < cotizCol.getCount(); i++)
                {
                    ICotizacionClienteUVentaModOrigenDestino oCotCliente = cotizCol.GetCotizacionClienteUVentaModalidad(i);
                    //Si en la coleccion, un elemento (queda el valor del ultimo, pero es indistinto) tiene un ID, se está realizando un UPD
                    UPDTarifario = oCotCliente.CotizacionClienteUVentaModalidadOrigenDestinoID != 0;
                    if (tipoTari == NegociosSisPackInterface.SisPack.TipoTarifario.Ninguno)
                    {
                        //Setear el tarifario correspondiente, y el otro ponerlo en cero.
                        oCotCliente.TarifarioClienteFleteID    = IDTarifActual;
                        oCotCliente.TarifarioVentaReDespachoID = 0;
                        oCotCliente.TarifarioFleteID           = 0;
                    }
                    else if (tipoTari == NegociosSisPackInterface.SisPack.TipoTarifario.Cliente || tipoTari == NegociosSisPackInterface.SisPack.TipoTarifario.ClienteEstandarizado)
                    {
                        //Setear el tarifario correspondiente, y el otro ponerlo en cero.
                        oCotCliente.TarifarioFleteID           = IDTarifActual;
                        oCotCliente.TarifarioVentaReDespachoID = 0;
                        oCotCliente.TarifarioClienteFleteID    = 0;
                    }
                }
                //if(tipoTari == SisPack.TipoTarifario.Ninguno)
                //{
                //Tarifario Flete Particular
                //cotizCol.GuardarTarifarioFlete();
                string result1 = "";
                try
                {
                    if (!UPDTarifario)
                    {
                        cotizCol.Guardar(usuario.UsuarioID);
                    }
                    else
                    {
                        cotizCol.GuardarTarifarioFlete(usuario.UsuarioID);
                    }
                }
                catch (Exception ex)
                {
                    //VER!!!
                    //throw ex;
                    result1 = ex.Message;
                }

                //}

                /*else if( tipoTari == SisPack.TipoTarifario.Cliente)
                 *      {
                 *              cotizCol.GuardarTarifarioFlete();
                 *      }*/
                string result = cotizCol.GetErrorDescrip();

                StringBuilder scriptString = new StringBuilder();
                scriptString.Append("<script language='javascript'>\n");

                if (result1 != "")
                {
                    scriptString.Append("alert('" + result1 + "');\n");
                }
                else if (result != "")
                {
                    scriptString.Append("alert('El tarifario asociado no contiene zonas seleccionadas.\\nNo se pudo asociar la tarifa a las siguientes zonas: " + result + "');\n");
                }
                scriptString.Append("window.returnValue = true;\n");
                scriptString.Append("window.close();\n");
                scriptString.Append("</script>");
                Page.RegisterClientScriptBlock("scrptTarifario", scriptString.ToString());
                //Page.RegisterStartupScript ("scriptTari", scriptString.ToString());
            }
        }
        private void dtgTarifarios_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
        {
            if (e.CommandName == "Seleccionar")
            {
                StringBuilder scriptString         = new StringBuilder();
                IConvenioRedespachoDetalle detalle = ConvenioRedespachoDetalleFactory.GetConvenioRedespachoDetalle();
                detalle.TarifarioCostoReDespachoID = Convert.ToInt32(dtgTarifarios.DataKeys[(int)e.Item.ItemIndex]);

                string esMasivo = Request.QueryString["EsMasivo"] == null ? "" :Request.QueryString["EsMasivo"];
                if (esMasivo.Equals(""))
                {
                    int tipoTarifario = 0;

                    if (this.Request.QueryString["TipoTarifario"] == "Costo")
                    {
                        tipoTarifario = (int)NegociosSisPackInterface.SisPack.TipoTarifario.CostoRedespacho;
                    }
                    else
                    {
                        tipoTarifario = (int)NegociosSisPackInterface.SisPack.TipoTarifario.VentaRedespacho;
                    }
                    detalle.ConvenioReDespachoDetalleID = Utiles.Validaciones.obtieneEntero(this.txtConvenioRedespachoDetalleID.Text);
                    detalle.ActualizarTarifario((int)tipoTarifario);

                    scriptString.Append("<script language='javascript'>\n");
                    scriptString.Append("window.returnValue = true;\n");
                    scriptString.Append("window.close();\n");
                    scriptString.Append("</script>");
                }
                else
                {
                    scriptString.Append("<script language='javascript'>\n");
                    scriptString.Append("window.returnValue = " + detalle.TarifarioCostoReDespachoID + ";\n");
                    scriptString.Append("window.close();\n");
                    scriptString.Append("</script>");
                }

                Page.RegisterClientScriptBlock("scriptCierraTarifarioRedespachoModal", scriptString.ToString());
            }
            else if (e.CommandName == "SeleccionarBolsin")
            {
                bool UPDTarifario = false;

                //Cuando se asigna un tarifario, puede ocurrir:
                //							- Se setea por primera vez el tarifario: no tengo ID de registro
                //							- Se realiza un update del dato del tarifario: recibo un ID

                int IDTarifActual = Convert.ToInt32(dtgTarifarios.DataKeys[(int)e.Item.ItemIndex]);
                //Para cada ID que obtengo, crear una instancia, consultar y guardar
                for (int i = 0; i < cotizCol.getCount(); i++)
                {
                    ICotizacionClienteUVentaModOrigenDestino oCotCliente = cotizCol.GetCotizacionClienteUVentaModalidad(i);
                    //Si en la coleccion, un elemento (queda el valor del ultimo, pero es indistinto) tiene un ID, se está realizando un UPD
                    UPDTarifario = oCotCliente.CotizacionClienteUVentaModalidadOrigenDestinoID != 0;

                    //Setear el tarifario correspondiente, y el otro ponerlo en cero.
                    oCotCliente.TarifarioVentaReDespachoID = IDTarifActual;
                    oCotCliente.TarifarioFleteID           = 0;
                    oCotCliente.TarifarioClienteFleteID    = 0;
                }

                string result1 = "";
                try
                {
                    if (!UPDTarifario)
                    {
                        cotizCol.Guardar(usuario.UsuarioID);
                    }
                    else
                    {
                        cotizCol.GuardarTarifarioRedespacho(usuario.UsuarioID);
                    }
                }
                catch (Exception ex)
                {
                    result1 = ex.Message;
                }

                string result = cotizCol.GetErrorDescrip();

                // Me guardo este dato para indicar en la página de origenes/destinos que hay que bindear
                // nuevamente la grilla de tarifarios
                Session["HacerBindGridTarifario"] = true;

                StringBuilder scriptString = new StringBuilder();
                scriptString.Append("<script language='javascript'>\n");

                if (result1 != "")
                {
                    scriptString.Append("alert('" + result1 + "');\n");
                }
                if (result != "")
                {
                    scriptString.Append("alert('El tarifario asociado no contiene zonas seleccionadas.\\nNo se pudo asociar la tarifa a las siguientes zonas: " + result + "');\n");
                }
                scriptString.Append("window.returnValue = true;\n");
                scriptString.Append("window.close();\n");
                scriptString.Append("</script>");
                Page.RegisterClientScriptBlock("scrptTarifario", scriptString.ToString());
            }
        }