MemberAdminWindow+DeliveryAdminWindow: Add button to jumpt to member (predecessor)
This commit is contained in:
@ -79,6 +79,28 @@ namespace Elwig.Windows {
|
||||
LockInputs();
|
||||
}
|
||||
|
||||
public void FocusMember(int mgnr) {
|
||||
if (IsEditing || IsCreating) return;
|
||||
var item = MemberList.ItemsSource.Cast<Member>().FirstOrDefault(m => m.MgNr == mgnr);
|
||||
if (item == null) {
|
||||
var m = Context.Members.Find(mgnr);
|
||||
if (m == null) return;
|
||||
if (SearchInput.Text.Length > 0) {
|
||||
SearchInput.Text = "";
|
||||
}
|
||||
if (!m.IsActive) {
|
||||
ActiveMemberInput.IsChecked = false;
|
||||
}
|
||||
App.MainDispatcher.BeginInvoke(async () => {
|
||||
await Task.Delay(500);
|
||||
FocusMember(mgnr);
|
||||
});
|
||||
} else {
|
||||
MemberList.SelectedItem = item;
|
||||
MemberList.ScrollIntoView(MemberList.SelectedItem);
|
||||
}
|
||||
}
|
||||
|
||||
private async Task RefreshMemberList() {
|
||||
await Context.Members.LoadAsync();
|
||||
await RefreshMemberListQuery();
|
||||
@ -230,6 +252,7 @@ namespace Elwig.Windows {
|
||||
BranchInput.SelectedItem = Context.Branches.First();
|
||||
ActiveInput.IsChecked = true;
|
||||
ContactPostalInput.IsChecked = true;
|
||||
MemberReferenceButton.IsEnabled = false;
|
||||
|
||||
SetDefaultValue(MgNrInput);
|
||||
SetDefaultValue(EntryDateInput);
|
||||
@ -705,6 +728,7 @@ namespace Elwig.Windows {
|
||||
|
||||
MgNrInput.Text = m.MgNr.ToString();
|
||||
PredecessorMgNrInput.Text = m.PredecessorMgNr.ToString();
|
||||
MemberReferenceButton.IsEnabled = m.PredecessorMgNr != null;
|
||||
PrefixInput.Text = m.Prefix;
|
||||
GivenNameInput.Text = m.GivenName;
|
||||
FamilyNameInput.Text = m.FamilyName;
|
||||
@ -805,6 +829,7 @@ namespace Elwig.Windows {
|
||||
Menu_Print_Letterhead.IsEnabled = false;
|
||||
Menu_Show_MemberDataSheet.IsEnabled = false;
|
||||
Menu_Print_MemberDataSheet.IsEnabled = false;
|
||||
MemberReferenceButton.IsEnabled = false;
|
||||
StatusDeliveriesLastSeason.Text = $"Lieferungen ({Utils.CurrentLastSeason - 1}): -";
|
||||
StatusDeliveriesThisSeason.Text = $"Lieferungen ({Utils.CurrentLastSeason}): -";
|
||||
StatusAreaCommitment.Text = "Gebundene Fläche: -";
|
||||
@ -872,5 +897,10 @@ namespace Elwig.Windows {
|
||||
UseShellExecute = true,
|
||||
});
|
||||
}
|
||||
|
||||
private void MemberReferenceButton_Click(object sender, RoutedEventArgs evt) {
|
||||
if (MemberList.SelectedItem is not Member m || m.PredecessorMgNr == null) return;
|
||||
FocusMember((int)m.PredecessorMgNr);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user