public static void VerificarServicio() { //todo: try-catch! DataSet ds = new z_puesta_servicio().Getz_puesta_servicio(); string es = "", fs = ""; //Console.WriteLine(DateTime.Now.ToString() + " regs:" + ds.Tables[0].Rows.Count); foreach (DataRow dr in ds.Tables[0].Rows) { z_conductores cond = new z_conductores().getObjectz_conductores((int)dr["id_conductor"]); if ((DateTime)dr["fecha_hora"] <= DateTime.Now) { if ((string)dr["id_carros_ps"] != "") { // poner en servicio foreach (string s in ((string)dr["id_carros_ps"]).Split(',')) { z_carros carro = Carro.EnServicioConductor(int.Parse(s), cond.id_conductor); // new z_carros().getObjectz_carros(int.Parse(s)); //carro.id_conductor = cond.id_conductor; //carro.estado = 1; //carro.modifyz_carros(carro); Conductor.FueraServicio(carro.id_conductor, carro.id_carro); es += "," + carro.nombre; } BitacoraGestion.NuevoEvento((int)dr["id_operadora"], dr.IsNull("id_aval") ? 0 : (int)dr["id_aval"], string.Format("Puesta en servicio de carros. Fecha: {0}, Conductor: {1}, Carros: {2}", ((DateTime)dr["fecha_hora"]).ToString(), cond.codigo_conductor, es.Trim(','))); } if ((string)dr["id_carros_fs"] != "") { // fuera servicio foreach (string s in ((string)dr["id_carros_fs"]).Split(',')) { z_carros carro = Carro.SinConductor(int.Parse(s)); // new z_carros().getObjectz_carros(int.Parse(s)); //carro.estado = 3; //carro.id_conductor = 0; ////LiberarConductor((int)dr["id_conductor"]); //carro.modifyz_carros(carro); fs += "," + carro.nombre; } BitacoraGestion.NuevoEvento((int)dr["id_operadora"], dr.IsNull("id_aval") ? 0 : (int)dr["id_aval"], string.Format("Fuera de servicio de carros. Fecha: {0}, Conductor: {1}, Carros: {2}", ((DateTime)dr["fecha_hora"]).ToString(), cond.codigo_conductor, fs.Trim(','))); } // mensaje //MessageBox.Show(string.Format("Fecha: {0}, Conductor: {1}\nEn servicio: {2}\nFuera de servicio: {3}", ((DateTime)dr["fecha_hora"]).ToString(), cond.codigo_conductor, es.Trim(','), fs.Trim(','))); new z_puesta_servicio().deletez_puesta_servicio((int)dr["id_puesta_servicio"]); // verificar temporal if (cond.temporal) { Conductor.VerificarTemporal(cond); } } } }
private void button1_Click(object sender, EventArgs e) { // verificar bool ok = true; string msg = "Han ocurrido los siguientes errores:\n"; if (listNombres.SelectedIndex == -1) { msg += "* No ha seleccionado conductor.\n"; ok = false; } if (carrosCheck.Count == 0 && carrosUncheck.Count == 0) { msg += "* No ha seleccionado carros.\n"; ok = false; } if (checkTemporal.Checked && textAutoriza.Text == "") { msg += "* No ha ingresado oficial que autoriza.\n"; ok = false; } if (!ok) { MessageBox.Show(msg, "Faltan datos"); return; } //MessageBox.Show("En desarrollo"); //return; // obtener id de conductor desde temporal o el correspondiente int id_conductor = checkTemporal.Checked ? Conductor.CrearConductorTemporal(((KeyValuePair <string, int>)listNombres.SelectedItem).Value, carrosCheck) : new z_conductores().getObjectz_conductores( ((KeyValuePair <string, int>)listNombres.SelectedItem).Value).id_conductor; // poner en servicio o agregar a la tabla de puesta en serv if (radioProgramar.Checked) { // programar var ps = new z_puesta_servicio { fecha_hora = datePuestaServicio.Value, id_conductor = id_conductor, id_operadora = IZeusWin.IdOperadora }; foreach (int i in carrosCheck) { ps.id_carros_ps += "," + i; } ps.id_carros_ps = ps.id_carros_ps.Trim(','); foreach (int i in carrosUncheck) { ps.id_carros_fs += "," + i; } ps.id_carros_fs = ps.id_carros_fs.Trim(','); ps.addz_puesta_servicio(ps); // temporal?? string auth = ""; if (checkTemporal.Checked) { auth = ", Autorizado por: " + textAutoriza.Text; } if (ps.id_carros_ps != "") { BitacoraGestion.NuevoEvento(IZeusWin.IdOperadora, IZeusWin.IdAval, string.Format( "Puesta en servicio programada. Fecha: {0}, Conductor: {1}, Carros: {2}" + auth, ps.fecha_hora, new z_conductores().getObjectz_conductores(id_conductor). codigo_conductor, ps.id_carros_ps)); } if (ps.id_carros_fs != "") { BitacoraGestion.NuevoEvento(IZeusWin.IdOperadora, IZeusWin.IdAval, string.Format( "Fuera de servicio programado. Fecha: {0}, Conductor: {1}, Carros: {2}", ps.fecha_hora, new z_conductores().getObjectz_conductores(id_conductor). codigo_conductor, ps.id_carros_fs)); } } else { // poner en servicio Conductor.PuestaEnServicio(id_conductor, carrosCheck, textAutoriza.Text); Conductor.FueraServicio(id_conductor, carrosUncheck); } // todo: bitacora MessageBox.Show("Se ha realizado la operación exitosamente"); }