Delete button for deliveries works
This commit is contained in:
@ -100,8 +100,10 @@ namespace Elwig.Windows {
|
|||||||
protected override void UpdateButtons() {
|
protected override void UpdateButtons() {
|
||||||
if (!IsEditing && !IsCreating) return;
|
if (!IsEditing && !IsCreating) return;
|
||||||
bool ch = HasChanged, v = IsValid;
|
bool ch = HasChanged, v = IsValid;
|
||||||
ResetButton.IsEnabled = (ch);
|
ResetButton.IsEnabled = ch;
|
||||||
SaveButton.IsEnabled = (v && ch);
|
SaveButton.IsEnabled = v && ch;
|
||||||
|
FinishButton.IsEnabled = v && ch;
|
||||||
|
NewDeliveryPartButton.IsEnabled = v && ch;
|
||||||
}
|
}
|
||||||
|
|
||||||
private async Task RefreshDeliveryList() {
|
private async Task RefreshDeliveryList() {
|
||||||
@ -219,8 +221,8 @@ namespace Elwig.Windows {
|
|||||||
GerebeltGewogenInput.IsChecked = p?.IsGerebelt ?? false;
|
GerebeltGewogenInput.IsChecked = p?.IsGerebelt ?? false;
|
||||||
ControlUtils.SelectCheckComboBoxItems(ModifiersInput, p?.Modifiers, i => (i as Modifier)?.ModId);
|
ControlUtils.SelectCheckComboBoxItems(ModifiersInput, p?.Modifiers, i => (i as Modifier)?.ModId);
|
||||||
PartCommentInput.Text = p?.Comment ?? "";
|
PartCommentInput.Text = p?.Comment ?? "";
|
||||||
TemperatureInput.Text = p?.Temperature?.ToString() ?? "";
|
TemperatureInput.Text = (p != null && p.Temperature != null) ? $"{p.Temperature:N1}" : "";
|
||||||
AcidInput.Text = p?.Acid?.ToString() ?? "";
|
AcidInput.Text = (p != null && p.Acid != null) ? $"{p.Acid:N1}" : "";
|
||||||
LesewagenInput.IsChecked = p?.IsLesewagen ?? false;
|
LesewagenInput.IsChecked = p?.IsLesewagen ?? false;
|
||||||
HandPickedInput.IsChecked = p?.IsHandPicked;
|
HandPickedInput.IsChecked = p?.IsHandPicked;
|
||||||
|
|
||||||
@ -382,7 +384,7 @@ namespace Elwig.Windows {
|
|||||||
AbwertenButton.IsEnabled = true;
|
AbwertenButton.IsEnabled = true;
|
||||||
EditDeliveryButton.IsEnabled = true;
|
EditDeliveryButton.IsEnabled = true;
|
||||||
ExtractDeliveryPartButton.IsEnabled = true;
|
ExtractDeliveryPartButton.IsEnabled = true;
|
||||||
DeleteDeliveryPartButton.IsEnabled = true;
|
DeleteDeliveryPartButton.IsEnabled = DeliveryList.SelectedItem is Delivery { Parts.Count: > 1 };
|
||||||
} else {
|
} else {
|
||||||
AbwertenButton.IsEnabled = false;
|
AbwertenButton.IsEnabled = false;
|
||||||
EditDeliveryButton.IsEnabled = false;
|
EditDeliveryButton.IsEnabled = false;
|
||||||
@ -469,9 +471,19 @@ namespace Elwig.Windows {
|
|||||||
DeleteDeliveryPartButton.IsEnabled = false;
|
DeleteDeliveryPartButton.IsEnabled = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void DeleteDeliveryButton_Click(object sender, RoutedEventArgs evt) {
|
private async void DeleteDeliveryButton_Click(object sender, RoutedEventArgs evt) {
|
||||||
// TODO delete dialog
|
if (DeliveryList.SelectedItem is not Delivery d)
|
||||||
// TODO delete delivery
|
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) {
|
private async void SaveButton_Click(object sender, RoutedEventArgs evt) {
|
||||||
@ -528,8 +540,18 @@ namespace Elwig.Windows {
|
|||||||
// TODO extract delivery part
|
// TODO extract delivery part
|
||||||
}
|
}
|
||||||
|
|
||||||
private void DeleteDeliveryPartButton_Click(object sender, RoutedEventArgs evt) {
|
private async void DeleteDeliveryPartButton_Click(object sender, RoutedEventArgs evt) {
|
||||||
// TODO delete delivery part
|
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() {
|
private void ShowSaveResetCancelButtons() {
|
||||||
|
@ -190,15 +190,13 @@ namespace Elwig.Windows {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private async void DeleteMemberButton_Click(object sender, RoutedEventArgs evt) {
|
private async void DeleteMemberButton_Click(object sender, RoutedEventArgs evt) {
|
||||||
Member m = (Member)MemberList.SelectedItem;
|
if (MemberList.SelectedItem is not Member m)
|
||||||
if (m == null) return;
|
return;
|
||||||
|
|
||||||
var r = MessageBox.Show(
|
var r = MessageBox.Show(
|
||||||
$"Soll das Mitglied \"{m.FamilyName} {m.GivenName}\" (MgNr. {m.MgNr}) wirklich unwiderruflich gelöscht werden?",
|
$"Soll das Mitglied \"{m.AdministrativeName}\" (MgNr. {m.MgNr}) wirklich unwiderruflich gelöscht werden?",
|
||||||
"Mitglied löschen", MessageBoxButton.YesNo, MessageBoxImage.Warning, MessageBoxResult.No);
|
"Mitglied löschen", MessageBoxButton.YesNo, MessageBoxImage.Warning, MessageBoxResult.No);
|
||||||
if (r == MessageBoxResult.Yes) {
|
if (r == MessageBoxResult.Yes) {
|
||||||
DeleteMemberButton.IsEnabled = false;
|
|
||||||
EditMemberButton.IsEnabled = false;
|
|
||||||
Context.Remove(m);
|
Context.Remove(m);
|
||||||
await Context.SaveChangesAsync();
|
await Context.SaveChangesAsync();
|
||||||
await RefreshMemberList();
|
await RefreshMemberList();
|
||||||
@ -514,18 +512,18 @@ namespace Elwig.Windows {
|
|||||||
FillOriginalValues();
|
FillOriginalValues();
|
||||||
}
|
}
|
||||||
|
|
||||||
new protected void ClearInputs() {
|
new protected void ClearInputs(bool validate = false) {
|
||||||
Menu_Member_SendEmail.IsEnabled = false;
|
Menu_Member_SendEmail.IsEnabled = false;
|
||||||
AreaCommitment.Text = "- m²";
|
AreaCommitment.Text = "- m²";
|
||||||
Age.Text = "-";
|
Age.Text = "-";
|
||||||
base.ClearInputs();
|
base.ClearInputs(validate);
|
||||||
}
|
}
|
||||||
|
|
||||||
override protected void UpdateButtons() {
|
override protected void UpdateButtons() {
|
||||||
if (!IsEditing && !IsCreating) return;
|
if (!IsEditing && !IsCreating) return;
|
||||||
bool ch = HasChanged, v = IsValid;
|
bool ch = HasChanged, v = IsValid;
|
||||||
ResetButton.IsEnabled = (ch);
|
ResetButton.IsEnabled = ch;
|
||||||
SaveButton.IsEnabled = (v && ch);
|
SaveButton.IsEnabled = v && ch;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void InputTextChanged(TextBox input, Func<TextBox, bool, AppDbContext, Member?, ValidationResult> checker) {
|
protected void InputTextChanged(TextBox input, Func<TextBox, bool, AppDbContext, Member?, ValidationResult> checker) {
|
||||||
|
Reference in New Issue
Block a user