public ActionResult Add_tagging(Bulk_Tagging_Add_DTO tagging_elements) { try { objElementRepository.Add_Element_Tagging(tagging_elements); return(Json(true, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { return(Json(false, JsonRequestBehavior.AllowGet)); } }
/// <summary> /// Bulk Add the element/point tags /// </summary> /// <param name="element_tagging"></param> public void Add_Element_Tagging(Bulk_Tagging_Add_DTO element_tagging) { TagType element_tag_type; foreach (var element_Dto in element_tagging.elementDto) { if (Enum.TryParse(element_Dto.Element_Tag_Type_String, out element_tag_type)) { switch (element_tag_type) { case TagType.site: if (element_tagging.site_tag != null) { foreach (long site_element_tag_id in element_tagging.site_tag) { if (_dbcontext.tblTagElements.Any(t => t.Element_ID == element_Dto.ID && t.Tag_ID == site_element_tag_id)) { _dbcontext.tblTagElements.SingleOrDefault(t => t.Element_ID == element_Dto.ID && t.Tag_ID == site_element_tag_id).Is_Deleted = false; } else { _dbcontext.tblTagElements.Add(TagElementBaseDTO.ConvertDTOToTbl(element_Dto.ID, site_element_tag_id)); } } } break; case TagType.equip: if (element_tagging.equip_tag != null) { foreach (long equip_element_tag_id in element_tagging.equip_tag) { if (_dbcontext.tblTagElements.Any(t => t.Element_ID == element_Dto.ID && t.Tag_ID == equip_element_tag_id)) { _dbcontext.tblTagElements.SingleOrDefault(t => t.Element_ID == element_Dto.ID && t.Tag_ID == equip_element_tag_id).Is_Deleted = false; } else { _dbcontext.tblTagElements.Add(TagElementBaseDTO.ConvertDTOToTbl(element_Dto.ID, equip_element_tag_id)); } } } break; case TagType.point: if (element_tagging.point_tag != null) { foreach (long point_element_tag_id in element_tagging.point_tag) { if (_dbcontext.tblTagElements.Any(t => t.Element_ID == element_Dto.ID && t.Tag_ID == point_element_tag_id)) { _dbcontext.tblTagElements.SingleOrDefault(t => t.Element_ID == element_Dto.ID && t.Tag_ID == point_element_tag_id).Is_Deleted = false; } else { _dbcontext.tblTagElements.Add(TagElementBaseDTO.ConvertDTOToTbl(element_Dto.ID, point_element_tag_id)); } } } break; default: break; } } else { throw new TagException(Resources.TagNullException); } } _dbcontext.SaveChanges(); }