/// <summary> /// Rellena la lista Resumen con los componentes seleccionados. /// </summary> /// <param name="placabaseSeleccionado"></param> /// <param name="procesadorSeleccionado"></param> /// <param name="chasisSeleccionado"></param> /// <param name="ramSeleccionada"></param> /// <param name="tarjetagraficaSeleccionada"></param> /// <returns>La colección de los componentes seleccionados.</returns> public static async Task <List <Object> > RellenarLista(String placabaseSeleccionado, String procesadorSeleccionado, String chasisSeleccionado, String ramSeleccionada, String tarjetagraficaSeleccionada) { // A partir de los nombres de los componentes seleccionados, los buscamos en la base de datos, y sacamos todos los datos de cada componente. PlacaBase placabase = await PlacaBase_Repository.ComprobarNombre(placabaseSeleccionado); Procesador procesador = await Procesador_Repository.ComprobarNombre(procesadorSeleccionado); Chasis chasis = await Chasis_Repository.ComprobarNombre(chasisSeleccionado); RAM ram = await RAM_Repository.ComprobarNombre(ramSeleccionada); TarjetaGrafica tarjetaGrafica = await TarjetaGrafica_Repository.ComprobarNombre(tarjetagraficaSeleccionada); // Metemos en una colección los componentes. Ya con DataBinding la propia lista Resumen sabrá qué propiedades debe mostrar. List <Object> LineasResumen = new List <Object> { placabase, procesador, chasis, ram, tarjetaGrafica }; return(LineasResumen); }
/// <summary> /// Rellena cada menu desplegable con los productos que se encuentren en el catalogo. /// </summary> /// <returns></returns> public async Task RellenarPickers() { // Rellenamos cada Picker con los productos que hay en la base de datos. picPlacaBase.ItemsSource = await PlacaBase_Repository.GetNombres(); picProcesador.ItemsSource = await Procesador_Repository.GetNombres(); picChasis.ItemsSource = await Chasis_Repository.GetNombres(); picMemoria.ItemsSource = await RAM_Repository.GetNombres(); picTarjetaGrafica.ItemsSource = await TarjetaGrafica_Repository.GetNombres(); }
/// <summary> /// Calcula el precio total de un pedido que pasamos por parámetro. /// </summary> /// <param name="pedido">El pedido al que le queremos sacar el total.</param> /// <returns>El precio total de todos los componentes del pedido.</returns> private async Task <float> CalcularTotalAsync(Pedido pedido) { PlacaBase placabase = await PlacaBase_Repository.ComprobarId(pedido.PlacaBase); Procesador procesador = await Procesador_Repository.ComprobarId(pedido.Procesador); Chasis chasis = await Chasis_Repository.ComprobarId(pedido.Chasis); RAM ram = await RAM_Repository.ComprobarId(pedido.RAM); TarjetaGrafica tarjetaGrafica = await TarjetaGrafica_Repository.ComprobarId(pedido.TarjetaGrafica); return(placabase.Precio + procesador.Precio + chasis.Precio + ram.Precio + tarjetaGrafica.Precio); }
public App(string filename) { InitializeComponent(); Pedido_Repository = new Pedido_Repository(filename); PlacaBase_Repository = new PlacaBase_Repository(filename); Chasis_Repository = new Chasis_Repository(filename); Procesador_Repository = new Procesador_Repository(filename); Ram_Repository = new RAM_Repository(filename); TarjetaGrafica_Repository = new TarjetaGrafica_Repository(filename); Usuario_Repository = new Usuario_Repository(filename); MainPage = new LogIn_View(); }
/// <summary> /// Recoje los elementos seleccionados e introduce en la base de datos un nuevo pedido. /// </summary> /// <param name="placabaseSeleccionado"></param> /// <param name="procesadorSeleccionado"></param> /// <param name="chasisSeleccionado"></param> /// <param name="ramSeleccionada"></param> /// <param name="tarjetagraficaSeleccionada"></param> /// <returns></returns> public async Task GenerarPedido(String placabaseSeleccionado, String procesadorSeleccionado, String chasisSeleccionado, String ramSeleccionada, String tarjetagraficaSeleccionada) { // A partir de los nombres de los componentes seleccionados, los buscamos en la base de datos, y sacamos todos los datos de cada componente. PlacaBase placabase = await PlacaBase_Repository.ComprobarNombre(placabaseSeleccionado); Procesador procesador = await Procesador_Repository.ComprobarNombre(procesadorSeleccionado); Chasis chasis = await Chasis_Repository.ComprobarNombre(chasisSeleccionado); RAM ram = await RAM_Repository.ComprobarNombre(ramSeleccionada); TarjetaGrafica tarjetaGrafica = await TarjetaGrafica_Repository.ComprobarNombre(tarjetagraficaSeleccionada); // Con estos componentes, los pasamos a la base de datos y queda el pedido realizado. await App.Pedido_Repository.AddNewPedidoAsync(Usuario, placabase, procesador, tarjetaGrafica, ram, chasis); }
/// <summary> /// Calcula el total de todos los componentes seleccionados. /// </summary> /// <param name="placabaseSeleccionado"></param> /// <param name="procesadorSeleccionado"></param> /// <param name="chasisSeleccionado"></param> /// <param name="ramSeleccionada"></param> /// <param name="tarjetagraficaSeleccionada"></param> /// <returns>La suma de todos los componentes seleccionados.</returns> public static async Task <String> ObtenerTotal(String placabaseSeleccionado, String procesadorSeleccionado, String chasisSeleccionado, String ramSeleccionada, String tarjetagraficaSeleccionada) { // A partir de los nombres de los componentes seleccionados, los buscamos en la base de datos, y sacamos todos los datos de cada componente. PlacaBase placabase = await PlacaBase_Repository.ComprobarNombre(placabaseSeleccionado); Procesador procesador = await Procesador_Repository.ComprobarNombre(procesadorSeleccionado); Chasis chasis = await Chasis_Repository.ComprobarNombre(chasisSeleccionado); RAM ram = await RAM_Repository.ComprobarNombre(ramSeleccionada); TarjetaGrafica tarjetaGrafica = await TarjetaGrafica_Repository.ComprobarNombre(tarjetagraficaSeleccionada); // Devolvemos la suma de los 5 componentes seleccionados. return("Total: " + (placabase.Precio + procesador.Precio + chasis.Precio + ram.Precio + tarjetaGrafica.Precio) + "€"); }
/// <summary> /// Recupera de cada pedido realizado el nombre del usuario que lo ha realizado, el nombre de cada componente y el precio total. /// </summary> /// <returns>Una lista de los pedidos realizados.</returns> public async Task <List <LineaPedido> > CargarPedidos() { pedidos = await App.Pedido_Repository.GetAllPedidosAsync(); List <LineaPedido> lineasPedido = new List <LineaPedido>(); PlacaBase placabase; Procesador procesador; Chasis chasis; RAM ram; TarjetaGrafica tarjetaGrafica; Usuario usuarioPedido; for (int i = 0; i < pedidos.Count; i++) { placabase = await PlacaBase_Repository.ComprobarId(pedidos[i].PlacaBase); procesador = await Procesador_Repository.ComprobarId(pedidos[i].Procesador); chasis = await Chasis_Repository.ComprobarId(pedidos[i].Chasis); ram = await RAM_Repository.ComprobarId(pedidos[i].RAM); tarjetaGrafica = await TarjetaGrafica_Repository.ComprobarId(pedidos[i].TarjetaGrafica); usuarioPedido = await Usuario_Repository.ComprobarId(pedidos[i].Usuario); lineasPedido.Add(new LineaPedido( pedidos[i].Id, usuarioPedido.Nombre, placabase.Nombre, procesador.Nombre, tarjetaGrafica.Nombre, chasis.Nombre, ram.Nombre, placabase.Precio + procesador.Precio + chasis.Precio + ram.Precio + tarjetaGrafica.Precio )); } return(lineasPedido); }