コード例 #1
0
        private static void SaveProducts(EditPackage editPackage, int packageID)
        {
            var curList = PackageProducts.GetByPackageID(packageID);

            foreach (var product in editPackage.Products)
            {
                var packageProduct = Mapper.Map <PackageProduct>(product);

                if (packageProduct.ProductVarientID == -1)
                {
                    packageProduct.ProductVarientID = null;
                }

                if (!curList.Any(item => item.ID == product.ID))
                {
                    packageProduct.PackageID = packageID;
                    packageProduct.NewPrice  = packageProduct.NewPrice * (ExtensionMethods.IsRial ? 1 : 10);
                    packageProduct.OldPrice  = packageProduct.OldPrice * (ExtensionMethods.IsRial ? 1 : 10);

                    PackageProducts.Insert(packageProduct);
                }
                else
                {
                    PackageProducts.Update(packageProduct);
                    curList.Remove(curList.Single(cls => cls.ID == packageProduct.ID));
                }
            }

            foreach (var item in curList)
            {
                PackageProducts.Delete(item.ID);
            }
        }
コード例 #2
0
        public ActionResult Details(int id)
        {
            bool isAdmin = false;

            if (base.IsAdmin || base.IsWriter)
            {
                isAdmin = true;
            }

            var packageDetails = Packages.GetDetails(id, isAdmin);

            if (packageDetails == null)
            {
                return(HttpNotFound());
            }

            var allImages    = PackageImages.GetByPackageID(id);
            var defaultImage = allImages.Where(item => item.ProductImagePlace == ProductImagePlace.Home).FirstOrDefault();

            var products = PackageProducts.GetProducts(id);

            packageDetails.NewPrice = products.Sum(item => item.NewPrice);
            packageDetails.OldPrice = products.Sum(item => item.OldPrice);

            PackageDetailSettings packageDetailSettings = new PackageDetailSettings
            {
                PackageDetails  = packageDetails,
                DefaultImage    = defaultImage,
                PackageImages   = allImages,
                PackageProducts = products
            };

            return(View(packageDetailSettings));
        }
コード例 #3
0
        public ActionResult Edit(int?id)
        {
            EditPackage editPackage;

            if (id.HasValue)
            {
                editPackage = Mapper.Map <EditPackage>(Packages.GetByID(id.Value));
                var products = PackageProducts.GetByPackageID(editPackage.ID);

                editPackage.Text     = HttpUtility.HtmlDecode(editPackage.Text);
                editPackage.Images   = PackageImages.GetByPackageID(editPackage.ID);
                editPackage.Products = Mapper.Map <List <EditPackageProduct> >(products);
            }
            else
            {
                editPackage = new EditPackage();
            }

            return(View(editPackage));
        }