using Extensiones; using System; using System.Collections.Generic; using System.Data; using System.Text; using System.Web.UI.WebControls; public partial class Inventarios_EntregaAlmacenRuta : ClsPaginas { DataTable DTGenerarDocumentos { get { if (ViewState["DTGenerarDocumentos"] == null) { ViewState["DTGenerarDocumentos"] = new DataTable(); } return (DataTable)ViewState["DTGenerarDocumentos"]; } set { ViewState["DTGenerarDocumentos"] = (DataTable)value; } } DataTable DTDatosConsulta { get { if (ViewState["DTDatosConsulta"] == null) { ViewState["DTDatosConsulta"] = new DataTable(); } return (DataTable)ViewState["DTDatosConsulta"]; } set { ViewState["DTDatosConsulta"] = (DataTable)value; } } DataTable DTRecoleccion { get { if (ViewState["DTRecoleccion"] == null) { ViewState["DTRecoleccion"] = InitDTRecoleccion(); } return (DataTable)ViewState["DTRecoleccion"]; } set { ViewState["DTRecoleccion"] = (DataTable)value; } } bool SeleccionEntrega { get { if (ViewState["SeleccionEntrega"] == null) { ViewState["SeleccionEntrega"] = false; } return (bool)ViewState["SeleccionEntrega"]; } set { ViewState["SeleccionEntrega"] = (bool)value; } } int CveEntregaAlmacen { get { if (ViewState["CveEntregaAlmacen"] == null) { ViewState["CveEntregaAlmacen"] = -1; } return (int)ViewState["CveEntregaAlmacen"]; } set { ViewState["CveEntregaAlmacen"] = (int)value; } } protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { SeleccionEntrega = true; CargaCombos(); CargaDatos(); #region RECOLEECION // CargaDatosRecoleccion(); #endregion } } protected void BtnAsignar_Click(object sender, EventArgs e) { if (DdlChofer.SelectedValue.ToEntero() <= 0) { Alert("Debe seleccionar un chofer.", ModExtensiones.TipoMensaje.MsgAdvertencia); return; } if (DdlUnidadCamion.SelectedValue.ToEntero() <= 0) { Alert("Debe seleccionar una unidad", ModExtensiones.TipoMensaje.MsgAdvertencia); return; } StringBuilder SBError = new StringBuilder(); ActualizaOrdenDTGenerarDocumentos(); List ListaTimbres = new List(); bool TieneError = false; ClsGenerales ObjGeneral = new ClsGenerales(); ObjGeneral.IniciaTransacSQL(); GridViewRowCollection Grid = GvGenerarDocumentos.Rows; string Usuario = DdlChofer.SelectedItem.Text; int CveDireccionOrigen = -1; foreach (GridViewRow row in Grid) { int Orden = row.DataKey("Orden").ToEntero(); int CveDireccionDestino = row.DataKey("CveDireccionEnvio").ToEntero(); if (CveDireccionDestino <= 0) { SBError.AppendLine($"Factura {row.DataKey("SerieFolio")} el cliente {row.DataKey("Nombre")} no tiene una dirección de envio. "); TieneError = true; break; } DateTime fechallegada = (TxtFechaEntrega.Text + " 23:59").ToDate(); int CveEntregaAlmacen = ObjGeneral.AddInvEntregaAlmacenRuta(row.DataKey("CveSubProyectoOrigen").ToEntero(), CveDireccionOrigen, CveDireccionDestino, row.DataKey("CveMovimiento").ToEntero(), DdlChofer.SelectedValue.ToEntero(), DdlUnidadCamion.SelectedValue.ToEntero(), TxtFechaEntrega.Text.ToDate(), fechallegada, "E", "", "", "1900-01-01".ToDate(), Orden, 0, 1); CveDireccionOrigen = row.DataKey("CveDireccionEnvio").ToEntero(); if (CveEntregaAlmacen > 0) { int CveTimbre = ObjGeneral.AddGralTimbre("Ent", row.DataKey("CveSubProyectoOrigen").ToEntero(), TxtFechaEntrega.Text.ToDate(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveEntregaAlmacen: CveEntregaAlmacen, AplicaCP: ChkEmitirCartaPorte.Checked); if (CveTimbre <= 0) { SBError.AppendLine($"Factura {row.DataKey("SerieFolio")} error al agregar timbre. "); TieneError = true; break; } else { ListaTimbres.Add(CveTimbre); } } else { SBError.AppendLine($"Factura {row.DataKey("SerieFolio")} error al agregar entrega almacen. "); TieneError = true; break; } } if (!TieneError) { foreach (GridViewRow row in Grid) { try { //MandarNotificacionCorreo(row); } catch (Exception ex) { TieneError = true; ModExtensiones.GuardaLog(ex.Message); } } if (!TieneError) { ObjGeneral.Commit(); StringBuilder MensajeAlert = new StringBuilder(); //recorrer para timbrar MensajeAlert.Append(" Entregas creadas correctamente

"); foreach (int cvetimbre in ListaTimbres) { Timbres ObjTimbres = new Timbres("Ent", cvetimbre, UsuarioActual); MensajeAlert.AppendFormat("Folio: {0}  ", ObjTimbres.ObjFactura.SerieFolio); if (ObjTimbres.Timbrar()) { MensajeAlert.AppendFormat("XML    ", ModExtensiones.Encripta(String.Format("OP=DesXmlTra&CveTimbre={0}&EXT={1}&FOLIO={2}&TIPODOCTO={3}", cvetimbre, "XML", ObjTimbres.ObjFactura.SerieFolio, ObjTimbres.ObjFactura.TipoDocto))); if (ChkEmitirCartaPorte.Checked) { MensajeAlert.AppendFormat("PDF   ", ModExtensiones.Encripta(String.Format("OP=CARPOTIMBRE&CVETIMBRE={0}", cvetimbre))); } else { MensajeAlert.AppendFormat("PDF   ", ModExtensiones.Encripta(String.Format("OP=CARPO&CVETIMBRE={0}", cvetimbre))); } MensajeAlert.Append("
"); DdlChofer.SelectedValueExist("-1"); DdlUnidadCamion.SelectedValueExist("-1"); ChkEmitirCartaPorte.Checked = false; SeleccionEntrega = false; SeleccionarGenerar(1); } else { MensajeAlert.AppendFormat("", ObjTimbres.MsgError); } } Alert(MensajeAlert.ToString(), ModExtensiones.TipoMensaje.MsgInformacion); CargaDatos(); UpDatos.Update(); } else { ObjGeneral.RollBack(); } ObjGeneral.Dispose(); } else { Alert(SBError.ToString(), ModExtensiones.TipoMensaje.MsgAdvertencia); } } protected void LnkGeneraRecoleccion_Click(object sender, EventArgs e) { if (DdlChoferRec.SelectedValue.ToEntero() <= 0) { Alert("Debe seleccionar un chofer.", ModExtensiones.TipoMensaje.MsgAdvertencia); return; } if (DdlUnidadRec.SelectedValue.ToEntero() <= 0) { Alert("Debe seleccionar una unidad", ModExtensiones.TipoMensaje.MsgAdvertencia); return; } StringBuilder SBError = new StringBuilder(); //ActualizaOrdenDTGenerarDocumentos(); List ListaTimbres = new List(); bool TieneError = false; ClsGenerales ObjGeneral = new ClsGenerales(); ObjGeneral.IniciaTransacSQL(); try { string Usuario = DdlChofer.SelectedItem.Text; int CveDireccionOrigen = -1; foreach (GridViewRow row in gvR.Rows) { int Orden = row.DataKey("Orden").ToEntero(); int CveEntregaAlmacen = row.DataKey("CveEntregaAlmacen").ToEntero(); if (row.FCCheckBox("Chk").Checked) { CveDireccionOrigen = row.DataKey("CveDireccionOrigen").ToEntero(); if (CveEntregaAlmacen > 0) { // se actualizan los datos de unidad, chofer, fechas y Carta porte if (ObjGeneral.AsignaEntregaAlmacenRuta(DdlUnidadRec.SelectedValue.ToEntero(), DdlChoferRec.SelectedValue.ToEntero(), TxtFechaRec.Text.ToDate(), (TxtFechaRec.Text + " 23:59").ToDate(), CveEntregaAlmacen, UsuarioActual.CveEmpresa)) { int CveTimbre = ObjGeneral.AddGralTimbre("Rec", row.DataKey("CveSubProyecto").ToEntero(), TxtFechaEntrega.Text.ToDate(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveEntregaAlmacen: CveEntregaAlmacen, AplicaCP: ChkEmitirPorteRec.Checked); if (CveTimbre <= 0) { SBError.AppendLine($"Folio {row.DataKey("FolioReferencia")} ocurrió un error al agregar timbre. "); TieneError = true; break; } else { ListaTimbres.Add(CveTimbre); } } else { SBError.AppendLine($"Folio {row.DataKey("FolioReferencia")} ocurrió un error al aplicar condiciones de entrega. "); TieneError = true; break; } } else { SBError.AppendLine($"Folio {row.DataKey("FolioReferencia")} ocurrió un error al agregar entrega almacen. "); TieneError = true; break; } } } } catch (global::System.Exception ex) { TieneError = true; this.OnError("Ocurrió un error al generar la entrega", ex); } if (!TieneError) { ObjGeneral.Commit(); } else { ObjGeneral.RollBack(); } ObjGeneral.Dispose(); if (!TieneError) { StringBuilder MensajeAlert = new StringBuilder(); //recorrer para timbrar MensajeAlert.Append(" Entregas creadas correctamente

"); foreach (int cvetimbre in ListaTimbres) { Timbres ObjTimbres = new Timbres("Rec", cvetimbre, UsuarioActual); if (ObjTimbres.Timbrar()) { MensajeAlert.AppendFormat("Folio: {0}  ", ObjTimbres.ObjFactura.SerieFolio); MensajeAlert.AppendFormat("XML    ", ModExtensiones.Encripta(String.Format("OP=DesXmlTra&CveTimbre={0}&EXT={1}&FOLIO={2}&TIPODOCTO={3}", cvetimbre, "XML", ObjTimbres.ObjFactura.SerieFolio, ObjTimbres.ObjFactura.TipoDocto))); if (ChkEmitirPorteRec.Checked) { MensajeAlert.AppendFormat("PDF   ", ModExtensiones.Encripta(String.Format("OP=CARPOTIMBRE&CVETIMBRE={0}", cvetimbre))); } else { MensajeAlert.AppendFormat("PDF   ", ModExtensiones.Encripta(String.Format("OP=CARPO&CVETIMBRE={0}", cvetimbre))); } MensajeAlert.Append("
"); } else { MensajeAlert.AppendFormat("
  • {0}
", ObjTimbres.MsgError); } } Alert(MensajeAlert.ToString(), ModExtensiones.TipoMensaje.MsgInformacion); CargaDatosRecoleccion(); DdlChofer.SelectedValueExist("-1"); DdlUnidadCamion.SelectedValueExist("-1"); SeleccionEntrega = false; SeleccionarGenerar(1); UpDatos.Update(); } else { Alert(SBError.ToString(), ModExtensiones.TipoMensaje.MsgError); } } private void CargaDatos() { ClsGenerales ObjGeneral = new ClsGenerales(); if (ObjGeneral.GetInvEntregaAlmacenRuta(DdlSubProyecto.SelectedValue.ToEntero(), TxtFechaI.Text.ToDate(), TxtFechaF.Text.ToDate(), UsuarioActual.CveEmpresa, 1)) { GvEntregas.DataSource = ObjGeneral.DtResultados; DTDatosConsulta = ObjGeneral.DtResultados; DTGenerarDocumentos = ObjGeneral.DtResultados.Clone(); } ObjGeneral.Dispose(); GvEntregas.DataBind(); UpDatos.Update(); } private void CargaCombos() { DdlUnidadCamion.DataSource = get_GlobalDTInvCamiones(UsuarioActual.CveEmpresa); DdlUnidadCamion.Items.Insert(0, new ListItem("Seleccione", "-1")); DdlUnidadCamion.DataBind(); DdlUnidadRec.DataSource = get_GlobalDTInvCamiones(UsuarioActual.CveEmpresa); DdlUnidadRec.Items.Insert(0, new ListItem("Seleccione", "-1")); DdlUnidadRec.DataBind(); TxtFechaI.Text = DateTime.Now.AddDays(-1).ToShortDateString(); TxtFechaF.Text = DateTime.Now.AddDays(3).ToShortDateString(); DdlChofer.DataSource = get_GlobalDTChoferes(UsuarioActual.CveEmpresa); DdlChofer.DataBind(); DdlChofer.Items.Insert(0, new ListItem("Seleccione", "-1")); DdlChoferRec.DataSource = get_GlobalDTChoferes(UsuarioActual.CveEmpresa); DdlChoferRec.DataBind(); DdlChoferRec.Items.Insert(0, new ListItem("Seleccione", "-1")); TxtFechaEntrega.Text = DateTime.Now.ToShortDateString(); TabRecoleccion.Visible = UsuarioActual.Empresa.Funcionalidad(531) == "1"; TxtFechaLimite.Text = DateTime.Now.ToShortDateString(); CargarCentrosDeCosto(null, DdlSubProyecto, null, LblSubProyecto); CargarCentrosDeCosto(null, DdlSubProyectoRecoleccion, null, LblSubProyectoRecoleccion); } protected void LnkGenerarDocumentos_Click(object sender, EventArgs e) { SeleccionarGenerar(1); } private void SeleccionarGenerar(int Opcion) { if (SeleccionEntrega) { DTGenerarDocumentos.Rows.Clear(); if (Opcion == 2) //cuando es recolección { int CountRows = 0; foreach (GridViewRow GvRow in gvR.Rows) { CheckBox ChkAsigna = GvRow.FCCheckBox("Chk"); if (ChkAsigna.Checked) { int CveMovimiento = GvRow.DataKey("Cve").ToEntero(); DataRow dRow = DTGenerarDocumentos.NewRow(); DataRow dRowOrigen = DTDatosConsulta.FiltraParametros($"CveMovimiento = {CveMovimiento}").Rows[0]; int IndexColun = 0; foreach (DataColumn dColumn in DTDatosConsulta.Columns) { dRow[IndexColun] = dRowOrigen[IndexColun]; IndexColun++; } dRow["Num"] = CountRows + 1; DTGenerarDocumentos.Rows.Add(dRow); CountRows++; } } } else { int CountRows = 0; foreach (GridViewRow GvRow in GvEntregas.Rows) { CheckBox ChkAsigna = GvRow.FCCheckBox("ChkAsigna"); if (ChkAsigna.Checked) { int CveMovimiento = GvRow.DataKey("CveMovimiento").ToEntero(); DataRow dRow = DTGenerarDocumentos.NewRow(); DataRow dRowOrigen = DTDatosConsulta.FiltraParametros($"CveMovimiento = {CveMovimiento}").Rows[0]; int IndexColun = 0; foreach (DataColumn dColumn in DTDatosConsulta.Columns) { dRow[IndexColun] = dRowOrigen[IndexColun]; IndexColun++; } dRow["Num"] = CountRows + 1; DTGenerarDocumentos.Rows.Add(dRow); CountRows++; } } DTGenerarDocumentos.AcceptChanges(); SeleccionEntrega = false; LnkGenerarDocumentos.Text = "Regresar"; LnkGenerarDocumentos.CssClass = "btn btn-default"; OcultarmostarDatosEntrega(true); BtnConsultar.Visible = false; UpDatos.Update(); UpFiltro.Update(); if (CountRows > 0) { GvGenerarDocumentos.DataSource = DTGenerarDocumentos; GvGenerarDocumentos.DataBind(); DVGvGenerarDocumentos.Visible = true; BtnAsignar.Visible = true; DVGvEntregas.Visible = false; RegistraScript("InitOrdenamientoGvGenerarDocumentos();"); } else { Alert("No hay entregas seleccionadas", ModExtensiones.TipoMensaje.MsgAdvertencia); return; } } } else { BtnConsultar.Visible = true; SeleccionEntrega = true; LnkGenerarDocumentos.Text = "Preseleccionar"; LnkGenerarDocumentos.CssClass = "btn btn-primary"; OcultarmostarDatosEntrega(false); BtnAsignar.Visible = false; DVGvGenerarDocumentos.Visible = false; DVGvEntregas.Visible = true; UpDatos.Update(); UpFiltro.Update(); } } private void OcultarmostarDatosEntrega(bool mostrar) { //DVDatosEntrega1.Visible = mostrar; DVDatosEntrega2.Visible = mostrar; //DVDatosEntrega3.Visible = mostrar; DVDatosEntrega4.Visible = mostrar; //DVDatosEntrega5.Visible = mostrar; DVDatosEntrega6.Visible = mostrar; //if (mostrar) //{ // DVDatosEntrega7.Attributes.Add("class", "col-md-1"); //} //else //{ // DVDatosEntrega7.Attributes.Add("class", "col-md-9"); //} if (UsuarioActual.Empresa.Funcionalidad(161).ToEntero() == 1) { DvCartaPorte2.Visible = mostrar; } } private void ActualizaOrdenDTGenerarDocumentos() { string[] OrdenMovimientos = Request.Form.GetValues("OrdenMovimientos"); int NumOrden = 1; foreach (string CveMovimiento in OrdenMovimientos) { foreach (DataRow dRow in DTGenerarDocumentos.Rows) { if (CveMovimiento.ToEntero() == dRow["CveMovimiento"].ToString().ToEntero()) { dRow["Orden"] = NumOrden; } } DTGenerarDocumentos.AcceptChanges(); NumOrden++; } DataView DTview = new DataView(DTGenerarDocumentos); // Sort by State and ZipCode column in descending order DTview.Sort = "Orden ASC"; GvGenerarDocumentos.DataSource = DTview; GvGenerarDocumentos.DataBind(); UpDatos.Update(); } protected void BtnConsultar_Click(object sender, EventArgs e) { if (Tab.ActiveTabIndex == 0) { CargaDatos(); } else { CargaDatosRecoleccion(); } } #region RECOLECCION private DataTable InitDTRecoleccion() { DataTable DT = new DataTable(); DT.Columns.Add("CveEntregaAlmacenDetalle", System.Type.GetType("System.Int32")); DT.Columns.Add("CveEntregaAlmacen", System.Type.GetType("System.Int32")); DT.Columns.Add("CvePS", System.Type.GetType("System.Int32")); DT.Columns.Add("Cantidad", System.Type.GetType("System.Double")); DT.Columns.Add("CveUnidadMedida", System.Type.GetType("System.Int32")); DT.Columns.Add("CveUsuario", System.Type.GetType("System.Int32")); DT.Columns.Add("FechaIng", System.Type.GetType("System.DateTime")); DT.Columns.Add("CodigoPS", System.Type.GetType("System.String")); DT.Columns.Add("Abreviatura", System.Type.GetType("System.String")); return DT; } private void CargaDatosRecoleccion() { ClsGenerales ObjGeneral = new ClsGenerales(); if (ObjGeneral.GetInvEntregaAlmacenRuta(DdlSubProyecto.SelectedValue.ToEntero(), TxtFechaI.Text.ToDate(), TxtFechaF.Text.ToDate(), UsuarioActual.CveEmpresa, 2, 0)) { gvR.DataSource = ObjGeneral.DtResultados; } ObjGeneral.Dispose(); gvR.DataBind(); UpDatosRecoleccion.Update(); } private void CargaDatosRecoleccionDetallePS() { if (CveEntregaAlmacen > 0) { ClsGenerales ObjGenerales = new ClsGenerales(); if (ObjGenerales.GetEntregaAlmacenRutaDetalle(CveEntregaAlmacen)) { GvModalPSRecoleccion.DataSource = ObjGenerales.DtResultados; } else { GvModalPSRecoleccion.DataSource = null; } ObjGenerales.Dispose(); } else { GvModalPSRecoleccion.DataSource = DTRecoleccion; } GvModalPSRecoleccion.DataBind(); UpModalRecoleccion.Update(); } protected void DdlModalRecoleccionCliente_SelectedIndexChanged(object sender, EventArgs e) { ModalRecoleccionCargaDirecciones(); } private void ModalRecoleccionCargaDirecciones() { if (DdlModalRecoleccionCliente.SelectedValue.ToEntero() > 0) { ClsClientes ObjClientes = new ClsClientes(); if (ObjClientes.DireccionEnvioGet(-1, DdlModalRecoleccionCliente.SelectedValue.ToEntero(), -1)) { DdlmodalRecoleccionDireccion.DataSource = ObjClientes.DtResultados.FiltraParametros("CveSubProyecto = " + DdlSubProyectoRecoleccion.SelectedValue.ToEntero()); } ObjClientes.Dispose(); } DdlmodalRecoleccionDireccion.DataBind(); DdlmodalRecoleccionDireccion.Items.Insert(0, new ListItem("Seleccione", "-1")); UpModalRecoleccion.Update(); } protected void LnkAgregarRecoleccion_Click(object sender, EventArgs e) { LtlModalRecoleccionTitulo.Text = "Agregar Recolección"; BtnModalRecoleccionGuardar.Text = "Agregar"; LimpiarModalRecoleccion(); RegistraScript("$('#DivModalRecoleccion').modal('show');"); CveEntregaAlmacen = -1; } protected void LnkGvDatosRecoleccionEditar_Click(object sender, EventArgs e) { LinkButton LnkEliminar = (LinkButton)sender; GridViewRow GvRow = (GridViewRow)LnkEliminar.NamingContainer; CveEntregaAlmacen = GvRow.DataKey("CveEntregaAlmacen").ToEntero(); int CveDireccionOrigen = GvRow.DataKey("CveDireccionOrigen").ToEntero(); int CveClienteEnvio = -1; string NombreCliente = ""; ClsClientes ObjClientes = new ClsClientes(); DataTable DtTempDirecciones = new DataTable(); if (ObjClientes.DireccionEnvioGet(CveDireccionOrigen, -1, -1)) { CveClienteEnvio = ObjClientes.DtResultados.FiltroPrimeroValor("CveCliente").ToEntero(); NombreCliente = ObjClientes.DtResultados.FiltroPrimeroValor("NombreCliente"); if (ObjClientes.DireccionEnvioGet(-1, CveClienteEnvio, -1)) { DdlmodalRecoleccionDireccion.DataSource = ObjClientes.DtResultados; } } ObjClientes.Dispose(); DdlmodalRecoleccionDireccion.DataBind(); DdlmodalRecoleccionDireccion.Items.Add(new ListItem("Seleccione una", "-1")); DdlmodalRecoleccionDireccion.SelectedValueExist(CveDireccionOrigen); DdlModalRecoleccionCliente.SelectedValue = CveClienteEnvio.ToString(); DdlModalRecoleccionCliente.SelectedText = NombreCliente; DdlSubProyectoRecoleccion.SelectedValueExist(GvRow.DataKey("CveSubProyecto")); TxtFolioReferencia.Text = GvRow.DataKey("FolioReferencia"); TxtReferencia.Text = GvRow.DataKey("Referencia"); CargaDatosRecoleccionDetallePS(); LtlModalRecoleccionTitulo.Text = "Actualizar Recolección"; BtnModalRecoleccionGuardar.Text = "Actualizar"; UpModalRecoleccion.Update(); RegistraScript("$('#DivModalRecoleccion').modal('show');"); } private void LimpiarModalRecoleccion() { // DdlModalRecoleccionCliente.SelectedValueExist(-1); DdlmodalRecoleccionDireccion.SelectedValueExist(-1); TxtModalRecoleccionCantidad.Text = ""; DdlModalRecoleccionUnidad.Items.Clear(); DdlModalRecoleccionUnidad.Items.Add(new ListItem("Seleccione una", "-1")); DdlProducto2.txtValue.Value = ""; DdlProducto2.txtText.Value = ""; DdlSubProyectoRecoleccion.SelectedValueExist("-1"); DdlModalRecoleccionCliente.SelectedValue = "-1"; DdlModalRecoleccionCliente.SelectedText = "Seleccione"; TxtFolioReferencia.Text = ""; TxtReferencia.Text = ""; DTRecoleccion.Rows.Clear(); GvModalPSRecoleccion.DataSource = DTRecoleccion; GvModalPSRecoleccion.DataBind(); UpModalRecoleccion.Update(); } protected void DdlProducto_ValueChanged(object sender, EventArgs e) { ElProductoChange(); } private void ElProductoChange() { DdlModalRecoleccionUnidad.Items.Clear(); DdlModalRecoleccionUnidad.DataSource = get_GlobalDTProductosServiciosEquivalencias(DdlProducto2.SelectedValue.ToEntero(), -1, UsuarioActual.CveEmpresa); DdlModalRecoleccionUnidad.DataBind(); UpModalRecoleccion.Update(); } protected void BtnModalRecoleccionGuardar_Click(object sender, EventArgs e) { if (DdlmodalRecoleccionDireccion.SelectedValue.ToEntero() <= 0) { Alert("Debe seleccionar la dirección de recolección", ModExtensiones.TipoMensaje.MsgAdvertencia); return; } bool ProcesoOK = false; ClsGenerales ObjGenerales = new ClsGenerales(); ObjGenerales.IniciaTransacSQL(); if (CveEntregaAlmacen == -1) { DateTime fechallegada = (TxtFechaEntrega.Text + " 23:59").ToDate(); CveEntregaAlmacen = ObjGenerales.AddInvEntregaAlmacenRuta(DdlSubProyectoRecoleccion.SelectedValue.ToEntero(), DdlmodalRecoleccionDireccion.SelectedValue.ToEntero(), -1, -1, DdlChoferRec.SelectedValue.ToEntero(), DdlUnidadRec.SelectedValue.ToEntero(), TxtFechaEntrega.Text.ToDate(), fechallegada, "R", TxtFolioReferencia.Text, TxtReferencia.Text, TxtFechaLimite.Text.ToDate(), 1, 0, 1); if (CveEntregaAlmacen > 0) { //CveTimbrenuevo = ObjGenerales.AddGralTimbre("Rec", "-1", -1, "-1", TxtFechaEntrega.Text.ToDate(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, 0, -1, ChkEmitirCartaPorte.Checked, CveEntregaAlmacen, -1); //if (CveTimbrenuevo > 0) //{ foreach (DataRow dRow in DTRecoleccion.Rows) { if (ObjGenerales.AddEntregaAlmacenRutaDetalle(CveEntregaAlmacen, dRow["CvePS"].ToString().ToEntero(), dRow["Cantidad"].ToString().ToDecimal(), dRow["CveUnidadMedida"].ToString().ToEntero(), UsuarioActual.CveUsuario)) { ProcesoOK = true; } else { ProcesoOK = false; break; } } //} } } else { ProcesoOK = ObjGenerales.UpdateInvEntregaAlmacenRuta(CveEntregaAlmacen, DdlmodalRecoleccionDireccion.SelectedValue.ToEntero(), -1, DdlChoferRec.SelectedValue.ToEntero(), DdlUnidadRec.SelectedValue.ToEntero(), TxtFechaEntrega.Text.ToDate(), UsuarioActual.CveEmpresa,FolioReferencia:TxtFolioReferencia.Text,Referencia: TxtReferencia.Text,CveSubProyecto: DdlSubProyectoRecoleccion.SelectedValue.ToEntero()); } if (ProcesoOK) { ObjGenerales.Commit(); Alert("Recolección Guardada correctamente."); RegistraScript("$('#DivModalRecoleccion').modal('hide');"); } else { ObjGenerales.RollBack(); Alert("Ocurrió un error.", ModExtensiones.TipoMensaje.MsgError); } ObjGenerales.Dispose(); CargaDatosRecoleccion(); } protected void LnkGvDatosRecoleccionEliminar_Click(object sender, EventArgs e) { LinkButton LnkEliminar = (LinkButton)sender; GridViewRow GvRow = (GridViewRow)LnkEliminar.NamingContainer; int CveEntregaAlmacenEliminar = GvRow.DataKey("CveEntregaAlmacen").ToEntero(); ClsGenerales ObjGenerales = new ClsGenerales(); if (ObjGenerales.RemoveInvEntregaAlmacenRuta(CveEntregaAlmacenEliminar, UsuarioActual.CveEmpresa)) { Alert("Producto Eliminado correctamente."); } ObjGenerales.Dispose(); CargaDatosRecoleccion(); } #endregion protected void LnkModalGvModalPSRecoleccionEliminar_Click(object sender, EventArgs e) { LinkButton LnkEliminar = (LinkButton)sender; GridViewRow GvRow = (GridViewRow)LnkEliminar.NamingContainer; if (CveEntregaAlmacen > 0) { int CveEntregaAlmacenDetalleEliminar = GvRow.DataKey("CveEntregaAlmacenDetalle").ToEntero(); ClsGenerales ObjGenerales = new ClsGenerales(); if (ObjGenerales.RemoveEntregaAlmacenRutaDetalle(CveEntregaAlmacenDetalleEliminar)) { Alert("Recolección Eliminada correctamente."); } ObjGenerales.Dispose(); } else { int DTIndex = GvRow.RowIndex; DTRecoleccion.Rows[DTIndex].Delete(); DTRecoleccion.AcceptChanges(); } CargaDatosRecoleccionDetallePS(); } protected void LnkModalAgregarPS_Click(object sender, EventArgs e) { if (CveEntregaAlmacen > 0) { ClsGenerales ObjGenerales = new ClsGenerales(); if (ObjGenerales.AddEntregaAlmacenRutaDetalle(CveEntregaAlmacen, DdlProducto2.SelectedValue.ToEntero(), TxtModalRecoleccionCantidad.Text.ToEntero(), DdlModalRecoleccionUnidad.SelectedValue.ToEntero(), UsuarioActual.CveUsuario)) { } ObjGenerales.Dispose(); } else { DataRow dRow = DTRecoleccion.NewRow(); dRow["CveEntregaAlmacenDetalle"] = -1; dRow["CveEntregaAlmacen"] = CveEntregaAlmacen; dRow["CvePS"] = DdlProducto2.SelectedValue.ToEntero(); dRow["Cantidad"] = TxtModalRecoleccionCantidad.Text.ToEntero(); dRow["CveUnidadMedida"] = DdlModalRecoleccionUnidad.SelectedValue.ToEntero(); dRow["CveUsuario"] = UsuarioActual.CveUsuario; dRow["FechaIng"] = DateTime.Now; dRow["CodigoPS"] = DdlProducto2.txtText.Value; dRow["Abreviatura"] = DdlModalRecoleccionUnidad.SelectedItem.Text; DTRecoleccion.Rows.Add(dRow); //GvModalPSRecoleccion.DataSource = DTRecoleccion; } LimpiarControlesPS(); CargaDatosRecoleccionDetallePS(); } private void LimpiarControlesPS() { TxtModalRecoleccionCantidad.Text = ""; DdlModalRecoleccionUnidad.Items.Clear(); DdlProducto2.txtText.Value = ""; DdlProducto2.txtValue.Value = ""; UpModalRecoleccion.Update(); } protected void Tab_ActiveTabChanged(object sender, EventArgs e) { if (Tab.ActiveTabIndex == 0) { SeleccionEntrega = false; SeleccionarGenerar(1); } else { OcultarmostarDatosEntrega(true); } } private void CargaModalCombosDirecciones(int CveCliente, int CveDireccionEnvio) { DdlModalDireccionEnvio.Items.Clear(); DataTable dtt = new DataTable(); ClsClientes ObjClientes = new ClsClientes(); if (ObjClientes.DireccionEnvioGet(-1, CveCliente, -1)) { dtt = ObjClientes.DtResultados; } ObjClientes.Dispose(); DdlModalDireccionEnvio.DataSource = dtt; DdlModalDireccionEnvio.DataBind(); DdlModalDireccionEnvio.SelectedValueExist(CveDireccionEnvio); dtt.Dispose(); } protected void LnkEditarDir_Click(object sender, EventArgs e) { GridViewRow GvRow = (GridViewRow)(((LinkButton)sender).NamingContainer); int CveCliente = GvRow.DataKey("CveCliente").ToEntero(); int CveDireccion = GvRow.DataKey("CveDireccionEnvio").ToEntero(); HdnCveVenta.Value = GvRow.DataKey("CveVenta"); CargaModalCombosDirecciones(CveCliente, CveDireccion); UpModalEditarentrega.Update(); this.RegistraScript("$('#DivEditarEntrega').modal('show');"); } protected void BtnModalEditarentrega_Click(object sender, EventArgs e) { bool ProcesoOK = true; ClsVentas ObjVentas = new ClsVentas(); if (!ObjVentas.UpdateDireccionEnvioVenta(HdnCveVenta.Value.ToEntero(), DdlModalDireccionEnvio.SelectedValue.ToEntero(), UsuarioActual.CveEmpresa)) { ProcesoOK = false; } ObjVentas.Dispose(); if (ProcesoOK) { this.RegistraScript("$('#DivEditarEntrega').modal('hide');"); Alert("Dirección Actualizada correctamente.", ModExtensiones.TipoMensaje.ToastInformacion); CargaDatos(); } } protected void gvR_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { LinkButton LnkEditar = e.Row.FCLinkButton("LnkGvDatosRecoleccionEditar"); LinkButton LnkEliminar = e.Row.FCLinkButton("LnkGvDatosRecoleccionEliminar"); if (e.Row.DataKey("Estatus") == "0" || e.Row.DataKey("Estatus") == "") { LnkEditar.Visible = true; LnkEliminar.Visible = true; } if (e.Row.DataKey("CveTimbre") != "") { e.Row.FCCheckBox("Chk").Visible = false; } } } }