3.5.3: Erster Versuch einer Detailansicht

This commit is contained in:
Daniel Schick 2017-04-14 14:28:39 +00:00
parent 6fb405f955
commit 487daadbe9
33 changed files with 639 additions and 23 deletions

View File

@ -7,7 +7,8 @@
mc:Ignorable="d" mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300"> d:DesignHeight="300" d:DesignWidth="300">
<Grid Background="#FFCAE4FF" Margin="4"> <Grid Background="#FFCAE4FF" Margin="4">
<DataGrid x:Name="dataGrid" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch" SelectionMode="Single" AutoGenerateColumns="False"> <DataGrid x:Name="dataGrid" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch" SelectionMode="Single"
AutoGenerateColumns="False" MouseDoubleClick="dataGrid_MouseDoubleClick">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="Type" Binding="{Binding HerbergReportType}" IsReadOnly="True" /> <DataGridTextColumn Header="Type" Binding="{Binding HerbergReportType}" IsReadOnly="True" />
<DataGridTextColumn Header="IMO" Binding="{Binding IMO}" IsReadOnly="True" /> <DataGridTextColumn Header="IMO" Binding="{Binding IMO}" IsReadOnly="True" />

View File

@ -14,6 +14,8 @@ using System.Windows.Media.Imaging;
using System.Windows.Navigation; using System.Windows.Navigation;
using System.Windows.Shapes; using System.Windows.Shapes;
using bsmd.database;
namespace ENI2 namespace ENI2
{ {
/// <summary> /// <summary>
@ -21,9 +23,64 @@ namespace ENI2
/// </summary> /// </summary>
public partial class AnmeldungenControl : UserControl public partial class AnmeldungenControl : UserControl
{ {
#region Construction
public AnmeldungenControl() public AnmeldungenControl()
{ {
InitializeComponent(); InitializeComponent();
} }
#endregion
public event MessageCore.MessageCoreSelectedHandler MessageCoreSelected;
#region event handling / selection
private void dataGrid_MouseDoubleClick(object sender, MouseButtonEventArgs e)
{
if(sender != null)
{
DataGrid grid = sender as DataGrid;
if((grid != null) && (grid.SelectedItems != null) && (grid.SelectedItems.Count == 1))
{
DataGridRow dgr = grid.ItemContainerGenerator.ContainerFromItem(grid.SelectedItem) as DataGridRow;
MessageCore selectedCore = grid.SelectedItem as MessageCore;
this.DisplayCore(selectedCore);
}
}
}
private void DisplayCore(MessageCore core)
{
if(core != null)
{
this.OnMessageCoreSelected(core);
}
}
protected void OnMessageCoreSelected(MessageCore aMessageCore)
{
if((this.MessageCoreSelected != null) && (aMessageCore != null))
{
this.MessageCoreSelected(aMessageCore);
}
}
protected override void OnPreviewKeyDown(KeyEventArgs e)
{
if ((e.Key == Key.Return) || (e.Key == Key.Enter))
{
MessageCore selectedCore = dataGrid.SelectedItem as MessageCore;
this.DisplayCore(selectedCore);
}
else
{
base.OnPreviewKeyDown(e);
}
}
#endregion
} }
} }

View File

@ -17,7 +17,7 @@ Sample license text.
<applicationSettings> <applicationSettings>
<ENI2.Properties.Settings> <ENI2.Properties.Settings>
<setting name="ConnectionString" serializeAs="String"> <setting name="ConnectionString" serializeAs="String">
<value>Data Source=192.168.2.12;Initial Catalog=nsw;Uid=dfuser;Pwd=dfpasswd;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False</value> <value>Data Source=(localdb)\Projects;Initial Catalog=nsw;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False</value>
</setting> </setting>
</ENI2.Properties.Settings> </ENI2.Properties.Settings>
</applicationSettings> </applicationSettings>

View File

@ -0,0 +1,25 @@
// Copyright (c) 2017 schick Informatik
// Description:
//
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Controls;
using bsmd.database;
namespace ENI2
{
public class DetailBaseControl : UserControl
{
public MessageCore Core { get; set; }
public List<Message> Messages { get; set; }
}
}

View File

