Exemple #1
0
        private void dtgLocalidades_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
        {
            //List<LocalidadesCodigosPostales> lista = new List<LocalidadesCodigosPostales>();

            //lista = (List<LocalidadesCodigosPostales>)Session["ListaLocalidades"];
            //foreach (DataGridItem item in dtgLocalidades.Items)
            //{
            //    LocalidadesCodigosPostales dr = (LocalidadesCodigosPostales)lista[item.DataSetIndex];
            //    CheckBox chk = (CheckBox)item.FindControl("chkAsignar");
            //    dr.Seleccionado = chk.Checked == true ? 1 : 0;
            //}
            //Session["ListaLocalidades"] = lista;
            //BindGridPaginacion(e.NewPageIndex);
            DsLocalidadesCodigosPostales ds = new DsLocalidadesCodigosPostales();

            ds = (DsLocalidadesCodigosPostales)Session["DsLocalidades"];
            foreach (DataGridItem item in dtgLocalidades.Items)
            {
                DsLocalidadesCodigosPostales.DatosRow dr = (DsLocalidadesCodigosPostales.DatosRow)ds.Datos.Rows[item.DataSetIndex];
                CheckBox chk = (CheckBox)item.FindControl("chkAsignar");
                dr.Seleccionado = chk.Checked;
            }
            Session["DsLocalidades"] = ds;
            BindGridPaginacion(e.NewPageIndex);
        }
        private void Validaciones()
        {
            //int tarifario = Utiles.Validaciones.obtieneEntero(this.txtTarifarioRetiroEntregaID.Text);
            //int agenciaD = Utiles.Validaciones.obtieneEntero(this.busqAgenciaDomicilio.Sucursal);
            int agenciaR = Utiles.Validaciones.obtieneEntero(this.busqAgenciaReferencia.Sucursal);

            //if (tarifario == 0)
            //{
            //    throw new Exception("Debe seleccionar un tarifario de retiro entrega");
            //}

            if (agenciaR == 0)
            {
                throw new Exception("Debe seleccionar una agencia referencia de tarifa");
            }

            bool tieneLocalidades           = false;
            DsLocalidadesCodigosPostales ds = (DsLocalidadesCodigosPostales)Session["DsLocalidades"];

            foreach (DataGridItem item in dtgLocalidades.Items)
            {
                DsLocalidadesCodigosPostales.DatosRow dr = (DsLocalidadesCodigosPostales.DatosRow)ds.Datos.Rows[item.DataSetIndex];
                CheckBox chk = (CheckBox)item.FindControl("chkAsignar");
                dr.Seleccionado = chk.Checked;
                if (dr.Seleccionado)
                {
                    tieneLocalidades = true; break;
                }
            }
            if (!tieneLocalidades)
            {
                foreach (DsLocalidadesCodigosPostales.DatosRow dr in ds.Datos)
                {
                    if (dr.Seleccionado)
                    {
                        tieneLocalidades = true; break;
                    }
                }
            }
            Session["DsLocalidades"] = ds;
            if (!tieneLocalidades)
            {
                throw new Exception("Debe seleccionar al menos una localidad.");
            }

            bool tieneUVenta = false;

            for (int i = 0; i < this.lstUnidadesVenta.Items.Count; i++)
            {
                if (lstUnidadesVenta.Items[i].Selected)
                {
                    tieneUVenta = true; break;
                }
            }
            if (!tieneUVenta)
            {
                throw new Exception("Debe seleccionar al menos una unidad de venta.");
            }
        }
        private void dtgLocalidades_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
        {
            DsLocalidadesCodigosPostales ds = new DsLocalidadesCodigosPostales();

            ds = (DsLocalidadesCodigosPostales)Session["DsLocalidades"];
            foreach (DataGridItem item in dtgLocalidades.Items)
            {
                DsLocalidadesCodigosPostales.DatosRow dr = (DsLocalidadesCodigosPostales.DatosRow)ds.Datos.Rows[item.DataSetIndex];
                CheckBox chk = (CheckBox)item.FindControl("chkAsignar");
                dr.Seleccionado = chk.Checked;
            }
            Session["DsLocalidades"] = ds;
            BindGridPaginacion(e.NewPageIndex);
        }
        private void butGuardar_Click(object sender, System.EventArgs e)
        {
            try
            {
                Page.Validate();
                if (!Page.IsValid)
                {
                    return;
                }

                Validaciones();

                ICodigoPostalAgRefTarifa agenciaRefTarifa = CodigoPostalAgRefTarifaFactory.GetCodigoPostalAgRefTarifa();
                agenciaRefTarifa.CodigoPostalAgRefTarifaID = Utiles.Validaciones.obtieneEntero(AgenciaCodigoPostalID); // Si es edicion esta propiedad viene con un valor para hacer update.

                /// Diego 03/12/2013 Agrega agencia referencia de tarifas
                if (Utiles.Validaciones.obtieneEntero(busqAgenciaReferencia.AgenciaID) > 0)
                {
                    agenciaRefTarifa.AgenciaReferenciaID = Utiles.Validaciones.obtieneEntero(this.busqAgenciaReferencia.AgenciaID);
                }

                DsLocalidadesCodigosPostales ds = (DsLocalidadesCodigosPostales)Session["DsLocalidades"];
                foreach (DataGridItem item in dtgLocalidades.Items)
                {
                    DsLocalidadesCodigosPostales.DatosRow dr = (DsLocalidadesCodigosPostales.DatosRow)ds.Datos.Rows[item.DataSetIndex];
                    CheckBox chk = (CheckBox)item.FindControl("chkAsignar");
                    dr.Seleccionado = chk.Checked;
                }
                Session["DsLocalidades"] = ds;

                if (agenciaRefTarifa.Localidades == null)
                {
                    agenciaRefTarifa.Localidades = new List <ILocalidadAgenciaCodigoPostal>();
                }

                foreach (DsLocalidadesCodigosPostales.DatosRow dr in ds.Datos)
                {//Localidades
                    if (dr.Seleccionado == true)
                    {
                        ILocalidadAgenciaCodigoPostal localidades = LocalidadAgenciaCodigoPostalFactory.GetLocalidadAgenciaCodigoPostal();
                        localidades.LocalidadID    = dr.IsLocalidadIDNull() ? 0 : dr.LocalidadID;
                        localidades.CodigoPostalID = dr.IsCodigoPostalIDNull() ? 0 : dr.CodigoPostalID;
                        agenciaRefTarifa.Localidades.Add(localidades);
                    }
                }

                if (agenciaRefTarifa.UnidadesVentas == null)
                {
                    agenciaRefTarifa.UnidadesVentas = new List <IUnidadVentaAgenciaCodigoPostal>();
                }

                for (int i = 0; i <= lstUnidadesVenta.Items.Count - 1; i++)
                {//recorro la lista de unidades de venta
                    if (lstUnidadesVenta.Items[i].Selected)
                    {
                        IUnidadVentaAgenciaCodigoPostal unidadesVenta = UnidadVentaAgenciaCodigoPostalFactory.GetUnidadVentaAgenciaCodigoPostalFactory();
                        if (!chkCambioUnVta.Checked)
                        {
                            unidadesVenta.UnidadVentaID = Utiles.Validaciones.obtieneEntero(lstUnidadesVenta.Items[i].Value);
                        }
                        else
                        {
                            unidadesVenta.CategoriaUVentaID = Utiles.Validaciones.obtieneEntero(lstUnidadesVenta.Items[i].Value);
                        }

                        agenciaRefTarifa.UnidadesVentas.Add(unidadesVenta);
                    }
                }
                agenciaRefTarifa.categoriaUnVta = chkCambioUnVta.Checked;

                agenciaRefTarifa.Guardar(this.usuario);

                Habilitado(true);

                this.HGDataBind();

                LimpiarSeleccion();

                string script = "";
                script += "			alert('Los datos se guardaron correctamente.');\n";

                ScriptManager.RegisterClientScriptBlock(this.UpdatePanel2,
                                                        UpdatePanel2.GetType(),
                                                        "muestraMensaje",
                                                        script,
                                                        true);
            }
            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);
            }
        }
