[#14] Documents: Add DeliveryAncmtList
All checks were successful
Test / Run tests (push) Successful in 2m35s
All checks were successful
Test / Run tests (push) Successful in 2m35s
This commit is contained in:
@ -16,10 +16,14 @@ namespace Elwig.Windows {
|
||||
public DeliveryAncmtAdminViewModel ViewModel => (DeliveryAncmtAdminViewModel)DataContext;
|
||||
|
||||
private readonly RoutedCommand CtrlF = new("CtrlF", typeof(DeliveryAncmtAdminWindow), [new KeyGesture(Key.F, ModifierKeys.Control)]);
|
||||
private readonly RoutedCommand CtrlP = new("CtrlP", typeof(DeliveryAncmtAdminWindow), [new KeyGesture(Key.P, ModifierKeys.Control)]);
|
||||
private readonly RoutedCommand CtrlShiftP = new("CtrlShiftP", typeof(DeliveryAncmtAdminWindow), [new KeyGesture(Key.P, ModifierKeys.Control | ModifierKeys.Shift)]);
|
||||
|
||||
public DeliveryAncmtAdminWindow() {
|
||||
InitializeComponent();
|
||||
CommandBindings.Add(new CommandBinding(CtrlF, FocusSearchInput));
|
||||
CommandBindings.Add(new CommandBinding(CtrlP, Menu_DeliveryAncmtList_ShowSelected_Click));
|
||||
CommandBindings.Add(new CommandBinding(CtrlShiftP, Menu_DeliveryAncmtList_PrintSelected_Click));
|
||||
ExemptInputs = [
|
||||
SearchInput, SeasonInput, OnlyUpcomingInput, DeliveryScheduleList, DeliveryAncmtList,
|
||||
];
|
||||
@ -51,6 +55,30 @@ namespace Elwig.Windows {
|
||||
}
|
||||
}
|
||||
|
||||
private async void Menu_DeliveryAncmtList_SaveSelected_Click(object sender, RoutedEventArgs evt) {
|
||||
if (DeliveryScheduleList.SelectedItem is not DeliverySchedule s)
|
||||
return;
|
||||
await ViewModel.GenerateDeliveryAncmtList(DeliveryAncmtService.ExportSubject.FromSelectedSchedule, ExportMode.SaveList);
|
||||
}
|
||||
|
||||
private async void Menu_DeliveryAncmtList_ShowSelected_Click(object sender, RoutedEventArgs evt) {
|
||||
if (DeliveryScheduleList.SelectedItem is not DeliverySchedule s)
|
||||
return;
|
||||
await ViewModel.GenerateDeliveryAncmtList(DeliveryAncmtService.ExportSubject.FromSelectedSchedule, ExportMode.Show);
|
||||
}
|
||||
|
||||
private async void Menu_DeliveryAncmtList_SavePdfSelected_Click(object sender, RoutedEventArgs evt) {
|
||||
if (DeliveryScheduleList.SelectedItem is not DeliverySchedule s)
|
||||
return;
|
||||
await ViewModel.GenerateDeliveryAncmtList(DeliveryAncmtService.ExportSubject.FromSelectedSchedule, ExportMode.SavePdf);
|
||||
}
|
||||
|
||||
private async void Menu_DeliveryAncmtList_PrintSelected_Click(object sender, RoutedEventArgs evt) {
|
||||
if (DeliveryScheduleList.SelectedItem is not DeliverySchedule s)
|
||||
return;
|
||||
await ViewModel.GenerateDeliveryAncmtList(DeliveryAncmtService.ExportSubject.FromSelectedSchedule, ExportMode.Print);
|
||||
}
|
||||
|
||||
private async Task RefreshDeliveryScheduleList() {
|
||||
using var ctx = new AppDbContext();
|
||||
var deliverySchedules = await ctx.DeliverySchedules
|
||||
@ -148,6 +176,17 @@ namespace Elwig.Windows {
|
||||
|
||||
private async void DeliveryScheduleList_SelectionChanged(object sender, RoutedEventArgs evt) {
|
||||
await RefreshList();
|
||||
if (DeliveryScheduleList.SelectedItem is DeliverySchedule s) {
|
||||
Menu_DeliveryAncmtList_SaveSelected.IsEnabled = !IsEditing && !IsCreating;
|
||||
Menu_DeliveryAncmtList_ShowSelected.IsEnabled = !IsEditing && !IsCreating;
|
||||
Menu_DeliveryAncmtList_SavePdfSelected.IsEnabled = !IsEditing && !IsCreating;
|
||||
Menu_DeliveryAncmtList_PrintSelected.IsEnabled = !IsEditing && !IsCreating;
|
||||
} else {
|
||||
Menu_DeliveryAncmtList_SaveSelected.IsEnabled = false;
|
||||
Menu_DeliveryAncmtList_ShowSelected.IsEnabled = false;
|
||||
Menu_DeliveryAncmtList_SavePdfSelected.IsEnabled = false;
|
||||
Menu_DeliveryAncmtList_PrintSelected.IsEnabled = false;
|
||||
}
|
||||
}
|
||||
|
||||
private void DeliveryScheduleInput_SelectionChanged(object sender, RoutedEventArgs evt) {
|
||||
|
Reference in New Issue
Block a user