@ -0,0 +1,46 @@
<UserControl x:Class="ENI2.DetailRootControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:ENI2"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="30" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="220" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Label x:Name="shipNameLabel" Grid.Row="0" Grid.Column="0" VerticalContentAlignment="Center" FontWeight="Bold" />
<Label x:Name="displayIdLabel" Grid.Row="0" Grid.Column="1" VerticalContentAlignment="Center" FontWeight="Bold" />
<ListBox x:Name="listBoxMessages" Margin="2" SelectionMode="Single" SelectionChanged="listBoxMessages_SelectionChanged"
Grid.Row="1" Grid.Column="0" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid Margin="0,2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="30"></ColumnDefinition>
<ColumnDefinition Width="*"></ColumnDefinition>
</Grid.ColumnDefinitions>
<Image Source="{Binding ImagePath}" Grid.Column="0" />
<TextBlock Text="{Binding MessageGroupName}" Grid.Column="1" VerticalAlignment="Center" Margin="4,0,0,0" />
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
<Grid Grid.Column="1" Grid.Row="1" Name="detailView">
</Grid>
</Grid>
</UserControl>

View File

@ -0,0 +1,94 @@
// Copyright (c) 2017 schick Informatik
// Description: Control für die Auftragsbearbeitung (Rahmen)
//
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using bsmd.database;
using ENI2.DetailViewControls;
namespace ENI2
{
/// <summary>
/// Interaction logic for DetailRootControl.xaml
/// </summary>
public partial class DetailRootControl : UserControl
{
private MessageCore _core;
private List<MessageGroup> _listBoxList = new List<MessageGroup>();
private List<Message> _messages;
public DetailRootControl(MessageCore aCore)
{
_core = aCore;
InitializeComponent();
shipNameLabel.Content = aCore.Shipname;
displayIdLabel.Content = aCore.DisplayId;
// Listbox befüllen
this._listBoxList.Add(new MessageGroup() { MessageGroupName = "Overview", MessageGroupControlType = typeof(OverViewDetailControl), ImagePath = "Resources/documents.png" });
this._listBoxList.Add(new MessageGroup() { MessageGroupName = "Port Call", MessageGroupControlType = typeof(DetailBaseControl), ImagePath = "Resources/eye_blue.png" });
this._listBoxList.Add(new MessageGroup() { MessageGroupName = "Port Notification", MessageGroupControlType = typeof(DetailBaseControl), ImagePath = "Resources/anchor.png" });
this._listBoxList.Add(new MessageGroup() { MessageGroupName = "Waste", MessageGroupControlType = typeof(DetailBaseControl), ImagePath = "Resources/garbage.png" });
this._listBoxList.Add(new MessageGroup() { MessageGroupName = "Arrival Notification", MessageGroupControlType = typeof(DetailBaseControl), ImagePath = "Resources/arrow_down_right_red.png" });
this._listBoxList.Add(new MessageGroup() { MessageGroupName = "Security", MessageGroupControlType = typeof(DetailBaseControl), ImagePath = "Resources/shield_yellow.png" });
this._listBoxList.Add(new MessageGroup() { MessageGroupName = "PSC 72h", MessageGroupControlType = typeof(DetailBaseControl), ImagePath = "Resources/alarmclock.png" });
this._listBoxList.Add(new MessageGroup() { MessageGroupName = "Maritime Health Declaration", MessageGroupControlType = typeof(DetailBaseControl), ImagePath = "Resources/medical_bag.png" });
this._listBoxList.Add(new MessageGroup() { MessageGroupName = "Ship Data", MessageGroupControlType = typeof(DetailBaseControl), ImagePath = "Resources/containership.png" });
this._listBoxList.Add(new MessageGroup() { MessageGroupName = "Border Police", MessageGroupControlType = typeof(DetailBaseControl), ImagePath = "Resources/policeman_german.png" });
this._listBoxList.Add(new MessageGroup() { MessageGroupName = "Departure Notification", MessageGroupControlType = typeof(DetailBaseControl), ImagePath = "Resources/arrow_up_right_green.png" });
this._listBoxList.Add(new MessageGroup() { MessageGroupName = "Dangerous Goods Arrival", MessageGroupControlType = typeof(DetailBaseControl), ImagePath = "Resources/sign_warning_radiation.png" });
this._listBoxList.Add(new MessageGroup() { MessageGroupName = "Dangerous Goods Departure", MessageGroupControlType = typeof(DetailBaseControl), ImagePath = "Resources/sign_warning_radiation.png" });
this._listBoxList.Add(new MessageGroup() { MessageGroupName = "Towage", MessageGroupControlType = typeof(DetailBaseControl), ImagePath = "Resources/ship2.png" });
this.listBoxMessages.ItemsSource = this._listBoxList;
_messages = DBManager.Instance.GetMessagesForCore(_core, DBManager.MessageLoad.ALL);
}
#region class MessageGroup
/// <summary>
/// Klasse um ein Element der Listbox darzustellen (notwendig für das Databinding)
/// </summary>
public class MessageGroup
{
public Type MessageGroupControlType { get; set; }
public string MessageGroupName { get; set; }
public string ImagePath { get; set; }
}
#endregion
private void listBoxMessages_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
if(listBoxMessages.SelectedItem != null)
{
MessageGroup mg = this.listBoxMessages.SelectedItem as MessageGroup;
// create control instance for display:
DetailBaseControl detailControl = (DetailBaseControl) Activator.CreateInstance(mg.MessageGroupControlType);
detailControl.Core = _core;
detailControl.Messages = _messages;
// plug it in ;-)
detailView.Children.Clear();
detailView.Children.Add(detailControl);
}
}
}
}

