You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							107 lines
						
					
					
						
							3.7 KiB
						
					
					
				
			
		
		
	
	
							107 lines
						
					
					
						
							3.7 KiB
						
					
					
				using System; | 
						|
using System.Collections.Generic; | 
						|
using System.Xml; | 
						|
using KGIS.Framework.Utils; | 
						|
using Kingo.Plugin.EngineEditor.Unit; | 
						|
 | 
						|
namespace Kingo.Plugin.EngineEditor.helper | 
						|
{ | 
						|
    public class ConfigHelper | 
						|
    { | 
						|
        public static List<string> GetResultsCatalog(CheckTypeEnum typeEnum) | 
						|
        { | 
						|
            List<string> result = new List<string>(); | 
						|
            try | 
						|
            { | 
						|
                XmlDocument doc = new XmlDocument(); | 
						|
                string strPath = SysAppPath.GetGeoCheckCfgPath(); | 
						|
                doc.Load(strPath); | 
						|
                XmlNode nodeDataCatalog = doc.SelectSingleNode("Infornation"); | 
						|
                if (nodeDataCatalog == null) | 
						|
                    return result; | 
						|
                switch(typeEnum) | 
						|
                { | 
						|
                    case CheckTypeEnum.GeoOverInfor: result.AddRange(GetInfor("图斑压盖", nodeDataCatalog)); break; | 
						|
                    case CheckTypeEnum.GeoCheckInfor: result.AddRange(GetInfor("图形规范性", nodeDataCatalog)); break; | 
						|
                    default:break; | 
						|
                } | 
						|
                 | 
						|
                return result; | 
						|
            } | 
						|
            catch (Exception ex) | 
						|
            { | 
						|
                LogAPI.Debug(ex); | 
						|
                throw; | 
						|
            } | 
						|
        } | 
						|
 | 
						|
        private static List<string> GetInfor(string Title, XmlNode nodeDataCatalog) | 
						|
        { | 
						|
            List<string> Columns = new List<string>(); | 
						|
            foreach (XmlNode item in nodeDataCatalog.ChildNodes) | 
						|
            { | 
						|
                if (item.Attributes["Name"].Value.ToString() == Title) | 
						|
                { | 
						|
                    foreach (XmlNode col in item.ChildNodes) | 
						|
                    { | 
						|
                        Columns.Add(col.Attributes["Name"].Value == null ? "" : col.Attributes["Name"].Value); | 
						|
                    } | 
						|
                } | 
						|
            } | 
						|
            return Columns; | 
						|
        } | 
						|
 | 
						|
        public static List<string> GetInfor(string NodeName) | 
						|
        { | 
						|
            List<string> Columns = new List<string>(); | 
						|
            try | 
						|
            { | 
						|
                XmlDocument doc = new XmlDocument(); | 
						|
                string strPath = SysAppPath.GetGeoCheckCfgPath(); | 
						|
                doc.Load(strPath); | 
						|
                XmlNode nodeDataCatalog = doc.SelectSingleNode(NodeName); | 
						|
                if (nodeDataCatalog == null) | 
						|
                    return Columns; | 
						|
                foreach (XmlNode item in nodeDataCatalog.ChildNodes) | 
						|
                { | 
						|
                    Columns.Add(item.Attributes["Name"].Value == null ? "" : item.Attributes["Name"].Value); | 
						|
                } | 
						|
                return Columns; | 
						|
            } catch (Exception ex) | 
						|
            { | 
						|
                LogAPI.Debug(ex); | 
						|
                return Columns; | 
						|
            } | 
						|
             | 
						|
        } | 
						|
 | 
						|
        public static Dictionary<string,string> GetColumnsInFor | 
						|
        { | 
						|
            get { | 
						|
                Dictionary<string, string> pairs = new Dictionary<string, string>(); | 
						|
                try | 
						|
                { | 
						|
                    XmlDocument doc = new XmlDocument(); | 
						|
                    string strPath = SysAppPath.GetGeoCheckCfgPath(); | 
						|
                    doc.Load(strPath); | 
						|
                    XmlNode nodeDataCatalog = doc.SelectSingleNode("Infornation"); | 
						|
                    if (nodeDataCatalog == null) | 
						|
                        return null; | 
						|
                    foreach (XmlNode item in nodeDataCatalog.ChildNodes) | 
						|
                    { | 
						|
                        foreach (XmlNode col in item.ChildNodes) | 
						|
                        { | 
						|
                            pairs.Add(col.Attributes["Name"].Value, col.Attributes["displayName"].Value); | 
						|
                        } | 
						|
                    } | 
						|
                    return pairs; | 
						|
                } | 
						|
                catch (Exception ex) | 
						|
                { | 
						|
                    LogAPI.Debug(ex); | 
						|
                    return null; | 
						|
                } | 
						|
            } | 
						|
        } | 
						|
    } | 
						|
}
 | 
						|
 |