public JsonResult Action(AccomodationPackagesActionViewModel model, bool isDeleted = false) { JsonResult json = new JsonResult(); var result = false; if (model.Id > 0 && isDeleted == false) { //edit here // first break array of integers passed by view List <int> pictureIds = string.IsNullOrEmpty(model.PicIDs) ? new List <int>() : model.PicIDs.Split(',').Select(a => int.Parse(a)).ToList(); //using linq generated by vs List <AccomodationPackagePicture> list = pictureIds.Select(id => new AccomodationPackagePicture() { AccomodationPackageId = model.Id, PictureId = id }).ToList(); AccomodationPackage accomodationPackage = new AccomodationPackage() { Id = model.Id, Name = model.Name, NoOfRoom = model.NoOfRoom, FeePerNight = model.FeePerNight , AccomodationTypeId = model.AccomodationTypeId, AccomodationPackagePictures = list }; result = accomodationPackageService.UpdateAccomodationPackages(accomodationPackage); } else if (model.Id > 0 && isDeleted == true) { //delete here result = accomodationPackageService.DeleteAccomodationPackages(model.Id); } else { //first create object then add AccomodationPackage accomodationPackage = new AccomodationPackage(); // first break array of integers passed by view List <int> pictureIds = string.IsNullOrEmpty(model.PicIDs) ? new List <int>() : model.PicIDs.Split(',').Select(a => int.Parse(a)).ToList(); accomodationPackage.AccomodationTypeId = model.AccomodationTypeId; accomodationPackage.Name = model.Name; accomodationPackage.NoOfRoom = model.NoOfRoom; accomodationPackage.FeePerNight = model.FeePerNight; //accomodationPackage.AccomodationPackagePictures = model.AccomodationPackagePictures; ////my method easy one //List<AccomodationPackagePicture> list = new AccomodationPackagePicture() //foreach (var id in pictureIds) //{ // var accomodationPics = new AccomodationPackagePicture() {AccomodationPackageId = accomodationPackage.Id , PictureId = id}; // list.Add(accomodationPics); //} //using linq generated by vs List <AccomodationPackagePicture> list = pictureIds.Select(id => new AccomodationPackagePicture() { PictureId = id }).ToList(); accomodationPackage.AccomodationPackagePictures = list; result = accomodationPackageService.SaveAccomodationPackages(accomodationPackage); } if (result) { json.Data = new { success = true }; } else { json.Data = new { success = false, Messag = "Unable to Perform Operation in Accomodation Type." }; } return(json); }
public JsonResult Action(AccomodationPackagesModel model) { JsonResult result = new JsonResult(); result.JsonRequestBehavior = JsonRequestBehavior.AllowGet; var message = ""; bool data = false; try { if (ModelState.IsValid) { List <int> picturesIDs = model.PictureIDs.Split(',').Select(x => int.Parse(x)).ToList(); var pictures = _SharedService.GetPicturesByIDs(picturesIDs); if (model.ID > 0) { _AccomodationPackage = _AccomodationPackagesService.GetAccomodationPackagesById(model.ID); _AccomodationPackage.NoOfRoom = model.NoOfRoom; _AccomodationPackage.Name = model.Name; _AccomodationPackage.FeePerNight = model.FeePerNight; _AccomodationPackage.AccomodationTypeID = model.AccomodationTypeID; _AccomodationPackage.AccomodationPackagePictures.Clear(); _AccomodationPackage.AccomodationPackagePictures.AddRange(pictures.Select(x => new AccomodationPackagePictures() { PictuerID = x.ID, AccomodationPackageID = model.ID })); data = _AccomodationPackagesService.UpdateAccomodationPackages(_AccomodationPackage); } else { _AccomodationPackage.AccomodationPackagePictures = new List <AccomodationPackagePictures>(); _AccomodationPackage.AccomodationPackagePictures.AddRange(pictures.Select(x => new AccomodationPackagePictures() { PictuerID = x.ID })); _AccomodationPackage.ID = model.ID; _AccomodationPackage.Name = model.Name; _AccomodationPackage.NoOfRoom = model.NoOfRoom; _AccomodationPackage.FeePerNight = model.FeePerNight; _AccomodationPackage.AccomodationTypeID = model.AccomodationTypeID; data = _AccomodationPackagesService.SaveAccomodationPackages(_AccomodationPackage); } } else { message = "Please enter valid data!!"; } } catch (Exception ex) { message = ex.Message; } if (data) { message = "Data Save Successfully!!"; result.Data = new { Success = true, Message = message }; } else { result.Data = new { Success = false, Message = message }; } return(result); }