public ActionResult PlantDetails(PlantDto plantDto) { var plantDir = Server.MapPath("~/Images/Plant/" + plantDto.ID.ToString()); List <Images> imgList = Mappers.ImageMapper.MapHTTPToImage(plantDto.Images, plantDto, plantDir); foreach (var img in imgList) { ImageCRUD.Insert(img); } //List<Images> pltImgList = ImageCRUD.GetByPlantID(plantDto.ID); //foreach(var img in pltImgList) //{ // imgList.Add(img); //} PlantDAL.EDMX.Plant plant = Mappers.PlantMapper.MapDtoToDAL(plantDto, imgList); plant.UserID = User.Identity.GetUserId(); if (plantDto.CustomValues1 != null) { CustomValues cv1 = Mappers.CustomValueMapper.MapDtoToDAL(plantDto.CustomValues1, 1) as CustomValues; plant.CustomValues = cv1; plant.CustomValueOneID = cv1.ID; } if (plantDto.CustomValues2 != null) { CustomValues cv2 = Mappers.CustomValueMapper.MapDtoToDAL(plantDto.CustomValues2, 2) as CustomValues; plant.CustomValues1 = cv2; plant.CustomValueTwoD = cv2.ID; } if (plantDto.CustomValues3 != null) { CustomValues cv3 = Mappers.CustomValueMapper.MapDtoToDAL(plantDto.CustomValues3, 3) as CustomValues; plant.CustomValues2 = cv3; plant.CustomValueThreeID = cv3.ID; } if (plantDto.CustomValues4 != null) { CustomValues cv4 = Mappers.CustomValueMapper.MapDtoToDAL(plantDto.CustomValues4, 4) as CustomValues; plant.CustomValues3 = cv4; plant.CustomValueFourID = cv4.ID; } if (plantDto.CustomValues5 != null) { CustomValues cv5 = Mappers.CustomValueMapper.MapDtoToDAL(plantDto.CustomValues5, 5) as CustomValues; plant.CustomValues4 = cv5; plant.CustomValueFiveID = cv5.ID; } PlantCRUD.Update(plant); return(RedirectToAction("PlantTable")); }
public ActionResult DeletePlant(string PlantId, string FilePath) { try { var curUrl = ConfigurationManager.AppSettings["url"].TrimEnd('/'); var pathDelete = FilePath.Replace(curUrl, "").Replace("/", "\\"); var serverDir = Server.MapPath("/").TrimEnd('\\'); var fileDel = serverDir + pathDelete; int idx = fileDel.IndexOf(PlantId); if (idx != -1) { fileDel = fileDel.Substring(0, idx + 36); System.IO.Directory.Delete(fileDel, true); } Guid plantId = Guid.Parse(PlantId); PlantDAL.EDMX.Plant plant = PlantCRUD.GetByID(plantId); List <Images> images = ImageCRUD.GetByPlantID(plantId); foreach (var img in images) { ImageCRUD.Delete(img); } if (plant.CustomValueOneID != null) { CustomValues cv = CustomValueCRUD.GetByID(plant.CustomValueOneID); CustomValueCRUD.Delete(cv); } if (plant.CustomValueTwoD != null) { CustomValues cv = CustomValueCRUD.GetByID(plant.CustomValueTwoD); CustomValueCRUD.Delete(cv); } if (plant.CustomValueThreeID != null) { CustomValues cv = CustomValueCRUD.GetByID(plant.CustomValueThreeID); CustomValueCRUD.Delete(cv); } if (plant.CustomValueFourID != null) { CustomValues cv = CustomValueCRUD.GetByID(plant.CustomValueFourID); CustomValueCRUD.Delete(cv); } if (plant.CustomValueFiveID != null) { CustomValues cv = CustomValueCRUD.GetByID(plant.CustomValueFiveID); CustomValueCRUD.Delete(cv); } List <PlantDAL.EDMX.Journal> journals = JournalCRUD.GetByPlantID(plant.ID); foreach (var jour in journals) { List <Images> jourImages = ImageCRUD.GetByJournalID(jour.ID); foreach (var img in jourImages) { ImageCRUD.Delete(img); } JournalCRUD.Delete(jour); } List <PlantDAL.EDMX.Plant> childrenPlants = PlantCRUD.GetByParentId(plant.ID); foreach (var plt in childrenPlants) { if (plt.ParentOneID == plant.ID) { plt.ParentOneID = null; } if (plt.ParentTwoID == plant.ID) { plt.ParentTwoID = null; } PlantCRUD.Update(plt); } PlantCRUD.Delete(plant); } catch (Exception ex) { ex.ToString(); } return(Json(new { IsError = false, message = "success", data = true }, JsonRequestBehavior.AllowGet)); }