コード例 #1
0
        public ActionResult Create(int ComboTransactionID, int CustomerID)
        {
            IndividualProductTransaction ipTran = new IndividualProductTransaction();
            ipTran.ComboTransactionID = ComboTransactionID;

            if (Session["LoginUser"] != null)
            {
                int userid = ((User)Session["LoginUser"]).UserID;

                Product prd = db.Products.Where(x => x.UserID == userid).FirstOrDefault();
                if (prd != null)
                {
                    ipTran.ProductID = prd.ProductID;
                    ipTran.Product = prd;
                    ipTran.CNYPrice = prd.CNYPrice.Value;
                    ipTran.CNYSellPrice = prd.CNYSellPrice.Value;
                    ipTran.Price = prd.Price;
                }
                else
                {
                    ipTran.Price = 0;
                    ipTran.CNYSellPrice = 0;
                    ipTran.CNYPrice = 0;
                }

                ipTran.CustomerID = CustomerID;
                ipTran.Number = 1;
                ipTran.TotalPrice = ipTran.Number * ipTran.CNYSellPrice.Value;

                ViewBag.Products = new SelectList(db.Products.OrderByDescending(x => x.ProductName), "ProductID", "ProductName", ipTran.ProductID);
            }

            return View(ipTran);
        }
コード例 #2
0
        public ActionResult Create(IndividualProductTransaction ipTran, int? ProductID, int CustomerID)
        {
            if (ModelState.IsValid)
            {
                if (Session["LoginUser"] != null)
                {
                    int UserID = ((User)Session["LoginUser"]).UserID;

                    if (ProductID.HasValue)
                    {
                        ipTran.ProductID = ProductID.Value;
                        Product product =  db.Products.First(x => x.ProductID == ProductID.Value);
                        ipTran.Price =product.Price;
                        ipTran.CNYPrice = product.CNYPrice;
                        ipTran.CNYSellPrice = product.CNYSellPrice;

                        if (ipTran.ComboTransactionID == 0)
                        {
                            ComboTransaction cbTrans = new ComboTransaction();
                            cbTrans.Benefit = (ipTran.CNYSellPrice.Value - ipTran.CNYPrice.Value) * ipTran.Number;
                            cbTrans.CustomerID = ipTran.CustomerID;
                            cbTrans.Expense = ipTran.CNYPrice.Value * ipTran.Number;//output
                            cbTrans.Income = ipTran.TotalPrice;//income
                            cbTrans.TimeStamp = DateTime.Now;
                            cbTrans.UserID = UserID;
                            db.ComboTransactions.Add(cbTrans);

                            db.SaveChanges();
                            ipTran.ComboTransactionID = cbTrans.ComboTransactionID;
                        }
                        else
                        {
                            //update combo transaction benefit and expense, income
                            ComboTransaction cbTrans = db.ComboTransactions.Find(ipTran.ComboTransactionID);
                            cbTrans.Benefit += (ipTran.CNYSellPrice.Value - ipTran.CNYPrice.Value) * ipTran.Number;
                            cbTrans.Expense += ipTran.CNYPrice.Value * ipTran.Number;//output
                            cbTrans.Income += ipTran.TotalPrice;//income
                            db.Entry(cbTrans).State = System.Data.Entity.EntityState.Modified;
                            db.SaveChanges();
                        }
                    }

                    db.IndividualProductTransactions.Add(ipTran);
                    db.SaveChanges();
                    return RedirectToAction("Edit", "ComboTransaction", new { id = ipTran.ComboTransactionID });
                }
            }
            ViewBag.Products = new SelectList(db.Products.OrderByDescending(x => x.ProductName), "ProductID", "ProductName", ipTran.ProductID);

            return View(ipTran);
        }
コード例 #3
0
        public ActionResult Edit(int IndividualProductTransactionID)
        {
            IndividualProductTransaction ipTran = new IndividualProductTransaction();
            if (Session["LoginUser"] != null)
            {
                ipTran = db.IndividualProductTransactions.Find(IndividualProductTransactionID);
                if (ipTran != null)
                {
                    ViewBag.Products = new SelectList(db.Products.OrderByDescending(x => x.ProductName), "ProductID", "ProductName", ipTran.ProductID);
                }
            }

            return View(ipTran);
        }
コード例 #4
0
        public ActionResult Edit(IndividualProductTransaction ipTranVM, int ProductID)
        {
            if (Session["LoginUser"] != null)
            {
                if (ModelState.IsValid)
                {
                    IndividualProductTransaction ipTranDB = db.IndividualProductTransactions.Find(ipTranVM.IndividualProductTransactionID);
                    if (ipTranDB != null)
                    {
                        if (ipTranDB.ProductID != ipTranVM.ProductID)
                        {
                            Product product = db.Products.Find(ipTranVM.ProductID);
                            ipTranDB.ProductID = ProductID;
                            ipTranDB.Price = product.Price;
                            ipTranDB.CNYPrice = product.CNYPrice;
                            ipTranDB.CNYSellPrice = product.CNYSellPrice;
                        }
                        ipTranDB.Number = ipTranVM.Number;
                        ipTranDB.TotalPrice = ipTranVM.TotalPrice;

                        db.Entry(ipTranDB).State = System.Data.Entity.EntityState.Modified;
                        db.SaveChanges();

                        return RedirectToAction("Edit", "ComboTransaction", new { id =ipTranDB.ComboTransactionID}); ;
                    }
                    else
                        return RedirectToAction("Index");
                }
                else
                {
                    ViewBag.Products = new SelectList(db.Products.OrderByDescending(x => x.ProductName), "ProductID", "ProductName", ProductID);
                    return RedirectToAction("Index");
                }
            }
            else
            {
                return RedirectToAction("Index","ComboTransaction");
            }
        }