View File

@ -0,0 +1,36 @@
<src:DetailBaseControl xmlns:src="clr-namespace:ENI2"
x:Class="ENI2.DetailViewControls.OverViewDetailControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:ENI2.DetailViewControls"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="600">
<GroupBox Name="visitTransitGroupBox" Header="Visit/Transit">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="24" />
<RowDefinition Height="24" />
<RowDefinition Height="24" />
<RowDefinition Height="24" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*" />
<ColumnDefinition Width="2*" />
<ColumnDefinition Width="1*" />
<ColumnDefinition Width="2*" />
</Grid.ColumnDefinitions>
<Label Grid.Row="0" Grid.Column="0" Content="Anlaufhafen" />
<TextBox Grid.Row="0" Grid.Column="1" IsReadOnly="True" Text="{Binding PoC}" Margin="2"/>
<Label Grid.Row="0" Grid.Column="2" Content="Visit/Transit-ID" />
<TextBox Grid.Row="0" Grid.Column="3" IsReadOnly="True" Text="{Binding DisplayId}" Margin="2"/>
<Label Grid.Row="1" Grid.Column="0" Content="IMO-Nummer" />
<TextBox Grid.Row="1" Grid.Column="1" Text="{Binding IMO}" Margin="2" />
<Label Grid.Row="1" Grid.Column="2" Content="ENI-Nummer" />
<TextBox Grid.Row="1" Grid.Column="3" Text="{Binding ENI}" Margin="2" />
</Grid>
</GroupBox>
</src:DetailBaseControl>

View File

@ -0,0 +1,35 @@
// Copyright (c) 2017 schick Informatik
// Description:
//
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using bsmd.database;
using ENI2;
namespace ENI2.DetailViewControls
{
/// <summary>
/// Interaction logic for OverViewDetailControl.xaml
/// </summary>
public partial class OverViewDetailControl : DetailBaseControl
{
public OverViewDetailControl()
{
InitializeComponent();
}
}
}

View File

