From fbc6882c40e8bcda00798eb759e48787aeecbdae Mon Sep 17 00:00:00 2001
From: wells.liu <wells.liu@broconcentric.com>
Date: 星期一, 13 七月 2020 18:51:29 +0800
Subject: [PATCH] 开启 excel保存功能

---
 src/Bro.Common.Model/Helper/SettingHelper.cs |   88 ++++++++++++++++++++++---------------------
 1 files changed, 45 insertions(+), 43 deletions(-)

diff --git a/src/Bro.Common.Model/Helper/SettingHelper.cs b/src/Bro.Common.Model/Helper/SettingHelper.cs
index 59ffa67..a14100e 100644
--- a/src/Bro.Common.Model/Helper/SettingHelper.cs
+++ b/src/Bro.Common.Model/Helper/SettingHelper.cs
@@ -16,29 +16,42 @@
         const string PROPERTY_DESCRIPTION = "Description";
         const string PROPERTY_ICONPATH = "IconPath";
 
-        static JObject data = null;
-        static JObject Data
-        {
-            get
-            {
-                string configPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, SETTINGFILE);
-                if (File.Exists(configPath))
-                {
-                    using (StreamReader reader = new StreamReader(configPath, System.Text.Encoding.UTF8))
-                    {
-                        string dataStr = reader.ReadToEnd();
-                        data = JsonConvert.DeserializeObject<JObject>(dataStr);
-                    }
-                }
+        static string ConfigPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, SETTINGFILE);
+        //static JObject data = null;
+        //static JObject Data
+        //{
+        //    get
+        //    {
+        //        if (File.Exists(ConfigPath))
+        //        {
+        //            using (StreamReader reader = new StreamReader(ConfigPath, System.Text.Encoding.UTF8))
+        //            {
+        //                string dataStr = reader.ReadToEnd();
+        //                data = JsonConvert.DeserializeObject<JObject>(dataStr);
+        //            }
+        //        }
+        //        return data;
+        //    }
+        //}
 
-                return data;
+        public static JObject GetSettingData()
+        {
+            JObject settingData = null;
+            if (File.Exists(ConfigPath))
+            {
+                using (StreamReader reader = new StreamReader(ConfigPath, System.Text.Encoding.UTF8))
+                {
+                    string dataStr = reader.ReadToEnd();
+                    settingData = JsonConvert.DeserializeObject<JObject>(dataStr);
+                }
             }
+            return settingData;
         }
 
         public static List<string> GetProductionCodes()
         {
             List<string> codes = new List<string>();
-
+            var Data = GetSettingData();
             if (Data != null && Data.ContainsKey(PROPERTY_PRODUCTIONCODES))
             {
                 codes = Data.Value<JArray>(PROPERTY_PRODUCTIONCODES).ToList().ConvertAll(u => u.ToString());
@@ -55,7 +68,7 @@
         public static List<string> GetProcessCodes()
         {
             List<string> codes = new List<string>();
-
+            var Data = GetSettingData();
             if (Data != null && Data.ContainsKey(PROPERTY_PROCESSCODES))
             {
                 codes = Data.Value<JArray>(PROPERTY_PROCESSCODES).ToList().ConvertAll(u => u.ToString());
@@ -65,30 +78,31 @@
 
         public static List<string> AddNewProductionCode(string code)
         {
-            List<string> codes = GetProcessCodes();
-            if (!codes.Contains(code))
+            var dataTemp = GetSettingData();
+            if (dataTemp != null && dataTemp.ContainsKey(PROPERTY_PRODUCTIONCODES))
             {
-                codes.Add(code);
-            }
-            if (Data != null && Data.ContainsKey(PROPERTY_PRODUCTIONCODES))
-            {
-                Data[PROPERTY_PRODUCTIONCODES] = new JArray(codes);
-                string newDataStr = JsonConvert.SerializeObject(Data, new JsonSerializerSettings() { TypeNameHandling = TypeNameHandling.Auto });
-                using (StreamWriter writer = new StreamWriter(GetSettingFilePath(), false, System.Text.Encoding.UTF8))
+                List<string> codes = GetProductionCodes();
+                if (!codes.Contains(code))
+                {
+                    codes.Add(code);
+                }
+                dataTemp[PROPERTY_PRODUCTIONCODES] = new JArray(codes);
+
+                string newDataStr = JsonConvert.SerializeObject(dataTemp, new JsonSerializerSettings() { TypeNameHandling = TypeNameHandling.Auto });
+                using (StreamWriter writer = new StreamWriter(ConfigPath, false, System.Text.Encoding.UTF8))
                 {
                     writer.Write(newDataStr);
                     writer.Flush();
                     writer.Close();
                 }
             }
-
-            return GetProcessCodes();
+            return GetProductionCodes();
         }
 
         public static string GetConfigFilePath()
         {
             string path = "";
-
+            var Data = GetSettingData();
             if (Data != null && Data.ContainsKey(PROPERTY_CONFIGPATH))
             {
                 path = Data.Value<string>(PROPERTY_CONFIGPATH);
@@ -97,22 +111,10 @@
             return path;
         }
 
-        public static string GetSettingFilePath()
-        {
-            string path = "";
-
-            if (Data != null && Data.ContainsKey(SETTINGFILE))
-            {
-                path = Data.Value<string>(SETTINGFILE);
-            }
-
-            return path;
-        }
-
         public static string GetProgramDescription()
         {
             string desc = "浼偗妫嚜鍔ㄥ寲鎶�鏈湁闄愬叕鍙�";
-
+            var Data = GetSettingData();
             if (Data != null && Data.ContainsKey(PROPERTY_DESCRIPTION))
             {
                 desc = Data.Value<string>(PROPERTY_DESCRIPTION);
@@ -129,7 +131,7 @@
             {
                 iconPath = "";
             }
-
+            var Data = GetSettingData();
             if (Data != null && Data.ContainsKey(PROPERTY_ICONPATH))
             {
                 iconPath = Data.Value<string>(PROPERTY_ICONPATH);

--
Gitblit v1.8.0