using System.Windows.Input; using HandyControl.Controls; using Newtonsoft.Json; using Newtonsoft.Json.Linq; namespace SparkClient.ViewModel.Configuration; public class AlgorithmConfigVM : BaseViewModel { public ICommand SaveAlgorithmDataCommand { get; } public ICommand BeautifyJsonCommand { get; } public ICommand UglifyJsonCommand { get; } private string _AlgorithmConfigJson; public string AlgorithmConfigJson { get { return _AlgorithmConfigJson; } set { _AlgorithmConfigJson = value; OnPropertyChanged("AlgorithmConfigJson"); } } public AlgorithmConfigVM() { SaveAlgorithmDataCommand = new RelayCommand(SaveAlgorithmData); BeautifyJsonCommand = new RelayCommand(BeautifyJson); UglifyJsonCommand = new RelayCommand(UglifyJson); InitAlgorithmData(null); } /// /// 初始化算法数据 /// /// public void InitAlgorithmData(object param) { AlgorithmConfigJson = "{}"; } /// /// 保存数据 /// /// public void SaveAlgorithmData(object param) { Growl.Info("Saving Algorithm Data"); } /// /// 梅花JSON /// /// public void BeautifyJson(object param) { try { AlgorithmConfigJson = JToken.Parse(AlgorithmConfigJson).ToString(); } catch (Exception ex) { Growl.Error(ex.Message); } } /// /// 压缩JSON /// /// public void UglifyJson(object param) { AlgorithmConfigJson = JsonConvert.SerializeObject(JsonConvert.DeserializeObject(AlgorithmConfigJson)); } }