@ -25,16 +25,16 @@
<UpdatePeriodically>false</UpdatePeriodically> <UpdatePeriodically>false</UpdatePeriodically>
<UpdateRequired>false</UpdateRequired> <UpdateRequired>false</UpdateRequired>
<MapFileExtensions>true</MapFileExtensions> <MapFileExtensions>true</MapFileExtensions>
<InstallUrl>http://smnsw01.bsmd.local/eni2.publish/</InstallUrl> <InstallUrl>http://192.168.2.4/eni2.publish/</InstallUrl>
<UpdateUrl>http://smnsw01.bsmd.local/eni2.publish/</UpdateUrl> <UpdateUrl>http://192.168.2.4/eni2.publish/</UpdateUrl>
<SupportUrl>http://www.textbausteine.net/</SupportUrl> <SupportUrl>http://www.textbausteine.net/</SupportUrl>
<ProductName>ENI2</ProductName> <ProductName>ENI2</ProductName>
<PublisherName>Informatikbüro Daniel Schick</PublisherName> <PublisherName>Informatikbüro Daniel Schick</PublisherName>
<MinimumRequiredVersion>3.5.1.0</MinimumRequiredVersion> <MinimumRequiredVersion>3.5.1.0</MinimumRequiredVersion>
<CreateWebPageOnPublish>true</CreateWebPageOnPublish> <CreateWebPageOnPublish>true</CreateWebPageOnPublish>
<WebPage>publish.html</WebPage> <WebPage>publish.html</WebPage>
<ApplicationRevision>2</ApplicationRevision> <ApplicationRevision>1</ApplicationRevision>
<ApplicationVersion>3.5.2.%2a</ApplicationVersion> <ApplicationVersion>3.5.3.%2a</ApplicationVersion>
<UseApplicationTrust>false</UseApplicationTrust> <UseApplicationTrust>false</UseApplicationTrust>
<CreateDesktopShortcut>true</CreateDesktopShortcut> <CreateDesktopShortcut>true</CreateDesktopShortcut>
<PublishWizardCompleted>true</PublishWizardCompleted> <PublishWizardCompleted>true</PublishWizardCompleted>
@ -148,6 +148,13 @@
<Compile Include="..\..\..\nsw\Source\bsmd.database\Properties\AssemblyProjectKeyInfo.cs"> <Compile Include="..\..\..\nsw\Source\bsmd.database\Properties\AssemblyProjectKeyInfo.cs">
<Link>Properties\AssemblyProjectKeyInfo.cs</Link> <Link>Properties\AssemblyProjectKeyInfo.cs</Link>
</Compile> </Compile>
<Compile Include="DetailBaseControl.cs" />
<Compile Include="DetailRootControl.xaml.cs">
<DependentUpon>DetailRootControl.xaml</DependentUpon>
</Compile>
<Compile Include="DetailViewControls\OverViewDetailControl.xaml.cs">
<DependentUpon>OverViewDetailControl.xaml</DependentUpon>
</Compile>
<Compile Include="SucheControl.xaml.cs"> <Compile Include="SucheControl.xaml.cs">
<DependentUpon>SucheControl.xaml</DependentUpon> <DependentUpon>SucheControl.xaml</DependentUpon>
</Compile> </Compile>
@ -159,6 +166,14 @@
<SubType>Designer</SubType> <SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator> <Generator>MSBuild:Compile</Generator>
</Page> </Page>
<Page Include="DetailRootControl.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="DetailViewControls\OverViewDetailControl.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="MainWindow.xaml"> <Page Include="MainWindow.xaml">
<Generator>MSBuild:Compile</Generator> <Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType> <SubType>Designer</SubType>
@ -203,7 +218,6 @@
</EmbeddedResource> </EmbeddedResource>
<None Include="bsmdKey.snk" /> <None Include="bsmdKey.snk" />
<None Include="ENI2.licenseheader" /> <None Include="ENI2.licenseheader" />
<None Include="ENI2_1_TemporaryKey.pfx" />
<None Include="ENI2_TemporaryKey.pfx" /> <None Include="ENI2_TemporaryKey.pfx" />
<None Include="packages.config" /> <None Include="packages.config" />
<None Include="Properties\app.manifest" /> <None Include="Properties\app.manifest" />
@ -246,6 +260,49 @@
<ItemGroup> <ItemGroup>
<Resource Include="Resources\logo_schwarz.ico" /> <Resource Include="Resources\logo_schwarz.ico" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<Resource Include="Resources\shield_yellow.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\alarmclock.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\medical_bag.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\policeman_usa.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\arrow_down_right_red.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\arrow_up_right_green.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\ship2.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\sign_warning_radiation.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\containership.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\garbage.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\eye_blue.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\policeman_german.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\anchor.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\documents.png" />
</ItemGroup>
<ItemGroup />
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it. <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets. Other similar extension points exist, see Microsoft.Common.targets.

View File

@ -1,6 +1,9 @@
extensions: designer.cs generated.cs extensions: designer.cs generated.cs
extensions: .cs .cpp .h extensions: .cs .cpp .h
// Copyright (c) 2017 Informatibüro Daniel Schick // Copyright (c) 2017 schick Informatik
// Description:
//
extensions: .aspx .ascx extensions: .aspx .ascx
<%-- <%--
Copyright (c) 2017 Informatikbüro Daniel Schick Copyright (c) 2017 Informatikbüro Daniel Schick

View File

