public string LlenarServiciosTransportesComboByDestinoYFecha(string fechaHojaRuta) { DsServicioTransporte ds = LlenarCombos.LlenarServiciosTransportesComboByFecha(Utiles.Fechas.FormatFechaDDMMYYYY(fechaHojaRuta)); string datos = ""; string sParadaDescrip = ""; foreach (DsServicioTransporte.DatosRow dr in ds.Datos.Rows) { string nuevoDato = string.Concat(dr.ServicioTransporteID, "%", dr.ServicioTransporteDescrip, ";"); //sParadaDescrip = dr.IsParadaDescripNull() ? "" : dr.ParadaDescrip.Trim(); //string nuevoDato = string.Concat(dr.LineaTransporteID, "%", dr.ServicioTransporteID, "%", // dr.ServicioTransporteDescrip, "%", dr.LineaEmpresaSITT, "%", dr.HoraCabeceraOrigen, "%", // dr.Chasis.Trim(), "%", dr.Interno.Trim(), "%", dr.Dominio.Trim(), "%", // dr.CarroceriaNro.Trim(), "%", dr.CarroceriaMod.Trim(), "%", dr.CarroceriaMarca.Trim(), // "%", dr.CarroceriaMarcaDes.Trim(), "%", dr.CarroceriaAnio, "%", sParadaDescrip, "%", // dr.IsChoferIDNull() ? 0 : dr.ChoferID, "%", dr.IsNombreChoferNull() ? "" : dr.NombreChofer, "%", // dr.IsLegajoChoferNull() ? "" : dr.LegajoChofer, ";"); if (datos.IndexOf(nuevoDato) < 0) { datos += nuevoDato; } } return(datos); }
private void dtgServicios_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e) { //borrar de la lista el servicio elegido //sacarlo de la grilla solamente SisPackController.AdministrarGrillas.Configurar(dtgRecorrido, "ServicioTransporte", 10); DsServicioTransporte ds = new DsServicioTransporte(); DsServicioTransporte.DatosRow[] dr = null; if (Session["DsServiciosTransporte"] != null) { ds = (DsServicioTransporte)Session["DsServiciosTransporte"]; } if ((e.Item.Cells[0].Text) != "") //no tengo id lo hago con orden { dr = (DsServicioTransporte.DatosRow[])ds.Datos.Select("Orden = " + e.Item.Cells[0].Text); } determinarOrden(ds, dr[0].Orden); ds.Datos.RemoveDatosRow(dr[0]); Session["DsServiciosTransporte"] = ds; dtgServicios.DataSource = ds.Datos; dtgServicios.DataBind(); /*if (Session["DsServicioRecorridoEstandar"]!=null) * { * dtgRecorrido.DataSource=(DsServicioRecorridoEstandar) Session["DsServicioRecorridoEstandar"]; * dtgRecorrido.DataBind(); * }*/ }
private void ddlParadaDestino_SelectedIndexChanged(object sender, System.EventArgs e) { DsServicioTransporte ds = LlenarCombos.LlenarServiciosTransportesComboByDestinoYFecha(this.AgenciaConectadaID, this.ddlParadaDestino.SelectedValue.ToString(), Utiles.Fechas.FormatFechaDDMMYYYY(txtFecha.Text.ToString())); foreach (DsServicioTransporte.DatosRow dr in ds.Datos.Rows) { ListItem item = new ListItem(dr.IsServicioTransporteDescripNull() ? "" : dr.ServicioTransporteDescrip.Trim(), dr.ServicioTransporteID.ToString()); if (!ddlServicioTransporte.Items.Contains(item)) { ddlServicioTransporte.Items.Add(item); } } }
private void determinarOrden(DsServicioTransporte ds, int ordenEliminado) { for (int i = 1; i <= ds.Datos.Rows.Count; i++) //recorro los datos { DsServicioTransporte.DatosRow[] dr = null; //dr = (DsServicioTransporte.DatosRow[])ds.Datos.Select("Orden = " + i); /*dr = (DsServicioTransporte.DatosRow[])ds.Datos.Rows[i];//("Orden = " + i); * dr[0].Orden= i; */ dr = (DsServicioTransporte.DatosRow[])ds.Datos.Select("Orden = " + i); if (dr[0].Orden > ordenEliminado) //de cada linea de datos, //pregunto si el orden es mayor al eliminado, le resto uno, el resto no cambia { dr[0].Orden = dr[0].Orden - 1; } } dtgServicios.DataSource = ds.Datos; //vuevo a asignar a la grilla los datos }
/** Crea un servicio por dia desde la fecha desde hasta la fecha hasta, para que luego * se modifiquen solamente los choferes o lineas de transporte al momento efectivo de * la salida.*/ private void verServicios() { IUnidadTransporte unidad; ILineaTransporte linea; IChofer chofer; int cantServ = 0; DateTime fDesde = new DateTime(); DateTime fHasta = new DateTime(); //DateTime aux; //guardar un Servicio de Transporte NO estandar try { DsServicioTransporte dsServicios = new DsServicioTransporte(); //donde vamos a agregar los servicios Page.Validate(); if (!Page.IsValid) { return; } if ((ddlCodServicioTransporte.SelectedIndex != 0) && (busqChofer.Legajo != "") && (ddlLineaTransporte.SelectedIndex != 0) && (ddlUnidadTransporte.SelectedIndex != 0)) { linea = obtenerLineaTransporte(); unidad = obtenerUnidadTransporte(); chofer = obtenerChofer(); IServicioTransporte servicio = ServicioTransporteFactory.GetServicioTransporte(); servicio.ServicioIDSITT = servicioEst.ServicioTransporteID.ToString(); servicio.ServicioTransporteDescrip = servicioEst.ServicioTransporteDescrip; servicio.ServicioEmpresaSITT = servicioEst.ServicioEmpresaSITT; servicio.ServicioCodigoSITT = servicioEst.ServicioCodigoSITT; servicio.HoraCabeceraOrigen = servicioEst.HoraCabeceraOrigen; servicio.CodigoRecorridoSITT = servicioEst.CodigoRecorridoSITT; servicio.UnidadNegocioID = 1; servicio.ServicioTransporteID = servicioEst.ServicioTransporteID; //solo para que no lo pida, pues cada uno tiene el suyo servicio.oUnidadTransporte.UnidadTransporteID = unidad.UnidadTransporteID; servicio.oLineaTransporte.LineaTransporteID = linea.LineaTransporteID; servicio.oChofer.ChoferID = chofer.ChoferID; //ejemplo HoraCabeceraOrigen= 22:30 //debe quedar //hora= 22 //min= 30 string hora = servicioEst.HoraCabeceraOrigen.Substring(0, 2); string min = servicioEst.HoraCabeceraOrigen.Substring(3, 2); DateTime fechahora = Utiles.Fechas.FormatFechaDDMMYYYY(txtFechaDesde.Text).AddHours(Utiles.Validaciones.obtieneDouble(hora)); fechahora = fechahora.AddMinutes(Utiles.Validaciones.obtieneDouble(min)); servicio.ServicioFecha = fechahora; //determino la cantidad de servicios a crear con la diferencia de las fechas fDesde = Utiles.Fechas.FormatFechaDDMMYYYY(txtFechaDesde.Text); fHasta = Utiles.Fechas.FormatFechaDDMMYYYY(txtFechaHasta.Text); System.TimeSpan dif = fHasta - fDesde; cantServ = dif.Days + 1; //tomo el primer dia tambien //lo agrego a la grilla de servicios SisPackController.AdministrarGrillas.Configurar(dtgServicios, "ServicioTransporteID", this.CantidadOpciones); if (Session["DsServiciosTransporte"] != null) //para limpiarlo { Session["DsServiciosTransporte"] = null; } for (int i = 0; i < cantServ; i++) { //agrego un servicio por dia DsServicioTransporte.DatosRow dr = dsServicios.Datos.NewDatosRow(); dr["ServicioTransporteDescrip"] = servicio.ServicioTransporteDescrip.Trim(); dr["ServicioIDSITT"] = servicio.ServicioIDSITT; dr["ServicioFecha"] = fDesde.ToShortDateString(); dr["ServicioEmpresaSITT"] = servicio.ServicioEmpresaSITT; dr["ServicioCodigoSITT"] = servicio.ServicioCodigoSITT; dr["UnidadNegocioID"] = servicio.UnidadNegocioID; dr["UnidadTransporteID"] = servicio.oUnidadTransporte.UnidadTransporteID; dr["Interno"] = unidad.NroInternoSITT + "- " + unidad.Dominio.Trim(); dr["LineaTransporteID"] = servicio.oLineaTransporte.LineaTransporteID; dr["LineaTransporteDescrip"] = linea.LineaTransporteDescrip.Trim(); dr["ChoferID"] = servicio.oChofer.ChoferID; dr["NombreChofer"] = chofer.Nombre.Trim(); dr["CodigoRecorridoSITT"] = servicio.CodigoRecorridoSITT.Trim(); dr["HoraCabeceraOrigen"] = servicio.HoraCabeceraOrigen; dr["ServicioTransporteID"] = i; dr["Orden"] = i + 1; dsServicios.Datos.Rows.Add(dr); fDesde = fDesde.AddDays(1); } Session["DsServiciosTransporte"] = dsServicios; //lo asigno a la sesion dtgServicios.DataSource = dsServicios.Datos; BindGrid(0); lblRecorridos.Visible = true; lblServicios.Visible = true; } else { ((ErrorWeb)phErrores.Controls[0]).setMensaje("Debe elegir todos los campos para poder guardar el servicio de transporte"); } } catch (Exception ex) { ((ErrorWeb)phErrores.Controls[0]).setMensaje(ex.Message); } }