|
using System;
|
using System.IO;
|
using System.Text;
|
|
namespace IStation.Common
|
{
|
public class AnaSetting
|
{
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <returns></returns>
|
public static CalcModel.AnaSetting Initial()
|
{
|
if (IStation.AnaGlobalParas.Setting == null)
|
{
|
CalcModel.AnaSetting anaSetting = null;
|
lock (_locker)
|
{
|
anaSetting = ReadFile();
|
}
|
|
IStation.AnaGlobalParas.Setting = anaSetting;
|
}
|
|
|
return IStation.AnaGlobalParas.Setting;
|
}
|
|
public static CalcModel.AnaSetting ReadFile()
|
{
|
var jsonFileName = System.IO.Path.Combine(IStation.DataFolderHelper.GetRootPath(), "ana_settings.json");
|
if (File.Exists(jsonFileName))
|
{
|
var json = File.ReadAllText(jsonFileName);
|
var setting = JsonHelper.Json2Object<CalcModel.AnaSetting>(json);
|
if(setting.OptimalPumpIndexSequence == null)
|
{
|
setting.OptimalPumpIndexSequence = new int[] { 1, 4, 2, 0, 3 };
|
}
|
return setting;
|
}
|
else
|
{
|
IStation.LogHelper.Error("配置读取失败,路径:" + System.IO.Path.Combine(IStation.DataFolderHelper.GetRootPath(), "ana_settings.json"));
|
|
return new CalcModel.AnaSetting();
|
}
|
}
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="anaSetting"></param>
|
/// <returns></returns>
|
public static bool SaveSetting(CalcModel.AnaSetting anaSetting)
|
{
|
if (anaSetting == null)
|
{
|
return false;
|
}
|
|
|
IStation.AnaGlobalParas.Setting = anaSetting;
|
try
|
{
|
var json = JsonHelper.Object2FormatJson(anaSetting);
|
var jsonFileName = System.IO.Path.Combine(IStation.DataFolderHelper.GetRootPath(), "ana_settings.json");
|
File.WriteAllText(jsonFileName, json, Encoding.UTF8);
|
|
return true;
|
}
|
catch (Exception ex)
|
{
|
IStation.LogHelper.Error("General Save Setting Error: "+ex.Message+ ",配置读取失败,路径:" + System.IO.Path.Combine(IStation.DataFolderHelper.GetRootPath()));
|
return false;
|
}
|
}
|
|
private static readonly object _locker = new object();
|
|
|
}
|
}
|