public ActionResult PrintTag(LotAttributeModel lotAttributeModel) { if (Session["User"] == null) { return(RedirectToAction("Login", "Home")); } POHeaderModel entity = (POHeaderModel)Session["ModifiedPOHeaderModel"]; entity.PODetails.ForEach(s => s.LotAttribute = lotAttributeModel); Session["ModifiedPOHeaderModel"] = entity; //TempData.Keep("ModifiedPOHeaderModel"); ViewBag.Uom = entity.PODetails.Select(s => s.UomCode).FirstOrDefault <string>(); ViewBag.UserQty = entity.PODetails.Select(s => s.Qty).FirstOrDefault <decimal>(); PrintTagModel objPrintTag = new PrintTagModel(); if (!entity.CartonLabel) { return(RedirectToAction("ManualUpdate", objPrintTag)); } objPrintTag.Id = lotAttributeModel.Id; objPrintTag.Company = lotAttributeModel.Company; objPrintTag.PONum = lotAttributeModel.PONum; objPrintTag.POLine = lotAttributeModel.POLine; objPrintTag.DONum = lotAttributeModel.DONum; objPrintTag.PartNum = lotAttributeModel.PartNum; objPrintTag.LotNum = lotAttributeModel.LotNum; return(View(objPrintTag)); }
public ActionResult LotAttribute(PODetailModel obj) { if (Session["User"] == null || obj == null) { return(RedirectToAction("Login", "Home")); } //Session["XOrderQty"] = obj.XOrdQty; //bring XOrder Calc to Print Tag Page Session["LotNum"] = obj.LotNum; //if (TempData["ModifiedPODetailModel"] == obj) { //} POHeaderModel entity = (POHeaderModel)Session["POHeaderModel"]; //This is for LotAttribute only PODetailModel objPODtl = new PODetailModel(); objPODtl = entity.PODetails.Where(w => w.POLine == obj.POLine).SingleOrDefault(); Session["LotNum"] = objPODtl.LotNum; Session["PartNum"] = objPODtl.PartNum; //entity.PODetails = new List<PODetailModel>(); //entity.PODetails.Add(obj ); entity.PODetails.Where(w => w.POLine == obj.POLine).ToList().ForEach(s => s.TuId = obj.TuId); entity.PODetails.Where(w => w.POLine == obj.POLine).ToList().ForEach(s => s.LotNum = obj.LotNum); entity.PODetails.Where(w => w.POLine == obj.POLine).ToList().ForEach(s => s.Qty = obj.Qty); entity.PODetails.Where(w => w.POLine == obj.POLine).ToList().ForEach(s => s.TuConv = obj.TuConv); Session["ModifiedPOHeaderModel"] = entity; //TempData.Keep("ModifiedPOHeaderModel"); //Lot Validation (is it exist in PartLot table or not) string Qry = $"LotNumValidation?Company={obj.Company}&PartNum={obj.PartNum}&LotNum={obj.LotNum}"; HttpResponseMessage response = GlobalVariables.WebApiClient.GetAsync(Qry).Result; bool isLotExist = response.Content.ReadAsAsync <bool>().Result; //AMIN - Check Lot Attribute M or T or else LotAttributeModel tempLotAtt = obj.LotAttribute; bool isNullAtt = false; if ((tempLotAtt.AttBatch == null && tempLotAtt.AttMfgBatch == null && tempLotAtt.AttMfgLot == null && tempLotAtt.AttHeat == null && tempLotAtt.AttFirmware == null && tempLotAtt.AttBeforeDt == null && tempLotAtt.AttMfgDt == null && tempLotAtt.AttCureDt == null && tempLotAtt.AttExpDt == null) || (tempLotAtt.AttBatch == "N" && tempLotAtt.AttMfgBatch == "N" && tempLotAtt.AttMfgLot == "N" && tempLotAtt.AttHeat == "N" && tempLotAtt.AttFirmware == "N" && tempLotAtt.AttBeforeDt == "N" && tempLotAtt.AttMfgDt == "N" && tempLotAtt.AttCureDt == "N" && tempLotAtt.AttExpDt == "N")) { isNullAtt = true; } else { isNullAtt = false; } //test data //objPODtl.TrackLot = true; //isLotExist = false; //isNullAtt = false; //tempLotAtt.AttBeforeDt = "M"; //tempLotAtt.AttMfgDt = "M"; //tempLotAtt.AttCureDt = "M"; //tempLotAtt.AttExpDt = "M"; //if (objPODtl!=null && objPODtl.TrackLot && !isLotExist) if (objPODtl != null && objPODtl.TrackLot && !isLotExist && !isNullAtt) { //LotNum Validation fails then open LotAttribute Page LotAttributeModel objLotAttribute = obj.LotAttribute == null ? objPODtl.LotAttribute : obj.LotAttribute; objLotAttribute.LotNum = obj.LotNum; objLotAttribute.DONum = obj.DONum; objLotAttribute.LotShelfLife = obj.LotShelfLife; return(View(objLotAttribute)); } else { //LotNum Validation sucess then open PrintTag Page PrintTagModel objPrintTag = new PrintTagModel(); //if Carton label tick true then prompt the printtag page if (!entity.CartonLabel) { return(RedirectToAction("ManualUpdate", objPrintTag)); } objPrintTag.Id = obj.Id; objPrintTag.Company = obj.Company; objPrintTag.PONum = obj.PONum; objPrintTag.POLine = obj.POLine; objPrintTag.DONum = obj.DONum; objPrintTag.PartNum = obj.PartNum; objPrintTag.LotNum = obj.LotNum; ViewBag.Uom = entity.PODetails.Select(s => s.UomCode).FirstOrDefault <string>(); ViewBag.UserQty = entity.PODetails.Select(s => s.Qty).FirstOrDefault <decimal>(); return(RedirectToAction("PrintTag", objPrintTag)); //return View("PrintTag", objPrintTag); } }