[#43] SeasonFinishWindow: Do not use Context from ContextWindow any more
This commit is contained in:
@ -24,8 +24,9 @@ namespace Elwig.Windows {
|
||||
}
|
||||
|
||||
private async void SeasonInput_ValueChanged(object? sender, RoutedEventArgs? evt) {
|
||||
var s0 = await Context.Seasons.FindAsync(SeasonInput.Value);
|
||||
var s1 = await Context.Seasons.FindAsync(SeasonInput.Value + 1);
|
||||
using var ctx = new AppDbContext();
|
||||
var s0 = await ctx.Seasons.FindAsync(SeasonInput.Value);
|
||||
var s1 = await ctx.Seasons.FindAsync(SeasonInput.Value + 1);
|
||||
var valid = (s0 != null);
|
||||
var last = (s1 == null);
|
||||
CalculateBucketsButton.IsEnabled = valid && last;
|
||||
@ -42,22 +43,28 @@ namespace Elwig.Windows {
|
||||
}
|
||||
|
||||
private async void CalculateBucketsButton_Click(object sender, RoutedEventArgs evt) {
|
||||
if (SeasonInput.Value is not int year || await Context.Seasons.FindAsync(year) is not Season s)
|
||||
if (SeasonInput.Value is not int year)
|
||||
return;
|
||||
CalculateBucketsButton.IsEnabled = false;
|
||||
Mouse.OverrideCursor = Cursors.AppStarting;
|
||||
|
||||
try {
|
||||
using var ctx = new AppDbContext();
|
||||
if (await ctx.Seasons.FindAsync(year) is not Season s)
|
||||
return;
|
||||
|
||||
s.Billing_AllowAttrsIntoLower = AllowAttrIntoLowerInput.IsChecked ?? false;
|
||||
s.Billing_AvoidUnderDeliveries = AvoidUnderDeliveriesInput.IsChecked ?? false;
|
||||
s.Billing_HonorGebunden = HonorGebundenInput.IsChecked ?? false;
|
||||
Context.Update(s);
|
||||
await Context.SaveChangesAsync();
|
||||
ctx.Update(s);
|
||||
await ctx.SaveChangesAsync();
|
||||
} catch { }
|
||||
|
||||
var b = new Billing(year);
|
||||
await b.FinishSeason();
|
||||
await b.CalculateBuckets();
|
||||
await App.HintContextChange();
|
||||
|
||||
Mouse.OverrideCursor = null;
|
||||
CalculateBucketsButton.IsEnabled = true;
|
||||
}
|
||||
@ -83,9 +90,10 @@ namespace Elwig.Windows {
|
||||
|
||||
Mouse.OverrideCursor = Cursors.AppStarting;
|
||||
try {
|
||||
var tbl1 = await OverUnderDeliveryData.ForSeason(Context.OverUnderDeliveryRows, year);
|
||||
var tbl2 = await AreaComUnderDeliveryData.ForSeason(Context.AreaComUnderDeliveryRows, year);
|
||||
var tbl3 = await MemberDeliveryPerVariantData.ForSeason(Context.MemberDeliveryPerVariantRows, year);
|
||||
using var ctx = new AppDbContext();
|
||||
var tbl1 = await OverUnderDeliveryData.ForSeason(ctx.OverUnderDeliveryRows, year);
|
||||
var tbl2 = await AreaComUnderDeliveryData.ForSeason(ctx.AreaComUnderDeliveryRows, year);
|
||||
var tbl3 = await MemberDeliveryPerVariantData.ForSeason(ctx.MemberDeliveryPerVariantRows, year);
|
||||
using var ods = new OdsFile(d.FileName);
|
||||
await ods.AddTable(tbl1);
|
||||
await ods.AddTable(tbl2);
|
||||
|
Reference in New Issue
Block a user