From 9d1660270272180cd71147d6ddd53d1382643d2e Mon Sep 17 00:00:00 2001
From: wenxiangchao <wenxiangchao@ihengxin.com.cn>
Date: 星期一, 02 十一月 2026 18:00:14 +0800
Subject: [PATCH] merge: 并入远程 Initial commit 作为历史根节点
---
HMI.Core/Manager/ParameterManager.cs | 136 +++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 136 insertions(+), 0 deletions(-)
diff --git a/HMI.Core/Manager/ParameterManager.cs b/HMI.Core/Manager/ParameterManager.cs
new file mode 100644
index 0000000..80109b5
--- /dev/null
+++ b/HMI.Core/Manager/ParameterManager.cs
@@ -0,0 +1,136 @@
+锘縰sing HMI.Core.Entity;
+using HMI.Core.Util;
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+
+namespace HMI.Core.Manager
+{
+ /// <summary>
+ /// TODO 浼樺寲鏁版嵁婧愶紝闇�瑕佹敮鎸乻qlite鍜寈ml
+ /// </summary>
+ public class ParameterManager
+ {
+
+ /// <summary>
+ /// 鑾峰彇閫氱敤鍙傛暟
+ /// </summary>
+ /// <typeparam name="T"></typeparam>
+ /// <returns></returns>
+ public static T GetCommonParameter<T>() where T : IList<ParameterData>
+ {
+ string path = PathHelper.ParameterDataPath;
+ if (!File.Exists(path)) return default(T);
+ T datas = XmlHelper.DeserializeFromXml<T>(path);
+ return datas;
+ }
+
+ /// <summary>
+ /// 鑾峰彇閫氱敤鍙傛暟
+ /// </summary>
+ /// <typeparam name="T"></typeparam>
+ /// <returns></returns>
+ public static ParameterData GetCommonParameterByName(string name)
+ {
+ string path = PathHelper.ParameterDataPath;
+ if (!File.Exists(path)) return null;
+ List<ParameterData> datas = XmlHelper.DeserializeFromXml<List<ParameterData>>(path);
+ return datas.FirstOrDefault(d => d.Name == name);
+ }
+
+ public static T GetCommonParameterByName<T>(string name, T defaultValue)
+ {
+ try
+ {
+ string path = PathHelper.ParameterDataPath;
+ if (!File.Exists(path)) return defaultValue;
+ List<ParameterData> datas = XmlHelper.DeserializeFromXml<List<ParameterData>>(path);
+ var data = datas.FirstOrDefault(d => d.Name == name);
+ if (data == null)
+ {
+ return defaultValue;
+ }
+ return (T)Convert.ChangeType(data.Value, typeof(T));
+ }
+ catch
+ {
+ return defaultValue;
+ }
+ }
+
+ /// <summary>
+ /// 淇濆瓨閫氱敤鍙傛暟
+ /// </summary>
+ /// <param name="datas"></param>
+ /// <exception cref="Exception"></exception>
+ public static void SaveCommonParameter(IList<ParameterData> datas)
+ {
+ if (datas == null)
+ {
+ throw new Exception("涓嶈兘涓簄ull");
+ }
+ string path = PathHelper.ParameterDataPath;
+ XmlHelper.SerializeToXml(path, datas);
+ }
+
+ public static string GetCommonParameterValue(string path, string name)
+ {
+ if (!File.Exists(path)) return null;
+ List<ParameterData> datas = XmlHelper.DeserializeFromXml<List<ParameterData>>(path);
+ ParameterData data = datas.FirstOrDefault(d => d.Name == name);
+ if (data == null) return null;
+ return data.Value;
+ }
+
+ public static bool UpdateCommonParameter(string name, object value, out string errMsg)
+ {
+ errMsg = string.Empty;
+ try
+ {
+ string path = PathHelper.ParameterDataPath;
+ if (!File.Exists(path))
+ {
+ errMsg = "閰嶇疆鏂囦欢涓嶅瓨鍦�";
+ return false;
+ }
+ List<ParameterData> datas = XmlHelper.DeserializeFromXml<List<ParameterData>>(path);
+ ParameterData data = datas.FirstOrDefault(d => d.Name == name);
+ if (data != null)
+ {
+ data.Value = value.ToString();
+ XmlHelper.SerializeToXml(path, datas);
+ return true;
+ }
+ string type = "String";
+ if (value is bool)
+ {
+ type = "Bool";
+ }
+ else if (value is int)
+ {
+ type = "Int";
+ }
+ else if (value is double)
+ {
+ type = "Double";
+ }
+
+ data = new ParameterData
+ {
+ Name = name,
+ Type = type,
+ Value = value.ToString()
+ };
+ datas.Add(data);
+ XmlHelper.SerializeToXml(path, datas);
+ return true;
+ }
+ catch (Exception ex)
+ {
+ errMsg = ex.Message;
+ return false;
+ }
+ }
+ }
+}
--
Gitblit v1.9.1