|
|
|
@ -76,17 +76,21 @@
@@ -76,17 +76,21 @@
|
|
|
|
|
_messageStore.Clear(); |
|
|
|
|
if (_editContext.Validate()) |
|
|
|
|
{ |
|
|
|
|
Seq<BaseError> errorMessage = IsEdit ? |
|
|
|
|
(await Mediator.Send(_model.ToUpdate())).LeftToSeq() : |
|
|
|
|
(await Mediator.Send(_model.ToCreate())).LeftToSeq(); |
|
|
|
|
Either<BaseError, ProgramScheduleViewModel> result = IsEdit ? |
|
|
|
|
await Mediator.Send(_model.ToUpdate()) : |
|
|
|
|
await Mediator.Send(_model.ToCreate()); |
|
|
|
|
|
|
|
|
|
errorMessage.HeadOrNone().Match( |
|
|
|
|
result.Match( |
|
|
|
|
programSchedule => |
|
|
|
|
{ |
|
|
|
|
string destination = IsEdit ? "/schedules" : $"/schedules/{programSchedule.Id}/items"; |
|
|
|
|
NavigationManager.NavigateTo(destination); |
|
|
|
|
}, |
|
|
|
|
error => |
|
|
|
|
{ |
|
|
|
|
Snackbar.Add(error.Value, Severity.Error); |
|
|
|
|
Logger.LogError("Unexpected error saving schedule: {Error}", error.Value); |
|
|
|
|
}, |
|
|
|
|
() => NavigationManager.NavigateTo("/schedules")); |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|