public object UpdateDonatedProduct(Donated_Product donProdUpdate)
        {
            db.Configuration.ProxyCreationEnabled = false;

            Donated_Product objectDonProd = new Donated_Product();
            dynamic         toReturn      = new ExpandoObject();
            var             ProdId        = donProdUpdate.ProductID;
            var             DonId         = donProdUpdate.DonationID;

            try
            {
                objectDonProd = db.Donated_Product.Where(x => (x.DonationID == DonId) && (x.ProductID == ProdId)).FirstOrDefault();
                if (objectDonProd != null)
                {
                    objectDonProd.DPQuantity = donProdUpdate.DPQuantity;

                    db.SaveChanges();

                    toReturn.Message = "Donated product Update Successful";
                }
                else
                {
                    toReturn.Message = "Record Not Found";
                }
            }

            catch (Exception)
            {
                toReturn.Message = "Donated product Update Unsuccessful";
            }
            return(toReturn);
        }
        public object addDonatedProduct(int prodID, int contID, int donID, int quantity)
        {
            db.Configuration.ProxyCreationEnabled = false;
            dynamic toReturn = new ExpandoObject();

            try
            {
                //check quantity of container
                Container_Product conProd    = db.Container_Product.Where(z => (z.ProductID == prodID) && (z.ContainerID == contID)).FirstOrDefault();
                Donated_Product   donProdObj = db.Donated_Product.Where(z => (z.DonationID == donID) && (z.ProductID == prodID)).FirstOrDefault();  //to check if product has already been added

                if (conProd.CPQuantity >= quantity)
                {
                    if (donProdObj == null)
                    {
                        Donated_Product donProd = new Donated_Product();
                        donProd.ProductID   = prodID;
                        donProd.DonationID  = donID;
                        donProd.DPQuantity  = quantity;
                        donProd.ContainerID = contID;
                        db.Donated_Product.Add(donProd);
                        conProd.CPQuantity = conProd.CPQuantity - quantity;
                        db.SaveChanges();
                        toReturn.Message = "Donated Products Added Successfully";
                    }
                    else
                    {
                        donProdObj.DPQuantity = donProdObj.DPQuantity + quantity;
                        conProd.CPQuantity    = conProd.CPQuantity - quantity;
                        db.SaveChanges();
                        toReturn.Message = "Donated Products Added Successfully";
                    }



                    toReturn.DonatedProducts = db.Donated_Product.Where(z => z.DonationID == donID).ToList();
                }
                else
                {
                    toReturn.Message = "Not enough stock on hand. Available qunatity = " + conProd.CPQuantity;
                }
            }
            catch (Exception)
            {
                toReturn.Message = "Failed to add the product";
            }

            return(toReturn);
        }