using System; using System.Collections.Generic; using System.Text; using System.Windows.Input; using XLIMS.CONTRACT; using XLIMS.DATA.Models; using XLIMS.MVVM.Base; namespace XLIMS.SP.ViewModels { public class SpoiViewModel:ViewModelBase { #region Constructor public SpoiViewModel(ILimsService limsService, Spoi spoi = null) { _limsService = limsService; if (spoi != null) _spoi = spoi; else _spoi = new Spoi(); } #endregion //Constructor #region Events #endregion //Events #region Fields private readonly ILimsService _limsService; private readonly Spoi _spoi; #endregion //Fields #region Properties public string? Nmoi { get => _spoi.Nmoi; set { _spoi.Nmoi = value; OnPropertyChanged(); } } #endregion //Properties #region Methods private async Task SaveAsync() { if (_spoi.Id == 0) await _limsService.Spois.AddAsync(_spoi); else await _limsService.Spois.UpdateAsync(_spoi); } public async Task Remove() { await _limsService.Spois.RemoveAsync(_spoi); } #endregion //Methods #region Commands public ICommand SaveCommand => new AsyncRelayCommand(SaveAsync); #endregion //Commands } }