public void EditCoche(Coche coche) { if (coche != null) { var elemet = _dbContext.Coches.FirstOrDefault(c => c.IdCoche == coche.IdCoche); if (elemet != null) { elemet.Precio = coche.Precio; elemet.Modelo = coche.Modelo; elemet.Marca = coche.Marca; _dbContext.SaveChanges(); } } }
public async Task CrearCoche(Coche car) { await this.context.SaveAsync <Coche>(car); }
static void Main() { Vehiculo[] misVehiculos = new Vehiculo[1000]; string marca; string modelo; int cantidad = 0; int opcion; string texto; bool encontrado = false; int opcionAModificar; do { Console.Clear(); Console.WriteLine("**********MENU**********"); Console.WriteLine(); Console.WriteLine(); Console.WriteLine("1. Introducir coche"); Console.WriteLine("2. Introducir moto"); Console.WriteLine("3. Mostrar vehiculos almacenados"); Console.WriteLine("4. Buscar vehiculo"); Console.WriteLine("5. Modificar vehiculo"); Console.WriteLine(); Console.WriteLine("0. Salir"); Console.WriteLine(); Console.Write("Elija una opcion: "); opcion = Convert.ToInt32(Console.ReadLine()); Console.Clear(); switch (opcion) { case 1: // Nota: falta comprobar si cabe Console.Write("Introduzca marca: "); marca = Console.ReadLine(); Console.Write("Introduzca modelo: "); modelo = Console.ReadLine(); misVehiculos[cantidad] = new Coche(marca, modelo); cantidad++; break; case 2: // Nota: falta comprobar si cabe Console.Write("Introduzca marca: "); marca = Console.ReadLine(); Console.Write("Introduzca modelo: "); modelo = Console.ReadLine(); misVehiculos[cantidad] = new Moto(marca, modelo); cantidad++; break; case 3: foreach (Vehiculo v in misVehiculos) { Console.WriteLine(v); } Console.WriteLine(); Console.WriteLine("Pulsa ENTER para volver al MENU"); Console.ReadLine(); break; case 4: Console.Write("Texto a buscar: "); texto = Console.ReadLine(); for (int i = 0; i < cantidad; i++) { encontrado = false; if (misVehiculos[i].ToString().ToUpper().Contains (texto.ToUpper())) { encontrado = true; } if (encontrado) { Console.WriteLine(misVehiculos[i]); } } Console.WriteLine(); Console.WriteLine("Pulsa ENTER para volver al MENU"); Console.ReadLine(); break; case 5: int nuevaOpcion; Console.Write("Indica que espacio desea modificar: "); opcionAModificar = Convert.ToInt32(Console.ReadLine()); Console.WriteLine(); Console.WriteLine("1. Nuevo Coche"); Console.WriteLine("2. Nueva moto"); Console.WriteLine(); Console.Write("indica el nuevo tipo de vehiculo: "); nuevaOpcion = Convert.ToInt32(Console.ReadLine()); Console.WriteLine(); if (opcionAModificar <= cantidad) { if (nuevaOpcion == 1) { Console.Write("Introduzca marca: "); marca = Console.ReadLine(); Console.Write("Introduzca modelo: "); modelo = Console.ReadLine(); Vehiculo v = new Coche(marca, modelo); misVehiculos[opcionAModificar - 1] = v; } else if (nuevaOpcion == 2) { Console.Write("Introduzca marca: "); marca = Console.ReadLine(); Console.Write("Introduzca modelo: "); modelo = Console.ReadLine(); Vehiculo v = new Moto(marca, modelo); misVehiculos[opcionAModificar - 1] = v; } else { Console.WriteLine("Opcion no valida"); } } else { Console.WriteLine("Ese vehiculo aun no existe"); } Console.WriteLine(); Console.WriteLine("Pulsa ENTER para volver al MENU"); Console.ReadLine(); break; } }while (opcion != 0); Console.WriteLine("Gracias por su visita.... Hasta la proxima"); }
public static IEvent GetEvent(DAOFactory daoFactory, GPSPoint inicio, string codigo, Int32?idPuntoDeInteres, Int64 extraData, Int64 extraData2, Int64 extraData3, Coche vehiculo, Empleado chofer) { IEvent evento = null; int cod; if (int.TryParse(codigo, out cod) && cod > 0 && cod < 20) { evento = new ManualEvent(inicio.Date, inicio.Lat, inicio.Lon, codigo); } else if (codigo == MessageCode.InsideGeoRefference.GetMessageCode() && idPuntoDeInteres.HasValue) { evento = new GeofenceEvent(inicio.Date, idPuntoDeInteres.Value, GeofenceEvent.EventoGeofence.Entrada, inicio.Lat, inicio.Lon, chofer); } else if (codigo == MessageCode.OutsideGeoRefference.GetMessageCode() && idPuntoDeInteres.HasValue) { evento = new GeofenceEvent(inicio.Date, idPuntoDeInteres.Value, GeofenceEvent.EventoGeofence.Salida, inicio.Lat, inicio.Lon, chofer); } else if (codigo == MessageCode.TolvaDeactivated.GetMessageCode()) { evento = new TolvaEvent(inicio.Date, TolvaEvent.EstadoTolva.Off, inicio.Lat, inicio.Lon); } else if (codigo == MessageCode.TolvaActivated.GetMessageCode()) { evento = new TolvaEvent(inicio.Date, TolvaEvent.EstadoTolva.On, inicio.Lat, inicio.Lon); } else if (codigo == MessageCode.MixerStopped.GetMessageCode()) { evento = new TrompoEvent(inicio.Date, TrompoEvent.SentidoTrompo.Detenido, TrompoEvent.VelocidadTrompo.Undefined, inicio.Lat, inicio.Lon); } else if (codigo == MessageCode.MixerClockwiseFast.GetMessageCode()) { evento = new TrompoEvent(inicio.Date, TrompoEvent.SentidoTrompo.HorarioDerecha, TrompoEvent.VelocidadTrompo.Fast, inicio.Lat, inicio.Lon); } else if (codigo == MessageCode.MixerClockwiseSlow.GetMessageCode()) { evento = new TrompoEvent(inicio.Date, TrompoEvent.SentidoTrompo.HorarioDerecha, TrompoEvent.VelocidadTrompo.Slow, inicio.Lat, inicio.Lon); } else if (codigo == MessageCode.MixerClockwise.GetMessageCode()) { evento = new TrompoEvent(inicio.Date, TrompoEvent.SentidoTrompo.HorarioDerecha, TrompoEvent.VelocidadTrompo.Undefined, inicio.Lat, inicio.Lon); } else if (codigo == MessageCode.MixerCounterClockwiseFast.GetMessageCode()) { evento = new TrompoEvent(inicio.Date, TrompoEvent.SentidoTrompo.AntihorarioIzquierda, TrompoEvent.VelocidadTrompo.Fast, inicio.Lat, inicio.Lon); } else if (codigo == MessageCode.MixerCounterClockwiseSlow.GetMessageCode()) { evento = new TrompoEvent(inicio.Date, TrompoEvent.SentidoTrompo.AntihorarioIzquierda, TrompoEvent.VelocidadTrompo.Slow, inicio.Lat, inicio.Lon); } else if (codigo == MessageCode.MixerCounterClockwise.GetMessageCode()) { evento = new TrompoEvent(inicio.Date, TrompoEvent.SentidoTrompo.AntihorarioIzquierda, TrompoEvent.VelocidadTrompo.Undefined, inicio.Lat, inicio.Lon); } else if (codigo == MessageCode.GarminTextMessageCannedResponse.GetMessageCode()) { // extraData = ID Device // extraData2 = ID Entrega / ID Ruta // extraData3 = Codigo Mensaje STrace.Debug(typeof(EventFactory).FullName, Convert.ToInt32(extraData), "extraData=" + extraData + " extraData2=" + extraData2 + " extraData3=" + extraData3); var veh = daoFactory.CocheDAO.FindMobileByDevice(Convert.ToInt32(extraData)); if (veh != null && veh.Empresa.IntegrationServiceEnabled) { var intService = new IntegrationService(daoFactory); if (veh.Empresa.IntegrationServiceCodigoMensajeAceptacion == extraData3.ToString()) { var distribucion = daoFactory.ViajeDistribucionDAO.FindById(Convert.ToInt32(extraData2)); if (distribucion != null) { var enCurso = daoFactory.ViajeDistribucionDAO.FindEnCurso(veh); if (enCurso == null) { intService.ResponseAsigno(distribucion, true); var eventoInicio = new InitEvent(inicio.Date); var ciclo = new CicloLogisticoDistribucion(distribucion, daoFactory, new MessageSaver(daoFactory)); ciclo.ProcessEvent(eventoInicio); } else { intService.ResponsePreasigno(distribucion, true); } } return(null); } else if (veh.Empresa.IntegrationServiceCodigoMensajeRechazo == extraData3.ToString()) { var distribucion = daoFactory.ViajeDistribucionDAO.FindById(Convert.ToInt32(extraData2)); distribucion.Vehiculo = null; daoFactory.ViajeDistribucionDAO.SaveOrUpdate(distribucion); var enCurso = daoFactory.ViajeDistribucionDAO.FindEnCurso(veh); if (enCurso == null) { intService.ResponseAsigno(distribucion, false); } else { intService.ResponsePreasigno(distribucion, false); } return(null); } } if (extraData2 == 0) { return(null); } var entrega = daoFactory.EntregaDistribucionDAO.FindById(Convert.ToInt32(extraData2)); var mensajeVo = daoFactory.MensajeDAO.GetByCodigo(extraData3.ToString("#0"), veh.Empresa, veh.Linea); try { var mensaje = daoFactory.MensajeDAO.FindById(mensajeVo.Id); try { var descriptiva = " - " + entrega.Viaje.Codigo + " - " + entrega.Descripcion; var ms = new MessageSaver(daoFactory); var log = ms.Save(null, Convert.ToString(extraData3), veh.Dispositivo, veh, chofer, inicio.Date, inicio, descriptiva, entrega.Viaje, entrega); try { entrega.MensajeConfirmacion = log as LogMensaje; daoFactory.EntregaDistribucionDAO.SaveOrUpdate(entrega); } catch (Exception) { } if (mensaje.TipoMensaje.DeConfirmacion) { evento = new GarminEvent(inicio.Date, extraData2, inicio.Lat, inicio.Lon, EntregaDistribucion.Estados.Completado, chofer); } else if (mensaje.TipoMensaje.DeRechazo) { evento = new GarminEvent(inicio.Date, extraData2, inicio.Lat, inicio.Lon, EntregaDistribucion.Estados.NoCompletado, chofer); } else { STrace.Error(typeof(CicloLogisticoFactory).FullName, Convert.ToInt32(extraData), "Respuesta de mensaje de Canned Response inválida sin tipo de mensaje adecuado para la ocasión. (" + extraData2 + "-" + extraData + ")"); } } catch (Exception e) { STrace.Exception(typeof(EventFactory).FullName, e, "E#2 Vehicle=" + veh.Id + " entrega=" + (entrega == null ? "null" : entrega.Id.ToString("#0")) + " mensajeVo=" + mensajeVo.Id + " mensaje=" + (mensaje == null ? "null" : mensaje.Id.ToString("#0"))); } } catch (Exception e) { STrace.Exception(typeof(EventFactory).FullName, e, "E#1 Vehicle=" + veh.Id + " entrega=" + (entrega == null ? "null" : entrega.Id.ToString("#0")) + " mensajeVo=" + (mensajeVo == null ? "null" : mensajeVo.Id.ToString("#0"))); } } else if (codigo == MessageCode.ValidacionRuteo.GetMessageCode()) { var deviceId = inicio.DeviceId; var vehicle = daoFactory.CocheDAO.FindMobileByDevice(deviceId); if (vehicle != null) { var ruta = daoFactory.ViajeDistribucionDAO.FindEnCurso(vehicle); if (ruta != null) { evento = new RouteEvent(inicio.Date, ruta.Id, inicio.Lat, inicio.Lon, RouteEvent.Estados.Enviado); } } } else if (codigo == MessageCode.GarminETAReceived.GetMessageCode()) { if (vehiculo.HasActiveStop()) { var activeStop = vehiculo.GetActiveStop(); if (activeStop > 0) { var edDAO = daoFactory.EntregaDistribucionDAO; var vdDAO = daoFactory.ViajeDistribucionDAO; var detalle = edDAO.FindById(activeStop); if (detalle != null) { var utcnow = DateTime.UtcNow; var fechora = vehiculo.EtaEstimated(); var minutos = fechora != null && fechora > utcnow?fechora.Value.Subtract(utcnow).TotalMinutes : 0; var texto = String.Format(CultureManager.GetLabel("GARMIN_STOP_ETA_ARRIVAL"), minutos, fechora); if (minutos > 0) { using (var transaction = SmartTransaction.BeginTransaction()) { try { try { new MessageSaver(daoFactory).Save(null, codigo, vehiculo.Dispositivo, vehiculo, chofer, DateTime.UtcNow, null, texto, detalle.Viaje, detalle); } catch (Exception ex) { STrace.Exception(typeof(EventFactory).FullName, ex, vehiculo.Dispositivo.Id, String.Format("Exception doing MessageSaver.Save({0})", texto)); throw ex; } try { detalle.GarminETA = fechora; detalle.GarminETAInformedAt = utcnow; vdDAO.SaveOrUpdate(detalle.Viaje); } catch (Exception ex) { STrace.Exception(typeof(EventFactory).FullName, ex, vehiculo.Dispositivo.Id, String.Format("Exception doing MessageSaver.Save({0})", texto)); throw ex; } transaction.Commit(); } catch (Exception ex) { transaction.Rollback(); throw ex; } } } } else { STrace.Error(typeof(EventFactory).FullName, vehiculo.Dispositivo.Id, String.Format("Processing GarminETAReceived cannot be processed because EntregaDistribucion #{0} is null.", activeStop)); } } else { STrace.Error(typeof(EventFactory).FullName, vehiculo.Dispositivo.Id, "Processing GarminETAReceived cannot be processed because ActiveStop # is not valid."); } } } else { var stopstatus = TranslateStopStatus(codigo); if (stopstatus != -1) { evento = new GarminEvent(inicio.Date, extraData, inicio.Lat, inicio.Lon, stopstatus, chofer); } } return(evento); }
public static IEvent GetEvent(DAOFactory daoFactory, GPSPoint inicio, string codigo, Int32?idPuntoDeInteres, int extraData, int extraData2, Coche vehiculo, Empleado chofer) { return(GetEvent(daoFactory, inicio, codigo, idPuntoDeInteres, extraData, extraData2, -1, vehiculo, chofer)); }
public static IEvent GetEvent(DAOFactory daoFactory, GPSPoint inicio, string codigo, Int32?idPuntoDeInteres, IMessage message, Coche vehiculo, Empleado chofer) { var extra = (message as IExtraData); var extraData = extra != null && extra.Data.Count > 1 ? extra.Data[1] : -1; var extraData2 = extra != null && extra.Data.Count > 2 ? extra.Data[2] : -1; var extraData3 = extra != null && extra.Data.Count > 3 ? extra.Data[3] : -1; return(GetEvent(daoFactory, inicio, codigo, idPuntoDeInteres, extraData, extraData2, extraData3, vehiculo, chofer)); }
private DatamartTramo CalcularTramo(Coche vehiculo, DateTime fechaInicio, DateTime fechaFin, bool motorOn, IEnumerable <LogMensaje> entradas, IEnumerable <LogMensaje> detenciones, IEnumerable <Linea> bases, IEnumerable <EntregaDistribucion> entregas) { var datamartTramo = new DatamartTramo(); datamartTramo.Empresa = vehiculo.Empresa; datamartTramo.Linea = vehiculo.Linea; datamartTramo.Vehicle = vehiculo; datamartTramo.Inicio = fechaInicio; datamartTramo.Fin = fechaFin; datamartTramo.MotorOn = motorOn; var dm = DaoFactory.DatamartDAO.GetSummarizedDatamart(fechaInicio, fechaFin, vehiculo.Id); datamartTramo.Kilometros = dm.Kilometros; datamartTramo.VelocidadPromedio = (int)dm.AverageSpeed; #region Geocercas var geocercas = entradas.Where(e => e.Fecha >= fechaInicio && e.Fecha < fechaFin); var cantBases = 0; var cantEntregas = 0; var cantOtras = 0; var ids = new List <int>(); foreach (var geocerca in geocercas) { if (geocerca.IdPuntoDeInteres.HasValue && !ids.Contains(geocerca.IdPuntoDeInteres.Value)) { ids.Add(geocerca.IdPuntoDeInteres.Value); var esBase = bases.Any(l => l.ReferenciaGeografica != null && l.ReferenciaGeografica.Id == geocerca.IdPuntoDeInteres.Value); if (esBase) { cantBases++; } else { var esEntrega = entregas.Any(e => e.PuntoEntrega != null && e.PuntoEntrega.ReferenciaGeografica != null && e.PuntoEntrega.ReferenciaGeografica.Id == geocerca.IdPuntoDeInteres.Value); if (esEntrega) { cantEntregas++; } else { cantOtras++; } } } } #endregion datamartTramo.GeocercasBase = cantBases; datamartTramo.GeocercasEntregas = cantEntregas; datamartTramo.GeocercasOtras = cantOtras; #region Detenciones var horasDentro = 0.0; var horasFuera = 0.0; var mayores = 0; var menores = 0; foreach (var detencion in detenciones) { var inicioDetencion = detencion.Fecha >= fechaInicio ? detencion.Fecha : fechaInicio; var finDetencion = detencion.FechaFin <= fechaFin ? detencion.FechaFin : fechaFin; var duracion = finDetencion.Value.Subtract(inicioDetencion); if (duracion.TotalMinutes > 2) { mayores++; } else { menores++; } if (detencion.IdPuntoDeInteres.HasValue) { horasDentro += duracion.TotalHours; } else { horasFuera += duracion.TotalHours; } } #endregion var horasTotales = fechaFin.Subtract(fechaInicio).TotalHours; datamartTramo.Horas = horasTotales; datamartTramo.HorasDetenidoDentro = horasDentro; datamartTramo.HorasDetenidoFuera = horasFuera; datamartTramo.HorasDetenido = horasDentro + horasFuera; datamartTramo.HorasMovimiento = horasTotales - horasDentro - horasFuera; datamartTramo.DetencionesMayores = mayores; datamartTramo.DetencionesMenores = menores; return(datamartTramo); }
public static void AddCoche(Coche item) { Coches.Add(item); }
public void Reset() { coche = new Coche(); }
public LogPosicion(GPSPoint position, Coche coche) : base(position, coche) { }
public KmHsProductivosVo(Coche coche, DateTime desde, DateTime hasta) { var dao = new DAOFactory(); Id = coche.Id; TipoVehiculo = coche.TipoCoche.Descripcion; Vehiculo = coche.Interno; var hsTotales = hasta.Subtract(desde); var enMovimiento = new TimeSpan(0, 0, 0); var detenido = new TimeSpan(0, 0, 0); var ralenti = new TimeSpan(0, 0, 0); var sinReportar = new TimeSpan(0, 0, 0); var kmTurnos = 0.00; var hsTotalesTurno = new TimeSpan(0, 0, 0); var enMovimientoTurno = new TimeSpan(0, 0, 0); var detenidoTurno = new TimeSpan(0, 0, 0); var ralentiTurno = new TimeSpan(0, 0, 0); var sinReportarTurno = new TimeSpan(0, 0, 0); var kmViajes = 0.00; var hsTotalesViaje = new TimeSpan(0, 0, 0); var enMovimientoViaje = new TimeSpan(0, 0, 0); var detenidoViaje = new TimeSpan(0, 0, 0); var ralentiViaje = new TimeSpan(0, 0, 0); var sinReportarViaje = new TimeSpan(0, 0, 0); var kmTimeTracking = 0.00; var hsTotalesTimeTracking = new TimeSpan(0, 0, 0); var enMovimientoTimeTracking = new TimeSpan(0, 0, 0); var detenidoTimeTracking = new TimeSpan(0, 0, 0); var ralentiTimeTracking = new TimeSpan(0, 0, 0); var sinReportarTimeTracking = new TimeSpan(0, 0, 0); var kmTickets = 0.00; var hsTotalesTicket = new TimeSpan(0, 0, 0); var enMovimientoTicket = new TimeSpan(0, 0, 0); var detenidoTicket = new TimeSpan(0, 0, 0); var ralentiTicket = new TimeSpan(0, 0, 0); var sinReportarTicket = new TimeSpan(0, 0, 0); var data = dao.DatamartDAO.GetBetweenDates(coche.Id, desde, hasta); foreach (var datamart in data) { // TOTALES enMovimiento = enMovimiento.Add(TimeSpan.FromHours(datamart.MovementHours)); detenido = detenido.Add(TimeSpan.FromHours(datamart.StoppedHours)); sinReportar = sinReportar.Add(TimeSpan.FromHours(datamart.NoReportHours)); if (datamart.EngineStatus == Datamart.EstadosMotor.Encendido) { ralenti = ralenti.Add(TimeSpan.FromHours(datamart.StoppedHours)); } // TICKETS if (datamart.IdCiclo != null && datamart.IdCiclo > 0) { kmTickets += dao.CocheDAO.GetDistance(coche.Id, datamart.Begin, datamart.End); hsTotalesTicket = hsTotalesTicket.Add(datamart.End.Subtract(datamart.Begin)); enMovimientoTicket = enMovimientoTicket.Add(TimeSpan.FromHours(datamart.MovementHours)); detenidoTicket = detenidoTicket.Add(TimeSpan.FromHours(datamart.StoppedHours)); sinReportarTicket = sinReportarTicket.Add(TimeSpan.FromHours(datamart.NoReportHours)); if (datamart.EngineStatus == Datamart.EstadosMotor.Encendido) { ralentiTicket = ralentiTicket.Add(TimeSpan.FromHours(datamart.StoppedHours)); } } // TIME TRACKING if (datamart.EnTimeTracking != null && datamart.EnTimeTracking == true) { kmTimeTracking += dao.CocheDAO.GetDistance(coche.Id, datamart.Begin, datamart.End); hsTotalesTimeTracking = hsTotalesTimeTracking.Add(datamart.End.Subtract(datamart.Begin)); enMovimientoTimeTracking = enMovimientoTimeTracking.Add(TimeSpan.FromHours(datamart.MovementHours)); detenidoTimeTracking = detenidoTimeTracking.Add(TimeSpan.FromHours(datamart.StoppedHours)); sinReportarTimeTracking = sinReportarTimeTracking.Add(TimeSpan.FromHours(datamart.NoReportHours)); if (datamart.EngineStatus == Datamart.EstadosMotor.Encendido) { ralentiTimeTracking = ralentiTimeTracking.Add(TimeSpan.FromHours(datamart.StoppedHours)); } } // VIAJES if (datamart.EngineStatus == Datamart.EstadosMotor.Encendido) { kmViajes += dao.CocheDAO.GetDistance(coche.Id, datamart.Begin, datamart.End); hsTotalesViaje = hsTotalesViaje.Add(datamart.End.Subtract(datamart.Begin)); enMovimientoViaje = enMovimientoViaje.Add(TimeSpan.FromHours(datamart.MovementHours)); detenidoViaje = detenidoViaje.Add(TimeSpan.FromHours(datamart.StoppedHours)); sinReportarViaje = sinReportarViaje.Add(TimeSpan.FromHours(datamart.NoReportHours)); ralentiViaje = ralentiViaje.Add(TimeSpan.FromHours(datamart.StoppedHours)); } // TURNOS //if (datamart.EnTurno != null && datamart.EnTurno == true) { kmTurnos += dao.CocheDAO.GetDistance(coche.Id, datamart.Begin, datamart.End); hsTotalesTurno = hsTotalesTurno.Add(datamart.End.Subtract(datamart.Begin)); enMovimientoTurno = enMovimientoTurno.Add(TimeSpan.FromHours(datamart.MovementHours)); detenidoTurno = detenidoTurno.Add(TimeSpan.FromHours(datamart.StoppedHours)); sinReportarTurno = sinReportarTurno.Add(TimeSpan.FromHours(datamart.NoReportHours)); if (datamart.EngineStatus == Datamart.EstadosMotor.Encendido) { ralentiTurno = ralentiTurno.Add(TimeSpan.FromHours(datamart.StoppedHours)); } } } KmTotales = dao.CocheDAO.GetDistance(coche.Id, desde, hasta); HsTotales = hsTotales; EnMovimiento = enMovimiento; Detenido = detenido; Ralenti = ralenti; SinReportar = sinReportar; KmTurnos = kmTurnos; HsTotalesTurno = hsTotalesTurno; EnMovimientoTurno = enMovimientoTurno; DetenidoTurno = detenidoTurno; RalentiTurno = ralentiTurno; SinReportarTurno = sinReportarTurno; KmViajes = kmViajes; HsTotalesViaje = hsTotalesViaje; EnMovimientoViaje = enMovimientoViaje; DetenidoViaje = detenidoViaje; RalentiViaje = ralentiViaje; SinReportarViaje = sinReportarViaje; KmTimeTracking = kmTimeTracking; HsTotalesTimeTracking = hsTotalesTimeTracking; EnMovimientoTimeTracking = enMovimientoTimeTracking; DetenidoTimeTracking = detenidoTimeTracking; RalentiTimeTracking = ralentiTimeTracking; SinReportarTimeTracking = sinReportarTimeTracking; KmTickets = kmTickets; HsTotalesTicket = hsTotalesTicket; EnMovimientoTicket = enMovimientoTicket; DetenidoTicket = detenidoTicket; RalentiTicket = ralentiTicket; SinReportarTicket = sinReportarTicket; }
public Posicion GetPosicion(Coche coche) { return(BaseService.GetPosicion(coche)); }
// Use this for initialization void Start() { Carro = FindObjectOfType <Coche> (); }
public static void UpdateCoche(Coche item) { var coche = Coches.FirstOrDefault(x => x.Id == item.Id); coche = item; }
public IActionResult Edit(int idcoche) { Coche coche = this.repo.BuscarCoche(idcoche); return(View(coche)); }
private void ProcessPeriod(Coche vehicle, DateTime from, DateTime to) { using (var transaction = SmartTransaction.BeginTransaction(IsolationLevel.ReadUncommitted)) { try { // Set environment data var inicio = new DateTime(from.Year, from.Month, from.Day, from.Hour, 0, 0); var fin = new DateTime(to.Year, to.Month, to.Day, to.Hour, 0, 0); // Deletes all previously generated datamart tramo records for the current vehicle and time span. var t = new TimeElapsed(); DaoFactory.DatamartTramoDAO.DeleteRecords(vehicle.Id, inicio, fin); var ts = t.getTimeElapsed().TotalSeconds; if (ts > 1) { STrace.Trace(GetType().FullName, string.Format("DeleteRecords en {0} segundos", ts)); } var records = new List <DatamartTramo>(); var procesado = false; var retry = 0; while (!procesado && retry < 5) { retry++; records = GenerateRecords(vehicle, inicio, fin); t.Restart(); foreach (var record in records) { DaoFactory.DatamartTramoDAO.Save(record); } ts = t.getTimeElapsed().TotalSeconds; if (ts > 1) { STrace.Trace(GetType().FullName, string.Format("Save en {0} segundos", ts)); } transaction.Commit(); procesado = true; } if (retry == 5 && !procesado) { var parametros = new[] { "No se generaron registros de Datamart Tramos para el vehículo: " + vehicle.Id, vehicle.Id.ToString("#0"), DateTime.Today.ToString("dd/MM/yyyy HH:mm") }; SendMail(parametros); STrace.Error(GetType().FullName, "No se generaron registros de Datamart Tramos para el vehículo: " + vehicle.Id); } } catch (Exception ex) { AddError(ex); transaction.Rollback(); } finally { ClearData(); DoSleep(); } } }
public void SetupScene(string escenario, string personajes) { string[] lineas = escenario.Split('\n'); int xtotal = Convert.ToInt32(lineas[0].Split(' ')[0]); int ytotal = Convert.ToInt32(lineas[0].Split(' ')[1]); mapa = Convert.ToInt32(lineas[0].Split(' ')[2]); string[] jugadores = personajes.Split('\n'); int ptotal = Convert.ToInt32(jugadores[0]); int m = 0; int c1 = 0; int c2 = 0; int c3 = 0; int e1 = 0; int e2 = 0; int e3 = 0; int e4 = 0; int e5 = 0; int h = 0; int t = 0; int p = 0; int n = 0; int e = 0; int c = 0; float xmapa; float ymapa; boardHolder = new GameObject("Suelo").transform; boardHolder2 = new GameObject("Personajes").transform; boardHolder3 = new GameObject("Bordes").transform; if (mapa == 1) { boardHolder4 = new GameObject("Casas").transform; } else if (mapa == 2) { boardHolder4 = new GameObject("Caja Registradora").transform; boardHolder5 = new GameObject("Estanterías").transform; boardHolder6 = new GameObject("Objetos").transform; } else if (mapa == 3) { boardHolder4 = new GameObject("Cajas").transform; } int x; int y; for (x = -1; x < xtotal + 1; x++) { GameObject borde = Instantiate(invisible, new Vector3(x, -1f, 0f), Quaternion.identity); borde.transform.SetParent(boardHolder3); } for (x = -1; x < xtotal + 1; x++) { GameObject borde = Instantiate(invisible, new Vector3(x, ytotal, 0f), Quaternion.identity); borde.transform.SetParent(boardHolder3); } for (y = -1; y < ytotal + 1; y++) { GameObject borde = Instantiate(invisible, new Vector3(-1, y, 0f), Quaternion.identity); borde.transform.SetParent(boardHolder3); } for (y = -1; y < ytotal + 1; y++) { GameObject borde = Instantiate(invisible, new Vector3(xtotal, y, 0f), Quaternion.identity); borde.transform.SetParent(boardHolder3); } for (y = 0; y < ytotal; y++) { ymapa = -y + ytotal - 1; string linea = lineas[y + 1]; for (x = 0; x < xtotal; x++) { xmapa = x; char ch = linea[x]; GameObject instance = null; switch (ch) { case 'M': GameObject extra = null; if (mapa == 1) { extra = Instantiate(mercadona[m], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); m++; if (m == 44) { m = 0; } } else if (mapa == 2) { extra = Instantiate(cajaregistradora[m], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(sueloMercadona, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); m++; if (m == 6) { m = 0; } } else if (mapa == 3) { instance = Instantiate(sueloAlmacen, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); extra = Instantiate(cajas[c], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); c++; if (c == 14) { c = 0; } } extra.transform.SetParent(boardHolder4); break; case '0': if (mapa == 1) { instance = Instantiate(carretera[Int32.Parse(ch.ToString())], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); } else if (mapa == 2) { GameObject nevera = Instantiate(nevera1[n], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); n++; if (n == 2) { n = 0; } nevera.transform.SetParent(boardHolder5); } else if (mapa == 3) { instance = Instantiate(sueloAlmacen, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); GameObject conjuntopapeles = Instantiate(conjuntopapel, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); conjuntopapeles.transform.SetParent(boardHolder4); } break; case '1': if (mapa == 1) { instance = Instantiate(carretera[Int32.Parse(ch.ToString())], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); } else if (mapa == 2) { GameObject nevera = Instantiate(nevera2, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); nevera.transform.SetParent(boardHolder5); } else if (mapa == 3) { instance = Instantiate(sueloAlmacen, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); GameObject papelvater = Instantiate(papel, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); papelvater.transform.SetParent(boardHolder4); } break; case '2': if (mapa == 1) { instance = Instantiate(carretera[Int32.Parse(ch.ToString())], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); } else if (mapa == 2) { GameObject estanteria = Instantiate(estanterias[e], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(sueloMercadona, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); e++; if (e == 20) { e = 0; } estanteria.transform.SetParent(boardHolder5); } break; case '3': if (mapa == 1) { instance = Instantiate(carretera[Int32.Parse(ch.ToString())], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); } else if (mapa == 2) { instance = Instantiate(sueloMercadona, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); GameObject cestaobject = Instantiate(cesta[c], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); c++; if (c == 16) { c = 0; } cestaobject.transform.SetParent(boardHolder6); } break; case '4': if (mapa == 1) { instance = Instantiate(carretera[Int32.Parse(ch.ToString())], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); } else if (mapa == 2) { GameObject carromercadona = Instantiate(carro, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(sueloMercadona, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); carromercadona.transform.SetParent(boardHolder6); } break; case '5': if (mapa == 1) { instance = Instantiate(carretera[Int32.Parse(ch.ToString())], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); } else if (mapa == 2) { instance = Instantiate(sueloMercadona, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); GameObject alarmaobject = Instantiate(alarma, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); alarmaobject.transform.SetParent(boardHolder6); } break; case '6': if (mapa == 1) { instance = Instantiate(carretera[Int32.Parse(ch.ToString())], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); } else if (mapa == 2 || mapa == 3) { instance = Instantiate(alfombra, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); } break; case '7': if (mapa == 1) { instance = Instantiate(carretera[Int32.Parse(ch.ToString())], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); } else if (mapa == 2) { instance = Instantiate(puertaalmacen, new Vector3(xmapa + 0.5f, ymapa, 0f), Quaternion.identity); } break; case '8': if (mapa == 1) { instance = Instantiate(carretera[Int32.Parse(ch.ToString())], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); } else if (mapa == 2) { instance = Instantiate(sueloMercadona, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); GameObject codigoobject = Instantiate(codigo, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); codigoobject.transform.SetParent(boardHolder6); } break; case '9': instance = Instantiate(carretera[Int32.Parse(ch.ToString())], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); break; case 'A': instance = Instantiate(carretera[10], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); break; case 'B': instance = Instantiate(carretera[11], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); break; case 'C': instance = Instantiate(carretera[12], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); break; case 'D': instance = Instantiate(carretera[13], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); break; case 'E': instance = Instantiate(carretera[14], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); break; case 'F': instance = Instantiate(carretera[15], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); break; case 'G': instance = Instantiate(carretera[16], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); break; case 'H': instance = Instantiate(carretera[17], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); break; case 'I': instance = Instantiate(carretera[18], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); break; case 'J': instance = Instantiate(carretera[19], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); break; case 'Á': GameObject bordecasa = Instantiate(casacomun[4], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); bordecasa.transform.SetParent(boardHolder4); break; case 'É': GameObject bordecasa2 = Instantiate(casacomun[5], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); bordecasa2.transform.SetParent(boardHolder4); break; case 'Í': GameObject bordecasa3 = Instantiate(casacomun[6], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); bordecasa3.transform.SetParent(boardHolder4); break; case 'Ó': GameObject bordecasa4 = Instantiate(casacomun[7], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); bordecasa4.transform.SetParent(boardHolder4); break; case 'á': GameObject bordecasa5 = Instantiate(casacomun[0], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); bordecasa5.transform.SetParent(boardHolder4); break; case 'é': GameObject bordecasa6 = Instantiate(casacomun[1], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); bordecasa6.transform.SetParent(boardHolder4); break; case 'í': GameObject bordecasa7 = Instantiate(casacomun[2], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); bordecasa7.transform.SetParent(boardHolder4); break; case 'ó': GameObject bordecasa8 = Instantiate(casacomun[3], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); bordecasa8.transform.SetParent(boardHolder4); break; case 'a': GameObject casa1g = Instantiate(casa1[c1], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); c1++; if (c1 == 16) { c1 = 0; } casa1g.transform.SetParent(boardHolder4); break; case 'b': GameObject casa2g = Instantiate(casa2[c2], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); c2++; if (c2 == 16) { c2 = 0; } casa2g.transform.SetParent(boardHolder4); break; case 'c': GameObject casa3g = Instantiate(casa3[c3], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); c3++; casa3g.transform.SetParent(boardHolder4); if (c3 == 16) { c3 = 0; } break; case 'd': GameObject edificio1g = Instantiate(edificio1[e1], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); e1++; edificio1g.transform.SetParent(boardHolder4); if (e1 == 20) { e1 = 0; } break; case 'e': GameObject edificio2g = Instantiate(edificio2[e2], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); e2++; edificio2g.transform.SetParent(boardHolder4); if (e2 == 12) { e2 = 0; } break; case 'f': GameObject edificio3g = Instantiate(edificio3[e3], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); e3++; edificio3g.transform.SetParent(boardHolder4); if (e3 == 18) { e3 = 0; } break; case 'g': GameObject edificio4g = Instantiate(edificio4[e4], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); e4++; edificio4g.transform.SetParent(boardHolder4); if (e4 == 25) { e4 = 0; } break; case 'h': GameObject hospitalg = Instantiate(hospital[h], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); h++; hospitalg.transform.SetParent(boardHolder4); if (h == 25) { h = 0; } break; case 'i': GameObject edificio5g = Instantiate(edificio5[e5], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); e5++; edificio5g.transform.SetParent(boardHolder4); if (e5 == 25) { e5 = 0; } break; case 'p': GameObject parqueg = Instantiate(parque[p], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); p++; parqueg.transform.SetParent(boardHolder4); if (p == 80) { p = 0; } break; case 't': GameObject tiendag = Instantiate(tienda[t], new Vector3(xmapa, ymapa, 0f), Quaternion.identity); instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); t++; tiendag.transform.SetParent(boardHolder4); if (t == 20) { t = 0; } break; default: if (mapa == 1) { instance = Instantiate(acera, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); } else if (mapa == 2) { instance = Instantiate(sueloMercadona, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); } else if (mapa == 3) { instance = Instantiate(sueloAlmacen, new Vector3(xmapa, ymapa, 0f), Quaternion.identity); } break; } if (instance != null) { instance.transform.SetParent(boardHolder); } } } m = 0; h = 0; for (int pl = 0; pl < ptotal; pl++) { char ch = jugadores[pl + 1][0]; GameObject instance = null; switch (ch) { case 'P': instance = Instantiate(player, new Vector3(Convert.ToInt32(jugadores[pl + 1].Split(' ')[1]), Convert.ToInt32(jugadores[pl + 1].Split(' ')[2]), 0f), Quaternion.identity); Player jugador = instance.GetComponent <Player>(); jugador.estado = Convert.ToInt32(jugadores[pl + 1].Split(' ')[3]); break; case '0': instance = Instantiate(coches[0], new Vector3(Convert.ToInt32(jugadores[pl + 1].Split(' ')[1]), Convert.ToInt32(jugadores[pl + 1].Split(' ')[2]), 0f), Quaternion.identity); Coche cochecontrol0 = instance.GetComponent <Coche>(); cochecontrol0.hormax = Int32.Parse(jugadores[pl + 1].Split(' ')[3]); cochecontrol0.vermax = Int32.Parse(jugadores[pl + 1].Split(' ')[4]); cochecontrol0.move = Int32.Parse(jugadores[pl + 1].Split(' ')[5]); cochecontrol0.ordenmovimiento = Int32.Parse(jugadores[pl + 1].Split(' ')[6]); break; case '1': instance = Instantiate(coches[1], new Vector3(Convert.ToInt32(jugadores[pl + 1].Split(' ')[1]), Convert.ToInt32(jugadores[pl + 1].Split(' ')[2]), 0f), Quaternion.identity); Coche cochecontrol1 = instance.GetComponent <Coche>(); cochecontrol1.hormax = Int32.Parse(jugadores[pl + 1].Split(' ')[3]); cochecontrol1.vermax = Int32.Parse(jugadores[pl + 1].Split(' ')[4]); cochecontrol1.move = Int32.Parse(jugadores[pl + 1].Split(' ')[5]); cochecontrol1.ordenmovimiento = Int32.Parse(jugadores[pl + 1].Split(' ')[6]); break; case '2': instance = Instantiate(coches[2], new Vector3(Convert.ToInt32(jugadores[pl + 1].Split(' ')[1]), Convert.ToInt32(jugadores[pl + 1].Split(' ')[2]), 0f), Quaternion.identity); Coche cochecontrol2 = instance.GetComponent <Coche>(); cochecontrol2.hormax = Int32.Parse(jugadores[pl + 1].Split(' ')[3]); cochecontrol2.vermax = Int32.Parse(jugadores[pl + 1].Split(' ')[4]); cochecontrol2.move = Int32.Parse(jugadores[pl + 1].Split(' ')[5]); cochecontrol2.ordenmovimiento = Int32.Parse(jugadores[pl + 1].Split(' ')[6]); break; case '3': instance = Instantiate(coches[3], new Vector3(Convert.ToInt32(jugadores[pl + 1].Split(' ')[1]), Convert.ToInt32(jugadores[pl + 1].Split(' ')[2]), 0f), Quaternion.identity); Coche cochecontrol3 = instance.GetComponent <Coche>(); cochecontrol3.hormax = Int32.Parse(jugadores[pl + 1].Split(' ')[3]); cochecontrol3.vermax = Int32.Parse(jugadores[pl + 1].Split(' ')[4]); cochecontrol3.move = Int32.Parse(jugadores[pl + 1].Split(' ')[5]); cochecontrol3.ordenmovimiento = Int32.Parse(jugadores[pl + 1].Split(' ')[6]); break; case '4': instance = Instantiate(coches[4], new Vector3(Convert.ToInt32(jugadores[pl + 1].Split(' ')[1]), Convert.ToInt32(jugadores[pl + 1].Split(' ')[2]), 0f), Quaternion.identity); Coche cochecontrol4 = instance.GetComponent <Coche>(); cochecontrol4.hormax = Int32.Parse(jugadores[pl + 1].Split(' ')[3]); cochecontrol4.vermax = Int32.Parse(jugadores[pl + 1].Split(' ')[4]); cochecontrol4.move = Int32.Parse(jugadores[pl + 1].Split(' ')[5]); cochecontrol4.ordenmovimiento = Int32.Parse(jugadores[pl + 1].Split(' ')[6]); break; case 'V': instance = Instantiate(vertical[m], new Vector3(Convert.ToInt32(jugadores[pl + 1].Split(' ')[1]), Convert.ToInt32(jugadores[pl + 1].Split(' ')[2]), 0f), Quaternion.identity); m++; if (m == 10) { m = 0; } break; case 'H': if (mapa == 1) { instance = Instantiate(horizontal[h], new Vector3(Convert.ToInt32(jugadores[pl + 1].Split(' ')[1]), Convert.ToInt32(jugadores[pl + 1].Split(' ')[2]), 0f), Quaternion.identity); h++; if (h == 10) { h = 0; } } else if (mapa == 2 || mapa == 3) { instance = Instantiate(propietarioMercadona, new Vector3(Convert.ToInt32(jugadores[pl + 1].Split(' ')[1]), Convert.ToInt32(jugadores[pl + 1].Split(' ')[2]), 0f), Quaternion.identity); } break; case 'L': instance = Instantiate(guardiaLlave, new Vector3(Convert.ToInt32(jugadores[pl + 1].Split(' ')[1]), Convert.ToInt32(jugadores[pl + 1].Split(' ')[2]), 0f), Quaternion.identity); break; case 'G': instance = Instantiate(guardia, new Vector3(Convert.ToInt32(jugadores[pl + 1].Split(' ')[1]), Convert.ToInt32(jugadores[pl + 1].Split(' ')[2]), 0f), Quaternion.identity); Guardia scriptguardia = instance.GetComponent <Guardia>(); scriptguardia.hormax = Int32.Parse(jugadores[pl + 1].Split(' ')[3]); scriptguardia.vermax = Int32.Parse(jugadores[pl + 1].Split(' ')[4]); scriptguardia.move = Int32.Parse(jugadores[pl + 1].Split(' ')[5]); scriptguardia.ordenmovimiento = Int32.Parse(jugadores[pl + 1].Split(' ')[6]); break; } if (instance != null) { instance.transform.SetParent(boardHolder2); } } }