@ -9,9 +9,9 @@
<DockPanel> <DockPanel>
<Grid DockPanel.Dock="Top" Height="80" Background="#FFE8F6FF"> <Grid DockPanel.Dock="Top" Height="80" Background="#FFE8F6FF">
<Image x:Name="logoImage" HorizontalAlignment="Left" Height="80" Width="80" Source="Resources/EUREPORT.png" Stretch="Fill" MouseUp="logoImage_MouseUp"/> <Image x:Name="logoImage" HorizontalAlignment="Left" Height="80" Width="80" Source="Resources/EUREPORT.png" Stretch="Fill" MouseUp="logoImage_MouseUp"/>
<Button x:Name="buttonAnmeldungen" Content="Anmeldungen" HorizontalAlignment="Left" Margin="101,25,0,0" VerticalAlignment="Top" Width="95" Height="23" Click="buttonAnmeldungen_Click"/> <Button x:Name="buttonAnmeldungen" Content="Anmeldungen" HorizontalAlignment="Left" Margin="101,25,0,0" VerticalAlignment="Top" Width="95" Height="23" Click="buttonAnmeldungen_Click" Background="Transparent" />
<Button x:Name="buttonVorgaenge" Content="Vorgänge" HorizontalAlignment="Left" Margin="201,25,0,0" VerticalAlignment="Top" Width="95" Height="23" Click="buttonVorgaenge_Click"/> <Button x:Name="buttonVorgaenge" Content="Vorgänge" HorizontalAlignment="Left" Margin="201,25,0,0" VerticalAlignment="Top" Width="95" Height="23" Click="buttonVorgaenge_Click" Background="Transparent" />
<Button x:Name="buttonSuche" Content="Suche" HorizontalAlignment="Left" Margin="301,25,0,0" VerticalAlignment="Top" Width="95" Height="23" Click="buttonSuche_Click"/> <Button x:Name="buttonSuche" Content="Suche" HorizontalAlignment="Left" Margin="301,25,0,0" VerticalAlignment="Top" Width="95" Height="23" Click="buttonSuche_Click" Background="Transparent" />
</Grid> </Grid>
<Grid DockPanel.Dock="Bottom" Height="20" Background="#FFE8F6FF"> <Grid DockPanel.Dock="Bottom" Height="20" Background="#FFE8F6FF">
@ -20,6 +20,7 @@
<ItemsPanelTemplate> <ItemsPanelTemplate>
<Grid> <Grid>
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="100" />
<ColumnDefinition Width="100" /> <ColumnDefinition Width="100" />
<ColumnDefinition Width="Auto" /> <ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" /> <ColumnDefinition Width="*" />
@ -29,15 +30,18 @@
</Grid> </Grid>
</ItemsPanelTemplate> </ItemsPanelTemplate>
</StatusBar.ItemsPanel> </StatusBar.ItemsPanel>
<StatusBarItem> <StatusBarItem Grid.Column="0">
<TextBlock Name="labelGeneralStatus"></TextBlock> <TextBlock Name="labelGeneralStatus"></TextBlock>
</StatusBarItem> </StatusBarItem>
<Separator Grid.Column="1"/> <StatusBarItem Grid.Column="1">
<StatusBarItem Grid.Column="2"> <TextBlock Name="labelVersion"></TextBlock>
</StatusBarItem>
<Separator Grid.Column="2"/>
<StatusBarItem Grid.Column="3">
<TextBlock Name="labelStatusBar"></TextBlock> <TextBlock Name="labelStatusBar"></TextBlock>
</StatusBarItem> </StatusBarItem>
<Separator Grid.Column="3"/> <Separator Grid.Column="4"/>
<StatusBarItem Grid.Column="4"> <StatusBarItem Grid.Column="5">
<ProgressBar Name="generalProgressStatus" Width="90" Height="16"/> <ProgressBar Name="generalProgressStatus" Width="90" Height="16"/>
</StatusBarItem> </StatusBarItem>
</StatusBar> </StatusBar>

View File

