Esempio n. 1
0
        private void ValorCombobox(ref ICollectionView cv)
        {
            string textFilter = TextBoxSearchBar.Text;

            if (!string.IsNullOrEmpty(textFilter))
            {
                switch (((ComboBoxItem)ComboBoxSearch.SelectedItem).Content)
                {
                case "Nombre":
                    cv.Filter = o =>
                    {
                        ProductAux C = o as ProductAux;
                        return(C.Name.ToUpper().StartsWith(textFilter.ToUpper()));
                    };
                    break;

                case "Categoria":
                    cv.Filter = o =>
                    {
                        ProductAux C = o as ProductAux;
                        return(C.Category.ToUpper().StartsWith(textFilter.ToUpper()));
                    };
                    break;
                }
            }
            else
            {
                cv.Filter = o =>
                {
                    ProductAux C = o as ProductAux;
                    return(C.Remove == 0);
                };
            }
        }
        private void OnUpdateProduct()
        {
            if (!ProductValidation())
            {
                return;
            }

            using (MFSContext context = new MFSContext())
            {
                Product product = new Product();
                if (SelectedProduct.Id != 0)
                {
                    product = context.Products.Include(p => p.Category).Single(p => p.ProductId == SelectedProduct.Id);
                }
                product.Name                 = SelectedProduct.Name;
                product.MinStock             = SelectedProduct.MinStock;
                product.Category             = context.Categories.Find(SelectedProduct.CategoryId);
                product.SellPrice            = SelectedProduct.SellPrice;
                product.Mesurement           = context.Measurements.Find(SelectedProduct.MeasurementId);
                context.Entry(product).State = SelectedProduct.Id == 0 ?
                                               EntityState.Added : EntityState.Modified;

                context.SaveChanges();


                LoadProduct();
                SelectedProduct = new ProductAux();
            }
        }
        public ProductViewModel()
        {
            UpdateProductCommand = new MyICommand(OnUpdateProduct, CanUpdateProduct);
            SelectedProduct      = new ProductAux();
            AddProductCommand    = new MyICommand(OnAddCategory, CanAddCategory);

            LoadProduct();
            //ChangeCategory = new MyICommand(OnChangeCategory, CanChangeCategory);
        }
        public void LoadProduct()
        {
            ObservableCollection <ProductAux> products = new ObservableCollection <ProductAux>();

            using (MFSContext context = new MFSContext())
            {
                var data = from p in context.Products
                           where p.Remove != 1
                           select new
                {
                    Id              = p.ProductId,
                    Name            = p.Name,
                    CategoryId      = p.Category.CategoryId,
                    Category        = p.Category.CategoryName,
                    MinStock        = p.MinStock,
                    Remove          = p.Remove,
                    SellPrice       = p.SellPrice,
                    MeasurementId   = p.Mesurement.MeasurementId,
                    MeasurementName = p.Mesurement.Name,
                    Cost            = (context.OrderDetails.Where(o => o.Product.ProductId == p.ProductId && o.Remove != 1).Count() != 0)
                                        ? context.OrderDetails.Where(o => o.Product.ProductId == p.ProductId && o.Remove != 1).Average(o => o.Cost) : 0,
                    Stock = (context.OrderDetails.Where(o => o.Product.ProductId == p.ProductId && o.Remove != 1).Count() != 0) ?
                            (context.SaleDetails.Where(s => s.Product.ProductId == p.ProductId && s.Remove != 1).Count() != 0) ?
                            context.OrderDetails.Where(o => o.Product.ProductId == p.ProductId && o.Remove != 1).Sum(o => o.Quantity)
                            - context.SaleDetails.Where(s => s.Product.ProductId == p.ProductId && s.Remove != 1).Sum(s => s.Quantity)
                                               : context.OrderDetails.Where(o => o.Product.ProductId == p.ProductId && o.Remove != 1).Sum(o => o.Quantity)
                                               : 0
                };
                // MessageBox.Show(Convert.ToString(context.OrderDetails.First().Product.ProductId));

                foreach (var pro in data)
                {
                    ProductAux product = new ProductAux();
                    product.Id              = pro.Id;
                    product.Name            = pro.Name;
                    product.CategoryId      = pro.CategoryId;
                    product.Category        = pro.Category;
                    product.MinStock        = pro.MinStock;
                    product.SellPrice       = pro.SellPrice;
                    product.MeasurementId   = pro.MeasurementId;
                    product.Measurementname = pro.MeasurementName;
                    product.Cost            = pro.Cost;
                    product.Stock           = pro.Stock;
                    product.Remove          = pro.Remove;
                    products.Add(product);
                }
            }
            Products = products;
        }
Esempio n. 5
0
        private void DataGridProducts_MouseDoubleClick(object sender, MouseButtonEventArgs e)
        {
            ProductAux product = DataGridProducts.SelectedItem as ProductAux;

            if (product == null)
            {
                return;
            }

            if (OrderDetailView != null)
            {
                OrderDetailView.TextBoxProductId.Text   = Convert.ToString(product.Id);
                OrderDetailView.TextBoxProductName.Text = product.Name;
                this.Close();
            }
            if (SaleDetailView != null)
            {
                SaleDetailView.TextBoxProductId.Text   = Convert.ToString(product.Id);
                SaleDetailView.TextBoxProductName.Text = product.Name;
                SaleDetailView.TextBoxSellPrice.Text   = string.Format("{0:0.00}", product.SellPrice).Replace(",", ".");//Convert.ToString(product.SellPrice);
                this.Close();
            }
        }
 private void OnAddCategory()
 {
     SelectedProduct = new ProductAux();
     //OnPropertyChanged("SelectedProduct");
 }