From 3f6a707f2373cfcee7e96c080a01ac1a4964a419 Mon Sep 17 00:00:00 2001
From: wells.liu <wells.liu@broconcentric.com>
Date: 星期四, 02 七月 2020 20:54:55 +0800
Subject: [PATCH] 解决 生成新配置问题
---
src/Bro.Process/Bro.Process.csproj | 4 +---
src/Bro.UI.Config/MenuForms/FrmConfig.cs | 4 +++-
src/Bro.Common.Model/Helper/SettingHelper.cs | 34 +++++++++++-----------------------
src/Bro.Common.Model/Interface/IProcess.cs | 1 +
4 files changed, 16 insertions(+), 27 deletions(-)
diff --git a/src/Bro.Common.Model/Helper/SettingHelper.cs b/src/Bro.Common.Model/Helper/SettingHelper.cs
index 59ffa67..f481646 100644
--- a/src/Bro.Common.Model/Helper/SettingHelper.cs
+++ b/src/Bro.Common.Model/Helper/SettingHelper.cs
@@ -16,21 +16,20 @@
const string PROPERTY_DESCRIPTION = "Description";
const string PROPERTY_ICONPATH = "IconPath";
+ static string ConfigPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, SETTINGFILE);
static JObject data = null;
static JObject Data
{
get
{
- string configPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, SETTINGFILE);
- if (File.Exists(configPath))
+ if (File.Exists(ConfigPath))
{
- using (StreamReader reader = new StreamReader(configPath, System.Text.Encoding.UTF8))
+ using (StreamReader reader = new StreamReader(ConfigPath, System.Text.Encoding.UTF8))
{
string dataStr = reader.ReadToEnd();
data = JsonConvert.DeserializeObject<JObject>(dataStr);
}
}
-
return data;
}
}
@@ -65,24 +64,25 @@
public static List<string> AddNewProductionCode(string code)
{
- List<string> codes = GetProcessCodes();
+ List<string> codes = GetProductionCodes();
if (!codes.Contains(code))
{
codes.Add(code);
}
- if (Data != null && Data.ContainsKey(PROPERTY_PRODUCTIONCODES))
+ var dataTemp = Data;
+ if (dataTemp != null && dataTemp.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))
+ 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()
@@ -92,18 +92,6 @@
if (Data != null && Data.ContainsKey(PROPERTY_CONFIGPATH))
{
path = Data.Value<string>(PROPERTY_CONFIGPATH);
- }
-
- return path;
- }
-
- public static string GetSettingFilePath()
- {
- string path = "";
-
- if (Data != null && Data.ContainsKey(SETTINGFILE))
- {
- path = Data.Value<string>(SETTINGFILE);
}
return path;
diff --git a/src/Bro.Common.Model/Interface/IProcess.cs b/src/Bro.Common.Model/Interface/IProcess.cs
index 73cfa95..403375d 100644
--- a/src/Bro.Common.Model/Interface/IProcess.cs
+++ b/src/Bro.Common.Model/Interface/IProcess.cs
@@ -59,6 +59,7 @@
#region 鏁版嵁搴撴搷浣�
void SaveProcessConfig(IProcessConfig config);
+ void CreateNewConfig(IProcessConfig config,string newProductionCode);
#endregion
}
}
diff --git a/src/Bro.Process/Bro.Process.csproj b/src/Bro.Process/Bro.Process.csproj
index 81759b6..9f6d276 100644
--- a/src/Bro.Process/Bro.Process.csproj
+++ b/src/Bro.Process/Bro.Process.csproj
@@ -128,9 +128,7 @@
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
- <None Include="Setting.json">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </None>
+ <None Include="Setting.json" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Forms\Calibration\FrmCalibration_9P.resx">
diff --git a/src/Bro.UI.Config/MenuForms/FrmConfig.cs b/src/Bro.UI.Config/MenuForms/FrmConfig.cs
index a216390..16331d8 100644
--- a/src/Bro.UI.Config/MenuForms/FrmConfig.cs
+++ b/src/Bro.UI.Config/MenuForms/FrmConfig.cs
@@ -51,13 +51,15 @@
private void buttonCreateConfig_Click(object sender, EventArgs e)
{
- string pCode = Interaction.InputBox("璇疯緭鍏ヤ骇鍝佺紪鐮�", "浜у搧缂栫爜", "", 100, 100);
+ string pCode = Interaction.InputBox("璇疯緭鍏ヤ骇鍝佺紪鐮�", "浜у搧缂栫爜","",0,0);
if (string.IsNullOrWhiteSpace(pCode))
{
MessageBox.Show("璇疯緭鍏ヤ骇鍝佺紪鐮侊紒");
return;
}
+ Process.CreateNewConfig(propGrid.SelectedObject as IProcessConfig, pCode);
+ MessageBox.Show("鍒涘缓鏂伴厤缃畬鎴�");
}
}
}
--
Gitblit v1.8.0