public ActionResult Delete(int Id)
        {
            var model     = _service.GetAccomodationPackageById(Id);
            var viewModel = new AccomodationPackageCreateModel(model);

            return(PartialView("_Delete", viewModel));
        }
        public JsonResult Save(AccomodationPackageCreateModel model)
        {
            var json   = new JsonResult();
            var error  = "";
            var result = false;

            //model.PictureIDs = "90,67,23" = ["90", "67", "23"] = {90, 67, 23}
            List <int>           pictureIDs = !string.IsNullOrEmpty(model.PictureIDs) ? model.PictureIDs.Split(',').Select(x => int.Parse(x)).ToList() : new List <int>();
            var                  pictures   = _serviceDashboard.GetPicturesbyId(pictureIDs);
            AccomodationPackages package;

            if (model.ID == 0)
            {
                package                             = new AccomodationPackages();
                package.Name                        = model.Name;
                package.NoOfRooms                   = model.NoOfRooms.Value;
                package.FeePerNight                 = model.FeePerNight.Value;
                package.AccomodationTypeID          = model.AccomodationTypeID.Value;
                package.Description                 = model.Description;
                package.AccomodationPackagePictures = new List <AccomodationPackagePictures>();
                package.AccomodationPackagePictures.AddRange(pictures.Select(x => new AccomodationPackagePictures()
                {
                    PictureID = x.ID
                }));
            }
            else
            {
                package                    = _service.GetAccomodationPackageById(model.ID.Value);
                package.ID                 = model.ID.Value;
                package.Name               = model.Name;
                package.NoOfRooms          = model.NoOfRooms.Value;
                package.FeePerNight        = model.FeePerNight.Value;
                package.AccomodationTypeID = model.AccomodationTypeID.Value;
                package.Description        = model.Description;
                package.AccomodationPackagePictures.Clear();
                package.AccomodationPackagePictures.AddRange(pictures.Select(x => new AccomodationPackagePictures()
                {
                    PictureID = x.ID, AccomodationPackageID = package.ID
                }));
            }
            try
            {
                result = _service.SaveAccomodationPackages(package);
            }
            catch (Exception exp)
            {
                error = exp.InnerException.Message + " " + exp.Message;
            }
            if (result)
            {
                json.Data = new { Success = true, Link = Url.Action("Listing", "AccomodationPackage"), Message = Status.Successfull };
            }
            else
            {
                json.Data = new { Success = false, Link = Url.Action("Listing", "AccomodationPackage"), Message = Status.Failed + " " + error };
            }
            return(json);
        }
        public ActionResult Create()
        {
            var viewModel = new AccomodationPackageCreateModel()
            {
                AccomodationType = _serviceAccomodationtype.GetAllAccomodationTypes()
            };

            return(PartialView("_Action", viewModel));
        }
        public ActionResult Edit(int ID)
        {
            var result = _service.GetAccomodationPackageById(ID);

            if (result == null)
            {
                return(HttpNotFound());
            }
            else
            {
                var viewModel = new AccomodationPackageCreateModel(result)
                {
                    AccomodationType            = _serviceAccomodationtype.GetAllAccomodationTypes(),
                    AccomodationPackagePictures = result.AccomodationPackagePictures.ToList()
                };
                ViewBag.Action = "Edit";
                return(PartialView("_Action", viewModel));
            }
        }