55 lines
1.4 KiB
C#
55 lines
1.4 KiB
C#
![]() |
using System.Collections.ObjectModel;
|
||
|
using CommunityToolkit.Mvvm.ComponentModel;
|
||
|
using CommunityToolkit.Mvvm.Input;
|
||
|
using CommunityToolkit.Mvvm.Messaging;
|
||
|
using Seyounth.Hyosung.Data.Models;
|
||
|
using Seyounth.Hyosung.Data.Services;
|
||
|
|
||
|
namespace Seyounth.Hyosung.ViewModels;
|
||
|
|
||
|
public partial class PalletManagerViewModel : ObservableObject
|
||
|
{
|
||
|
[ObservableProperty] private ObservableCollection<Pallet> _pallets;
|
||
|
|
||
|
private readonly IPalletService _palletService;
|
||
|
|
||
|
public PalletManagerViewModel(IPalletService palletService)
|
||
|
{
|
||
|
Pallets = new ObservableCollection<Pallet>(palletService.GetPallets());
|
||
|
_palletService = palletService;
|
||
|
}
|
||
|
|
||
|
public class SavePalletCompletedMessage
|
||
|
{
|
||
|
}
|
||
|
|
||
|
[RelayCommand]
|
||
|
private void OnDeletePallet(object obj)
|
||
|
{
|
||
|
if (obj is Pallet pallet)
|
||
|
{
|
||
|
Pallets.Remove(pallet);
|
||
|
_palletService.DeletePalletAsync(pallet);
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
Console.Write("Object is not a Pallet");
|
||
|
}
|
||
|
}
|
||
|
|
||
|
[RelayCommand]
|
||
|
private void OnSavePallet(object obj)
|
||
|
{
|
||
|
if (obj is Pallet pallet)
|
||
|
{
|
||
|
if (pallet.Id == 0)
|
||
|
{
|
||
|
_palletService.AddPalletAsync(pallet);
|
||
|
}
|
||
|
else
|
||
|
_palletService.UpdatePalletAsync(pallet);
|
||
|
}
|
||
|
|
||
|
WeakReferenceMessenger.Default.Send(new SavePalletCompletedMessage());
|
||
|
}
|
||
|
}
|