示例#1
0
        private async void Window_Loaded(object sender, RoutedEventArgs e)
        {
            CatalogoProductoDAO catalogoDao  = new CatalogoProductoDAO();
            ProveedorDAO        proveedorDao = new ProveedorDAO();

            try
            {
                //insertar datos al combobox CatalogoCB
                var catalogoResult = await catalogoDao.GetAll();

                BindableCollection <CatalogoProducto> listaCatalogo = new BindableCollection <CatalogoProducto>(catalogoResult);

                //opcion por defecto combobox
                CatalogoProducto defaultCB1 = new CatalogoProducto
                {
                    cat_prod_id = 0,
                    nombre      = "Seleccionar"
                };
                //insertar en la primera posición
                listaCatalogo.Insert(0, defaultCB1);

                CatalogoCB.ItemsSource   = listaCatalogo;
                CatalogoCB.SelectedIndex = 0;

                //insertar datos al combobox ProveedorCB
                var proveedorResult = await proveedorDao.GetAll();

                BindableCollection <Proveedor> listaProveedor = new BindableCollection <Proveedor>(proveedorResult);

                //opcion por defecto combobox
                Proveedor defaultCB2 = new Proveedor
                {
                    proveedor_id = 0,
                    nombre       = "Seleccionar"
                };
                //insertar en la primera posición
                listaProveedor.Insert(0, defaultCB2);

                ProveedorCB.ItemsSource   = listaProveedor;
                ProveedorCB.SelectedIndex = 0;
            }
            catch (Exception)
            {
                MessageBox.Show("Error al cargar listados");
            }
        }
        /// <summary>
        /// Refreshes the list of products. Called by navigation commands.
        /// </summary>
        private async void RefreshProducts()
        {
            ProductoDAO         productoDao         = new ProductoDAO();
            CatalogoProductoDAO catalogoProductoDao = new CatalogoProductoDAO();
            ProveedorDAO        proveedorDao        = new ProveedorDAO();
            StockProductoDAO    stockDao            = new StockProductoDAO();

            try
            {
                var productosResult = await productoDao.GetAll();

                var catalogoProductosResult = await catalogoProductoDao.GetAll();

                var proveedoresResult = await proveedorDao.GetAll();

                var stockResult = await stockDao.GetAll();

                var resultJoin = (from u in productosResult
                                  join r in catalogoProductosResult on u.cat_prod_id equals r.cat_prod_id
                                  join c in proveedoresResult on u.proveedor_id equals c.proveedor_id
                                  join s in stockResult on u.producto_id equals s.producto_id into resultSet
                                  from result in resultSet.DefaultIfEmpty()
                                  select new
                {
                    u.producto_id,
                    u.cat_prod_id,
                    u.nombre,
                    u.proveedor_id,
                    u.cod,
                    u.valor_neto,
                    nombre_catalogo = r.nombre,
                    nombre_proveedor = c.nombre,
                    stock = result?.cantidad ?? 0
                }).ToList();

                List <ProductoModel> listaProductoModel = new List <ProductoModel>();

                foreach (var item in resultJoin)
                {
                    listaProductoModel.Add(new ProductoModel
                    {
                        producto_id      = item.producto_id,
                        cat_prod_id      = item.cat_prod_id,
                        proveedor_id     = item.proveedor_id,
                        nombre           = item.nombre,
                        cod              = item.cod,
                        valor_neto       = item.valor_neto,
                        nombre_catalogo  = item.nombre_catalogo,
                        nombre_proveedor = item.nombre_proveedor,
                        stock            = item.stock
                    });
                }


                BindableCollection <ProductoModel> lista = new BindableCollection <ProductoModel>(listaProductoModel);

                Listado = DataAccess.GetProductos(start, itemCount, sortColumn, ascending, out totalItems, lista);

                NotifyPropertyChanged("Start");
                NotifyPropertyChanged("End");
                NotifyPropertyChanged("TotalItems");
            }
            catch (Exception)
            {
                MessageBox.Show("Listado Productos no Encontrado(paginacion)");
            }
        }
示例#3
0
        private async void Window_Loaded(object sender, RoutedEventArgs e)
        {
            CatalogoProductoDAO catalogoDao  = new CatalogoProductoDAO();
            ProveedorDAO        proveedorDao = new ProveedorDAO();
            ProductoDAO         productoDao  = new ProductoDAO();

            try
            {
                //insertar datos al combobox CatalogoCB
                var catalogoResult = await catalogoDao.GetAll();

                BindableCollection <CatalogoProducto> listaCatalogo = new BindableCollection <CatalogoProducto>(catalogoResult);

                //opcion por defecto combobox
                CatalogoProducto defaultCB1 = new CatalogoProducto
                {
                    cat_prod_id = 0,
                    nombre      = "Seleccionar"
                };
                //insertar en la primera posición
                listaCatalogo.Insert(0, defaultCB1);

                CatalogoCB.ItemsSource = listaCatalogo;


                //insertar datos al combobox ProveedorCB
                var proveedorResult = await proveedorDao.GetAll();

                BindableCollection <Proveedor> listaProveedor = new BindableCollection <Proveedor>(proveedorResult);

                //opcion por defecto combobox
                Proveedor defaultCB2 = new Proveedor
                {
                    proveedor_id = 0,
                    nombre       = "Seleccionar"
                };
                //insertar en la primera posición
                listaProveedor.Insert(0, defaultCB2);

                ProveedorCB.ItemsSource = listaProveedor;


                //datos producto por id
                var producto = await productoDao.GetById(this.producto_id);

                //obtener el nombre de Rol
                string nombreCatalogo = (from c in listaCatalogo
                                         where c.cat_prod_id == producto.cat_prod_id
                                         select new
                {
                    c.nombre
                }).FirstOrDefault().nombre;
                //datos proveedor por id
                var proveedor = await productoDao.GetById(this.producto_id);

                //obtener el nombre de Rol
                string nombreProveedor = (from c in listaProveedor
                                          where c.proveedor_id == proveedor.proveedor_id
                                          select new
                {
                    c.nombre
                }).FirstOrDefault().nombre;


                //identificar la posicion en el combobox CatalogoCB
                int indiceCatalogo = 0;

                for (int i = 0; i < listaCatalogo.Count; i++)
                {
                    string opcion = listaCatalogo[i].nombre;
                    if (opcion.Equals(nombreCatalogo))
                    {
                        indiceCatalogo = i;
                    }
                }

                //identificar la posicion en el combobox CatalogoCB
                int indiceProveedor = 0;

                for (int i = 0; i < listaProveedor.Count; i++)
                {
                    string opcion = listaProveedor[i].nombre;
                    if (opcion.Equals(nombreProveedor))
                    {
                        indiceProveedor = i;
                    }
                }

                CatalogoCB.SelectedIndex  = indiceCatalogo;
                ProveedorCB.SelectedIndex = indiceProveedor;
                txtNombre.Text            = producto.nombre;
                txtCod.Text   = producto.cod;
                txtValor.Text = producto.valor_neto.ToString();
            }
            catch (Exception)
            {
                MessageBox.Show("Error al cargar datos en Actualizar");
            }
        }