[#57] PaymentAdjustmentWindow: Use Task.Run()

This commit is contained in:
2025-07-07 23:59:41 +02:00
parent 070dda1bde
commit 6eaa928147

View File

@ -156,7 +156,7 @@ namespace Elwig.Windows {
} }
private async void AutoAdjustBsButton_Click(object sender, RoutedEventArgs evt) { private async void AutoAdjustBsButton_Click(object sender, RoutedEventArgs evt) {
Mouse.OverrideCursor = Cursors.AppStarting; Mouse.OverrideCursor = Cursors.Wait;
try { try {
int? kg = AllowanceKgInput.Text == "" ? null : int.Parse(AllowanceKgInput.Text); int? kg = AllowanceKgInput.Text == "" ? null : int.Parse(AllowanceKgInput.Text);
double? bs = AllowanceBsInput.Text == "" ? null : double.Parse(AllowanceBsInput.Text); double? bs = AllowanceBsInput.Text == "" ? null : double.Parse(AllowanceBsInput.Text);
@ -169,10 +169,12 @@ namespace Elwig.Windows {
App.Client.AutoAdjustBs.AllowanceKgPerBs = kgPerBs; App.Client.AutoAdjustBs.AllowanceKgPerBs = kgPerBs;
App.Client.AutoAdjustBs.AllowancePercent = percent; App.Client.AutoAdjustBs.AllowancePercent = percent;
App.Client.AutoAdjustBs.MinBs = minBs; App.Client.AutoAdjustBs.MinBs = minBs;
await App.Client.UpdateValues();
await Task.Run(async () => {
await App.Client.UpdateValues();
var b = new Billing(Year); var b = new Billing(Year);
await b.AutoAdjustBusinessShares(new DateOnly(Year, 11, 30), kg ?? default, bs ?? default, kgPerBs ?? default, percent / 100.0 ?? default, minBs ?? default); await b.AutoAdjustBusinessShares(new DateOnly(Year, 11, 30), kg ?? default, bs ?? default, kgPerBs ?? default, percent / 100.0 ?? default, minBs ?? default);
});
App.HintContextChange(); App.HintContextChange();
} catch (Exception exc) { } catch (Exception exc) {
var str = "Der Eintrag konnte nicht in der Datenbank aktualisiert werden!\n\n" + exc.Message; var str = "Der Eintrag konnte nicht in der Datenbank aktualisiert werden!\n\n" + exc.Message;
@ -183,10 +185,12 @@ namespace Elwig.Windows {
} }
private async void UnAdjustBsButton_Click(object sender, RoutedEventArgs evt) { private async void UnAdjustBsButton_Click(object sender, RoutedEventArgs evt) {
Mouse.OverrideCursor = Cursors.AppStarting; Mouse.OverrideCursor = Cursors.Wait;
try { try {
await Task.Run(async () => {
var b = new Billing(Year); var b = new Billing(Year);
await b.UnAdjustBusinessShares(); await b.UnAdjustBusinessShares();
});
App.HintContextChange(); App.HintContextChange();
} catch (Exception exc) { } catch (Exception exc) {
var str = "Der Eintrag konnte nicht in der Datenbank aktualisiert werden!\n\n" + exc.Message; var str = "Der Eintrag konnte nicht in der Datenbank aktualisiert werden!\n\n" + exc.Message;
@ -281,8 +285,9 @@ namespace Elwig.Windows {
private async void CustomButton_Click(object sender, RoutedEventArgs evt) { private async void CustomButton_Click(object sender, RoutedEventArgs evt) {
if (MemberInput.SelectedItem is not Member m) return; if (MemberInput.SelectedItem is not Member m) return;
Mouse.OverrideCursor = Cursors.AppStarting; Mouse.OverrideCursor = Cursors.Wait;
try { try {
await Task.Run(async () => {
using var ctx = new AppDbContext(); using var ctx = new AppDbContext();
if (CustomPayments?.TryGetValue(m.MgNr, out var p) == true) { if (CustomPayments?.TryGetValue(m.MgNr, out var p) == true) {
ctx.Remove(p); ctx.Remove(p);
@ -304,6 +309,7 @@ namespace Elwig.Windows {
}); });
} }
await ctx.SaveChangesAsync(); await ctx.SaveChangesAsync();
});
} catch (Exception exc) { } catch (Exception exc) {
var str = "Der Eintrag konnte nicht in der Datenbank aktualisiert werden!\n\n" + exc.Message; var str = "Der Eintrag konnte nicht in der Datenbank aktualisiert werden!\n\n" + exc.Message;
if (exc.InnerException != null) str += "\n\n" + exc.InnerException.Message; if (exc.InnerException != null) str += "\n\n" + exc.InnerException.Message;