Delete button for deliveries works
This commit is contained in:
@ -100,8 +100,10 @@ namespace Elwig.Windows {
|
||||
protected override void UpdateButtons() {
|
||||
if (!IsEditing && !IsCreating) return;
|
||||
bool ch = HasChanged, v = IsValid;
|
||||
ResetButton.IsEnabled = (ch);
|
||||
SaveButton.IsEnabled = (v && ch);
|
||||
ResetButton.IsEnabled = ch;
|
||||
SaveButton.IsEnabled = v && ch;
|
||||
FinishButton.IsEnabled = v && ch;
|
||||
NewDeliveryPartButton.IsEnabled = v && ch;
|
||||
}
|
||||
|
||||
private async Task RefreshDeliveryList() {
|
||||
@ -219,8 +221,8 @@ namespace Elwig.Windows {
|
||||
GerebeltGewogenInput.IsChecked = p?.IsGerebelt ?? false;
|
||||
ControlUtils.SelectCheckComboBoxItems(ModifiersInput, p?.Modifiers, i => (i as Modifier)?.ModId);
|
||||
PartCommentInput.Text = p?.Comment ?? "";
|
||||
TemperatureInput.Text = p?.Temperature?.ToString() ?? "";
|
||||
AcidInput.Text = p?.Acid?.ToString() ?? "";
|
||||
TemperatureInput.Text = (p != null && p.Temperature != null) ? $"{p.Temperature:N1}" : "";
|
||||
AcidInput.Text = (p != null && p.Acid != null) ? $"{p.Acid:N1}" : "";
|
||||
LesewagenInput.IsChecked = p?.IsLesewagen ?? false;
|
||||
HandPickedInput.IsChecked = p?.IsHandPicked;
|
||||
|
||||
@ -382,7 +384,7 @@ namespace Elwig.Windows {
|
||||
AbwertenButton.IsEnabled = true;
|
||||
EditDeliveryButton.IsEnabled = true;
|
||||
ExtractDeliveryPartButton.IsEnabled = true;
|
||||
DeleteDeliveryPartButton.IsEnabled = true;
|
||||
DeleteDeliveryPartButton.IsEnabled = DeliveryList.SelectedItem is Delivery { Parts.Count: > 1 };
|
||||
} else {
|
||||
AbwertenButton.IsEnabled = false;
|
||||
EditDeliveryButton.IsEnabled = false;
|
||||
@ -469,9 +471,19 @@ namespace Elwig.Windows {
|
||||
DeleteDeliveryPartButton.IsEnabled = false;
|
||||
}
|
||||
|
||||
private void DeleteDeliveryButton_Click(object sender, RoutedEventArgs evt) {
|
||||
// TODO delete dialog
|
||||
// TODO delete delivery
|
||||
private async void DeleteDeliveryButton_Click(object sender, RoutedEventArgs evt) {
|
||||
if (DeliveryList.SelectedItem is not Delivery d)
|
||||
return;
|
||||
|
||||
var r = MessageBox.Show(
|
||||
$"Soll die Lieferung {d.LsNr} ({d.Member.AdministrativeName}, MgNr. {d.Member.MgNr}) wirklich unwiderruflich gelöscht werden?",
|
||||
"Lieferung löschen", MessageBoxButton.YesNo, MessageBoxImage.Warning, MessageBoxResult.No);
|
||||
if (r == MessageBoxResult.Yes) {
|
||||
Context.Remove(d);
|
||||
await Context.SaveChangesAsync();
|
||||
await RefreshDeliveryList();
|
||||
RefreshDeliveryParts();
|
||||
}
|
||||
}
|
||||
|
||||
private async void SaveButton_Click(object sender, RoutedEventArgs evt) {
|
||||
@ -528,8 +540,18 @@ namespace Elwig.Windows {
|
||||
// TODO extract delivery part
|
||||
}
|
||||
|
||||
private void DeleteDeliveryPartButton_Click(object sender, RoutedEventArgs evt) {
|
||||
// TODO delete delivery part
|
||||
private async void DeleteDeliveryPartButton_Click(object sender, RoutedEventArgs evt) {
|
||||
if (DeliveryPartList.SelectedItem is not DeliveryPart p)
|
||||
return;
|
||||
|
||||
var r = MessageBox.Show(
|
||||
$"Soll die Teillieferung Nr. {p.DPNr} wirklich unwiderruflich gelöscht werden?",
|
||||
"Lieferung löschen", MessageBoxButton.YesNo, MessageBoxImage.Warning, MessageBoxResult.No);
|
||||
if (r == MessageBoxResult.Yes) {
|
||||
Context.Remove(p);
|
||||
await Context.SaveChangesAsync();
|
||||
RefreshDeliveryParts();
|
||||
}
|
||||
}
|
||||
|
||||
private void ShowSaveResetCancelButtons() {
|
||||
|
Reference in New Issue
Block a user