コード例 #1
0
        /// <summary>
        /// Creates a list of PurchaseBoxquantity objects and returns the list of objects
        /// </summary>
        /// <returns></returns>
        List <PurchaseBoxQuantity> GetPurchaseBoxQuantities()
        {
            List <PurchaseBoxQuantity> purchaseBoxQuantities = new List <PurchaseBoxQuantity>();
            List <Purchase>            purchases             = (List <Purchase>) Controller <RosePurchaseManagementEntities, Purchase> .GetEntitiesWithIncluded("BoxPurchases", "RoseSize", "Farm", "Invoice", "Warehouse");

            List <Box> boxes = (List <Box>) Controller <RosePurchaseManagementEntities, Box> .GetEntitiesWithIncluded("BoxPurchases");

            foreach (Purchase purchase in purchases)
            {
                foreach (BoxPurchase boxPurchase in purchase.BoxPurchases)
                {
                    PurchaseBoxQuantity purchaseBoxQuantity = new PurchaseBoxQuantity()
                    {
                        PurchaseID    = purchase.PurchaseID,
                        FarmName      = purchase.Farm.FarmName,
                        Price         = purchase.Price_per_stem,
                        InvoiceNumber = purchase.InvoiceID,
                        WarehouseName = purchase.Warehouse.WarehouseName,
                        BoxQuantity   = boxPurchase.Quantity
                    };
                    using (RosePurchaseManagementEntities context = new RosePurchaseManagementEntities())
                    {
                        var roseName = context.RoseSizes.Include("Rose").Where(x => x.RoseSizeID == purchase.RoseSizeID).Select(r => r.Rose.RoseName).FirstOrDefault();
                        purchaseBoxQuantity.RoseName = roseName;

                        var roseSize = context.RoseSizes.Include("Size").Where(r => r.RoseSizeID == purchase.RoseSizeID).Select(s => s.Size.SizeName).FirstOrDefault();
                        purchaseBoxQuantity.RoseSize = roseSize;

                        var boxType = context.BoxPurchases.Include("Box").Where(x => x.BoxID == boxPurchase.BoxID).Select(t => t.Box.BoxName).FirstOrDefault();
                        purchaseBoxQuantity.BoxName = boxType;
                    }

                    purchaseBoxQuantities.Add(purchaseBoxQuantity);
                }
            }
            return(purchaseBoxQuantities);
        }
コード例 #2
0
        /// <summary>
        /// Display PurchaseDatgridview
        /// </summary>
        public void DisplayPurchase()
        {
            //Create lsit of box Purchase Quatity
            List <PurchaseBoxQuantity> purchaseBoxQuantities = new List <PurchaseBoxQuantity>();

            //Get each purchases
            var purchases = Controller <RosePurchaseManagementEntities, Purchase> .GetEntitiesWithIncluded("BoxPurchases", "RoseSize", "Farm", "Invoice", "Warehouse");

            List <Box> boxes = (List <Box>) Controller <RosePurchaseManagementEntities, Box> .GetEntitiesWithIncluded("BoxPurchases");

            //Check checkbox is checked or not
            if (checkBoxSearch.Checked)
            {
                purchases = purchases.Where(x => x.Invoice.Date >= dateTimePickerStartDate.Value).Where(x => x.Invoice.Date <= dateTimePickerEndDate.Value);
            }

            //Set up properties for each PurchaseBoxQuantity object
            foreach (Purchase purchase in purchases)
            {
                foreach (BoxPurchase boxPurchase in purchase.BoxPurchases)
                {
                    PurchaseBoxQuantity purchaseBoxQuantity = new PurchaseBoxQuantity()
                    {
                        PurchaseID    = purchase.PurchaseID,
                        FarmName      = purchase.Farm.FarmName,
                        Price         = purchase.Price_per_stem,
                        InvoiceNumber = purchase.InvoiceID,
                        WarehouseName = purchase.Warehouse.WarehouseName,
                        Total         = purchase.Invoice.TotalAmount,
                        Date          = purchase.Invoice.Date,
                        BoxQuantity   = boxPurchase.Quantity
                    };
                    //GEt each BoxPurchase based on purchase quantity
                    using (RosePurchaseManagementEntities context = new RosePurchaseManagementEntities())
                    {
                        var roseName = context.RoseSizes.Include("Rose").Where(x => x.RoseSizeID == purchase.RoseSizeID).Select(r => r.Rose.RoseName).FirstOrDefault();
                        purchaseBoxQuantity.RoseName = roseName;

                        var boxType = context.BoxPurchases.Include("Box").Where(x => x.BoxID == boxPurchase.BoxID).Select(t => t.Box.BoxName).FirstOrDefault();
                        purchaseBoxQuantity.BoxName = boxType;
                    }

                    purchaseBoxQuantities.Add(purchaseBoxQuantity);
                }
            }
            //Getting the count
            var count = purchaseBoxQuantities.Count();

            labelCount.Text = count.ToString();
            if (count != 0)
            {
                //Setting up th average
                var sum = purchaseBoxQuantities.Select(x => x.Total).Average();
                labelAveragePrice.Text = sum.ToString();
            }
            else
            {
                labelAveragePrice.Text = "";
            }
            //set up datasource of dataGridViewPurchase
            dataGridViewPurchase.DataSource = purchaseBoxQuantities;
        }