public ActionResult UpdateStocks(int ID, long Amount, string StockType) { M_Stocks stocks = new M_Stocks(); M_Item item = new M_Item(); item = (from c in db.M_Item where c.ID == ID select c).FirstOrDefault(); if (StockType == "Deduct" && Amount > item.CurrentStock) { return(Json(new { msg = "Failed" }, JsonRequestBehavior.AllowGet)); } else { switch (StockType) { case "Add": stocks.ItemID = ID; stocks.StockQty = Amount; stocks.UpdateDate = DateTime.Now; stocks.UpdateID = user.UserName; stocks.StockType = "In"; stocks.Price = item.Price; db.M_Stocks.Add(stocks); item.CurrentStock += Amount; db.Entry(item).State = EntityState.Modified; db.SaveChanges(); break; case "Deduct": stocks.ItemID = ID; stocks.StockQty = Amount; stocks.UpdateDate = DateTime.Now; stocks.UpdateID = user.UserName; stocks.Price = item.Price; stocks.StockType = "Out"; db.M_Stocks.Add(stocks); item.CurrentStock -= Amount; db.Entry(item).State = EntityState.Modified; db.SaveChanges(); break; } return(Json(new { msg = "Success" }, JsonRequestBehavior.AllowGet)); } }
public ActionResult CreateItem(M_Item data) { try { data.CreateID = user.CreateID; data.CreateDate = DateTime.Now; data.UpdateID = user.CreateID; data.UpdateDate = DateTime.Now; data.IsDeleted = false; data.CurrentStock = 0; M_Item checker = (from c in db.M_Item where c.ItemName == data.ItemName && c.ItemCategory == data.ItemCategory && c.Price == data.Price && c.RetailPrice == data.RetailPrice && c.IsDeleted == false select c).FirstOrDefault(); if (checker == null) { db.M_Item.Add(data); db.SaveChanges(); M_Stocks initialStock = new M_Stocks(); initialStock.ItemID = (from c in db.M_Item orderby c.ID descending select c.ID).FirstOrDefault(); initialStock.StockQty = 0; initialStock.StockType = "Initial"; initialStock.UpdateID = user.UserName; initialStock.UpdateDate = DateTime.Now; db.M_Stocks.Add(initialStock); db.SaveChanges(); long CurrentID = (from c in db.M_Item orderby c.ID select c.ID).FirstOrDefault(); return(Json(new { msg = "Success", itemID = CurrentID }, JsonRequestBehavior.AllowGet)); } else { return(Json(new { msg = "Failed" }, JsonRequestBehavior.AllowGet)); } } catch (Exception err) { return(Json(new { msg = err.Message }, JsonRequestBehavior.AllowGet)); } }
public ActionResult GetReceipt(List <POS_Receipt> receiptlist) { string ReceiptRefNo = "REFNO" + DateTime.Now.ToString("yyyyMMddHHmmss"); foreach (POS_Receipt s in receiptlist) { s.ReceiptRefNo = ReceiptRefNo; s.CreateID = "POS"; s.CreateDate = DateTime.Now; db.POS_Receipt.Add(s); db.SaveChanges(); } List <POS_Receipt> ItemList = new List <POS_Receipt>(); ItemList = receiptlist.Where(x => x.Type == "Item").ToList(); foreach (POS_Receipt s in ItemList) { M_Item item = new M_Item(); item = (from c in db.M_Item where c.ID == s.ItemID select c).FirstOrDefault(); item.CurrentStock -= s.Amount; db.Entry(item).State = EntityState.Modified; M_Stocks stock = new M_Stocks(); stock.ItemID = s.ID; stock.StockType = "Out"; stock.StockQty = s.Amount; stock.Remarks = string.Empty; stock.Price = item.Price; stock.UpdateID = "POS"; stock.UpdateDate = DateTime.Now; db.M_Stocks.Add(stock); db.SaveChanges(); } return(Json(new { }, JsonRequestBehavior.AllowGet)); }