Exemple #5
0
        private void Validaciones()
        {
            //    List<LocalidadesCodigosPostales> lista = new List<LocalidadesCodigosPostales>();
            //int tarifario = Utiles.Validaciones.obtieneEntero(this.txtTarifarioRetiroEntregaID.Text);
            int agenciaD = Utiles.Validaciones.obtieneEntero(this.busqAgenciaOrigen.Sucursal);
            int agenciaR = Utiles.Validaciones.obtieneEntero(this.busqAgenciaOperativa.Sucursal);

            //if (tarifario == 0)
            //{
            //    throw new Exception("Debe seleccionar un tarifario de retiro entrega");
            //}

            if (agenciaD == 0 || agenciaR == 0)
            {
                throw new Exception("Debe seleccionar una agencia Origen y una agencia operativa");
            }

            bool tieneLocalidades = false;
            //DsLocalidadesCodigosPostales ds = (DsLocalidadesCodigosPostales)Session["DsLocalidades"];
            //lista = (List<LocalidadesCodigosPostales>)Session["ListaLocalidades"];
            //bool salir = false;
            //foreach (DataGridItem item in dtgLocalidades.Items)
            //{
            //    var key = dtgLocalidades.DataKeys[int.Parse(item.ItemIndex.ToString())];
            //    if (int.Parse(key.ToString()) == 1345)
            //    {
            //        List<LocalidadesCodigosPostales> dr = lista.Where(p => p.LocalidadID == int.Parse(key.ToString())).ToList();

            //        foreach (LocalidadesCodigosPostales dr1 in dr)
            //        {
            //            CheckBox chk = (CheckBox)item.FindControl("chkAsignar");
            //            dr[0].Seleccionado = chk.Checked ? 1 : 0;
            //            if (dr[0].Seleccionado == 1)
            //            {
            //                tieneLocalidades = true;
            //                salir = true;
            //            }

            //        }

            //    }
            //    else
            //    {

            //        List<LocalidadesCodigosPostales> dr = lista.Where(p => p.LocalidadID == int.Parse(key.ToString())).ToList();
            //        CheckBox chk = (CheckBox)item.FindControl("chkAsignar");
            //        dr[0].Seleccionado = chk.Checked ? 1 : 0;
            //        if (dr[0].Seleccionado == 1)
            //        {
            //            tieneLocalidades = true;
            //            salir = true;
            //        }

            //    }


            //    if (salir == true)
            //        break;

            //}
            //if (!tieneLocalidades)
            //{
            //    foreach (LocalidadesCodigosPostales dr in lista)
            //    {
            //        if (dr.Seleccionado == 1)
            //        {
            //            tieneLocalidades = true; break;
            //        }
            //    }
            //}
            //Session["ListaLocalidades"] = lista;
            //if (!tieneLocalidades)
            //{
            //    throw new Exception("Debe seleccionar al menos una localidad.");
            //}

            //bool tieneUVenta = false;
            //for (int i = 0; i < this.lstUnidadesVenta.Items.Count; i++)
            //{
            //    if (lstUnidadesVenta.Items[i].Selected)
            //    {
            //        tieneUVenta = true; break;
            //    }
            //}
            //if (!tieneUVenta)
            //{
            //    throw new Exception("Debe seleccionar al menos una unidad de venta.");
            //}

            // bool tieneLocalidades = false;
            DsLocalidadesCodigosPostales ds = (DsLocalidadesCodigosPostales)Session["DsLocalidades"];

            foreach (DataGridItem item in dtgLocalidades.Items)
            {
                DsLocalidadesCodigosPostales.DatosRow dr = (DsLocalidadesCodigosPostales.DatosRow)ds.Datos.Rows[item.DataSetIndex];
                CheckBox chk = (CheckBox)item.FindControl("chkAsignar");
                dr.Seleccionado = chk.Checked;
                if (dr.Seleccionado)
                {
                    tieneLocalidades = true; break;
                }
            }
            if (!tieneLocalidades)
            {
                foreach (DsLocalidadesCodigosPostales.DatosRow dr in ds.Datos)
                {
                    if (dr.Seleccionado)
                    {
                        tieneLocalidades = true; break;
                    }
                }
            }
            Session["DsLocalidades"] = ds;
            if (!tieneLocalidades)
            {
                throw new Exception("Debe seleccionar al menos una localidad.");
            }

            bool tieneUVenta = false;

            for (int i = 0; i < this.lstUnidadesVenta.Items.Count; i++)
            {
                if (lstUnidadesVenta.Items[i].Selected)
                {
                    tieneUVenta = true; break;
                }
            }
            if (!tieneUVenta)
            {
                throw new Exception("Debe seleccionar al menos una unidad de venta.");
            }
        }
