Compare commits

...

17 Commits

Author SHA1 Message Date
b3d895093a Versionsänderungen für 1.2.2.3 produktiv 2024-07-02 09:59:03 +02:00
a91a31a8e1 Updated product code to be able to update the package 2024-07-01 13:18:42 +02:00
b3d6da4769 Updated version for test version 1.2.2.3 2024-06-30 13:09:18 +02:00
a31d58ae9b Only user Interval end if interval start is also unset (as suggestion in terminal control) 2024-06-30 13:02:37 +02:00
8e842fbd5d Fixed 4 digit time entry 2024-06-30 12:42:41 +02:00
a02b483932 Increased version to 1.2.2.2 for next test release 2024-06-28 11:40:00 +02:00
39f6e93576 Changed interval date formatting so intervals spanning multiple days show ok 2024-06-28 11:13:00 +02:00
c1b4affb20 Filter shipcalls that have ata set and ata is more than 2 hours in the past 2024-06-28 10:47:27 +02:00
30c8069a9b For the interval, the end date is also set in the control 2024-06-28 10:46:45 +02:00
3fa35bb14a Simplified input text filtering:
If user enters 10 digits, then these are split up for the date
2024-06-28 10:46:15 +02:00
8535608e07 Fixed cosmetic and increased (test) version to 1.2.2.1 2024-06-27 17:27:17 +02:00
f9ea6b45fe include last minute for day filter 2024-06-27 16:47:09 +02:00
57c0268b79 fixed bug in search filter where time component wasnt cut of (as expected) 2024-06-27 16:41:33 +02:00
d768288f4e Enter Agency Time as highlighted suggestion for other participants (not terminal) 2024-06-25 08:22:25 +02:00
9a6c51c0b3 Improved date recognition somewhat 2024-06-24 16:01:02 +02:00
fb40455aa6 More version changes 2024-06-24 16:00:42 +02:00
a7a147a123 Set to red Test version 1.2.2 2024-06-24 15:43:09 +02:00
24 changed files with 178 additions and 139 deletions

View File

