public ActionResult CalculateStorageInfo(AnnualCoefficientEntitlementViewModelList bonderannualentitlementedt, int?UnitTS, int?UnitOT, int?UnitET)
        {
            try
            {
                List <ANNUALENTLRAWMATERIAL> annualentlrawmaterial = db.ANNUALENTLRAWMATERIALs.Where(x => x.AESLNO == bonderannualentitlementedt.BonderAnnualEntitlement.AESLNO && x.BONDERSLNO == bonderannualentitlementedt.BonderAnnualEntitlement.BONDERSLNO).ToList();

                decimal totalentitlement       = 0;
                decimal entitlementepercentage = 0;
                decimal percentage             = 100;
                if (bonderannualentitlementedt.BonderAnnualEntitlement.PERCENTVAL != null)
                {
                    percentage = (Int64)bonderannualentitlementedt.BonderAnnualEntitlement.PERCENTVAL;
                }



                foreach (var ae in annualentlrawmaterial)
                {
                    totalentitlement = totalentitlement + (Int64)ae.AEQTY;
                }

                entitlementepercentage = percentage / 100 * totalentitlement;


                BONDERANNUALENTITLEMENT bonderannualentitlement = new BONDERANNUALENTITLEMENT();

                bonderannualentitlement.AESLNO     = bonderannualentitlementedt.BonderAnnualEntitlement.AESLNO;
                bonderannualentitlement.BONDERSLNO = bonderannualentitlementedt.BonderAnnualEntitlement.BONDERSLNO;


                bonderannualentitlement.TOTALSTORAGEQTY   = totalentitlement;
                bonderannualentitlement.TSMUSLNO          = (Int16)UnitTS;
                bonderannualentitlement.TOTALSTORAGEQTYEN = bonderannualentitlementedt.BonderAnnualEntitlement.TOTALSTORAGEQTYEN;

                bonderannualentitlement.ONETIMESTORAGEQTY   = bonderannualentitlementedt.BonderAnnualEntitlement.ONETIMESTORAGEQTY;
                bonderannualentitlement.OTMUSLNO            = (Int16)UnitOT;
                bonderannualentitlement.ONETIMESTORAGEQTYEN = bonderannualentitlementedt.BonderAnnualEntitlement.ONETIMESTORAGEQTYEN;

                bonderannualentitlement.ENTITLEPERCENTQTY = (Int32)entitlementepercentage;
                bonderannualentitlement.ETMUSLNO          = (Int16)UnitET;
                bonderannualentitlement.ENTITLEPERCENTEN  = bonderannualentitlementedt.BonderAnnualEntitlement.ENTITLEPERCENTEN;

                bonderannualentitlement.PERCENTVAL = bonderannualentitlementedt.BonderAnnualEntitlement.PERCENTVAL;

                bonderannualentitlement.ENTITLEFROM = bonderannualentitlementedt.BonderAnnualEntitlement.ENTITLEFROM;
                bonderannualentitlement.ENTITLETO   = bonderannualentitlementedt.BonderAnnualEntitlement.ENTITLETO;

                db.Entry(bonderannualentitlement).State = EntityState.Modified;
                db.SaveChanges();


                return(RedirectToAction("EntitlementDetails", new { id = bonderannualentitlementedt.BonderAnnualEntitlement.AESLNO }));
            }


            catch (Exception e)
            {
                return(RedirectToAction("EntitlementDetails", new { id = bonderannualentitlementedt.BonderAnnualEntitlement.AESLNO }));
            }
        }
        //--------------------------------------Mizan Work (25 Oct 16)-------------------------------------------
        public ActionResult EntitlementDetails(int?id, int bonderSlNo)
        {
            AnnualCoefficientEntitlementViewModelList annualcoefficiententitlementviewmodellst = new AnnualCoefficientEntitlementViewModelList();

            annualcoefficiententitlementviewmodellst.BonderAnnualEntitlement = db.BONDERANNUALENTITLEMENTs.Where(x => x.AESLNO == id).SingleOrDefault();
            //annualcoefficiententitlementviewmodellst.AnnualEntitlementRawMaterials = db.ANNUALENTLRAWMATERIALs.Where(x => x.AESLNO == id).ToList();
            annualcoefficiententitlementviewmodellst.AnnualEntitlementRawMaterials = db.ANNUALENTLRAWMATERIALs.Where(x => x.BONDERSLNO == bonderSlNo).ToList();
            annualcoefficiententitlementviewmodellst.BonderAnnualEntitlementCoMs   = db.BONDERANNUALENTITLEMENTCOMs.Where(x => x.BONDERSLNO == bonderSlNo).ToList();
            //annualcoefficiententitlementviewmodellst.BonderannualEntitlementCoEDets = db.BONDERANNUALENTITLEMENTCOEDETs.Where(x => x.AESLNO == id).ToList();

            var List = (from r in db.BONDERANNUALENTITLEMENTCOEDETs
                        where r.AESLNO == id
                        select new
            {
                rawslno = r.RMSLNO,


                mslno = r.MSLNO
            }).ToList();

            List <BONDERANNUALENTITLEMENTCOEDET> rawdetlist = new List <BONDERANNUALENTITLEMENTCOEDET>();

            foreach (var item in List)
            {
                rawdetlist.Add(

                    new BONDERANNUALENTITLEMENTCOEDET

                {
                    MSLNO   = item.mslno,
                    INPUTBY = (from t2 in db.MATERIALS where t2.MSLNO == item.rawslno select t2.MDESCRIPTION).FirstOrDefault().ToString(),
                }

                    );
            }

            annualcoefficiententitlementviewmodellst.BonderannualEntitlementCoEDets = rawdetlist;

            ViewBag.Rawmaterilas = new SelectList(db.MATERIALS.Where(r => r.MTYPE == "r"), "MSLNO", "MHSCODE");
            ViewBag.Products     = new SelectList(db.MATERIALS.Where(p => p.MTYPE == "F"), "MSLNO", "MHSCODE");
            ViewBag.Unit         = new SelectList(db.MEASUREMENTUNITs, "MUSLNO", "MUNAME");
            ViewBag.UnitTS       = new SelectList(db.MEASUREMENTUNITs, "MUSLNO", "MUNAME", annualcoefficiententitlementviewmodellst.BonderAnnualEntitlement.TSMUSLNO);
            ViewBag.UnitOT       = new SelectList(db.MEASUREMENTUNITs, "MUSLNO", "MUNAME", annualcoefficiententitlementviewmodellst.BonderAnnualEntitlement.OTMUSLNO);
            ViewBag.UnitET       = new SelectList(db.MEASUREMENTUNITs, "MUSLNO", "MUNAME", annualcoefficiententitlementviewmodellst.BonderAnnualEntitlement.ETMUSLNO);
            ViewBag.MachineList  = new SelectList(db.MACHINEINFORMATIONs, "MACHINESLNO", "MODELNM");

            return(View(annualcoefficiententitlementviewmodellst));
        }