//id=productdetailid public ActionResult CreatePrePackStock(int id) { var pd = db.tblProductDetail.Find(id); var pm = db.tblProductMaster.Find(pd.ProductMasterID); var cl = db.tblClient.Find(pm.ClientID); PrePackStock vm = new PrePackStock(); vm.ProductDetailID = id; vm.BulkContainer = new BulkContainerViewModel(); vm.BulkContainer.logofilename = cl.LogoFileName; vm.BulkContainer.bulkid = -1; vm.BulkContainer.receivedate = System.DateTime.Now; vm.BulkContainer.warehouse = cl.CMCLocation; vm.BulkContainer.lotnumber = "lotnumber"; vm.BulkContainer.mfgdate = System.DateTime.Now; vm.BulkContainer.clientid = pm.ClientID; vm.BulkContainer.productmasterid = pm.ProductMasterID; vm.BulkContainer.bulkstatus = "AVAIL"; vm.ProductCode = pd.ProductCode; vm.ProductName = pd.ProductName; vm.BulkContainer.bin = "PREPACK"; vm.ListOfShelfMasterIDs = (from t in db.tblShelfMaster where t.ProductDetailID == id && t.Discontinued == false select new ShelfMasterViewModel { shelfid = t.ShelfID, productdetailid = t.ProductDetailID, bin = t.Bin, size = t.Size }).ToList(); vm.ShelfMasterCount = vm.ListOfShelfMasterIDs.Count(); return View("~/Views/Inventory/PrePackStock.cshtml", vm); }
public static void fnSavePrePackStock(PrePackStock vm, FormCollection fc) { using (var db = new CMCSQL03Entities()) { // for each sm, insert tblStock vm.BulkContainer.bulkid = fnNewBulkID(); var dbBulk = db.tblBulk.Find(vm.BulkContainer.bulkid); var dbPD = db.tblProductDetail.Find(vm.ProductDetailID); dbBulk.ProductMasterID = dbPD.ProductMasterID; dbBulk.Qty = 1; dbBulk.ReceiveDate = vm.BulkContainer.receivedate; dbBulk.LotNumber = vm.BulkContainer.lotnumber; dbBulk.MfgDate = vm.BulkContainer.mfgdate; dbBulk.ExpirationDate = vm.BulkContainer.expirationdate; dbBulk.CeaseShipDate = vm.BulkContainer.ceaseshipdate; dbBulk.QCDate = vm.BulkContainer.qcdate; dbBulk.BulkStatus = vm.BulkContainer.bulkstatus; dbBulk.Bin = vm.BulkContainer.bin; dbBulk.Warehouse = vm.BulkContainer.warehouse; dbBulk.CreateDate = System.DateTime.Now; dbBulk.CreateUser = System.Web.HttpContext.Current.User.Identity.Name; dbBulk.ReceiveWeight = 0; dbBulk.CurrentWeight = 0; for (int i = 1; i <= vm.ShelfMasterCount; i++) { // this will always have a value string sThisShelfID = fc["Key" + i.ToString()]; Int32 ThisShelfID = Convert.ToInt32(sThisShelfID); string sThisQty = fc["Value" + i.ToString()]; if (!String.IsNullOrEmpty(sThisQty)) { Int32 ThisQty = Convert.ToInt32(sThisQty); var newstock = new EF.tblStock(); newstock.ShelfID = ThisShelfID; newstock.BulkID = vm.BulkContainer.bulkid; newstock.Warehouse = vm.BulkContainer.warehouse; newstock.QtyOnHand = ThisQty; var sm = (from t in db.tblShelfMaster where t.ShelfID == ThisShelfID select t).FirstOrDefault(); // needed for default bin dbBulk.ReceiveWeight = dbBulk.ReceiveWeight + (ThisQty * sm.UnitWeight); newstock.Bin = sm.Bin; newstock.ShelfStatus = "AVAIL"; newstock.CreateDate = DateTime.Now; newstock.CreateUser = HttpContext.Current.User.Identity.Name; db.tblStock.Add(newstock); db.SaveChanges(); } } } }
public ActionResult SavePrePackStock(PrePackStock vm, FormCollection fc) { Services.InventoryService.fnSavePrePackStock(vm, fc); return RedirectToAction("Edit", new { id = vm.ProductDetailID }); }