Ejemplo n.º 1
0
        /// <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);
        }
Ejemplo n.º 2
0
        /// <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);
        }
Ejemplo n.º 3
0
        /// <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);
        }
Ejemplo n.º 4
0
        /// <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);
        }
Ejemplo n.º 5
0
        /// <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());
        }