@ -4833,7 +4833,7 @@ namespace BreCalClient.misc.Client
{ {
Proxy = null; Proxy = null;
UserAgent = WebUtility.UrlEncode("OpenAPI-Generator/1.0.0/csharp"); UserAgent = WebUtility.UrlEncode("OpenAPI-Generator/1.0.0/csharp");
BasePath = "https://brecaldevel.bsmd-emswe.eu"; BasePath = "https://brecal.bsmd-emswe.eu";
DefaultHeaders = new ConcurrentDictionary<string, string>(); DefaultHeaders = new ConcurrentDictionary<string, string>();
ApiKey = new ConcurrentDictionary<string, string>(); ApiKey = new ConcurrentDictionary<string, string>();
ApiKeyPrefix = new ConcurrentDictionary<string, string>(); ApiKeyPrefix = new ConcurrentDictionary<string, string>();
@ -4841,8 +4841,8 @@ namespace BreCalClient.misc.Client
{ {
{ {
new Dictionary<string, object> { new Dictionary<string, object> {
{"url", "https://brecaldevel.bsmd-emswe.eu"}, {"url", "https://brecal.bsmd-emswe.eu"},
{"description", "Development server hosted on vcup"}, {"description", "Test server hosted on vcup"},
} }
} }
}; };
@ -4860,7 +4860,7 @@ namespace BreCalClient.misc.Client
IDictionary<string, string> defaultHeaders, IDictionary<string, string> defaultHeaders,
IDictionary<string, string> apiKey, IDictionary<string, string> apiKey,
IDictionary<string, string> apiKeyPrefix, IDictionary<string, string> apiKeyPrefix,
string basePath = "https://brecaldevel.bsmd-emswe.eu") : this() string basePath = "https://brecal.bsmd-emswe.eu") : this()
{ {
if (string.IsNullOrWhiteSpace(basePath)) if (string.IsNullOrWhiteSpace(basePath))
throw new ArgumentException("The provided basePath is invalid.", "basePath"); throw new ArgumentException("The provided basePath is invalid.", "basePath");

View File

@ -14,8 +14,8 @@ info:
name: Use at your own risk name: Use at your own risk
url: 'https://www.bsmd.de/license' url: 'https://www.bsmd.de/license'
servers: servers:
- url: 'https://brecaldevel.bsmd-emswe.eu' - url: 'https://brecal.bsmd-emswe.eu'
description: Development server hosted on vcup description: Test server hosted on vcup
tags: tags:
- name: user - name: user
- name: shipcall - name: shipcall

View File

@ -29,16 +29,16 @@
<applicationSettings> <applicationSettings>
<BreCalClient.Properties.Settings> <BreCalClient.Properties.Settings>
<setting name="BG_COLOR" serializeAs="String"> <setting name="BG_COLOR" serializeAs="String">
<value>#1D751F</value> <value>#203864</value>
</setting> </setting>
<setting name="APP_TITLE" serializeAs="String"> <setting name="APP_TITLE" serializeAs="String">
<value>!!Bremen calling Testversion!!</value> <value>Bremen calling</value>
</setting> </setting>
<setting name="LOGO_IMAGE_URL" serializeAs="String"> <setting name="LOGO_IMAGE_URL" serializeAs="String">
<value>https://www.textbausteine.net/</value> <value>https://www.textbausteine.net/</value>
</setting> </setting>
<setting name="API_URL" serializeAs="String"> <setting name="API_URL" serializeAs="String">
<value>https://brecaldevel.bsmd-emswe.eu</value> <value>https://brecal.bsmd-emswe.eu</value>
</setting> </setting>
</BreCalClient.Properties.Settings> </BreCalClient.Properties.Settings>
</applicationSettings> </applicationSettings>

View File

@ -8,12 +8,12 @@
<SignAssembly>True</SignAssembly> <SignAssembly>True</SignAssembly>
<StartupObject>BreCalClient.App</StartupObject> <StartupObject>BreCalClient.App</StartupObject>
<AssemblyOriginatorKeyFile>..\..\misc\brecal.snk</AssemblyOriginatorKeyFile> <AssemblyOriginatorKeyFile>..\..\misc\brecal.snk</AssemblyOriginatorKeyFile>
<AssemblyVersion>1.3.0.0</AssemblyVersion> <AssemblyVersion>1.2.2.3</AssemblyVersion>
<FileVersion>1.3.0.0</FileVersion> <FileVersion>1.2.2.3</FileVersion>
<Title>Bremen calling client</Title> <Title>Bremen calling client</Title>
<Description>A Windows WPF client for the Bremen calling API.</Description> <Description>A Windows WPF client for the Bremen calling API.</Description>
<ApplicationIcon>containership.ico</ApplicationIcon> <ApplicationIcon>containership.ico</ApplicationIcon>
<AssemblyName>BreCalDevelClient</AssemblyName> <AssemblyName>BreCalClient</AssemblyName>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>

View File

@ -9,36 +9,33 @@ namespace BreCalClient
protected override void OnPreviewTextInput(TextCompositionEventArgs e) protected override void OnPreviewTextInput(TextCompositionEventArgs e)
{ {
base.OnPreviewTextInput(e); base.OnPreviewTextInput(e);
// Die vom Agenten "vorgeschlagene" Zeit könnte auch der Watermark sein?
string text = this.Text + e.Text;
if (this.Template.FindName("PART_TextBox", this) is not WatermarkTextBox tb) return; if (this.Template.FindName("PART_TextBox", this) is not WatermarkTextBox tb) return;
if (Regex.IsMatch(text, @"^\d{3}")) // strip input after caret
string subText = (tb.CaretIndex > 0) ? this.Text[..tb.CaretIndex] : tb.Text; // Range operator instead of Substring(0, tb.CaretIndex)
string text = subText + e.Text;
// System.Diagnostics.Debug.WriteLine("C:" + this.Text + " E: " + e.Text + " Caret: " + tb.CaretIndex + " Subt: " + subText);
// 10 char eingabe "am Stück"
if (Regex.IsMatch(text, @"^\d{10}"))
{ {
e.Handled = true; e.Handled = true;
tb.Text = Regex.Replace(text, @"(\d{2})(\d)", "$1.$2"); tb.Text = Regex.Replace(text, @"(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})", "$1.$2.20$3 $4:$5");
tb.CaretIndex = tb.Text.Length; tb.CaretIndex = tb.Text.Length;
tb.SelectedText = "";
} }
else if (Regex.IsMatch(text, @"^(\d{2}\.\d{3})"))
// nur die Zeit wird markiert und mit 4 Zahlen befüllt, diese Regel setzt den Doppelpunkt
else if (Regex.IsMatch(text, @"^(\d{2}\.\d{2}\. \d{4} \d{3})"))
{ {
e.Handled = true; e.Handled = true;
tb.Text = Regex.Replace(text, @"^(\d{2}\.\d{2})(\d)", "$1.$2"); tb.Text = Regex.Replace(text, @"(\d{2}\.\d{2}\. \d{4} \d{2})(\d)(.*)", "$1:$2");
tb.CaretIndex = tb.Text.Length; // System.Diagnostics.Trace.WriteLine("Replaced: " + tb.Text);
}
else if (Regex.IsMatch(text, @"^(\d{2}\.\d{2}\.\d{2} \d{3})"))
{
e.Handled = true;
tb.Text = Regex.Replace(text, @"(\d{2}\.\d{2}\.\d{2} \d{2})(\d)", "$1:$2");
tb.CaretIndex = tb.Text.Length;
}
else if (Regex.IsMatch(text, @"^(\d{2}\.\d{2}\.\d{4} \d{3})"))
{
e.Handled = true;
tb.Text = Regex.Replace(text, @"(\d{2}\.\d{2}\.\d{4} \d{2})(\d)", "$1:$2");
tb.CaretIndex = tb.Text.Length; tb.CaretIndex = tb.Text.Length;
tb.Select(tb.Text.Length, 0);
} }
} }
} }
} }

View File

