using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Linq; using System.Text; using System.Threading.Tasks; using BPASmartClient.Helper; using BPASmartClient.Model; using BPASmartClient.MorkMV1.Model; using Microsoft.Toolkit.Mvvm.ComponentModel; using Microsoft.Toolkit.Mvvm.Input; namespace BPASmartClient.MorkMV1.ViewModel { public class ParSetViewModel : ObservableObject { public ParSetViewModel() { SaveInfoCommand = new RelayCommand(SaveSettingData); ActionManage.GetInstance.Register(SaveSettingData, "初始化设定煮面时间"); typeof(DishType).GetEnumNames()?.ToList()?.ForEach(item => { DishTypeName.Add(item); }); if (Json.Data.DishLibraryParSets.Count < 5) { Json.Data.DishLibraryParSets.Clear(); for (int i = 0; i < 5; i++) { Json.Data.DishLibraryParSets.Add(new ParSet() { LocDishType = 0, Minute = 2, Second = 0, TextBlockContext = $"{i + 1}" }); } } } public RelayCommand SaveInfoCommand { get; set; } public ObservableCollection parSets { get; set; } = Json.Data.parSets; public ObservableCollection DishLibraryParSets { get; set; } = Json.Data.DishLibraryParSets; public ObservableCollection DishTypeName { get; set; } = new ObservableCollection(); private void SaveSettingData() { List values = new List(); values.Clear(); List bools = new List(); bools.Clear(); for (int i = 0; i < Json.Data.parSets.Count; i++) { values.Clear(); values.Add(Json.Data.parSets[i].Minute); values.Add(Json.Data.parSets[i].Second); bools.Add(Json.Data.parSets[i].IsShield); ActionManage.GetInstance.Send("WriteVW", new WritePar() { Address = $"VW{116 + (i * 6)}", Value = values.ToArray() }); } ActionManage.GetInstance.Send("WriteBools", new WritePar() { Address = "M260.0", Value = bools.ToArray() }); Json.Save(); } } }