Datumsbereich Auswahl synchronisiert zwischen BRV und WHV, außerdem beim Enddatum die Stunden des Tages addiert

This commit is contained in:
Daniel Schick 2023-03-01 09:54:24 +01:00
parent 967a34dc79
commit 47336e0b8d
4 changed files with 79 additions and 7 deletions

View File

@ -40,9 +40,9 @@
<ColumnDefinition Width="80" />
</Grid.ColumnDefinitions>
<Label Content="From" Grid.Column="0" />
<xctk:DateTimePicker x:Name="dateTimePickerFrom" Margin="2" Grid.Column="1" Format="ShortDate" />
<DatePicker x:Name="dateTimePickerFrom" Margin="2" Grid.Column="1" SelectedDateChanged="dateTimePickerFrom_SelectedDateChanged"/>
<Label Content="To" Grid.Column="2" />
<xctk:DateTimePicker x:Name="dateTimePickerTo" Margin="2" Grid.Column="3" Format="ShortDate" />
<DatePicker x:Name="dateTimePickerTo" Margin="2" Grid.Column="3" SelectedDateChanged="dateTimePickerFrom_SelectedDateChanged"/>
<Button x:Name="buttonLoad" Grid.Column="4" Content="Load" Margin="2" Click="buttonLoad_Click" />
<!--Button x:Name="buttonSave" Grid.Column="5" Content="Save" Margin="2" Click="buttonSave_Click" /-->
<Button x:Name="buttonRequestIds" Grid.Column="6" Content="Request marked Ids" Margin="2" Click="buttonRequestIds_Click" />

View File

@ -41,13 +41,27 @@ namespace ENI2.Controls
{
InitializeComponent();
Loaded += POList_Loaded;
this.dateTimePickerFrom.Value = DateTime.Today.AddDays(-14);
this.dateTimePickerTo.Value = DateTime.Today.AddDays(14);
this.dateTimePickerFrom.SelectedDate = DateTime.Today.AddDays(-14);
this.dateTimePickerTo.SelectedDate = DateTime.Today.AddDays(14);
this._dbWatchDog = new DatabaseEntityWatchdog();
this._dbWatchDog.DatabaseEntityChanged += _dbWatchDog_DatabaseEntityChanged;
this._dbWatchDog.VisitTransitIdUpdated += _dbWatchDog_VisitTransitIdUpdated;
}
#endregion
#region Events
public delegate void DateChanged(DateTime date);
public event DateChanged FromDateChanged;
public event DateChanged ToDateChanged;
#endregion
#region DB Watchdog
private async void _dbWatchDog_VisitTransitIdUpdated(DatabaseEntity entity)
{
if (entity is MessageCore core)
@ -87,6 +101,23 @@ namespace ENI2.Controls
/// </summary>
public string PortLocode { get; set; }
/// <summary>
/// synchronize selection props
/// </summary>
public DateTime? FromDate {
get { return this.dateTimePickerFrom.SelectedDate; }
set { this.dateTimePickerFrom.SelectedDate = value; }
}
/// <summary>
/// synchronize selection props
/// </summary>
public DateTime? ToDate
{
get { return this.dateTimePickerTo.SelectedDate; }
set { this.dateTimePickerTo.SelectedDate = value; }
}
#endregion
#region events
@ -213,8 +244,9 @@ namespace ENI2.Controls
Dictionary<MessageCore.SearchFilterType, string> filterDict = new Dictionary<MessageCore.SearchFilterType, string>();
// Die Suche findet in dem eingestellten Intervall statt
uint from = this.dateTimePickerFrom.Value.Value.ToUniversalTime().ToUnixTimeStamp();
uint to = this.dateTimePickerTo.Value.Value.ToUniversalTime().ToUnixTimeStamp();
uint from = this.dateTimePickerFrom.SelectedDate.Value.ToUniversalTime().ToUnixTimeStamp();
DateTime toDate = this.dateTimePickerTo.SelectedDate.Value.ToUniversalTime().Add(new TimeSpan(23, 59, 59));
uint to = toDate.ToUnixTimeStamp();
filterDict.Add(MessageCore.SearchFilterType.FILTER_ETA, string.Format("{0}:{1}", from.ToString() ?? "", to.ToString() ?? ""));
// eingeschränkt auf flags
filterDict.Add(MessageCore.SearchFilterType.FILTER_FLAG_EQ, "0");
@ -536,5 +568,20 @@ namespace ENI2.Controls
#endregion
#region DateTime picker event handler
private void dateTimePickerFrom_SelectedDateChanged(object sender, SelectionChangedEventArgs e)
{
if (sender == dateTimePickerFrom)
this.FromDateChanged?.Invoke(dateTimePickerFrom.SelectedDate.Value);
if (sender == dateTimePickerTo)
this.ToDateChanged?.Invoke(dateTimePickerTo.SelectedDate.Value);
}
#endregion
}
}

View File

@ -13,6 +13,31 @@ namespace ENI2.Controls
InitializeComponent();
this.brvListControl.PortLocode = "DEBRV";
this.wvnListControl.PortLocode = "DEWVN";
this.brvListControl.FromDateChanged += BrvListControl_FromDateChanged;
this.brvListControl.ToDateChanged += BrvListControl_ToDateChanged;
this.wvnListControl.FromDateChanged += WvnListControl_FromDateChanged;
this.wvnListControl.ToDateChanged += WvnListControl_ToDateChanged;
}
private void WvnListControl_ToDateChanged(System.DateTime date)
{
this.brvListControl.ToDate = date;
}
private void WvnListControl_FromDateChanged(System.DateTime date)
{
this.brvListControl.FromDate = date;
}
private void BrvListControl_ToDateChanged(System.DateTime date)
{
this.wvnListControl.ToDate = date;
}
private void BrvListControl_FromDateChanged(System.DateTime date)
{
this.wvnListControl.FromDate = date;
}
public List<MaerskListControl> ListControls

View File

@ -36,7 +36,7 @@
<MinimumRequiredVersion>5.4.0.0</MinimumRequiredVersion>
<CreateWebPageOnPublish>true</CreateWebPageOnPublish>
<WebPage>publish.html</WebPage>
<ApplicationRevision>8</ApplicationRevision>
<ApplicationRevision>9</ApplicationRevision>
<ApplicationVersion>7.9.0.%2a</ApplicationVersion>
<UseApplicationTrust>false</UseApplicationTrust>
<CreateDesktopShortcut>true</CreateDesktopShortcut>