public IHttpActionResult PutCartonManagement(int id, CartonManagement cartonManagement)
        {
            var data = db.CartonManagements.Where(x => x.IsActive == true && x.Id == id).ToList().FirstOrDefault();

            data.IsDispatched = cartonManagement.IsDispatched;
            data.UpdatedOn    = System.DateTime.UtcNow;
            db.SaveChanges();
            return(Ok(true));
        }
        public IHttpActionResult Create(CartonManagement carton)
        {
            var model = db.CartonManagements.ToList().LastOrDefault();

            //var result = carton.CartonManagementDetails.Select(a => new { ProductSKU = a.ProductSKU, ProductStyle = a.StyleSKU }).ToList().FirstOrDefault();
            foreach (var a in carton.CartonManagementDetails)
            {
                a.CreatedOn = System.DateTime.UtcNow;
                a.UpdatedOn = System.DateTime.UtcNow;
                model.CartonManagementDetails.Add(a);
            }
            //model.CartonManagementDetails = carton.CartonManagementDetails.Select(x => new CartonManagementDetail
            //{
            //    CartonManagementID = model.Id,
            //    ProductID = db.Products.Where(m => m.ProductSKU == result.ProductSKU && m.ProductStyle.StyleSKU == result.ProductStyle).FirstOrDefault().Id,
            //    Z01=x.Z01,
            //    Z02 = x.Z02,
            //    Z03 = x.Z03,
            //    Z04 = x.Z04,
            //    Z05 = x.Z05,
            //    Z06 = x.Z06,
            //    Z07 = x.Z07,
            //    Z08 = x.Z08,
            //    Z09 = x.Z09,
            //    Z10 = x.Z10,
            //    Z11 = x.Z11,
            //    Z12 = x.Z12,
            //    Z13 = x.Z13,
            //    Z14 = x.Z14,
            //    Z15 = x.Z15,
            //    Z16 = x.Z16,
            //    Z17 = x.Z17,
            //    Z18 = x.Z18,
            //    Z19 = x.Z19,
            //    Z20 = x.Z20,
            //    Z21 = x.Z21,
            //    Z22 = x.Z22,
            //    Z23 = x.Z23,
            //    Z24 = x.Z24,
            //    Z25 = x.Z25,
            //    Z26 = x.Z26,
            //    Z27 = x.Z27,
            //    Z28 = x.Z28,
            //    Z29 = x.Z29,
            //    Z30 = x.Z30,
            //   IsActive=true,

            //}).ToList();
            model.DistributionSummaryID = carton.DistributionSummaryID;
            model.CartonNumber          = carton.CartonNumber;
            model.TotalItems            = carton.TotalItems;
            model.IsActive = true;
            db.SaveChanges();
            return(Ok(true));
        }
        public IHttpActionResult GetCartonManagement(int id)
        {
            CartonManagement cartonManagement = db.CartonManagements.Find(id);

            if (cartonManagement == null)
            {
                return(NotFound());
            }

            return(Ok(cartonManagement));
        }
        public IHttpActionResult DeleteCartonManagement(int id)
        {
            CartonManagement area = db.CartonManagements.Find(id);

            if (area == null)
            {
                return(NotFound());
            }
            area.IsActive  = false;
            area.UpdatedOn = System.DateTime.UtcNow;
            db.SaveChanges();
            return(Ok(area));
        }
        public IHttpActionResult PostCartonManagement(SearchForCarton carton)
        {
            CartonManagement cartonManagement = new CartonManagement();

            cartonManagement.DistributionSummaryID = carton.StockDistributionSummaryId;
            cartonManagement.BranchID  = carton.BranchId;
            cartonManagement.IsActive  = true;
            cartonManagement.CreatedOn = System.DateTime.UtcNow;
            cartonManagement.UpdatedOn = System.DateTime.UtcNow;
            db.CartonManagements.Add(cartonManagement);
            db.SaveChanges();
            return(Ok(true));
        }
        public IHttpActionResult GenerateIBT(CartonManagementModel model)
        {
            CartonManagement carton = new CartonManagement();

            carton.IBTNumber = model.IBTNumber;
            // carton.IsActive = true;
            carton.BranchID = db.Branches.Where(x => x.IsActive == true && x.Name == model.BranchName).FirstOrDefault().Id;
            DateTime today = DateTime.Today;

            carton.PackDate = today;
            //carton.CartonNumber = 0;
            carton.DistributionSummaryID = model.DistributionSummaryID;
            carton.CreatedOn             = System.DateTime.UtcNow;
            carton.UpdatedOn             = System.DateTime.UtcNow;
            db.CartonManagements.Add(carton);
            db.SaveChanges();
            return(Ok(true));
        }