public ActionResult InwardFromTailor(MainApplication mainapp, FormCollection frmcol) { MainApplication model = new MainApplication(); string year = FinancialYear; string[] yr = year.Split(' ', '-'); string FinYr = "/" + yr[2].Substring(2) + "-" + yr[6].Substring(2); string InwardCode = string.Empty; var details = _InwardFromTailorService.GetLastRowrByFinYr(FinYr); int val = 0; int length = 0; if (details != null) { InwardCode = details.InwardCode.Substring(4, 6); length = (Convert.ToInt32(InwardCode) + 1).ToString().Length; val = Convert.ToInt32(InwardCode) + 1; val = details.Id; val = val + 1; length = val.ToString().Length; } else { val = 1; length = 1; } InwardCode = _UtilityService.getName("IWFT", length, val); InwardCode = InwardCode + FinYr; mainapp.InwardFromTailorDetails.InwardCode = InwardCode; var data = _OutwardToTailorService.GetDetailsByCode(mainapp.InwardFromTailorDetails.OutwardToTailorCode); if (data != null) { mainapp.InwardFromTailorDetails.OutwardToTailorCode = data.OutwardCode; mainapp.InwardFromTailorDetails.Date = DateTime.Now; mainapp.InwardFromTailorDetails.TailorName = data.TailorName; mainapp.InwardFromTailorDetails.TailorAddress = data.TailorAddress; mainapp.InwardFromTailorDetails.TailorContact = data.TailorContact; mainapp.InwardFromTailorDetails.TailorEmail = data.TailorEmail; mainapp.InwardFromTailorDetails.ClientName = data.ClientName; mainapp.InwardFromTailorDetails.ClientAddress = data.ClientAddress; mainapp.InwardFromTailorDetails.ClientContact = data.ClientContact; mainapp.InwardFromTailorDetails.ClientEmail = data.ClientEmail; mainapp.InwardFromTailorDetails.RetailBills = data.RetailBills; mainapp.InwardFromTailorDetails.SalesBills = data.SalesBills; mainapp.InwardFromTailorDetails.GrandTotal = data.GrandTotal; mainapp.InwardFromTailorDetails.Payment = data.AdvancePayment; mainapp.InwardFromTailorDetails.JobWorkStatus = frmcol["InwardType"]; //save balance after tailor paid amount if (frmcol["InwardType"] == "SentToClient") { mainapp.InwardFromTailorDetails.Balance = Convert.ToDouble(frmcol["BalanceValAfterTailorAmt"]); } else { mainapp.InwardFromTailorDetails.Balance = data.Balance; } mainapp.InwardFromTailorDetails.Status = "Active"; mainapp.InwardFromTailorDetails.ModifiedOn = DateTime.Now; var username = HttpContext.Session["UserName"].ToString(); //IF EXCEPT SUPERADMIN LOGIN THEN SHOW SHOP OR GODOWN if (username != "SuperAdmin") { mainapp.InwardFromTailorDetails.ShopCode = Session["LOGINSHOPGODOWNCODE"].ToString(); mainapp.InwardFromTailorDetails.ShopName = Session["SHOPGODOWNNAME"].ToString(); } else { mainapp.InwardFromTailorDetails.ShopCode = "SuperAdmin"; mainapp.InwardFromTailorDetails.ShopName = "SuperAdmin"; } _InwardFromTailorService.Create(mainapp.InwardFromTailorDetails); } if (frmcol["InwardType"] == "InwardToShop") { int count = Convert.ToInt32(frmcol["hdnRowCount"]); for (int i = 1; i <= count; i++) { string item = "Item" + i; string narration = "Narration" + i; string quantity = "Quantity" + i; if (frmcol[quantity] != null) { //save inward from tailor items.. mainapp.InwardFromTailorItemDetails = new InwardFromTailorItem(); mainapp.InwardFromTailorItemDetails.InwardCode = mainapp.InwardFromTailorDetails.InwardCode; mainapp.InwardFromTailorItemDetails.Item = frmcol[item]; mainapp.InwardFromTailorItemDetails.Narration = frmcol[narration]; mainapp.InwardFromTailorItemDetails.Quantity = Convert.ToDouble(frmcol[quantity]); mainapp.InwardFromTailorItemDetails.Status = "Active"; mainapp.InwardFromTailorItemDetails.ModifiedOn = DateTime.Now; _InwardFromTailorItemService.Create(mainapp.InwardFromTailorItemDetails); //save job work stock items.. mainapp.JobWorkStockDetails = new JobWorkStock(); mainapp.JobWorkStockDetails.StockDate = DateTime.Now; mainapp.JobWorkStockDetails.InwardCode = mainapp.InwardFromTailorDetails.InwardCode; mainapp.JobWorkStockDetails.OutwardCode = mainapp.InwardFromTailorDetails.OutwardToTailorCode; mainapp.JobWorkStockDetails.ItemName = frmcol[item]; mainapp.JobWorkStockDetails.Quantity = Convert.ToDouble(frmcol[quantity]); mainapp.JobWorkStockDetails.Narration = frmcol[narration]; mainapp.JobWorkStockDetails.Status = "Active"; mainapp.JobWorkStockDetails.ModifiedOn = DateTime.Now; var username = HttpContext.Session["UserName"].ToString(); //IF EXCEPT SUPERADMIN LOGIN THEN SHOW SHOP OR GODOWN if (username != "SuperAdmin") { mainapp.JobWorkStockDetails.ShopCode = Session["LOGINSHOPGODOWNCODE"].ToString(); mainapp.JobWorkStockDetails.ShopName = Session["SHOPGODOWNNAME"].ToString(); } else { mainapp.JobWorkStockDetails.ShopCode = "SuperAdmin"; mainapp.JobWorkStockDetails.ShopName = "SuperAdmin"; } _JobWorkStockService.Create(mainapp.JobWorkStockDetails); } } } //UPDATE OUTWARD TO TAILOR AFTER INWARD var outwardtotailordetails = _OutwardToTailorService.GetDetailsByCode(mainapp.InwardFromTailorDetails.OutwardToTailorCode); outwardtotailordetails.InwardStatus = "InActive"; if (frmcol["InwardType"] == "SentToClient") { //outwardtotailordetails.AdvancePayment = outwardtotailordetails.AdvancePayment + mainapp.InwardFromTailorDetails.PaidAmountToTailor; outwardtotailordetails.PaidAmountToTailor = mainapp.InwardFromTailorDetails.PaidAmountToTailor; outwardtotailordetails.Balance = mainapp.InwardFromTailorDetails.Balance; if (outwardtotailordetails.Balance == 0) { outwardtotailordetails.Status = "InActive"; } } _OutwardToTailorService.Update(outwardtotailordetails); var outwardtotailoritems = _OutwardToTailorItemService.GetRowsByCode(mainapp.InwardFromTailorDetails.OutwardToTailorCode); foreach (var item in outwardtotailoritems) { item.InwardStatus = "InActive"; _OutwardToTailorItemService.Update(item); } return(RedirectToAction("InwardFromTailor")); }