Helpers: Add enum ExportMode
This commit is contained in:
@ -146,31 +146,31 @@ namespace Elwig.Windows {
|
||||
private async void Menu_DeliveryNote_Show_Click(object sender, RoutedEventArgs evt) {
|
||||
if (DeliveryList.SelectedItem is not Delivery d)
|
||||
return;
|
||||
await GenerateDeliveryNote(d.Year, d.DId, 0);
|
||||
await GenerateDeliveryNote(d.Year, d.DId, ExportMode.Show);
|
||||
}
|
||||
|
||||
private async void Menu_DeliveryNote_Print_Click(object sender, RoutedEventArgs evt) {
|
||||
if (DeliveryList.SelectedItem is not Delivery d)
|
||||
return;
|
||||
await GenerateDeliveryNote(d.Year, d.DId, 1);
|
||||
await GenerateDeliveryNote(d.Year, d.DId, ExportMode.Print);
|
||||
}
|
||||
|
||||
private async void Menu_DeliveryNote_Email_Click(object sender, RoutedEventArgs evt) {
|
||||
if (DeliveryList.SelectedItem is not Delivery d)
|
||||
return;
|
||||
await GenerateDeliveryNote(d.Year, d.DId, 2);
|
||||
await GenerateDeliveryNote(d.Year, d.DId, ExportMode.Email);
|
||||
}
|
||||
|
||||
private static async Task GenerateDeliveryNote(int year, int did, int mode) {
|
||||
private static async Task GenerateDeliveryNote(int year, int did, ExportMode mode) {
|
||||
Mouse.OverrideCursor = Cursors.AppStarting;
|
||||
try {
|
||||
using var ctx = new AppDbContext();
|
||||
var d = (await ctx.Deliveries.FindAsync(year, did))!;
|
||||
using var doc = new DeliveryNote(d, ctx);
|
||||
await doc.Generate();
|
||||
if (mode == 1 && !App.Config.Debug) {
|
||||
if (mode == ExportMode.Print && !App.Config.Debug) {
|
||||
await doc.Print();
|
||||
} else if (mode == 2) {
|
||||
} else if (mode == ExportMode.Email) {
|
||||
var success = await Utils.SendEmail(d.Member, $"{DeliveryNote.Name} Nr. {d.LsNr}", $"Im Anhang finden Sie den {DeliveryNote.Name} Nr. {d.LsNr}", [doc]);
|
||||
if (success)
|
||||
MessageBox.Show("Die E-Mail wurde erfolgreich verschickt!", "E-Mail verschickt",
|
||||
@ -202,30 +202,30 @@ namespace Elwig.Windows {
|
||||
}
|
||||
|
||||
private async void Menu_DeliveryJournal_SaveToday_Click(object sender, RoutedEventArgs evt) {
|
||||
await GenerateDeliveryJournal(1, 0);
|
||||
await GenerateDeliveryJournal(1, ExportMode.SaveList);
|
||||
}
|
||||
|
||||
private async void Menu_DeliveryJournal_ShowToday_Click(object sender, RoutedEventArgs evt) {
|
||||
await GenerateDeliveryJournal(1, 1);
|
||||
await GenerateDeliveryJournal(1, ExportMode.Show);
|
||||
}
|
||||
|
||||
private async void Menu_DeliveryJournal_PrintToday_Click(object sender, RoutedEventArgs evt) {
|
||||
await GenerateDeliveryJournal(1, 2);
|
||||
await GenerateDeliveryJournal(1, ExportMode.Print);
|
||||
}
|
||||
|
||||
private async void Menu_DeliveryJournal_SaveFilters_Click(object sender, RoutedEventArgs evt) {
|
||||
await GenerateDeliveryJournal(0, 0);
|
||||
await GenerateDeliveryJournal(0, ExportMode.SaveList);
|
||||
}
|
||||
|
||||
private async void Menu_DeliveryJournal_ShowFilters_Click(object sender, RoutedEventArgs evt) {
|
||||
await GenerateDeliveryJournal(0, 1);
|
||||
await GenerateDeliveryJournal(0, ExportMode.Show);
|
||||
}
|
||||
|
||||
private async void Menu_DeliveryJournal_PrintFilters_Click(object sender, RoutedEventArgs evt) {
|
||||
await GenerateDeliveryJournal(0, 2);
|
||||
await GenerateDeliveryJournal(0, ExportMode.Print);
|
||||
}
|
||||
|
||||
private async Task GenerateDeliveryJournal(int modeWho, int modeWhat) {
|
||||
private async Task GenerateDeliveryJournal(int modeWho, ExportMode exportMode) {
|
||||
using var ctx = new AppDbContext();
|
||||
IQueryable<DeliveryPart> query;
|
||||
List<string> filterNames = [];
|
||||
@ -246,7 +246,7 @@ namespace Elwig.Windows {
|
||||
.ThenBy(p => p.Delivery.LsNr)
|
||||
.ThenBy(p => p.DPNr);
|
||||
|
||||
if (modeWhat == 0) {
|
||||
if (exportMode == ExportMode.SaveList) {
|
||||
var d = new SaveFileDialog() {
|
||||
FileName = $"{DeliveryJournal.Name}.ods",
|
||||
DefaultExt = "ods",
|
||||
@ -270,7 +270,7 @@ namespace Elwig.Windows {
|
||||
var data = await DeliveryJournalData.FromQuery(query, filterNames);
|
||||
using var doc = new DeliveryJournal(string.Join(" / ", filterNames), data);
|
||||
await doc.Generate();
|
||||
if (modeWhat == 2 && !App.Config.Debug) {
|
||||
if (exportMode == ExportMode.Print && !App.Config.Debug) {
|
||||
await doc.Print();
|
||||
} else {
|
||||
doc.Show();
|
||||
@ -283,22 +283,22 @@ namespace Elwig.Windows {
|
||||
}
|
||||
|
||||
private async void Menu_WineQualityStatistics_ShowToday_Click(object sender, RoutedEventArgs evt) {
|
||||
await GenerateWineQualityStatistics(1, 1);
|
||||
await GenerateWineQualityStatistics(1, ExportMode.Show);
|
||||
}
|
||||
|
||||
private async void Menu_WineQualityStatistics_PrintToday_Click(object sender, RoutedEventArgs evt) {
|
||||
await GenerateWineQualityStatistics(1, 2);
|
||||
await GenerateWineQualityStatistics(1, ExportMode.Print);
|
||||
}
|
||||
|
||||
private async void Menu_WineQualityStatistics_ShowFilters_Click(object sender, RoutedEventArgs evt) {
|
||||
await GenerateWineQualityStatistics(0, 1);
|
||||
await GenerateWineQualityStatistics(0, ExportMode.Show);
|
||||
}
|
||||
|
||||
private async void Menu_WineQualityStatistics_PrintFilters_Click(object sender, RoutedEventArgs evt) {
|
||||
await GenerateWineQualityStatistics(0, 2);
|
||||
await GenerateWineQualityStatistics(0, ExportMode.Print);
|
||||
}
|
||||
|
||||
private async Task GenerateWineQualityStatistics(int modeWho, int modeWhat) {
|
||||
private async Task GenerateWineQualityStatistics(int modeWho, ExportMode exportMode) {
|
||||
using var ctx = new AppDbContext();
|
||||
IQueryable<DeliveryPart> query;
|
||||
List<string> filterNames = [];
|
||||
@ -318,7 +318,7 @@ namespace Elwig.Windows {
|
||||
var data = await WineQualityStatisticsData.FromQuery(query);
|
||||
using var doc = new WineQualityStatistics(string.Join(" / ", filterNames), data);
|
||||
await doc.Generate();
|
||||
if (modeWhat == 2 && !App.Config.Debug) {
|
||||
if (exportMode == ExportMode.Print && !App.Config.Debug) {
|
||||
await doc.Print();
|
||||
} else {
|
||||
doc.Show();
|
||||
|
Reference in New Issue
Block a user