[#82] BaseDataWindow: Fixed error handling after first error to allow saving changes
Test / Run tests (push) Successful in 2m8s
Test / Run tests (push) Successful in 2m8s
This commit is contained in:
@@ -12,8 +12,6 @@ using System.Windows.Input;
|
||||
namespace Elwig.Windows {
|
||||
public partial class BaseDataWindow : AdministrationWindow {
|
||||
|
||||
protected AppDbContext? EditContext;
|
||||
|
||||
public BaseDataWindow() {
|
||||
InitializeComponent();
|
||||
RequiredInputs = [
|
||||
@@ -189,31 +187,30 @@ namespace Elwig.Windows {
|
||||
}
|
||||
|
||||
private async Task InitEditing() {
|
||||
EditContext = new AppDbContext();
|
||||
await BranchesInitEditing(EditContext);
|
||||
await WineAttributesInitEditing(EditContext);
|
||||
await WineCultivationsInitEditing(EditContext);
|
||||
await AreaCommitmentTypesInitEditing(EditContext);
|
||||
await SeasonsInitEditing(EditContext);
|
||||
await ModifiersInitEditing(EditContext);
|
||||
using var ctx = new AppDbContext();
|
||||
await BranchesInitEditing(ctx);
|
||||
await WineAttributesInitEditing(ctx);
|
||||
await WineCultivationsInitEditing(ctx);
|
||||
await AreaCommitmentTypesInitEditing(ctx);
|
||||
await SeasonsInitEditing(ctx);
|
||||
await ModifiersInitEditing(ctx);
|
||||
}
|
||||
|
||||
private async Task Save() {
|
||||
await UpdateClientParameters(App.Client);
|
||||
await UpdateParameters(Utils.CurrentLastSeason);
|
||||
using var tx = await EditContext!.Database.BeginTransactionAsync();
|
||||
await BranchesSave(EditContext!);
|
||||
await WineAttributesSave(EditContext!);
|
||||
await WineCultivationsSave(EditContext!);
|
||||
await AreaCommitmentTypesSave(EditContext!);
|
||||
await SeasonsSave(EditContext!);
|
||||
await ModifiersSave(EditContext!);
|
||||
using var ctx = new AppDbContext();
|
||||
using var tx = await ctx.Database.BeginTransactionAsync();
|
||||
await BranchesSave(ctx);
|
||||
await WineAttributesSave(ctx);
|
||||
await WineCultivationsSave(ctx);
|
||||
await AreaCommitmentTypesSave(ctx);
|
||||
await SeasonsSave(ctx);
|
||||
await ModifiersSave(ctx);
|
||||
await tx.CommitAsync();
|
||||
}
|
||||
|
||||
private async Task FinishEditing() {
|
||||
EditContext?.Dispose();
|
||||
EditContext = null;
|
||||
using var ctx = new AppDbContext();
|
||||
await BranchesFinishEditing(ctx);
|
||||
await WineAttributesFinishEditing(ctx);
|
||||
|
||||
Reference in New Issue
Block a user