Exemple #6
0
        private void butGuardar_Click(object sender, System.EventArgs e)
        {
            try
            {
                Page.Validate();
                if (!Page.IsValid)
                {
                    return;
                }

                Validaciones();
                //    List<LocalidadesCodigosPostales> lista = new List<LocalidadesCodigosPostales>();

                IAgenciaCodigoPostal agenciaCodPostal = AgenciaCodigoPostalFactory.GetAgenciaCodigoPostal();
                agenciaCodPostal.AgenciaCodigoPostalDistribID = Utiles.Validaciones.obtieneEntero(AgenciaCodigoPostalDistribID); // Si es edicion esta propiedad viene con un valor para hacer update.
                agenciaCodPostal.TarifarioRetiroEntregaID     = Utiles.Validaciones.obtieneEntero(this.txtTarifarioRetiroEntregaID.Text);

                if (Utiles.Validaciones.obtieneEntero(busqAgenciaOperativa.AgenciaID) > 0)
                {
                    agenciaCodPostal.AgenciaOperativaID = Utiles.Validaciones.obtieneEntero(this.busqAgenciaOperativa.AgenciaID);
                }

                if (Utiles.Validaciones.obtieneEntero(busqAgenciaOrigen.AgenciaID) > 0)
                {
                    agenciaCodPostal.AgenciaOrigenID = Utiles.Validaciones.obtieneEntero(this.busqAgenciaOrigen.AgenciaID);
                }


                ////DsLocalidadesCodigosPostales ds = (DsLocalidadesCodigosPostales)Session["DsLocalidades"];
                ////foreach (DataGridItem item in dtgLocalidades.Items)
                ////{
                ////    DsLocalidadesCodigosPostales.DatosRow dr = (DsLocalidadesCodigosPostales.DatosRow)ds.Datos.Rows[item.DataSetIndex];
                ////    CheckBox chk = (CheckBox)item.FindControl("chkAsignar");
                ////    dr.Seleccionado = chk.Checked;
                ////}
                ////Session["DsLocalidades"] = ds;

                //lista = (List<LocalidadesCodigosPostales>)Session["ListaLocalidades"];
                //Boolean salir2 = false;
                //foreach (DataGridItem item in dtgLocalidades.Items)
                //{
                //    var key = dtgLocalidades.DataKeys[int.Parse(item.ItemIndex.ToString())];



                //    if (int.Parse(key.ToString()) == 1345)
                //    {
                //        List<LocalidadesCodigosPostales> dr = lista.Where(p => p.LocalidadID == int.Parse(key.ToString())).ToList();
                //        foreach (LocalidadesCodigosPostales dr1 in dr)
                //        {
                //            CheckBox chk = (CheckBox)item.FindControl("chkAsignar");
                //            dr[0].Seleccionado = chk.Checked ? 1 : 0;

                //            salir2 = true;


                //        }
                //    }
                //    else
                //    {
                //        List<LocalidadesCodigosPostales> dr = lista.Where(p => p.LocalidadID == int.Parse(key.ToString())).ToList();

                //        CheckBox chk = (CheckBox)item.FindControl("chkAsignar");
                //        dr[0].Seleccionado = chk.Checked ? 1 : 0;
                //    }
                //    if (salir2 == true)
                //        break;
                //}
                //Session["ListaLocalidades"] = lista;


                ////foreach (DsLocalidadesCodigosPostales.DatosRow dr in ds.Datos)
                ////{//Localidades
                ////    if (dr.Seleccionado == true)
                ////    {
                ////        ILocalidadAgenciaCodigoPostal localidades = LocalidadAgenciaCodigoPostalFactory.GetLocalidadAgenciaCodigoPostal();
                ////        localidades.LocalidadID = dr.IsLocalidadIDNull() ? 0 : dr.LocalidadID;
                ////        localidades.CodigoPostalID = dr.IsCodigoPostalIDNull() ? 0 : dr.CodigoPostalID;
                ////        agenciaCodPostal.Localidades.Add(localidades);
                ////    }
                ////}

                //foreach (var localidadesCodigosPostalese in lista)
                //{
                //    if (localidadesCodigosPostalese.Seleccionado == 1)
                //    {
                //        ILocalidadAgenciaCodigoPostal localidades = LocalidadAgenciaCodigoPostalFactory.GetLocalidadAgenciaCodigoPostal();
                //        localidades.LocalidadID = localidadesCodigosPostalese.LocalidadID;// dr.IsLocalidadIDNull() ? 0 : dr.LocalidadID;
                //        localidades.CodigoPostalID = localidadesCodigosPostalese.CodigoPostalID == null ? 0 : localidadesCodigosPostalese.CodigoPostalID.Value;// dr.IsCodigoPostalIDNull() ? 0 : dr.CodigoPostalID;
                //        agenciaCodPostal.Localidades.Add(localidades);
                //    }
                //}

                //for (int i = 0; i <= lstUnidadesVenta.Items.Count - 1; i++)
                //{//recorro la lista de unidades de venta
                //    if (lstUnidadesVenta.Items[i].Selected)
                //    {
                //        IUnidadVentaAgenciaCodigoPostal unidadesVenta = UnidadVentaAgenciaCodigoPostalFactory.GetUnidadVentaAgenciaCodigoPostalFactory();
                //        if (!chkCambioUnVta.Checked)
                //            unidadesVenta.UnidadVentaID = Utiles.Validaciones.obtieneEntero(lstUnidadesVenta.Items[i].Value);
                //        else
                //            unidadesVenta.CategoriaUVentaID = Utiles.Validaciones.obtieneEntero(lstUnidadesVenta.Items[i].Value);

                //        agenciaCodPostal.UnidadesVentas.Add(unidadesVenta);
                //    }
                //}
                //agenciaCodPostal.categoriaUnVta = chkCambioUnVta.Checked;

                DsLocalidadesCodigosPostales ds = (DsLocalidadesCodigosPostales)Session["DsLocalidades"];
                foreach (DataGridItem item in dtgLocalidades.Items)
                {
                    DsLocalidadesCodigosPostales.DatosRow dr = (DsLocalidadesCodigosPostales.DatosRow)ds.Datos.Rows[item.DataSetIndex];
                    CheckBox chk = (CheckBox)item.FindControl("chkAsignar");
                    dr.Seleccionado = chk.Checked;
                }
                Session["DsLocalidades"] = ds;


                foreach (DsLocalidadesCodigosPostales.DatosRow dr in ds.Datos)
                {//Localidades
                    if (dr.Seleccionado == true)
                    {
                        ILocalidadAgenciaCodigoPostal localidades = LocalidadAgenciaCodigoPostalFactory.GetLocalidadAgenciaCodigoPostal();
                        localidades.LocalidadID    = dr.IsLocalidadIDNull() ? 0 : dr.LocalidadID;
                        localidades.CodigoPostalID = dr.IsCodigoPostalIDNull() ? 0 : dr.CodigoPostalID;
                        agenciaCodPostal.Localidades.Add(localidades);
                    }
                }

                for (int i = 0; i <= lstUnidadesVenta.Items.Count - 1; i++)
                {//recorro la lista de unidades de venta
                    if (lstUnidadesVenta.Items[i].Selected)
                    {
                        IUnidadVentaAgenciaCodigoPostal unidadesVenta = UnidadVentaAgenciaCodigoPostalFactory.GetUnidadVentaAgenciaCodigoPostalFactory();
                        if (!chkCambioUnVta.Checked)
                        {
                            unidadesVenta.UnidadVentaID = Utiles.Validaciones.obtieneEntero(lstUnidadesVenta.Items[i].Value);
                        }
                        else
                        {
                            unidadesVenta.CategoriaUVentaID = Utiles.Validaciones.obtieneEntero(lstUnidadesVenta.Items[i].Value);
                        }

                        agenciaCodPostal.UnidadesVentas.Add(unidadesVenta);
                    }
                }
                agenciaCodPostal.categoriaUnVta = chkCambioUnVta.Checked;
                if (agenciaCodPostal.GuardarDistribucion(this.usuario) == false)
                {
                    ((ErrorWeb)this.phErrores.Controls[0]).setMensaje("Una localidad Ya esta relacionada con la agencia origen y operativa ingresada");
                    return;
                }

                this.HGDataBind();

                LimpiarSeleccion();

                string script = "";
                script += "			alert('Los datos se guardaron correctamente.');\n";

                ScriptManager.RegisterClientScriptBlock(this.UpdatePanel2,
                                                        UpdatePanel2.GetType(),
                                                        "muestraMensaje",
                                                        script,
                                                        true);
            }
            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 Guardar()
        {
            if (opcionGeneral)
            {
                Page.Validate();
                if (!Page.IsValid)
                {
                    return;
                }
                Validaciones();

                DsLocalidadesCodigosPostales ds = (DsLocalidadesCodigosPostales)Session["DsLocalidadesRetiro"];
                foreach (DataGridItem item in dtgLocalidades.Items)
                {
                    DsLocalidadesCodigosPostales.DatosRow dr = (DsLocalidadesCodigosPostales.DatosRow)ds.Datos.Rows[item.DataSetIndex];
                    CheckBox chk = (CheckBox)item.FindControl("chkAsignar");
                    dr.Seleccionado = chk.Checked;
                }
                Session["DsLocalidadesRetiro"] = ds;

                foreach (DsLocalidadesCodigosPostales.DatosRow dr in ds.Datos)
                {//Localidades
                    if (dr.Seleccionado == true)
                    {
                        ICodigoPostalRetiro codigoPostalRetiro = CodigoPostalRetiroFactory.GetCodigoPostal();
                        codigoPostalRetiro.CodigoPostalRetiroID     = 0;
                        codigoPostalRetiro.LocalidadID              = dr.IsLocalidadIDNull() ? 0 : dr.LocalidadID;
                        codigoPostalRetiro.CodigoPostalID           = dr.IsCodigoPostalIDNull() ? 0 : dr.CodigoPostalID;
                        codigoPostalRetiro.TarifarioRetiroEntregaID = Utiles.Validaciones.obtieneEntero(this.txtTarifarioRetiroEntregaID.Text);
                        codigoPostalRetiro.AgenciaWebID             = Utiles.Validaciones.obtieneEntero(this.busqAgenciaRetiro.AgenciaID);
                        //  codigoPostalRetiro.AgenciaRTID = Utiles.Validaciones.obtieneEntero(this.busqAgenciaReferencia.AgenciaID);
                        for (int i = 0; i <= lstUnidadesVenta.Items.Count - 1; i++)
                        {//recorro la lista de unidades de venta
                            if (lstUnidadesVenta.Items[i].Selected)
                            {
                                IUnidadVentaAgenciaCodigoPostal unidadesVenta = UnidadVentaAgenciaCodigoPostalFactory.GetUnidadVentaAgenciaCodigoPostalFactory();
                                if (!chkCambioUnVta.Checked)
                                {
                                    unidadesVenta.UnidadVentaID = Utiles.Validaciones.obtieneEntero(lstUnidadesVenta.Items[i].Value);
                                    codigoPostalRetiro.UnidadesVentas.Add(unidadesVenta.UnidadVentaID);
                                    codigoPostalRetiro.CategoriaUVenta.Add(0);
                                }
                                else
                                {
                                    unidadesVenta.CategoriaUVentaID = Utiles.Validaciones.obtieneEntero(lstUnidadesVenta.Items[i].Value);
                                    codigoPostalRetiro.UnidadesVentas.Add(0);
                                    codigoPostalRetiro.CategoriaUVenta.Add(unidadesVenta.CategoriaUVentaID);
                                }
                            }
                        }

                        codigoPostalRetiro.CategoriaUnVta = chkCambioUnVta.Checked;
                        codigoPostalRetiro.Guardar(this.usuario);
                    }
                }
                HGDataBind(false);
                LimpiarSeleccion();
            }
            else
            {
                Page.Validate();
                if (!Page.IsValid)
                {
                    return;
                }
                Validaciones();

                DsLocalidadesCodigosPostales ds = (DsLocalidadesCodigosPostales)Session["DsLocalidadesRetiro"];
                foreach (DataGridItem item in dtgLocalidades.Items)
                {
                    DsLocalidadesCodigosPostales.DatosRow dr = (DsLocalidadesCodigosPostales.DatosRow)ds.Datos.Rows[item.DataSetIndex];
                    CheckBox chk = (CheckBox)item.FindControl("chkAsignar");
                    dr.Seleccionado = chk.Checked;
                }
                Session["DsLocalidadesRetiro"] = ds;

                foreach (DsLocalidadesCodigosPostales.DatosRow dr in ds.Datos)
                {//Localidades
                    if (dr.Seleccionado == true)
                    {
                        ICodigoPostalRetiro codigoPostalRetiro = CodigoPostalRetiroFactory.GetCodigoPostal();
                        codigoPostalRetiro.CodigoPostalRetiroAgenciaID = 0;
                        codigoPostalRetiro.LocalidadID              = dr.IsLocalidadIDNull() ? 0 : dr.LocalidadID;
                        codigoPostalRetiro.CodigoPostalID           = dr.IsCodigoPostalIDNull() ? 0 : dr.CodigoPostalID;
                        codigoPostalRetiro.TarifarioRetiroEntregaID = Utiles.Validaciones.obtieneEntero(this.txtTarifarioRetiroEntregaID.Text);
                        codigoPostalRetiro.AgenciaID = Utiles.Validaciones.obtieneEntero(this.busqAgenciaRetiro.AgenciaID);
                        for (int i = 0; i <= lstUnidadesVenta.Items.Count - 1; i++)
                        {//recorro la lista de unidades de venta
                            if (lstUnidadesVenta.Items[i].Selected)
                            {
                                IUnidadVentaAgenciaCodigoPostal unidadesVenta = UnidadVentaAgenciaCodigoPostalFactory.GetUnidadVentaAgenciaCodigoPostalFactory();
                                if (!chkCambioUnVta.Checked)
                                {
                                    unidadesVenta.UnidadVentaID = Utiles.Validaciones.obtieneEntero(lstUnidadesVenta.Items[i].Value);
                                    codigoPostalRetiro.UnidadesVentas.Add(unidadesVenta.UnidadVentaID);
                                    codigoPostalRetiro.CategoriaUVenta.Add(0);
                                }
                                else
                                {
                                    unidadesVenta.CategoriaUVentaID = Utiles.Validaciones.obtieneEntero(lstUnidadesVenta.Items[i].Value);
                                    codigoPostalRetiro.UnidadesVentas.Add(0);
                                    codigoPostalRetiro.CategoriaUVenta.Add(unidadesVenta.CategoriaUVentaID);
                                }
                            }
                        }

                        codigoPostalRetiro.CategoriaUnVta = chkCambioUnVta.Checked;
                        codigoPostalRetiro.GuardarAgencia(this.usuario);
                    }
                }
                HGDataBindAgencias(false);
                LimpiarSeleccion();
            }

            string script = "";

            script += "			alert('Los datos se guardaron correctamente.');\n";
            //if(opcionGeneral)
            //    script += "			window.location.href = 'CodigoPostalRetiro.aspx?Opcion=General';\n";
            //else
            //    script += "			window.location.href = 'CodigoPostalRetiro.aspx?Opcion=Particular';\n";

            ScriptManager.RegisterClientScriptBlock(this.UpdatePanel2,
                                                    UpdatePanel2.GetType(),
                                                    "muestraMensaje",
                                                    script,
                                                    true);

            Consultar();
            ConsultarAsignadas();
        }