You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
188 lines
7.7 KiB
188 lines
7.7 KiB
using log4net; |
|
using SparkClient.Model.Helper; |
|
using SparkClient.ViewModel.Grading; |
|
|
|
namespace SparkClient.ViewModel.Configuration.SettingsPages; |
|
/// <summary> |
|
/// 系统配置中颜色配置页面VM |
|
/// </summary> |
|
public class ModelColorSetPageVM : BaseViewModel |
|
{ |
|
private static readonly ILog Logger = LogManager.GetLogger(typeof(ModelColorSetPageVM)); |
|
private string _FACET_COLOR; |
|
private string _BORDER_COLOR; |
|
private string _SELECTED_FACET_COLOR; |
|
private string _SELECTED_BORDER_COLOR; |
|
private string _SELECTED_TYPE_COLOR; |
|
private string _SELECTED_FONT_COLOR; |
|
private string _RULER_COLOR; |
|
private string _ARROW_COLOR; |
|
private string _BLEMISH_FACET_COLOR; |
|
private string _TABLE_FACET_COLOR; |
|
private string _UPPER_MAIN_FACET_COLOR; |
|
private string _STAR_FACET_COLOR; |
|
private string _UPPER_GIRDLE_FACET_COLOR; |
|
private string _GIRDLE_FACET_COLOR; |
|
private string _PAVILION_MAIN_FACET_COLOR; |
|
private string _LOWER_GIRDLE_FACET_COLOR; |
|
private string _CULET_COLOR; |
|
/// <summary> |
|
/// 面部颜色 |
|
/// </summary> |
|
public string FACET_COLOR { get { return _FACET_COLOR; } set { _FACET_COLOR = value; OnPropertyChanged(nameof(FACET_COLOR)); } } |
|
/// <summary> |
|
/// 边框颜色 |
|
/// </summary> |
|
public string BORDER_COLOR { get { return _BORDER_COLOR; } set { _BORDER_COLOR = value; OnPropertyChanged(nameof(BORDER_COLOR)); } } |
|
/// <summary> |
|
/// 选中面颜色 |
|
/// </summary> |
|
public string SELECTED_FACET_COLOR { get { return _SELECTED_FACET_COLOR; } set { _SELECTED_FACET_COLOR = value; OnPropertyChanged(nameof(SELECTED_FACET_COLOR)); } } |
|
/// <summary> |
|
/// 选中面边框颜色 |
|
/// </summary> |
|
public string SELECTED_BORDER_COLOR { get { return _SELECTED_BORDER_COLOR; } set { _SELECTED_BORDER_COLOR = value; OnPropertyChanged(nameof(SELECTED_BORDER_COLOR)); } } |
|
/// <summary> |
|
/// 选中面同类面颜色 |
|
/// </summary> |
|
public string SELECTED_TYPE_COLOR { get { return _SELECTED_TYPE_COLOR; } set { _SELECTED_TYPE_COLOR = value; OnPropertyChanged(nameof(SELECTED_TYPE_COLOR)); } } |
|
/// <summary> |
|
/// 选中面文字信息颜色 |
|
/// </summary> |
|
public string SELECTED_FONT_COLOR { get { return _SELECTED_FONT_COLOR; } set { _SELECTED_FONT_COLOR = value; OnPropertyChanged(nameof(SELECTED_FONT_COLOR)); } } |
|
/// <summary> |
|
/// 标识线条颜色 |
|
/// </summary> |
|
public string RULER_COLOR { get { return _RULER_COLOR; } set { _RULER_COLOR = value; OnPropertyChanged(nameof(RULER_COLOR)); } } |
|
/// <summary> |
|
/// 正方向标记颜色 |
|
/// </summary> |
|
public string ARROW_COLOR { get { return _ARROW_COLOR; } set { _ARROW_COLOR = value; OnPropertyChanged(nameof(ARROW_COLOR)); } } |
|
/// <summary> |
|
/// 瑕疵面颜色 |
|
/// </summary> |
|
public string BLEMISH_FACET_COLOR { get { return _BLEMISH_FACET_COLOR; } set { _BLEMISH_FACET_COLOR = value; OnPropertyChanged(nameof(BLEMISH_FACET_COLOR)); } } |
|
/// <summary> |
|
/// 台面颜色 |
|
/// </summary> |
|
public string TABLE_FACET_COLOR { get { return _TABLE_FACET_COLOR; } set { _TABLE_FACET_COLOR = value; OnPropertyChanged(nameof(TABLE_FACET_COLOR)); } } |
|
/// <summary> |
|
/// 风筝面颜色 |
|
/// </summary> |
|
public string UPPER_MAIN_FACET_COLOR { get { return _UPPER_MAIN_FACET_COLOR; } set { _UPPER_MAIN_FACET_COLOR = value; OnPropertyChanged(nameof(UPPER_MAIN_FACET_COLOR)); } } |
|
/// <summary> |
|
/// 星刻面颜色 |
|
/// </summary> |
|
public string STAR_FACET_COLOR { get { return _STAR_FACET_COLOR; } set { _STAR_FACET_COLOR = value; OnPropertyChanged(nameof(STAR_FACET_COLOR)); } } |
|
/// <summary> |
|
/// 上腰面颜色 |
|
/// </summary> |
|
public string UPPER_GIRDLE_FACET_COLOR { get { return _UPPER_GIRDLE_FACET_COLOR; } set { _UPPER_GIRDLE_FACET_COLOR = value; OnPropertyChanged(nameof(UPPER_GIRDLE_FACET_COLOR)); } } |
|
/// <summary> |
|
/// 腰面颜色 |
|
/// </summary> |
|
public string GIRDLE_FACET_COLOR { get { return _GIRDLE_FACET_COLOR; } set { _GIRDLE_FACET_COLOR = value; OnPropertyChanged(nameof(GIRDLE_FACET_COLOR)); } } |
|
/// <summary> |
|
/// 亭部主刻面颜色 |
|
/// </summary> |
|
public string PAVILION_MAIN_FACET_COLOR { get { return _PAVILION_MAIN_FACET_COLOR; } set { _PAVILION_MAIN_FACET_COLOR = value; OnPropertyChanged(nameof(PAVILION_MAIN_FACET_COLOR)); } } |
|
/// <summary> |
|
/// 下腰面颜色 |
|
/// </summary> |
|
public string LOWER_GIRDLE_FACET_COLOR { get { return _LOWER_GIRDLE_FACET_COLOR; } set { _LOWER_GIRDLE_FACET_COLOR = value; OnPropertyChanged(nameof(LOWER_GIRDLE_FACET_COLOR)); } } |
|
/// <summary> |
|
/// 底面颜色 |
|
/// </summary> |
|
public string CULET_COLOR { get { return _CULET_COLOR; } set { _CULET_COLOR = value; OnPropertyChanged(nameof(CULET_COLOR)); } } |
|
|
|
private Dictionary<string, string> colors; |
|
public ModelColorSetPageVM() |
|
{ |
|
InitSetting(); |
|
} |
|
/// <summary> |
|
/// 页面初始化参数赋值 |
|
/// </summary> |
|
private void InitSetting() |
|
{ |
|
try |
|
{ |
|
colors = new Dictionary<string, string>(); |
|
colors.Add("FACET_COLOR", "面部颜色"); |
|
colors.Add("BORDER_COLOR", "边框颜色"); |
|
colors.Add("SELECTED_FACET_COLOR", "选中面颜色"); |
|
colors.Add("SELECTED_BORDER_COLOR", "选中面边框颜色"); |
|
colors.Add("SELECTED_TYPE_COLOR", "选中面同类面颜色"); |
|
colors.Add("SELECTED_FONT_COLOR", "选中面文字信息颜色"); |
|
colors.Add("RULER_COLOR", "标识线条颜色"); |
|
colors.Add("ARROW_COLOR", "正方向标记颜色"); |
|
colors.Add("BLEMISH_FACET_COLOR", "瑕疵面颜色"); |
|
colors.Add("TABLE_FACET_COLOR", "台面颜色"); |
|
colors.Add("UPPER_MAIN_FACET_COLOR", "风筝面颜色"); |
|
colors.Add("STAR_FACET_COLOR", "星刻面颜色"); |
|
colors.Add("UPPER_GIRDLE_FACET_COLOR", "上腰面颜色"); |
|
colors.Add("GIRDLE_FACET_COLOR", "腰面颜色"); |
|
colors.Add("PAVILION_MAIN_FACET_COLOR", "亭部主刻面颜色"); |
|
colors.Add("LOWER_GIRDLE_FACET_COLOR", "下腰面颜色"); |
|
colors.Add("CULET_COLOR", "底面颜色"); |
|
|
|
foreach (var color in colors) |
|
{ |
|
setColor(color.Key); |
|
} |
|
} |
|
catch (Exception ex) |
|
{ |
|
Logger.Error($"全局异常捕获:{ex.Message}", ex); |
|
} |
|
} |
|
/// <summary> |
|
/// 颜色数据更新 |
|
/// </summary> |
|
/// <param name="param"></param> |
|
/// <returns></returns> |
|
public bool SaveUpdate(object param) |
|
{ |
|
try |
|
{ |
|
DataBaseHelper.BeginTransaction(); |
|
foreach (var color in colors) |
|
{ |
|
updateDataBase(color.Key); |
|
} |
|
DataBaseHelper.commit(); |
|
return true; |
|
} |
|
catch (Exception ex) |
|
{ |
|
Logger.Error($"全局异常捕获:{ex.Message}", ex); |
|
return false; |
|
} |
|
} |
|
private void updateDataBase(string SETTING_ID) |
|
{ |
|
Type type = this.GetType(); |
|
Settings colorData = new Settings() |
|
{ |
|
Key = SETTING_ID, |
|
ItemName = colors[SETTING_ID], |
|
Value = (string)type.GetProperty(SETTING_ID).GetValue(this), |
|
}; |
|
colorData.insert(); |
|
} |
|
/// <summary> |
|
/// 画面中颜色属性赋值 |
|
/// </summary> |
|
/// <param name="SETTING_ID"></param> |
|
private void setColor(string SETTING_ID) |
|
{ |
|
var value = Settings.SelectValueById(SETTING_ID); |
|
if (value == null || string.IsNullOrEmpty(value)) |
|
{ |
|
value = "#FF000000"; |
|
} |
|
Type type = this.GetType(); |
|
type.GetProperty(SETTING_ID).SetValue(this, value); |
|
} |
|
|
|
} |