@ -1,4 +1,7 @@
// Copyright (c) 2017 Informatibüro Daniel Schick // Copyright (c) 2017 schick Informatik
// Description:
//
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Diagnostics; using System.Diagnostics;
@ -38,9 +41,21 @@ namespace ENI2
this.anmeldungenControl = new AnmeldungenControl(); this.anmeldungenControl = new AnmeldungenControl();
this.sucheControl = new SucheControl(); this.sucheControl = new SucheControl();
this.anmeldungenControl.MessageCoreSelected += AnmeldungenControl_MessageCoreSelected;
this.sucheControl.MessageCoreSelected += AnmeldungenControl_MessageCoreSelected;
} }
private void AnmeldungenControl_MessageCoreSelected(MessageCore aMessageCore)
{
if(aMessageCore != null)
{
mainFrame.Children.Clear();
DetailRootControl drc = new DetailRootControl(aMessageCore);
mainFrame.Children.Add(drc);
}
}
#region Window control click event handler #region Window control click event handler
private void buttonAnmeldungen_Click(object sender, RoutedEventArgs e) private void buttonAnmeldungen_Click(object sender, RoutedEventArgs e)
@ -92,6 +107,7 @@ namespace ENI2
{ {
this.dbConnected = DBManager.Instance.Connect(Properties.Settings.Default.ConnectionString); this.dbConnected = DBManager.Instance.Connect(Properties.Settings.Default.ConnectionString);
labelGeneralStatus.Text = dbConnected ? "DB Connected" : "DB Connect failed"; labelGeneralStatus.Text = dbConnected ? "DB Connected" : "DB Connect failed";
labelVersion.Text = "V. " + System.Reflection.Assembly.GetExecutingAssembly().GetName().Version;
} }
private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e) private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)

View File

