public ActionResult ManageIssue(int?id) { var rec = base.BaseCreateEdit <SiteTransasction>(id, "SiteTransID"); //Since UserID and QtyRemoved is [required] we have to set it beofre loading the form if (rec == null) //We are in create mode { rec = new SiteTransasction { UserID = User.Identity.GetUserId(), QtyAdded = 0 }; ViewBag.OriginalQty = 0; ViewBag.ClientID = new SelectList(db.Fetch <Client>("Select ClientID,ClientName from Client"), "ClientID", "ClientName"); } else { //In edit mode We need to fetch the name values of the autocomplete boxes ViewBag.FromSiteName = db.SingleOrDefault <string>("Select SiteName from Sites where SiteID = @0", rec.SiteID); ViewBag.ItemName = db.SingleOrDefault <string>("Select ItemName from Item where ItemID = @0", rec.ItemID); ViewBag.ClientName = db.SingleOrDefault <string>("Select ClientName from Client where ClientID = @0", rec.ClientID); ViewBag.OriginalQty = rec.QtyRemoved; } return(View(rec)); }
public ActionResult SetConfirmTransfer(int id) { SiteTransasction siteTransaction = db.SingleOrDefault <SiteTransasction>("select * from SiteTransasction where SiteTransID =@0", id); siteTransaction.TransfConfUserID = User.Identity.GetUserId(); base.BaseSave <SiteTransasction>(siteTransaction, true); return(RedirectToAction("ConfirmTransfer", new { page = 1 })); }
public ActionResult ManageTransfer([Bind(Include = "SiteTransID,UserID,Tdate,SiteID,ItemID,QtyAdded,QtyRemoved,ToSiteID,Remarks")] SiteTransasction siteTransaction, int OriginalQty) { siteTransaction.Tdate = DateTime.Now; var getStock = db.FirstOrDefault <SiteCurrentStock>("Select SiteStockID,Qty From SiteCurrentStock Where SiteID=@0 and ItemID =@1", siteTransaction.SiteID, siteTransaction.ItemID); var TransferStock = db.FirstOrDefault <SiteCurrentStock>("Select SiteStockID,Qty From SiteCurrentStock Where SiteID=@0 and ItemID =@1", siteTransaction.ToSiteID, siteTransaction.ItemID); using (var transaction = db.GetTransaction()) { try { if (getStock != null) { if (siteTransaction.SiteTransID > 0) { db.Update("SiteCurrentStock", "SiteStockID", new { Qty = getStock.Qty + OriginalQty - siteTransaction.QtyRemoved }, getStock.SiteStockID); } else { db.Update("SiteCurrentStock", "SiteStockID", new { Qty = getStock.Qty - siteTransaction.QtyRemoved }, getStock.SiteStockID); } if (TransferStock != null) { if (siteTransaction.SiteTransID > 0) { db.Update("SiteCurrentStock", "SiteStockID", new { Qty = TransferStock.Qty - OriginalQty + siteTransaction.QtyRemoved }, TransferStock.SiteStockID); } else { db.Update("SiteCurrentStock", "SiteStockID", new { Qty = TransferStock.Qty + siteTransaction.QtyRemoved }, TransferStock.SiteStockID); } } else { var item = new SiteCurrentStock { SiteID = siteTransaction.ToSiteID, ItemID = siteTransaction.ItemID, Qty = siteTransaction.QtyRemoved }; db.Save(item); } base.BaseSave <SiteTransasction>(siteTransaction, siteTransaction.SiteTransID > 0); transaction.Complete(); } } catch (Exception ex) { db.AbortTransaction(); throw ex; } } return(RedirectToAction("ManageTransfer")); }
public ActionResult Manage([Bind(Include = "SiteTransID,UserID,Tdate,SiteID,SupplierID,Path,UploadedFile,ItemID,Price,QtyAdded,Remarks,QtyRemoved")] ChallanImg siteTransaction, int OriginalQty) { siteTransaction.Tdate = DateTime.Now; var currentStock = db.SingleOrDefault <SiteCurrentStock>("select * from SiteCurrentStock where SiteID = @0 and ItemID= @1", siteTransaction.SiteID, siteTransaction.ItemID); using (var transaction = db.GetTransaction()) { try { //on 14 Nov 2017 stanley said suppliers would make their own bills, hence the below was commented out //var sup = db.FirstOrDefault<SupplierBill>("Select SBillID,SupplierID from SupplierBill Where SupplierID = @0", siteTransaction.SupplierID); //var getSupBill = db.FirstOrDefault<SupplierBillDetail>("Select SBillDetailID,SBillID,ItemID,Qty,UnitPrice,QtyRec from SupplierBillDetail Where ItemID= @0 and SBillID = @1", siteTransaction.ItemID, sup.SBillID); //if (siteTransaction.SiteTransID>0) //{ // if (getSupBill != null) // { // db.Update("SupplierBillDetail", "SBillDetailID", new { QtyRec = siteTransaction.QtyAdded + getSupBill.QtyRec - OriginalQty }, getSupBill.SBillDetailID); // siteTransaction.SBillDetailID = getSupBill.SBillDetailID; // } //} //else //{ // if (getSupBill != null) // { // if (getSupBill.Qty != getSupBill.QtyRec) // { // db.Update("SupplierBillDetail", "SBillDetailID", new { QtyRec =siteTransaction.QtyAdded+getSupBill.QtyRec}, getSupBill.SBillDetailID); // } // siteTransaction.SBillDetailID = getSupBill.SBillDetailID; // } //} if (currentStock == null) //this is the first purchase of the item at thissite { // var getSupBill = db.FirstOrDefault<SupplierBillDetail>("SBillDetailID,SBillID,ItemID,Qty,UnitPrice,QtyRec","Supplier as sp inner join SupplierBillDetail as sbd on sp.SBillID = sbd.SBillID where Supplier Where ItemID= @0 and SupplierID=@0",siteTransaction.ItemID,siteTransaction.SupplierID); var item = new SiteCurrentStock { SiteID = siteTransaction.SiteID, ItemID = siteTransaction.ItemID, Qty = siteTransaction.QtyAdded }; db.Save(item); } else { if (siteTransaction.SiteTransID > 0) //Edit mode { db.Update("SiteCurrentStock", "SiteStockID", new { Qty = currentStock.Qty - OriginalQty + siteTransaction.QtyAdded }, currentStock.SiteStockID); } else { db.Update("SiteCurrentStock", "SiteStockID", new { Qty = currentStock.Qty + siteTransaction.QtyAdded }, currentStock.SiteStockID); } } SiteTransasction res = new SiteTransasction { ItemID = siteTransaction.ItemID, Price = siteTransaction.Price, QtyAdded = siteTransaction.QtyAdded, QtyRemoved = siteTransaction.QtyRemoved, Remarks = siteTransaction.Remarks, SiteID = siteTransaction.SiteID, SiteTransID = siteTransaction.SiteTransID, SupplierID = siteTransaction.SupplierID, Tdate = siteTransaction.Tdate, UserID = siteTransaction.UserID }; if (siteTransaction.UploadedFile != null) { string fn = siteTransaction.UploadedFile.FileName.Substring(siteTransaction.UploadedFile.FileName.LastIndexOf('\\') + 1); fn = siteTransaction.SiteID + "_" + fn; string SavePath = System.IO.Path.Combine(Server.MapPath("~/Images"), fn); siteTransaction.UploadedFile.SaveAs(SavePath); //System.Drawing.Bitmap upimg = new System.Drawing.Bitmap(siteTransaction.UploadedFile.InputStream); //System.Drawing.Bitmap svimg = MyExtensions.CropUnwantedBackground(upimg); //svimg.Save(System.IO.Path.Combine(Server.MapPath("~/Images"), fn)); res.path = fn; } else { res.path = siteTransaction.path; } base.BaseSave <SiteTransasction>(res, siteTransaction.SiteTransID > 0); transaction.Complete(); return(RedirectToAction("Index")); } catch (Exception ex) { db.AbortTransaction(); throw ex; } } }