Esempio n. 1
0
        /// <summary>
        /// [재난 카테고리] 입력 카테고리 코드로 해당 카테고리에 대한 정보(카테고리 + 종류 정보 목록)
        /// </summary>
        /// <param name="searchCategoryCode"></param>
        /// <returns></returns>
        public static DisasterInfo FindDisasterInfoByCategoryCode(string searchCategoryCode)
        {
            DisasterInfo result = null;

            if (searchCategoryCode == null)
            {
                return(null);
            }

            // 재난 정보가 준비되어 있는지 체크.
            if (disasterInfo == null || disasterInfo.Count <= 0)
            {
                return(null);
            }

            foreach (DisasterInfo info in disasterInfo)
            {
                if (info.KindList == null)
                {
                    continue;
                }
                if (info.Category == null || info.Category.Code != searchCategoryCode)
                {
                    continue;
                }

                DisasterInfo copy = new DisasterInfo();
                copy.DeepCopyFrom(info);
                return(copy);
            }

            return(result);
        }
Esempio n. 2
0
        public void DeepCopyFrom(DisasterInfo src)
        {
            this.category = null;
            this.kindList = null;

            if (src == null)
            {
                return;
            }
            if (src.category != null)
            {
                this.category = new DisasterCategory();
                this.category.DeepCopyFrom(src.category);
            }
            if (src.kindList == null)
            {
                this.kindList = null;
                return;
            }
            this.kindList = new List <DisasterKind>();
            foreach (DisasterKind kind in src.kindList)
            {
                DisasterKind copy = new DisasterKind();
                copy.DeepCopyFrom(kind);

                this.kindList.Add(copy);
            }
        }