@ -60,6 +60,46 @@ namespace ENI2.Properties {
} }
} }
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap alarmclock {
get {
object obj = ResourceManager.GetObject("alarmclock", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap anchor {
get {
object obj = ResourceManager.GetObject("anchor", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap arrow_down_right_red {
get {
object obj = ResourceManager.GetObject("arrow_down_right_red", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap arrow_up_right_green {
get {
object obj = ResourceManager.GetObject("arrow_up_right_green", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary> /// <summary>
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary> /// </summary>
@ -70,6 +110,26 @@ namespace ENI2.Properties {
} }
} }
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap containership1 {
get {
object obj = ResourceManager.GetObject("containership1", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap documents {
get {
object obj = ResourceManager.GetObject("documents", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary> /// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap. /// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary> /// </summary>
@ -80,6 +140,26 @@ namespace ENI2.Properties {
} }
} }
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap eye_blue {
get {
object obj = ResourceManager.GetObject("eye_blue", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap garbage {
get {
object obj = ResourceManager.GetObject("garbage", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary> /// <summary>
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary> /// </summary>
@ -89,5 +169,55 @@ namespace ENI2.Properties {
return ((System.Drawing.Icon)(obj)); return ((System.Drawing.Icon)(obj));
} }
} }
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap medical_bag {
get {
object obj = ResourceManager.GetObject("medical_bag", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap policeman_german {
get {
object obj = ResourceManager.GetObject("policeman_german", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap shield_yellow {
get {
object obj = ResourceManager.GetObject("shield_yellow", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap ship2 {
get {
object obj = ResourceManager.GetObject("ship2", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap sign_warning_radiation {
get {
object obj = ResourceManager.GetObject("sign_warning_radiation", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
} }
} }

View File

@ -127,4 +127,43 @@
<data name="logo_schwarz" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="logo_schwarz" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\logo_schwarz.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\logo_schwarz.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="alarmclock" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\alarmclock.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="anchor" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\anchor.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="arrow_down_right_red" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\arrow_down_right_red.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="arrow_up_right_green" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\arrow_up_right_green.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="containership1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\containership.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="documents" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\documents.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="eye_blue" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\eye_blue.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="garbage" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\garbage.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="medical_bag" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\medical_bag.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="policeman_german" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\policeman_german.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="shield_yellow" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\shield_yellow.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ship2" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ship2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="sign_warning_radiation" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\sign_warning_radiation.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
</root> </root>

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 816 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -55,7 +55,7 @@
<Button Grid.Column="2" Grid.Row="3" Grid.ColumnSpan="2" Content="Suche" Name="buttonSuche" Click="buttonSuche_Click" Margin="2"/> <Button Grid.Column="2" Grid.Row="3" Grid.ColumnSpan="2" Content="Suche" Name="buttonSuche" Click="buttonSuche_Click" Margin="2"/>
</Grid> </Grid>
<DataGrid Grid.Row="1" Margin="0,8,0,0" x:Name="dataGrid" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch" <DataGrid Grid.Row="1" Margin="0,8,0,0" x:Name="dataGrid" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch"
SelectionMode="Single" AutoGenerateColumns="False" > SelectionMode="Single" AutoGenerateColumns="False" MouseDoubleClick="dataGrid_MouseDoubleClick" PreviewKeyDown="dataGrid_PreviewKeyDown" >
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="Type" Binding="{Binding HerbergReportType}" IsReadOnly="True" /> <DataGridTextColumn Header="Type" Binding="{Binding HerbergReportType}" IsReadOnly="True" />
<DataGridTextColumn Header="IMO" Binding="{Binding IMO}" IsReadOnly="True" /> <DataGridTextColumn Header="IMO" Binding="{Binding IMO}" IsReadOnly="True" />

View File

@ -28,11 +28,19 @@ namespace ENI2
private List<MessageCore> anmeldungen = new List<MessageCore>(); private List<MessageCore> anmeldungen = new List<MessageCore>();
#region Construction
public SucheControl() public SucheControl()
{ {
InitializeComponent(); InitializeComponent();
} }
#endregion
public event MessageCore.MessageCoreSelectedHandler MessageCoreSelected;
#region event handler searching
private void Button_Click(object sender, RoutedEventArgs e) private void Button_Click(object sender, RoutedEventArgs e)
{ {
// Eingabefelder löschen // Eingabefelder löschen
@ -79,5 +87,55 @@ namespace ENI2
// ergebnis anzeigen // ergebnis anzeigen
this.dataGrid.ItemsSource = this.anmeldungen; this.dataGrid.ItemsSource = this.anmeldungen;
} }
#endregion
#region Selection event handling
private void DisplayCore(MessageCore core)
{
if (core != null)
{
this.OnMessageCoreSelected(core);
}
}
protected void OnMessageCoreSelected(MessageCore aMessageCore)
{
if ((this.MessageCoreSelected != null) && (aMessageCore != null))
{
this.MessageCoreSelected(aMessageCore);
}
}
private void dataGrid_MouseDoubleClick(object sender, MouseButtonEventArgs e)
{
if (sender != null)
{
DataGrid grid = sender as DataGrid;
if ((grid != null) && (grid.SelectedItems != null) && (grid.SelectedItems.Count == 1))
{
DataGridRow dgr = grid.ItemContainerGenerator.ContainerFromItem(grid.SelectedItem) as DataGridRow;
MessageCore selectedCore = grid.SelectedItem as MessageCore;
this.DisplayCore(selectedCore);
}
}
}
private void dataGrid_PreviewKeyDown(object sender, KeyEventArgs e)
{
if ((e.Key == Key.Return) || (e.Key == Key.Enter))
{
MessageCore selectedCore = dataGrid.SelectedItem as MessageCore;
this.DisplayCore(selectedCore);
}
else
{
base.OnPreviewKeyDown(e);
}
}
#endregion
} }
} }

View File

@ -10,6 +10,9 @@ namespace bsmd.database
{ {
public class MessageCore : DatabaseEntity public class MessageCore : DatabaseEntity
{ {
#region Fields
private Guid? previous; private Guid? previous;
private Guid? next; private Guid? next;
private DateTime? created; private DateTime? created;
@ -18,11 +21,23 @@ namespace bsmd.database
private Guid? customerId; private Guid? customerId;
private int? wetris_zz_56_datensatz_id; private int? wetris_zz_56_datensatz_id;
#endregion
#region selection delegate definition
public delegate void MessageCoreSelectedHandler(MessageCore aMessageCore);
#endregion
#region Construction
public MessageCore() public MessageCore()
{ {
this.tablename = "MessageCore"; this.tablename = "MessageCore";
} }
#endregion
#region Enum #region Enum
/// <summary> /// <summary>

View File

@ -2,6 +2,6 @@
[assembly: AssemblyCompany("Informatikbüro Daniel Schick")] [assembly: AssemblyCompany("Informatikbüro Daniel Schick")]
[assembly: AssemblyProduct("BSMD NSW interface")] [assembly: AssemblyProduct("BSMD NSW interface")]
[assembly: AssemblyInformationalVersion("3.5.2")] [assembly: AssemblyInformationalVersion("3.5.3")]
[assembly: AssemblyCopyright("Copyright © 2014-2017 Informatikbüro Daniel Schick. All rights reserved.")] [assembly: AssemblyCopyright("Copyright © 2014-2017 Informatikbüro Daniel Schick. All rights reserved.")]
[assembly: AssemblyTrademark("")] [assembly: AssemblyTrademark("")]

View File

@ -1,4 +1,4 @@
using System.Reflection; using System.Reflection;
[assembly: AssemblyVersion("3.5.2.*")] [assembly: AssemblyVersion("3.5.3.*")]