@ -45,7 +45,7 @@
<ColumnDefinition Width=".5*" /> <ColumnDefinition Width=".5*" />
<ColumnDefinition Width=".5*" /> <ColumnDefinition Width=".5*" />
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<local:DateTimePickerExt x:Name="datePickerETD" Grid.Column="0" Grid.Row="0" Margin="2" Format="Custom" FormatString="dd.MM. yyyy HH:mm" ValueChanged="datePickerETD_ValueChanged" PreviewKeyUp="datePickerETD_PreviewKeyUp" PreviewTextInput="datePickerETD_PreviewTextInput"/> <local:DateTimePickerExt x:Name="datePickerETD" Grid.Column="0" Grid.Row="0" Margin="2" Format="Custom" FormatString="dd.MM. yyyy HH:mm" ValueChanged="datePickerETD_ValueChanged" AllowTextInput="True" />
<local:DateTimePickerExt x:Name="datePickerETD_End" Grid.Column="1" Grid.Row="0" Margin="2" Format="Custom" FormatString="dd.MM. yyyy HH:mm" ValueChanged="datePickerETD_ValueChanged"/> <local:DateTimePickerExt x:Name="datePickerETD_End" Grid.Column="1" Grid.Row="0" Margin="2" Format="Custom" FormatString="dd.MM. yyyy HH:mm" ValueChanged="datePickerETD_ValueChanged"/>
</Grid> </Grid>
<Label Content="{x:Static p:Resources.textBerth}" Grid.Column="0" Grid.Row="2" HorizontalContentAlignment="Right" FontWeight="Bold"/> <Label Content="{x:Static p:Resources.textBerth}" Grid.Column="0" Grid.Row="2" HorizontalContentAlignment="Right" FontWeight="Bold"/>

View File

@ -348,46 +348,5 @@ namespace BreCalClient
#endregion #endregion
private void datePickerETD_PreviewKeyUp(object sender, System.Windows.Input.KeyEventArgs e)
{
}
private void datePickerETD_PreviewTextInput(object sender, System.Windows.Input.TextCompositionEventArgs e)
{
DateTimePicker? dp = (sender as DateTimePicker);
if(dp == null) return;
// Das ist der richtige Ansatz, funktioniert aber bei der Jahresangabe noch nicht ganz richtig.
// Die vom Agenten "vorgeschlagene" Zeit könnte auch der Watermark sein?
string text = dp.Text + e.Text;
if (dp.Template.FindName("PART_TextBox", dp) is not WatermarkTextBox tb) return;
if (Regex.IsMatch(text, @"^\d{3}"))
{
e.Handled = true;
tb.Text = Regex.Replace(text, @"(\d{2})(\d)", "$1.$2");
tb.CaretIndex = tb.Text.Length;
}
else if (Regex.IsMatch(text, @"^(\d{2}\.\d{3})"))
{
e.Handled = true;
tb.Text = Regex.Replace(text, @"^(\d{2}\.\d{2})(\d)", "$1.$2");
tb.CaretIndex = tb.Text.Length;
}
else if (Regex.IsMatch(text, @"^(\d{2}\.\d{2}\.\d{2} \d{3})"))
{
e.Handled = true;
tb.Text = Regex.Replace(text, @"(\d{2}\.\d{2}\.\d{2} \d{2})(\d)", "$1:$2");
tb.CaretIndex = tb.Text.Length;
}
else if (Regex.IsMatch(text, @"^(\d{2}\.\d{2}\.\d{4} \d{3})"))
{
e.Handled = true;
tb.Text = Regex.Replace(text, @"(\d{2}\.\d{2}\.\d{4} \d{2})(\d)", "$1:$2");
tb.CaretIndex = tb.Text.Length;
}
}
} }
} }

View File

