//--------------------------------------METODOS VEHICULO SEGUNDA MANO--------------------------------------- /// <summary> /// PRE:v debe de estar inicializado /// POST:comprueba que no esta añadido y si no esta lo añado en caso de añadirlo devuelve true y falso en cualquier otro caso /// </summary> /// <param name="v"></param> /// <returns></returns> public static bool añadir(VehiculoSegundaMano v) { bool añadido = false; if (!existeYa(v)) { Persistencia.Añadir(v); añadido = true; } return(añadido); }
/// <summary> /// PRE:v debe de estar incializado y debe contener los datos actualizados del vehiculo que se quiere actualizar(tienen en mismo numBatidor) /// POST:comprueba que existe un coche con dicho numBastidor y si es asi lo actualiza y devuelve true y false en cualquier otro caso /// </summary> /// <param name="v"></param> /// <returns></returns> public static bool actualizar(VehiculoSegundaMano v) { bool actualizado = false; if (existeYa(v)) { Persistencia.Actualizar(v); actualizado = true; } return(actualizado); }
/// <summary> /// Devuelve la lista de todos los vehiculos de segunda mano que posee el concesionario /// </summary> /// <returns></returns> public static List <VehiculoSegundaMano> listaVehiculosSegundaMano() { List <VehiculoSegundaMano> lista = new List <VehiculoSegundaMano>(); int tam = BD.VSegundaMano.Count; for (int i = 0; i < tam; i++) { VSegundaManoDatos v = BD.VSegundaMano[i]; VehiculoSegundaMano v1 = new VehiculoSegundaMano(v.NumBastidor, v.Potencia, v.Modelo, v.Marca, v.PvRecomendado, v.Matricula, v.FechaMatriculacion); lista.Add(v1); } return(lista); }
/// <summary> /// Devuelve la lista de todos los presupuestos del concesionario /// </summary> /// <returns></returns> public static List <Presupuesto> listaPresupuesto() { List <Presupuesto> lista = new List <Presupuesto>(); int tam = BD.Presupuestos.Count; for (int i = 0; i < tam; i++) { List <Vehiculo> vehiculos = new List <Vehiculo>(); PresupuestosDato pd = BD.Presupuestos[i]; Cliente c = new Cliente(pd.Cliente); c = Buscar(c); VehiculoNuevo vnuevo = new VehiculoNuevo(pd.VehiculoComprado); Vehiculo v = null; if (Existe(vnuevo)) { if (ExisteVehiculoNuevo(vnuevo)) { v = Buscar(vnuevo); } else { v = Buscar(new VehiculoSegundaMano(pd.VehiculoComprado)); } } int t = BD.Presupuesto_vehiculos.Count; for (int i2 = 0; i2 < t; i2++) { Presupuesto_VehiculosDato pvd = BD.Presupuesto_vehiculos[i2]; if (pd.Id.Equals(pvd.Clave.Id)) { VehiculoNuevo vn = new VehiculoNuevo(pvd.Clave.Vehiculo); if (ExisteVehiculoNuevo(vn)) { vehiculos.Add(Buscar(vn)); } else { VehiculoSegundaMano vs = new VehiculoSegundaMano(pvd.Clave.Vehiculo); vehiculos.Add(Buscar(vs)); } } } Presupuesto p = new Presupuesto(pd.Id, c, pd.FechaRealizacion, pd.Estado, vehiculos, v); lista.Add(p); } return(lista); }
/// <summary> /// PRE: la clase debe de estar incializada /// POST: hace que se muestren todos los vehiculos disponible /// </summary> private void mostrarTodos() { this.listado.Rows.Clear(); List <Vehiculo> lista = LNVehiculo.LogicaNegocioVehiculo.listaDeTodosLosVehiculos(); foreach (Vehiculo v in lista) { VehiculoSegundaMano seg = LNVehiculo.LogicaNegocioVehiculo.buscar(v) as VehiculoSegundaMano; if (seg == null) { string[] vehiculo = { v.NumBastidor, v.Marca, v.Modelo, v.Potencia.ToString(), v.PvRecomendado.ToString(), v.PVP.ToString(), null, null }; this.listado.Rows.Add(vehiculo); } else { string[] vehiculo = { v.NumBastidor, v.Marca, v.Modelo, v.Potencia.ToString(), v.PvRecomendado.ToString(), v.PVP.ToString(), seg.Matricula, seg.FechaMatriculacion.ToShortDateString() }; this.listado.Rows.Add(vehiculo); } } }
//--------------------------------------METODOS VARIOS--------------------------------------- /// <summary> /// PRE: v puede contener solo la clave, debe estar incializado /// POST:comprueba que existe y si es asi lo borra y devuelve true y en cualquier otro caso false /// </summary> /// <param name="v"></param> /// <returns></returns> public static bool eliminar(Vehiculo v) { if (existeYa(v)) {// Existe: VehiculoNuevo busquedaNuevo = v as VehiculoNuevo; if (busquedaNuevo != null) { //Se trata de un v nuevo Persistencia.Borrar(busquedaNuevo); return(true); } else { //Se trata de un v de segunda mano VehiculoSegundaMano busquedaSegundaMano = v as VehiculoSegundaMano; Persistencia.Borrar(busquedaSegundaMano); return(true); } } return(false); }
/// <summary> /// PRE: la clase debe de estar inicializada /// POST: metodo de respuesta al evento CurrentItemChanged de BindingSource, actualiza los textBox para mostrar el vehiculo correspondiente /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void cambio(Object sender, EventArgs e) { Vehiculo v = LNVehiculo.LogicaNegocioVehiculo.buscar(this.bindingSource.Current as Vehiculo); VehiculoNuevo nuevo = v as VehiculoNuevo; if (nuevo != null) { this.rbtNuevo.Checked = true; this.noMostrarSegundaDatos(); this.asignarDatos(); } else { VehiculoSegundaMano segunda = v as VehiculoSegundaMano; this.rbtSegundaMano.Checked = true; this.mostrarSegundaDatos(); this.asignarDatos(); this.tbMatricula.Text = segunda.Matricula; this.tbFechaMatricula.Text = segunda.FechaMatriculacion.ToShortDateString(); } }
/// <summary> /// Constructor de la clase, se debe utlizar cuando se quiera hacer una operacion de baja o de busqueda /// </summary> /// <param name="e"></param> public RestoDatosVehiculo(Vehiculo e) { InitializeComponent(); this.vehiculo = e; this.btCancelar.DialogResult = DialogResult.Cancel; this.btAceptar.DialogResult = DialogResult.OK; this.tbNumeroBastidor.Text = vehiculo.NumBastidor; this.rbtNuevo.Checked = true; this.asignarDatos(); VehiculoSegundaMano ve = this.vehiculo as VehiculoSegundaMano; if (ve == null) { this.rbtNuevo.Checked = true; } else { this.rbtSegundaMano.Checked = true; this.tbMatricula.Text = ve.Matricula; this.tbFechaMatriculacion.Text = ve.FechaMatriculacion.Date.ToShortDateString(); } this.deshabilitar(); }
/// <summary> /// PRE: v debe de estar inicializado /// POST: devuelve true si el vehiculo que se la psa como parametro esta en nuestra coleccion /// </summary> /// <param name="v"></param> /// <returns></returns> private static bool existeYa(VehiculoSegundaMano v) { return(Persistencia.Existe(v)); }
/// <summary> /// PRE:la clase que se pasa como parametro debe de estar incializada /// POST: Dado un VehiculoNuvo (Del que solo se utilizara la clave), devuelve true si existe un vehiculoSegundaMano cuya clave coincida con v1, false en caso contrario /// </summary> /// <param name="v1"></param> /// <returns></returns> public static bool Existe(VehiculoSegundaMano v1) { VSegundaManoDatos v = new VSegundaManoDatos(v1.Matricula, v1.FechaMatriculacion, v1.NumBastidor, v1.Marca, v1.Modelo, v1.Potencia, v1.PvRecomendado); return(BD.ExistsVSegundaMano(v)); }
/// <summary> /// PRE:la clase que se pasa como parametro debe de estar incializada /// POST:Dado un VehiculoSegundaMano, se actualizara el vehiculo cuya clave coincida con v ,(No se contempla el caso en el que no existe ningun vehiculo con dicha clave),cambiando todos sus campos a los valores que trae v(los actualiza) /// </summary> /// <param name="v"></param> public static void Actualizar(VehiculoSegundaMano v) { VSegundaManoDatos v1 = new VSegundaManoDatos(v.Matricula, v.FechaMatriculacion, v.NumBastidor, v.Marca, v.Modelo, v.Potencia, v.PvRecomendado); BD.UpdateVSegundaMano(v1); }
/// <summary> /// PRE:la clase que se pasa como parametro debe de estar incializada /// POST: Dado un VehiculoSegundaMano (Puede ser que solo contenga la clave), se borrara sin comprobar si existe o no, su aparicion en la bd /// </summary> /// <param name="v1"></param> public static void Borrar(VehiculoSegundaMano v1) { VSegundaManoDatos v = new VSegundaManoDatos(v1.Matricula, v1.FechaMatriculacion, v1.NumBastidor, v1.Marca, v1.Modelo, v1.Potencia, v1.PvRecomendado); BD.DeleteVSegundaMano(v); }