Add Lieferungen Button in MemberAdminWindow

This commit is contained in:
2023-07-19 22:09:45 +02:00
parent 05f9e94260
commit df4e254305
5 changed files with 37 additions and 14 deletions

View File

@ -5,14 +5,15 @@ using System.Windows.Controls;
using Elwig.Helpers;
using Elwig.Models;
using System.Threading.Tasks;
using System;
namespace Elwig.Windows {
public partial class AreaComAdminWindow : AdministrationWindow {
private readonly Member Member;
public AreaComAdminWindow(Member member) {
public AreaComAdminWindow(int mgnr) {
InitializeComponent();
Member = member;
Member = Context.Members.Find(mgnr) ?? throw new ArgumentException("MgNr argument has invalid value");
Title = $"Flächenbindungen - {Member.AdministrativeName} - Elwig";
ExemptInputs = new Control[] {
MgNrInput, ContractList, AreaCommitmentList, NewContractButton, DeleteContractButton,

View File

@ -69,7 +69,7 @@
<Grid.RowDefinitions>
<RowDefinition Height="42"/>
<RowDefinition Height="*"/>
<RowDefinition Height="47"/>
<RowDefinition Height="42"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
@ -105,18 +105,18 @@
</DataGrid>
<Button x:Name="NewMemberButton" Content="Neu"
HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Margin="5,10,5,10" Grid.Column="0" Grid.Row="2"/>
HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Margin="5,5,2.5,10" Grid.Column="0" Grid.Row="2"/>
<Button x:Name="EditMemberButton" Content="Bearbeiten" IsEnabled="False"
HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Margin="5,10,5,10" Grid.Column="1" Grid.Row="2"/>
HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Margin="2.5,5,2.5,10" Grid.Column="1" Grid.Row="2"/>
<Button x:Name="DeleteMemberButton" Content="Löschen" IsEnabled="False"
HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Margin="5,10,5,10" Grid.Column="2" Grid.Row="2"/>
HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Margin="2.5,5,5,10" Grid.Column="2" Grid.Row="2"/>
<Button x:Name="SaveButton" Content="Speichern" IsEnabled="False" Visibility="Hidden"
HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Margin="5,10,5,10" Grid.Column="0"/>
HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Margin="5,5,2.5,10" Grid.Column="0"/>
<Button x:Name="ResetButton" Content="Zurücksetzen" IsEnabled="False" Visibility="Hidden"
HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Margin="5,10,5,10" Grid.Column="1"/>
HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Margin="2.5,5,2.5,10" Grid.Column="1"/>
<Button x:Name="CancelButton" Content="Abbrechen" IsEnabled="False" Visibility="Hidden" IsCancel="True"
HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Margin="5,10,5,10" Grid.Column="2"/>
HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Margin="2.5,5,5,10" Grid.Column="2"/>
</Grid>
<GroupBox Header="Mitglied" Grid.Column="1" Grid.Row="1" Margin="5,5,5,5">
@ -288,7 +288,11 @@
<GroupBox Header="Teillieferungen" Grid.Column="1" Grid.Row="3" Margin="5,5,5,5">
<Grid>
<ListBox x:Name="DeliveryPartList" Margin="5,5,5,5"
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<ListBox x:Name="DeliveryPartList" Margin="5,5,5,38" Grid.ColumnSpan="2"
SelectionChanged="DeliveryPartList_SelectionChanged">
<ListBox.ItemTemplate>
<DataTemplate>
@ -302,6 +306,11 @@
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
<Button x:Name="ExtractDeliveryPartButton" Content="Herausheben" IsEnabled="False"
HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Margin="5,10,2.5,5" Grid.Column="0" Grid.Row="2"/>
<Button x:Name="DeleteDeliveryPartButton" Content="Löschen" IsEnabled="False"
HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Margin="2.5,10,5,5" Grid.Column="1" Grid.Row="2"/>
</Grid>
</GroupBox>

View File

@ -17,6 +17,7 @@ namespace Elwig.Windows {
private bool IsUpdatingGradation = false;
private bool IsRefreshingInputs = false;
private readonly bool IsReceipt = false;
private readonly Member? Member = null;
private readonly DispatcherTimer Timer;
private List<string> TextFilter = new();
private readonly RoutedCommand CtrlF = new();
@ -50,10 +51,13 @@ namespace Elwig.Windows {
public DeliveryAdminWindow(bool receipt) : this() {
IsReceipt = receipt;
Title = "Übernahme - Elwig";
TodayOnlyInput.IsChecked = true;
}
public DeliveryAdminWindow(int mgnr) : this() {
// TODO
Member = Context.Members.Find(mgnr) ?? throw new ArgumentException("MgNr argument has invalid value");
Title = $"Lieferungen - {Member.AdministrativeName} - Elwig";
}
private void Window_Loaded(object sender, RoutedEventArgs evt) {
@ -81,6 +85,9 @@ namespace Elwig.Windows {
private async Task RefreshDeliveryListQuery(bool updateSort = false) {
IQueryable<Delivery> deliveryQuery = Context.Deliveries;
if (Member != null) {
deliveryQuery = deliveryQuery.Where(d => d.MgNr == Member.MgNr);
}
if (TodayOnlyInput.IsChecked == true) {
deliveryQuery = deliveryQuery
.Where(d => (d.DateString == Utils.Today.ToString("yyyy-MM-dd") && d.TimeString.CompareTo("03:00:00") > 0) ||

View File

@ -346,9 +346,8 @@
<TextBlock x:Name="AreaCommitment" Text="- m²"
Grid.Column="1" HorizontalAlignment="Stretch" Margin="5,252,5,0" TextWrapping="NoWrap" VerticalAlignment="Top" FontSize="14" TextAlignment="Right"/>
<Button x:Name="DeliveryButton" Content="Lieferungen" Click="AreaCommitmentButton_Click" IsEnabled="False"
<Button x:Name="DeliveryButton" Content="Lieferungen" Click="DeliveryButton_Click" IsEnabled="False"
HorizontalAlignment="Right" Margin="10,00,10,37" Width="150" VerticalAlignment="Bottom" Grid.ColumnSpan="3"/>
<Button x:Name="AreaCommitmentButton" Content="Flächenbindungen" Click="AreaCommitmentButton_Click" IsEnabled="False"
HorizontalAlignment="Right" Margin="10,10,10,5" Width="150" VerticalAlignment="Bottom" Grid.ColumnSpan="3"/>
</Grid>

View File

@ -103,11 +103,13 @@ namespace Elwig.Windows {
EditMemberButton.IsEnabled = true;
DeleteMemberButton.IsEnabled = true;
AreaCommitmentButton.IsEnabled = true;
DeliveryButton.IsEnabled = true;
FillInputs(m);
} else {
EditMemberButton.IsEnabled = false;
DeleteMemberButton.IsEnabled = false;
AreaCommitmentButton.IsEnabled = false;
DeliveryButton.IsEnabled = false;
ClearOriginalValues();
ClearInputs();
}
@ -247,7 +249,12 @@ namespace Elwig.Windows {
}
private void AreaCommitmentButton_Click(object sender, RoutedEventArgs evt) {
var w = new AreaComAdminWindow((Member)MemberList.SelectedItem);
var w = new AreaComAdminWindow(((Member)MemberList.SelectedItem).MgNr);
w.Show();
}
private void DeliveryButton_Click(object sender, RoutedEventArgs evt) {
var w = new DeliveryAdminWindow(((Member)MemberList.SelectedItem).MgNr);
w.Show();
}