Esempio n. 1
0
 /// <summary>
 /// Berfungsi untuk menambahkan pro di halaman edit memo
 /// </summary>
 /// <param name="memoViewModel">Sebuah object dari memo view model</param>
 /// <param name="collection">Object dari FormCollection yang isinya data dari input form halaman view</param>
 /// <returns>PRO berhasil ditambahkan</returns>
 public ActionResult AddPRO(MemoViewModel memoViewModel, FormCollection collection)
 {
     try
     {
         var username = User.Identity.Name;
         var memoID   = collection.GetValues("Memo.ID");
         foreach (var pro in memoViewModel.selectedProID)
         {
             var proData    = db.Pros.Find(pro);
             var newMemoPRO = new MemoPRO
             {
                 MemoID         = Convert.ToInt32(memoID[0]),
                 PROID          = pro,
                 Quantity       = proData.Quantity,
                 Created        = DateTime.Now,
                 CreatedBy      = username,
                 LastModified   = DateTime.Now,
                 LastModifiedBy = username
             };
             db.MemoPROes.Add(newMemoPRO);
         }
         db.SaveChanges();
         Session["message"] = "pro added";
         return(RedirectToAction("Edit", "Memo", new { id = memoID[0] }));
     }
     catch (Exception ex)
     {
         ViewBag.Exception = ex;
     }
     return(View("Error"));
 }
Esempio n. 2
0
        public ActionResult CreateMemoPRO(MemoViewModel memoViewModel)
        {
            var username = User.Identity.Name;
            List <Services.NewMemoServices> memo = (List <Services.NewMemoServices>)Session["newMemo"];
            int productID       = memo[0].SelectedProduct;
            var selectedPROList = db.Pros.Where(x => x.ProductID == productID).ToList();
            var viewModel       = new MemoViewModel
            {
                PROCollections = selectedPROList
            };

            try
            {
                List <MemoPRO> listOfMemoPRO = new List <MemoPRO>();

                foreach (var pro in memoViewModel.selectedProID)
                {
                    var currentPRO = db.Pros.Find(pro);
                    var newMemoPRO = new MemoPRO
                    {
                        PROID  = pro,
                        Number = currentPRO.Number
                    };
                    listOfMemoPRO.Add(newMemoPRO);
                }
                memo[0].ListOfMemoPROs = listOfMemoPRO;
                Session["newMemo"]     = memo;
                return(View(viewModel));
            }
            catch (Exception ex)
            {
                ViewBag.Exception = ex;
            }
            return(View(viewModel));
        }
Esempio n. 3
0
 /// <summary>
 /// Berfungsi untuk mengubah quantity dari pro pada saat pro baru di input oleh user ketika user ingin create memo baru
 /// </summary>
 /// <param name="memoPRO">Sebuah object dari memo pro</param>
 /// <returns>Quantity berhasil ditambahkan</returns>
 public ActionResult EditMemoPRO(MemoPRO memoPRO)
 {
     try
     {
         var memoPROData = db.MemoPROes.Find(memoPRO.ID);
         if (memoPRO.Quantity > memoPROData.PRO.Quantity)
         {
             return(Json(new { success = false, responseText = "Update quantity failed. Quantity that inserted is higher than PRO quantity" }, JsonRequestBehavior.AllowGet));
         }
         else
         {
             memoPROData.Quantity = memoPRO.Quantity;
             db.SaveChanges();
             return(Json(new { success = true, responseText = "Quantity successfully updated" }, JsonRequestBehavior.AllowGet));
         }
     }
     catch (Exception ex)
     {
         ViewBag.Exception = ex;
     }
     return(View("Error"));
 }
Esempio n. 4
0
        /// <summary>
        /// Berfungsi untuk menambahkan memo baru ke dalam database
        /// </summary>
        /// <param name="memoViewModel">Sebuah object dari memo view model</param>
        /// <returns>Ketika memo berhasil ditambahkan, maka web akan meredirect ke halaman detail</returns>
        public ActionResult SaveMemo(MemoViewModel memoViewModel)
        {
            List <Services.NewMemoServices> memo = (List <Services.NewMemoServices>)Session["newMemo"];
            var currentMemo          = memo[0].Memo;
            var currentListOfMemoPRO = memo[0].ListOfMemoPROs;

            try
            {
                var username = User.Identity.Name;
                var newMemo  = new Memo
                {
                    Description    = currentMemo.Description,
                    MemoTypeID     = currentMemo.MemoTypeID,
                    ProductID      = currentMemo.ProductID,
                    Created        = DateTime.Now,
                    CreatedBy      = username,
                    LastModified   = DateTime.Now,
                    LastModifiedBy = username
                };
                db.Memos.Add(newMemo);
                db.SaveChanges();
                var newMemoID = newMemo.ID;

                foreach (var memoPro in currentListOfMemoPRO)
                {
                    var newMemoPRO = new MemoPRO
                    {
                        MemoID         = newMemoID,
                        PROID          = memoPro.PROID,
                        Quantity       = memoPro.Quantity,
                        Created        = DateTime.Now,
                        CreatedBy      = username,
                        LastModified   = DateTime.Now,
                        LastModifiedBy = username
                    };
                    db.MemoPROes.Add(newMemoPRO);
                }
                db.SaveChanges();
                var selectedComponent = memoViewModel.SelectedComponent;

                foreach (int componentID in memoViewModel.SelectedComponent)
                {
                    var newMemoComponent = new MemoComponent
                    {
                        MemoID         = newMemoID,
                        ComponentID    = componentID,
                        Created        = DateTime.Now,
                        CreatedBy      = username,
                        LastModified   = DateTime.Now,
                        LastModifiedBy = username
                    };
                    db.MemoComponents.Add(newMemoComponent);
                }
                db.SaveChanges();
                Session.Remove("newMemo");
                return(RedirectToAction("Details", "Memo", new { id = newMemoID }));
            }
            catch (Exception ex)
            {
                ViewBag.Exception = ex;
            }
            return(View("Error"));
        }