@ -7,6 +7,7 @@ using BreCalClient.misc.Model;
using System; using System;
using System.Windows; using System.Windows;
using System.Windows.Media.Imaging; using System.Windows.Media.Imaging;
using Xceed.Wpf.Toolkit;
namespace BreCalClient namespace BreCalClient
{ {
@ -29,6 +30,8 @@ namespace BreCalClient
public Times Times { get; set; } = new(); public Times Times { get; set; } = new();
public Times? AgencyTimes { get; set; } = new();
public ShipcallControlModel ShipcallModel { get; set; } = new(); public ShipcallControlModel ShipcallModel { get; set; } = new();
#endregion #endregion
@ -37,8 +40,8 @@ namespace BreCalClient
private void Window_Loaded(object sender, RoutedEventArgs e) private void Window_Loaded(object sender, RoutedEventArgs e)
{ {
this.CopyToControls();
this.EnableControls(); this.EnableControls();
this.CopyToControls();
} }
private void buttonOK_Click(object sender, RoutedEventArgs e) private void buttonOK_Click(object sender, RoutedEventArgs e)
@ -93,13 +96,35 @@ namespace BreCalClient
{ {
this.textBoxRemarks.Text = this.Times.Remarks; this.textBoxRemarks.Text = this.Times.Remarks;
this.datePickerETABerth.Value = this.Times.EtaBerth; this.datePickerETABerth.Value = this.Times.EtaBerth;
if(this.datePickerETABerth.IsEnabled && (this.Times.EtaBerth == null) && (this.AgencyTimes?.EtaBerth != null) && (ShipcallModel.Shipcall?.Type == ShipcallType.Arrival))
{
this.datePickerETABerth.Value = this.AgencyTimes.EtaBerth;
if (this.datePickerETABerth.Template.FindName("PART_TextBox", this.datePickerETABerth) is WatermarkTextBox tb) { tb.Focus(); tb.SelectAll(); }
}
this.datePickerETDBerth.Value = this.Times.EtdBerth; this.datePickerETDBerth.Value = this.Times.EtdBerth;
if(this.datePickerETDBerth.IsEnabled && (this.Times.EtdBerth == null) && (this.AgencyTimes?.EtdBerth != null) && ((ShipcallModel.Shipcall?.Type == ShipcallType.Departure) || (ShipcallModel.Shipcall?.Type == ShipcallType.Shifting)))
{
this.datePickerETDBerth.Value = this.AgencyTimes.EtdBerth;
if (this.datePickerETDBerth.Template.FindName("PART_TextBox", this.datePickerETDBerth) is WatermarkTextBox tb) { tb.Focus(); tb.SelectAll(); }
}
this.datePickerLockTime.Value = this.Times.LockTime; this.datePickerLockTime.Value = this.Times.LockTime;
this.datePickerZoneEntry.Value = this.Times.ZoneEntry; this.datePickerZoneEntry.Value = this.Times.ZoneEntry;
this.datePickerATA.Value = this.Times.Ata; this.datePickerATA.Value = this.Times.Ata;
this.datePickerATD.Value = this.Times.Atd; this.datePickerATD.Value = this.Times.Atd;
this.datePickerETABerth_End.Value = this.Times.EtaIntervalEnd; this.datePickerETABerth_End.Value = this.Times.EtaIntervalEnd;
if (this.datePickerETABerth_End.IsEnabled && (this.Times.EtaIntervalEnd == null) && (this.Times.EtaBerth == null) && (this.AgencyTimes?.EtaIntervalEnd != null) && (ShipcallModel.Shipcall?.Type == ShipcallType.Arrival))
{
this.datePickerETABerth_End.Value = this.AgencyTimes.EtaIntervalEnd;
//if (this.datePickerETABerth_End.Template.FindName("PART_TextBox", this.datePickerETABerth_End) is WatermarkTextBox tb) { tb.Focus(); tb.SelectAll(); }
}
this.datePickerETDBerth_End.Value = this.Times.EtdIntervalEnd; this.datePickerETDBerth_End.Value = this.Times.EtdIntervalEnd;
if (this.datePickerETDBerth_End.IsEnabled && (this.Times.EtdIntervalEnd == null) && (this.Times.EtdBerth == null) && (this.AgencyTimes?.EtdIntervalEnd != null) && ((ShipcallModel.Shipcall?.Type == ShipcallType.Departure) || (ShipcallModel.Shipcall?.Type == ShipcallType.Shifting)))
{
this.datePickerETDBerth_End.Value = this.AgencyTimes.EtdIntervalEnd;
//if (this.datePickerETDBerth_End.Template.FindName("PART_TextBox", this.datePickerETDBerth_End) is WatermarkTextBox tb) { tb.Focus(); tb.SelectAll(); }
}
this.labelETA.Content = string.Format("ETA {0}", BreCalLists.TimeRefs[this.ShipcallModel.Shipcall?.TimeRefPoint ?? 0]); this.labelETA.Content = string.Format("ETA {0}", BreCalLists.TimeRefs[this.ShipcallModel.Shipcall?.TimeRefPoint ?? 0]);
this.labelETD.Content = string.Format("ETD {0}", BreCalLists.TimeRefs[this.ShipcallModel.Shipcall?.TimeRefPoint ?? 0]); this.labelETD.Content = string.Format("ETD {0}", BreCalLists.TimeRefs[this.ShipcallModel.Shipcall?.TimeRefPoint ?? 0]);

View File

@ -98,7 +98,7 @@ namespace BreCalClient
if(times.OperationsStart.HasValue) if(times.OperationsStart.HasValue)
{ {
string result = times.OperationsStart.Value.ToString("dd.MM.yyyy HH:mm"); string result = times.OperationsStart.Value.ToString("dd.MM.yyyy HH:mm");
if (times.EtaIntervalEnd.HasValue) result += " - " + times.EtaIntervalEnd.Value.ToString("HH:mm"); if (times.EtaIntervalEnd.HasValue) result = times.OperationsStart.Value.ToString("d.M. HH:mm") + " - " + times.EtaIntervalEnd.Value.ToString("d.M. HH:mm");
return result; return result;
} }
else else
@ -111,7 +111,7 @@ namespace BreCalClient
if(times.EtaBerth.HasValue) if(times.EtaBerth.HasValue)
{ {
string result = times.EtaBerth.Value.ToString("dd.MM.yyyy HH:mm"); string result = times.EtaBerth.Value.ToString("dd.MM.yyyy HH:mm");
if (times.EtaIntervalEnd.HasValue) result += " - " + times.EtaIntervalEnd.Value.ToString("HH:mm"); if (times.EtaIntervalEnd.HasValue) result = times.EtaBerth.Value.ToString("d.M. HH:mm") + " - " + times.EtaIntervalEnd.Value.ToString("d.M. HH:mm");
return result; return result;
} }
else else
@ -127,7 +127,7 @@ namespace BreCalClient
if(times.OperationsEnd.HasValue) if(times.OperationsEnd.HasValue)
{ {
string result = times.OperationsEnd.Value.ToString("dd.MM.yyyy HH:mm"); string result = times.OperationsEnd.Value.ToString("dd.MM.yyyy HH:mm");
if (times.EtdIntervalEnd.HasValue) result += " - " + times.EtdIntervalEnd.Value.ToString("HH:mm"); if (times.EtdIntervalEnd.HasValue) result = times.OperationsEnd.Value.ToString("d.M. HH:mm") + " - " + times.EtdIntervalEnd.Value.ToString("d.M. HH:mm");
return result; return result;
} }
else else
@ -140,7 +140,7 @@ namespace BreCalClient
if(times.EtdBerth.HasValue) if(times.EtdBerth.HasValue)
{ {
string result = times.EtdBerth.Value.ToString("dd.MM.yyyy HH:mm"); string result = times.EtdBerth.Value.ToString("dd.MM.yyyy HH:mm");
if (times.EtdIntervalEnd.HasValue) result += " - " + times.EtdIntervalEnd.Value.ToString("HH:mm"); if (times.EtdIntervalEnd.HasValue) result = times.EtdBerth.Value.ToString("d.M. HH:mm") + " - " + times.EtdIntervalEnd.Value.ToString("d.M. HH:mm");
return result; return result;
} }
else else

View File

@ -707,7 +707,7 @@ namespace BreCalClient
_ = this._visibleControlModels.RemoveAll(x => _ = this._visibleControlModels.RemoveAll(x =>
{ {
Times? t = x.GetTimesForParticipantType(ParticipantType.AGENCY); Times? t = x.GetTimesForParticipantType(ParticipantType.AGENCY);
DateTime refValue = sfm.EtaTo.Value.AddMinutes(1439); // 23:59 DateTime refValue = sfm.EtaTo.Value.AddMinutes(1440); // including 23:59
switch (x.Shipcall?.Type) switch (x.Shipcall?.Type)
{ {
case ShipcallType.Arrival: case ShipcallType.Arrival:
@ -745,7 +745,34 @@ namespace BreCalClient
_ = this._visibleControlModels.RemoveAll(x => x.Shipcall?.Canceled ?? false); _ = this._visibleControlModels.RemoveAll(x => x.Shipcall?.Canceled ?? false);
} }
switch(this._sortOrder) // special Basti case: Wenn das ATA / ATD eingetragen ist und schon 2 Stunden in der Vergangenheit liegt
if (searchPastDays <= 3)
{
_ = this._visibleControlModels.RemoveAll(x =>
{
Times? mooringTimes = x.GetTimesForParticipantType(ParticipantType.MOORING);
if (mooringTimes != null)
{
switch (x.Shipcall?.Type)
{
case ShipcallType.Arrival:
if (mooringTimes.Ata.HasValue && ((DateTime.Now - mooringTimes.Ata.Value).TotalHours > 2))
return true;
break;
default:
if (mooringTimes.Atd.HasValue && ((DateTime.Now - mooringTimes.Atd.Value).TotalHours > 2))
return true;
break;
}
}
return false;
});
}
switch (this._sortOrder)
{ {
case Extensions.SortOrder.SHIP_NAME: case Extensions.SortOrder.SHIP_NAME:
this._visibleControlModels.Sort((x, y) => { if (x.Ship == null) return 0; if (y.Ship == null) return 0; return x.Ship.Name.CompareTo(y.Ship.Name); }); this._visibleControlModels.Sort((x, y) => { if (x.Ship == null) return 0; if (y.Ship == null) return 0; return x.Ship.Name.CompareTo(y.Ship.Name); });
@ -854,10 +881,14 @@ namespace BreCalClient
if( obj.ShipcallControlModel == null) { return; } if( obj.ShipcallControlModel == null) { return; }
if (!obj.ShipcallControlModel.AssignedParticipants.ContainsKey(participantType)) return; // no assigment means no dialog my friend if (!obj.ShipcallControlModel.AssignedParticipants.ContainsKey(participantType)) return; // no assigment means no dialog my friend
Times? agencyTimes = obj.ShipcallControlModel.GetTimesForParticipantType(ParticipantType.AGENCY);
// show a dialog that lets the user create / update times for the given shipcall // show a dialog that lets the user create / update times for the given shipcall
IEditTimesControl etc = (participantType == ParticipantType.TERMINAL) ? new EditTimesTerminalControl() : new EditTimesControl(); IEditTimesControl etc = (participantType == ParticipantType.TERMINAL) ? new EditTimesTerminalControl() : new EditTimesControl();
etc.Title = obj.ShipcallControlModel.Title; etc.Title = obj.ShipcallControlModel.Title;
etc.ShipcallModel = obj.ShipcallControlModel; etc.ShipcallModel = obj.ShipcallControlModel;
if (etc is EditTimesControl control)
control.AgencyTimes = agencyTimes;
bool wasEdit = false; bool wasEdit = false;
if (times != null) if (times != null)

View File

@ -4,8 +4,8 @@ https://go.microsoft.com/fwlink/?LinkID=208121.
--> -->
<Project> <Project>
<PropertyGroup> <PropertyGroup>
<ApplicationRevision>0</ApplicationRevision> <ApplicationRevision>3</ApplicationRevision>
<ApplicationVersion>6.0</ApplicationVersion> <ApplicationVersion>1.2.2.3</ApplicationVersion>
<BootstrapperEnabled>False</BootstrapperEnabled> <BootstrapperEnabled>False</BootstrapperEnabled>
<Configuration>Release</Configuration> <Configuration>Release</Configuration>
<CreateWebPageOnPublish>True</CreateWebPageOnPublish> <CreateWebPageOnPublish>True</CreateWebPageOnPublish>

View File

@ -5,7 +5,7 @@ https://go.microsoft.com/fwlink/?LinkID=208121.
<Project> <Project>
<PropertyGroup> <PropertyGroup>
<ApplicationRevision>0</ApplicationRevision> <ApplicationRevision>0</ApplicationRevision>
<ApplicationVersion>1.3.0.0</ApplicationVersion> <ApplicationVersion>1.2.2.3</ApplicationVersion>
<BootstrapperEnabled>True</BootstrapperEnabled> <BootstrapperEnabled>True</BootstrapperEnabled>
<Configuration>Debug</Configuration> <Configuration>Debug</Configuration>
<CreateDesktopShortcut>True</CreateDesktopShortcut> <CreateDesktopShortcut>True</CreateDesktopShortcut>

View File

@ -25,7 +25,7 @@ namespace BreCalClient.Properties {
[global::System.Configuration.ApplicationScopedSettingAttribute()] [global::System.Configuration.ApplicationScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("#1D751F")] [global::System.Configuration.DefaultSettingValueAttribute("#203864")]
public string BG_COLOR { public string BG_COLOR {
get { get {
return ((string)(this["BG_COLOR"])); return ((string)(this["BG_COLOR"]));
@ -64,7 +64,7 @@ namespace BreCalClient.Properties {
[global::System.Configuration.ApplicationScopedSettingAttribute()] [global::System.Configuration.ApplicationScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("https://brecaldevel.bsmd-emswe.eu")] [global::System.Configuration.DefaultSettingValueAttribute("https://brecal.bsmd-emswe.eu")]
public string API_URL { public string API_URL {
get { get {
return ((string)(this["API_URL"])); return ((string)(this["API_URL"]));

View File

@ -3,7 +3,7 @@
<Profiles /> <Profiles />
<Settings> <Settings>
<Setting Name="BG_COLOR" Type="System.String" Scope="Application"> <Setting Name="BG_COLOR" Type="System.String" Scope="Application">
<Value Profile="(Default)">#1D751F</Value> <Value Profile="(Default)">#203864</Value>
</Setting> </Setting>
<Setting Name="APP_TITLE" Type="System.String" Scope="Application"> <Setting Name="APP_TITLE" Type="System.String" Scope="Application">
<Value Profile="(Default)">!!Bremen calling Testversion!!</Value> <Value Profile="(Default)">!!Bremen calling Testversion!!</Value>
@ -15,7 +15,7 @@
<Value Profile="(Default)" /> <Value Profile="(Default)" />
</Setting> </Setting>
<Setting Name="API_URL" Type="System.String" Scope="Application"> <Setting Name="API_URL" Type="System.String" Scope="Application">
<Value Profile="(Default)">https://brecaldevel.bsmd-emswe.eu</Value> <Value Profile="(Default)">https://brecal.tbsmd-emswe.eu</Value>
</Setting> </Setting>
<Setting Name="Width" Type="System.Double" Scope="User"> <Setting Name="Width" Type="System.Double" Scope="User">
<Value Profile="(Default)">800</Value> <Value Profile="(Default)">800</Value>

View File

@ -8,7 +8,7 @@
xmlns:api="clr-namespace:BreCalClient.misc.Model" xmlns:api="clr-namespace:BreCalClient.misc.Model"
xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit" xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit"
mc:Ignorable="d" mc:Ignorable="d"
d:DesignHeight="56" d:DesignWidth="800" Loaded="UserControl_Loaded"> d:DesignHeight="56" d:DesignWidth="800">
<UserControl.Resources> <UserControl.Resources>
<local:EnumToStringConverter x:Key="enumToStringConverter" /> <local:EnumToStringConverter x:Key="enumToStringConverter" />
</UserControl.Resources> </UserControl.Resources>

View File

@ -130,20 +130,15 @@ namespace BreCalClient
LogoImageClicked?.Invoke(); LogoImageClicked?.Invoke();
} }
private void UserControl_Loaded(object sender, System.Windows.RoutedEventArgs e)
{
}
private void datePickerETAFrom_SelectedDateChanged(object sender, SelectionChangedEventArgs e) private void datePickerETAFrom_SelectedDateChanged(object sender, SelectionChangedEventArgs e)
{ {
this._model.EtaFrom = this.datePickerETAFrom.SelectedDate; this._model.EtaFrom = this.datePickerETAFrom.SelectedDate?.Date;
SearchFilterChanged?.Invoke(); SearchFilterChanged?.Invoke();
} }
private void datePickerETATo_SelectedDateChanged(object sender, SelectionChangedEventArgs e) private void datePickerETATo_SelectedDateChanged(object sender, SelectionChangedEventArgs e)
{ {
this._model.EtaTo = datePickerETATo.SelectedDate; this._model.EtaTo = datePickerETATo.SelectedDate?.Date;
SearchFilterChanged?.Invoke(); SearchFilterChanged?.Invoke();
} }

View File

@ -5,7 +5,7 @@
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:p = "clr-namespace:BreCalClient.Resources" xmlns:p = "clr-namespace:BreCalClient.Resources"
xmlns:sets="clr-namespace:BreCalClient.Properties" xmlns:sets="clr-namespace:BreCalClient.Properties"
xmlns:db="clr-namespace:BreCalClient;assembly=BreCalDevelClient" xmlns:db="clr-namespace:BreCalClient;assembly=BreCalClient"
mc:Ignorable="d" mc:Ignorable="d"
d:DesignHeight="135" d:DesignWidth="800"> d:DesignHeight="135" d:DesignWidth="800">
<Border BorderBrush="LightGray" Margin="1" BorderThickness="1"> <Border BorderBrush="LightGray" Margin="1" BorderThickness="1">

View File

@ -214,13 +214,13 @@ namespace BreCalClient
switch (this.ShipcallControlModel?.Shipcall?.Type) switch (this.ShipcallControlModel?.Shipcall?.Type)
{ {
case ShipcallType.Arrival: // incoming case ShipcallType.Arrival: // incoming
this.imageShipcallType.Source = new BitmapImage(new Uri("pack://application:,,,/BreCalDevelClient;component/Resources/arrow_down_red.png")); this.imageShipcallType.Source = new BitmapImage(new Uri("pack://application:,,,/BreCalClient;component/Resources/arrow_down_red.png"));
break; break;
case ShipcallType.Departure: // outgoing case ShipcallType.Departure: // outgoing
this.imageShipcallType.Source = new BitmapImage(new Uri("pack://application:,,,/BreCalDevelClient;component/Resources/arrow_up_blue.png")); this.imageShipcallType.Source = new BitmapImage(new Uri("pack://application:,,,/BreCalClient;component/Resources/arrow_up_blue.png"));
break; break;
case ShipcallType.Shifting: // shifting case ShipcallType.Shifting: // shifting
this.imageShipcallType.Source = new BitmapImage(new Uri("pack://application:,,,/BreCalDevelClient;component/Resources/arrow_right_green.png")); this.imageShipcallType.Source = new BitmapImage(new Uri("pack://application:,,,/BreCalClient;component/Resources/arrow_right_green.png"));
break; break;
default: default:
break; break;
@ -229,13 +229,13 @@ namespace BreCalClient
switch(this.ShipcallControlModel?.LightMode) switch(this.ShipcallControlModel?.LightMode)
{ {
case EvaluationType.Green: case EvaluationType.Green:
this.imageEvaluation.Source = new BitmapImage(new Uri("pack://application:,,,/BreCalDevelClient;component/Resources/check.png")); this.imageEvaluation.Source = new BitmapImage(new Uri("pack://application:,,,/BreCalClient;component/Resources/check.png"));
break; break;
case EvaluationType.Yellow: case EvaluationType.Yellow:
this.imageEvaluation.Source = new BitmapImage(new Uri("pack://application:,,,/BreCalDevelClient;component/Resources/sign_warning.png")); this.imageEvaluation.Source = new BitmapImage(new Uri("pack://application:,,,/BreCalClient;component/Resources/sign_warning.png"));
break; break;
case EvaluationType.Red: case EvaluationType.Red:
this.imageEvaluation.Source = new BitmapImage(new Uri("pack://application:,,,/BreCalDevelClient;component/Resources/delete2.png")); this.imageEvaluation.Source = new BitmapImage(new Uri("pack://application:,,,/BreCalClient;component/Resources/delete2.png"));
break; break;
default: default:
break; break;

View File

@ -8,7 +8,7 @@
<applicationSettings> <applicationSettings>
<RoleEditor.Properties.Settings> <RoleEditor.Properties.Settings>
<setting name="ConnectionString" serializeAs="String"> <setting name="ConnectionString" serializeAs="String">
<value>Server=localhost;User ID=ds;Password=HalloWach_2323XXL!!;Database=bremen_calling_devel;Port=33306</value> <value>Server=localhost;User ID=ds;Password=HalloWach_2323XXL!!;Database=bremen_calling_test;Port=33306</value>
</setting> </setting>
</RoleEditor.Properties.Settings> </RoleEditor.Properties.Settings>
</applicationSettings> </applicationSettings>

View File

@ -43,6 +43,22 @@
"PrivateKeyFile" = "8:" "PrivateKeyFile" = "8:"
"TimeStampServer" = "8:" "TimeStampServer" = "8:"
"InstallerBootstrapper" = "3:2" "InstallerBootstrapper" = "3:2"
"BootstrapperCfg:{63ACBE69-63AA-4F98-B2B6-99F9E24495F2}"
{
"Enabled" = "11:TRUE"
"PromptEnabled" = "11:TRUE"
"PrerequisitesLocation" = "2:1"
"Url" = "8:"
"ComponentsUrl" = "8:"
"Items"
{
"{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:.NETFramework,Version=v4.7.2"
{
"Name" = "8:Microsoft .NET Framework 4.7.2 (x86 and x64)"
"ProductCode" = "8:.NETFramework,Version=v4.7.2"
}
}
}
} }
"Release" "Release"
{ {
@ -59,6 +75,22 @@
"PrivateKeyFile" = "8:" "PrivateKeyFile" = "8:"
"TimeStampServer" = "8:" "TimeStampServer" = "8:"
"InstallerBootstrapper" = "3:2" "InstallerBootstrapper" = "3:2"
"BootstrapperCfg:{63ACBE69-63AA-4F98-B2B6-99F9E24495F2}"
{
"Enabled" = "11:TRUE"
"PromptEnabled" = "11:TRUE"
"PrerequisitesLocation" = "2:1"
"Url" = "8:"
"ComponentsUrl" = "8:"
"Items"
{
"{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:.NETFramework,Version=v4.7.2"
{
"Name" = "8:Microsoft .NET Framework 4.7.2 (x86 and x64)"
"ProductCode" = "8:.NETFramework,Version=v4.7.2"
}
}
}
} }
} }
"Deployable" "Deployable"
@ -166,9 +198,9 @@
{ {
"Name" = "8:Microsoft Visual Studio" "Name" = "8:Microsoft Visual Studio"
"ProductName" = "8:Bremen calling" "ProductName" = "8:Bremen calling"
"ProductCode" = "8:{6EF71F76-3E55-483B-A032-4B29FDAFE6A4}" "ProductCode" = "8:{0ED342DD-DC00-4CE4-8348-96BB3AB726B1}"
"PackageCode" = "8:{8E55F30F-A9C8-41E9-BCE8-431770A951ED}" "PackageCode" = "8:{8E55F30F-A9C8-41E9-BCE8-431770A951ED}"
"UpgradeCode" = "8:{1C7FA3E4-BAB9-4911-9348-73094357FC7C}" "UpgradeCode" = "8:{81A329F1-C663-48DA-9E15-DAF19F99B5AE}"
"AspNetVersion" = "8:" "AspNetVersion" = "8:"
"RestartWWWService" = "11:FALSE" "RestartWWWService" = "11:FALSE"
"RemovePreviousVersions" = "11:TRUE" "RemovePreviousVersions" = "11:TRUE"
@ -716,7 +748,7 @@
{ {
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_3E48B6E716164CC1826E094025517B3F" "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_3E48B6E716164CC1826E094025517B3F"
{ {
"SourcePath" = "8:..\\BreCalClient\\obj\\Release\\net6.0-windows\\apphost.exe" "SourcePath" = "8:..\\BreCalClient\\obj\\Debug\\net6.0-windows\\apphost.exe"
"TargetName" = "8:" "TargetName" = "8:"
"Tag" = "8:" "Tag" = "8:"
"Folder" = "8:_7C8F7547CED64B3CAE7D0296A8BCE23F" "Folder" = "8:_7C8F7547CED64B3CAE7D0296A8BCE23F"

View File

@ -62,7 +62,7 @@ def create_app(test_config=None):
app.register_blueprint(user.bp) app.register_blueprint(user.bp)
app.register_blueprint(history.bp) app.register_blueprint(history.bp)
logging.basicConfig(filename='brecaldevel.log', level=logging.DEBUG, format='%(asctime)s | %(name)s | %(levelname)s | %(message)s') logging.basicConfig(filename='brecal.log', level=logging.DEBUG, format='%(asctime)s | %(name)s | %(levelname)s | %(message)s')
local_db.initPool(os.path.dirname(app.instance_path)) local_db.initPool(os.path.dirname(app.instance_path))
logging.info('App started') logging.info('App started')

View File

@ -11,7 +11,7 @@ def initPool(instancePath):
try: try:
global config_path global config_path
if(config_path == None): if(config_path == None):
config_path = os.path.join(instancePath,'../../../secure/connection_data_devel.json'); config_path = os.path.join(instancePath,'../../../secure/connection_data_prod.json');
print (config_path) print (config_path)

View File

@ -2,7 +2,7 @@ import os
import sys import sys
import logging import logging
sys.path.insert(0, '/var/www/brecal_devel/src/server') sys.path.insert(0, '/var/www/brecal/src/server')
sys.path.insert(0, '/var/www/venv/lib/python3.10/site-packages/') sys.path.insert(0, '/var/www/venv/lib/python3.10/site-packages/')
import schedule import schedule

View File

@ -2,7 +2,7 @@ from setuptools import find_packages, setup
setup( setup(
name='BreCal', name='BreCal',
version='1.3.0', version='1.2.2',
packages=find_packages(), packages=find_packages(),
include_package_data=True, include_package_data=True,
zip_safe=False, zip_safe=False,