43 lines
1.3 KiB
C#
43 lines
1.3 KiB
C#
using Microsoft.Win32;
|
|
using System.IO;
|
|
|
|
namespace RhSolutions.Services;
|
|
|
|
public class AddInConfiguration : IAddInConfiguration
|
|
{
|
|
private RegistryKey _rootKey;
|
|
private string _priceListPath;
|
|
private Dictionary<string, string> _priceListHeaders;
|
|
|
|
public event IAddInConfiguration.SettingsHandler OnSettingsChange;
|
|
|
|
public AddInConfiguration()
|
|
{
|
|
_rootKey = Registry.CurrentUser.CreateSubKey(@"SOFTWARE\RhSolutions\RhSolutions-AddIn");
|
|
_priceListPath = (string)_rootKey.GetValue("PriceListPath");
|
|
_priceListHeaders = new()
|
|
{
|
|
["Amount"] = "Кол-во",
|
|
["OldSku"] = "Прежний материал",
|
|
["Sku"] = "Актуальный материал",
|
|
["ProductLine"] = "Программа",
|
|
["Name"] = "Наименование",
|
|
["Measure"] = "Ед. изм."
|
|
};
|
|
}
|
|
|
|
public string GetPriceListFileName() => Path.GetFileName(_priceListPath);
|
|
public Dictionary<string, string> GetPriceListHeaders() => _priceListHeaders;
|
|
public string GetPriceListPath() => _priceListPath;
|
|
|
|
public void SaveSettings()
|
|
{
|
|
_rootKey.SetValue("PriceListPath", _priceListPath);
|
|
OnSettingsChange.Invoke();
|
|
}
|
|
|
|
public void SetPriceListPath(string value)
|
|
{
|
|
_priceListPath = value;
|
|
}
|
|
} |