/// <summary> /// this convert function specially for the convertion of the element tags to metric /// these are the virtual metrics on the bases of tags /// /// </summary> /// <param name="tbl_tag_element"></param> /// <returns></returns> public static IList <MetricDTO> Convert_Tag_Element_Table_To_DTO(tblTagElement tbl_tag_element) { IList <MetricDTO> list_dto_metric = new List <MetricDTO>(); try { MetricDTO dto_metric; IList <TagDTO> element_tags = new List <TagDTO> { TagDTO.ConvertTableToDTO(tbl_tag_element.tblTag) }; foreach (Rollup_Function_Option rollup_function in Enum.GetValues(typeof(Rollup_Function_Option))) { try { dto_metric = new MetricDTO(); dto_metric.Id = metric_id; dto_metric.Metric_Name = string.Concat(rollup_function.ToString(), " ", element_tags.First().Tag_Type_Value); dto_metric.Metric_Type = MetricType.System.ToString(); dto_metric.Source = null; dto_metric.Tags = element_tags; dto_metric.Rollup_Function = rollup_function; list_dto_metric.Add(dto_metric); metric_id--; } catch { } } } catch { } return(list_dto_metric); }
/// <summary> /// /// </summary> /// <param name="TagElementDTO"></param> /// <returns></returns> public static tblTagElement ConvertDTOToTbl(long element_id, long tag_id) { tblTagElement TagElementTbl = new tblTagElement(); TagElementTbl.Element_ID = element_id; TagElementTbl.Tag_ID = tag_id; TagElementTbl.Is_Deleted = false; return(TagElementTbl); }
/// <summary> /// /// </summary> /// <param name="TagElementTbl"></param> /// <returns></returns> public static TagElementDTO ConvertTableToDTO(tblTagElement TagElementTbl) { TagElementDTO objTagElementDTO = new TagElementDTO(); objTagElementDTO.ID = TagElementTbl.ID; objTagElementDTO.TagValue = TagElementTbl.Value; objTagElementDTO.Tag = TagDTO.ConvertTableToDTO(TagElementTbl.tblTag); objTagElementDTO.Element = ElementDTO.ConvertTableToDTO(TagElementTbl.tblElement); return(objTagElementDTO); }
/// <summary> /// /// </summary> /// <param name="TagElementTbl"></param> /// <returns></returns> public static tblTagElement ConvertDTOToTbl(TagElementBaseDTO TagElementDTO) { tblTagElement TagElementTbl = new tblTagElement(); TagElementTbl.ID = TagElementDTO.ID; TagElementTbl.Value = TagElementDTO.TagValue; if (TagElementDTO.Tag != null) { TagElementTbl.tblTag = TagDTO.ConvertDTOtoTable(TagElementDTO.Tag); } return(TagElementTbl); }
/// <summary> /// This method is for update the elementtag table, tblElement and tblTagElement many to many relation between them, for updating the tagging /// </summary> /// <param name="tag_dtos"></param> /// <param name="tbl_tag_elements"></param> /// <returns></returns> public static IList <tblTagElement> ConvertDTOToTbl(ICollection <TagDTO> tag_dtos, ref ICollection <tblTagElement> tbl_tag_elements, long element_id) { IList <tblTagElement> obj_tbl_tag_elements = new List <tblTagElement>(); tblTagElement obj_tbl_tag_element; foreach (TagDTO tag_dto in tag_dtos) { //Assign new tag if (!tbl_tag_elements.Any(t => t.Tag_ID == tag_dto.ID)) { obj_tbl_tag_element = new tblTagElement(); obj_tbl_tag_element.Element_ID = element_id; obj_tbl_tag_element.Tag_ID = tag_dto.ID; obj_tbl_tag_element.Value = null; obj_tbl_tag_element.Is_Deleted = false; tbl_tag_elements.Add(obj_tbl_tag_element); } else { //Restore tag obj_tbl_tag_element = tbl_tag_elements.SingleOrDefault(t => t.Tag_ID == tag_dto.ID && t.Is_Deleted == true); if (obj_tbl_tag_element != null) { obj_tbl_tag_element.Is_Deleted = false; } } } foreach (tblTagElement tbl_tag_element in tbl_tag_elements) { if (!tag_dtos.Any(t => t.ID == tbl_tag_element.Tag_ID)) { tbl_tag_element.Is_Deleted = true; } } return(tbl_tag_elements.ToList()); }