Current Update
This commit is contained in:
@@ -104,11 +104,13 @@
|
||||
<Reference Include="DevExpress.Xpf.Grid.v13.2, Version=13.2.13.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<Reference Include="DevExpress.Xpf.Layout.v13.2.Core, Version=13.2.13.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<Reference Include="DevExpress.Xpf.Printing.v13.2, Version=13.2.13.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<Reference Include="DevExpress.Xpf.Ribbon.v13.2, Version=13.2.13.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<Reference Include="DevExpress.Xpf.RichEdit.v13.2, Version=13.2.13.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<Reference Include="DevExpress.Xpf.Scheduler.v13.2, Version=13.2.13.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<Reference Include="DevExpress.Xpf.Themes.LightGray.v13.2, Version=13.2.13.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<Reference Include="DevExpress.Xpf.Themes.Office2007Black.v13.2, Version=13.2.13.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<Reference Include="DevExpress.Xpf.Themes.Office2010Black.v13.2, Version=13.2.13.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<Reference Include="DevExpress.XtraBars.v13.2, Version=13.2.13.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<Reference Include="DevExpress.XtraEditors.v13.2, Version=13.2.13.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<Reference Include="DevExpress.XtraPivotGrid.v13.2, Version=13.2.13.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<Reference Include="DevExpress.XtraPrinting.v13.2, Version=13.2.13.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
@@ -182,6 +184,10 @@
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="SchulbegleitenderDienst\SchulbegleitenderDienstMitarbeiterBearbeitungsView.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="SchulbegleitenderDienst\KrankheitsZeitraumView.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
@@ -546,6 +552,9 @@
|
||||
<Compile Include="ProxyLoginView.xaml.cs">
|
||||
<DependentUpon>ProxyLoginView.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="SchulbegleitenderDienst\SchulbegleitenderDienstMitarbeiterBearbeitungsView.xaml.cs">
|
||||
<DependentUpon>SchulbegleitenderDienstMitarbeiterBearbeitungsView.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="SchulbegleitenderDienst\KrankheitsZeitraumView.xaml.cs">
|
||||
<DependentUpon>KrankheitsZeitraumView.xaml</DependentUpon>
|
||||
</Compile>
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
DevExpress.Xpf.RichEdit.RichEditControl, DevExpress.Xpf.RichEdit.v13.2, Version=13.2.13.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
|
||||
@@ -59,19 +59,19 @@
|
||||
<dxe:DateEdit MaskType="DateTimeAdvancingCaret" Grid.ColumnSpan="1" x:Name="Datepicker" Height="23" Grid.Row="0" Width="100" HorizontalAlignment="Left" VerticalAlignment="Top" EditValueChanged="Datepicker_OnEditValueChanged" Margin="3,3,3,3" AllowNullInput="False"/>
|
||||
|
||||
|
||||
<StackPanel Grid.Row="0" Grid.Column="1" Orientation="Horizontal" >
|
||||
<StackPanel Grid.Row="0" Grid.Column="1" Orientation="Horizontal" >
|
||||
|
||||
<Button Style="{x:Null}" Margin="3,3,3,3" Height="24" Width="24" ToolTip="Tagesansicht" Click="ButtonDayView_Click" VerticalAlignment="Top">
|
||||
<Image Source="/BeWoPlaner;component/Ressources/Icons/Calendar1Day24.png" />
|
||||
</Button>
|
||||
<Button Style="{x:Null}" Margin="3,3,3,3" Height="24" Width="24" ToolTip="Tagesansicht" Click="ButtonDayView_Click" VerticalAlignment="Top">
|
||||
<Image Source="/BeWoPlaner;component/Ressources/Icons/Calendar1Day24.png" />
|
||||
</Button>
|
||||
|
||||
<Button Style="{x:Null}" Margin="3,3,3,3" Height="24" Width="24" ToolTip="Wochenansicht" Click="ButtonWorkWeekView_Click" VerticalAlignment="Top">
|
||||
<Image Source="/BeWoPlaner;component/Ressources/Icons/Calendar5Day24.png" />
|
||||
</Button>
|
||||
<Button Style="{x:Null}" Margin="3,3,3,3" Height="24" Width="24" ToolTip="Wochenansicht" Click="ButtonWorkWeekView_Click" VerticalAlignment="Top">
|
||||
<Image Source="/BeWoPlaner;component/Ressources/Icons/Calendar5Day24.png" />
|
||||
</Button>
|
||||
|
||||
<Button Style="{x:Null}" Margin="3,3,3,3" Height="24" Width="24" ToolTip="Aktualisieren" Click="Aktualisieren_OnClick" VerticalAlignment="Top" >
|
||||
<Image Source="/BeWoPlaner;component/Ressources/Icons/SymbolRefresh32.png" />
|
||||
</Button>
|
||||
<Button Style="{x:Null}" Margin="3,3,3,3" Height="24" Width="24" ToolTip="Aktualisieren" Click="Aktualisieren_OnClick" VerticalAlignment="Top" >
|
||||
<Image Source="/BeWoPlaner;component/Ressources/Icons/SymbolRefresh32.png" />
|
||||
</Button>
|
||||
|
||||
</StackPanel>
|
||||
|
||||
@@ -263,7 +263,7 @@
|
||||
</StackPanel>
|
||||
|
||||
|
||||
<!-- jeweils links und rechts ein Pfeil button -->
|
||||
<!-- ##### jeweils links und rechts ein Pfeil button #### -->
|
||||
|
||||
<StackPanel Grid.ColumnSpan="3" Grid.Row="1" Grid.Column="0" Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Bottom" >
|
||||
|
||||
@@ -278,13 +278,17 @@
|
||||
</Button>
|
||||
|
||||
</StackPanel>
|
||||
<!---->
|
||||
|
||||
<!--######################################################-->
|
||||
|
||||
</Grid>
|
||||
|
||||
<!-- ###################################AutoGenerateColumns="AddNew"BasedOn="{StaticResource {themes:GridRowThemeKey ResourceKey=CellStyle}}"##################################################IsLeft="False"##################### -->
|
||||
<!-- ########################################################################################################### -->
|
||||
|
||||
<dxg:GridControl x:Name="GridDataControlTagesansicht" Visibility="Visible" Grid.Row="1" Grid.ColumnSpan="3" AllowDrop="true" Margin="5,5,5,5" VerticalContentAlignment="Center" >
|
||||
|
||||
<!-- ############################ Tagesansicht ######################################## -->
|
||||
|
||||
<dxg:GridControl x:Name="GridDataControlTagesansicht" Visibility="Visible" Grid.Row="1" Grid.ColumnSpan="3" AllowDrop="true" Margin="5,5,5,5" VerticalContentAlignment="Center" >
|
||||
<dxg:GridControl.Columns >
|
||||
|
||||
|
||||
@@ -371,14 +375,19 @@
|
||||
|
||||
</dxg:GridControl>
|
||||
|
||||
<!--####################################################################################-->
|
||||
|
||||
|
||||
<!--############################ Tages Ansicht View ****Ende**** ##########################################################################-->
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dxg:GridControl x:Name="GridDataControlMitarbeiterWochenansicht" Visibility="Collapsed" Grid.Row="1" Grid.ColumnSpan="3" AllowDrop="true" Margin="5,5,5,5" VerticalContentAlignment="Center" >
|
||||
<dxg:GridControl.Columns >
|
||||
|
||||
<dxg:GridColumn FieldName="MaFrei" Header="Mitarbeiter" Width="125" ReadOnly="True" />
|
||||
<!-- Umbauen -->
|
||||
|
||||
<dxg:GridColumn FieldName="Employee" Header="Mitarbeiter" Width="125" ReadOnly="True" />
|
||||
|
||||
<dxg:GridColumn FieldName="Mo" Header="Mo" Width="75" ReadOnly="True"/>
|
||||
|
||||
@@ -386,7 +395,7 @@
|
||||
<dxg:GridColumn.EditSettings >
|
||||
<dxe:ButtonEditSettings x:Name="ButtonEditSetMaMo" AllowDefaultButton="False">
|
||||
<dxe:ButtonEditSettings.Buttons >
|
||||
<dxe:ButtonInfo GlyphKind="Custom" ButtonKind="Simple" >
|
||||
<dxe:ButtonInfo GlyphKind="Custom" ButtonKind="Simple" Click="AddKlientToMitarbeiter_OnClick" >
|
||||
<dxe:ButtonInfo.Content>
|
||||
<Image Source ="../Ressources/Icons/Search.png" Width="20" Height="15" RenderOptions.BitmapScalingMode="HighQuality" x:Name="SearchImageButtonMaMo" ToolTip="Klient Hinzufügen"/>
|
||||
</dxe:ButtonInfo.Content>
|
||||
@@ -416,7 +425,7 @@
|
||||
<dxg:GridColumn.EditSettings >
|
||||
<dxe:ButtonEditSettings x:Name="ButtonEditSetMaDi" AllowDefaultButton="False">
|
||||
<dxe:ButtonEditSettings.Buttons >
|
||||
<dxe:ButtonInfo GlyphKind="Custom" ButtonKind="Simple" >
|
||||
<dxe:ButtonInfo GlyphKind="Custom" ButtonKind="Simple" Click="AddKlientToMitarbeiter_OnClick">
|
||||
<dxe:ButtonInfo.Content>
|
||||
<Image Source ="../Ressources/Icons/Search.png" Width="20" Height="15" RenderOptions.BitmapScalingMode="HighQuality" x:Name="SearchImageButtonMaDi" ToolTip="Klient Hinzufügen"/>
|
||||
</dxe:ButtonInfo.Content>
|
||||
@@ -446,7 +455,7 @@
|
||||
<dxg:GridColumn.EditSettings >
|
||||
<dxe:ButtonEditSettings x:Name="ButtonEditSetMaMi" AllowDefaultButton="False">
|
||||
<dxe:ButtonEditSettings.Buttons >
|
||||
<dxe:ButtonInfo GlyphKind="Custom" ButtonKind="Simple" >
|
||||
<dxe:ButtonInfo GlyphKind="Custom" ButtonKind="Simple" Click="AddKlientToMitarbeiter_OnClick">
|
||||
<dxe:ButtonInfo.Content>
|
||||
<Image Source ="../Ressources/Icons/Search.png" Width="20" Height="15" RenderOptions.BitmapScalingMode="HighQuality" x:Name="SearchImageButtonMaMi" ToolTip="Klient Hinzufügen"/>
|
||||
</dxe:ButtonInfo.Content>
|
||||
@@ -476,7 +485,7 @@
|
||||
<dxg:GridColumn.EditSettings >
|
||||
<dxe:ButtonEditSettings x:Name="ButtonEditSetMaDo" AllowDefaultButton="False">
|
||||
<dxe:ButtonEditSettings.Buttons >
|
||||
<dxe:ButtonInfo GlyphKind="Custom" ButtonKind="Simple" >
|
||||
<dxe:ButtonInfo GlyphKind="Custom" ButtonKind="Simple" Click="AddKlientToMitarbeiter_OnClick">
|
||||
<dxe:ButtonInfo.Content>
|
||||
<Image Source ="../Ressources/Icons/Search.png" Width="20" Height="15" RenderOptions.BitmapScalingMode="HighQuality" x:Name="SearchImageButtonMaDo" ToolTip="Klient Hinzufügen"/>
|
||||
</dxe:ButtonInfo.Content>
|
||||
@@ -506,7 +515,7 @@
|
||||
<dxg:GridColumn.EditSettings >
|
||||
<dxe:ButtonEditSettings x:Name="ButtonEditSetMaFr" AllowDefaultButton="False">
|
||||
<dxe:ButtonEditSettings.Buttons >
|
||||
<dxe:ButtonInfo GlyphKind="Custom" ButtonKind="Simple" >
|
||||
<dxe:ButtonInfo GlyphKind="Custom" ButtonKind="Simple" Click="AddKlientToMitarbeiter_OnClick">
|
||||
<dxe:ButtonInfo.Content>
|
||||
<Image Source ="../Ressources/Icons/Search.png" Width="20" Height="15" RenderOptions.BitmapScalingMode="HighQuality" x:Name="SearchImageButtonMaFr" ToolTip="Klient Hinzufügen"/>
|
||||
</dxe:ButtonInfo.Content>
|
||||
@@ -536,7 +545,7 @@
|
||||
<dxg:GridColumn.EditSettings >
|
||||
<dxe:ButtonEditSettings x:Name="ButtonEditSetMaSa" AllowDefaultButton="False">
|
||||
<dxe:ButtonEditSettings.Buttons >
|
||||
<dxe:ButtonInfo GlyphKind="Custom" ButtonKind="Simple" >
|
||||
<dxe:ButtonInfo GlyphKind="Custom" ButtonKind="Simple" Click="AddKlientToMitarbeiter_OnClick">
|
||||
<dxe:ButtonInfo.Content>
|
||||
<Image Source ="../Ressources/Icons/Search.png" Width="20" Height="15" RenderOptions.BitmapScalingMode="HighQuality" x:Name="SearchImageButtonMaSa" ToolTip="Klient Hinzufügen"/>
|
||||
</dxe:ButtonInfo.Content>
|
||||
@@ -766,70 +775,7 @@
|
||||
|
||||
<!--############################### Wochenüberblick Klient ****Ende**** ########################CellValueChanged="GridViewWochenKlientBase_OnRowUpdated"######################-->
|
||||
|
||||
<!-- End mal geschaut -->
|
||||
|
||||
<!-- ################################## TreeListControl ##############################################################-->
|
||||
|
||||
<!--<dxg:TreeListControl x:Name="GridDataControl" Grid.Row="1" Grid.RowSpan="2" Grid.ColumnSpan="3" AllowDrop="true" Margin="5,5,5,5" VerticalContentAlignment="Center" >
|
||||
<dxg:TreeListControl.Bands>
|
||||
<dxg:TreeListControl.Columns>
|
||||
|
||||
<dxg:TreeListColumn FieldName="Vertretung" Width="250" x:Name="ColumnVertretung" >
|
||||
<dxg:TreeListColumn.EditSettings >
|
||||
<dxe:ButtonEditSettings x:Name="ButtonEditSet" AllowDefaultButton="False">
|
||||
<dxe:ButtonEditSettings.Buttons >
|
||||
<dxe:ButtonInfo GlyphKind="Custom" ButtonKind="Simple" Click="ButtonEditSettings_OnDefaultButtonClick" >
|
||||
<dxe:ButtonInfo.Content>
|
||||
<Image Source ="../Ressources/Icons/Search.png" Width="20" Height="15" RenderOptions.BitmapScalingMode="HighQuality" x:Name="SearchImageButton" ToolTip="Hidden Valley Suddenly Dead"/>
|
||||
</dxe:ButtonInfo.Content>
|
||||
</dxe:ButtonInfo>
|
||||
</dxe:ButtonEditSettings.Buttons>
|
||||
</dxe:ButtonEditSettings>
|
||||
</dxg:TreeListColumn.EditSettings>
|
||||
</dxg:TreeListColumn>
|
||||
|
||||
<dxg:TreeListColumn FieldName="Kunde" Width="200" />
|
||||
<dxg:TreeListColumn FieldName="KrankerMitarbeiter" Width="200" />
|
||||
<dxg:TreeListColumn FieldName="KrankheitsMeldung" Width="200" />
|
||||
<dxg:TreeListColumn FieldName="KrankheitsZeitraum" Width="200"/>
|
||||
<dxg:TreeListColumn FieldName="AbwesenheitsKategorie" Width="200"/>
|
||||
<dxg:TreeListColumn FieldName="Beschreibung" MinWidth="200" />
|
||||
<dxg:TreeListColumn FieldName="VertretungsDC" MinWidth="0" Visible="False" />
|
||||
--><!--<dxg:TreeListColumn FieldName="ParentId" dxg:BandBase.GridRow="1" />
|
||||
<dxg:TreeListColumn FieldName="Oid" />--><!--
|
||||
|
||||
</dxg:TreeListControl.Columns>
|
||||
<dxg:TreeListControl.View>
|
||||
<dxg:TreeListView x:Name="view"
|
||||
ParentFieldName="ParentId"
|
||||
KeyFieldName="Oid" AutoWidth="True" />
|
||||
|
||||
</dxg:TreeListControl.View>
|
||||
<dxg:TreeListControl.Bands>
|
||||
</dxg:TreeListControl>-->
|
||||
|
||||
<!--
|
||||
// dieser bereich muss unter vertretung
|
||||
<dxg:TreeListControlBand Header="Details">
|
||||
<dxg:TreeListControlBand.Bands>
|
||||
<dxg:TreeListControlBand Header="Absolute Values">
|
||||
|
||||
<dxg:TreeListColumn FieldName="Kunde" Width="200" />
|
||||
<dxg:TreeListColumn FieldName="KrankerMitarbeiter" Width="200" />
|
||||
<dxg:TreeListColumn FieldName="KrankheitsMeldung" Width="200" />
|
||||
<dxg:TreeListColumn FieldName="KrankheitsZeitraum" Width="200"/>
|
||||
<dxg:TreeListColumn FieldName="AbwesenheitsKategorie" Width="200"/>
|
||||
<dxg:TreeListColumn FieldName="Beschreibung" MinWidth="200" />
|
||||
|
||||
</dxg:TreeListControlBand>
|
||||
</dxg:TreeListControlBand.Bands>
|
||||
</dxg:TreeListControlBand>
|
||||
|
||||
|
||||
|
||||
-->
|
||||
|
||||
<!-- ####################################################ShowAutoFilterRow="{Binding ShowAutoFilterRow}"##############################################################-->
|
||||
|
||||
|
||||
<Popup Margin="10" x:Name="popup_MitarbeiterVertretung" StaysOpen="False" Placement="MousePoint" Width="370" Height="250"
|
||||
Closed="popup_Closed" Opened="popup_Opened">
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -6,7 +6,7 @@
|
||||
xmlns:search="clr-namespace:BeWo.View.Search"
|
||||
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
|
||||
Title="Vertretung auswählen" Height="650" Width="700" WindowStartupLocation="CenterScreen"
|
||||
Title="Vertretung auswählen" Height="650" Width="750" WindowStartupLocation="CenterScreen"
|
||||
ResizeMode="CanResizeWithGrip" WindowStyle="None" Background="Transparent">
|
||||
|
||||
<GroupBox Header="Vertretung auswählen" x:Name="rootGroupBox" Style="{DynamicResource MainContentGroupBoxWithoutMaximizeBtnStyle}" MouseLeftButtonDown="RootGroupBox_OnMouseLeftButtonDown" >
|
||||
@@ -146,49 +146,47 @@
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<GroupBox Grid.Row="0" Margin="1" Style="{StaticResource ObjectEditGroupBox}" Header="Klienten PLZ">
|
||||
|
||||
<Grid>
|
||||
<WrapPanel Orientation="Horizontal" Margin="1" HorizontalAlignment="Left" >
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<WrapPanel Orientation="Horizontal" Margin="1" HorizontalAlignment="Left" Grid.Column="0">
|
||||
<Label Content ="Plz:" />
|
||||
<Label x:Name="LabelPlzKlient" Width="50" />
|
||||
</WrapPanel>
|
||||
|
||||
<WrapPanel Orientation="Horizontal" Margin="1" HorizontalAlignment="Right">
|
||||
<WrapPanel Orientation="Horizontal" Margin="1" HorizontalAlignment="Right" Grid.Column="1">
|
||||
<Label Content="Ort:"/>
|
||||
<Label x:Name="LabelOrtKlient" />
|
||||
<Label x:Name="LabelOrtKlient" Width="100" />
|
||||
</WrapPanel>
|
||||
</Grid>
|
||||
<!-- Combobox unter TextBox positionieren und Grid.ColumnSpan="2" Grid.ColumnSpan="2"-->
|
||||
<!--<ComboBox x:name="jfwj" Visibility="Collapsed" Selected="Selector_OnSelected" IsEditable="True" />-->
|
||||
|
||||
<!--hier combobox mit umkreis 5 10 15 20 25 km anzeigen | Zurzeit deakiviert -->
|
||||
<!--<Label Margin="3" x:Name="LabelUmkreis" Visibility="Collapsed" >Umkreis</Label> -->
|
||||
<!--<controls:NullItemComboBox Margin="3" Height="23" x:Name="ComboBoxUmkreisExtender" Width="75" Visibility="Collapsed" SelectionChanged="ComboBoxUmkreisExtender_OnSelected"/>-->
|
||||
<!-- ####### Zurzeit Deaktiviert ####### -->
|
||||
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
<GroupBox Grid.Row="1" Margin="1" Style="{StaticResource ObjectEditGroupBox}" Header="Suche nach" >
|
||||
<GroupBox Grid.Row="1" Margin="1" Style="{StaticResource ObjectEditGroupBox}" Header="Suche nach">
|
||||
<Grid>
|
||||
<WrapPanel Orientation="Horizontal" HorizontalAlignment="Left" Margin="1">
|
||||
<Label Content="Plz:" />
|
||||
<TextBox x:Name="PlzKlient" Height="23" Width="50" MaxLength="5" VerticalContentAlignment="Center" TextChanged="PlzKlient_OnTextChanged" /> <!-- Aus Textbiox ein Texedit machen und Regex hinzufügen "[^0-9]+" -->
|
||||
</WrapPanel>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<WrapPanel Orientation="Horizontal" HorizontalAlignment="Left" Margin="1" Grid.Column="0">
|
||||
<Label Content="Plz:" />
|
||||
<dxe:TextEdit x:Name="PlzKlient" Height="23" Width="50" VerticalContentAlignment="Center" EditValueChanged="PlzKlient_OnTextChanged" MaskType="RegEx" Mask="\d{1,5}" ShowError="False" />
|
||||
</WrapPanel>
|
||||
|
||||
<WrapPanel Orientation="Horizontal" HorizontalAlignment="Right" Margin="1">
|
||||
<Label Content="Ort:" />
|
||||
<TextBox x:Name="OrtKlient" Height="23" Width="50" VerticalContentAlignment="Center" TextChanged="OrtKlient_OnTextChanged" />
|
||||
</WrapPanel>
|
||||
<WrapPanel Orientation="Horizontal" HorizontalAlignment="Right" Margin="1" Grid.Column="1">
|
||||
<Label Content="Ort:" />
|
||||
<TextBox x:Name="OrtKlient" Height="23" Width="100" VerticalContentAlignment="Center" TextChanged="OrtKlient_OnTextChanged" />
|
||||
</WrapPanel>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
</Grid>
|
||||
|
||||
|
||||
|
||||
</Grid>
|
||||
</Grid>
|
||||
|
||||
<!-- ######################################################################Checked="ToggleButtonMaennlich_OnChecked" ## Checked="ToggleButtonWeiblich_OnChecked" ###################################### -->
|
||||
<!-- ##################################################################################################################### -->
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -39,6 +39,7 @@ using DevExpress.XtraPrinting.Native;
|
||||
using DevExpress.XtraPrinting.XamlExport;
|
||||
using Microsoft.Office.Interop.Word;
|
||||
using Color = System.Drawing.Color;
|
||||
using KeyEventArgs = System.Windows.Input.KeyEventArgs;
|
||||
using MessageBox = System.Windows.MessageBox;
|
||||
using TextBox = System.Windows.Controls.TextBox;
|
||||
|
||||
@@ -49,8 +50,6 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
|
||||
public event EventHandler<CustomEventArgs> RaiseCustomEvent;
|
||||
|
||||
public event EventHandler<CustomKlientEventArgs> RaiseKlientCustomEvent;
|
||||
|
||||
private DateTime? _startDate;
|
||||
|
||||
private DateTime? _endDate;
|
||||
@@ -71,7 +70,7 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
|
||||
|
||||
|
||||
public SchulbegleitenderDienstBearbeitungsView(int y, DateTime? startdate, DateTime? enddate, DateTime currentDate, long? klientOid) // oid muss mitgegeben werden
|
||||
public SchulbegleitenderDienstBearbeitungsView(int y, DateTime? startdate, DateTime? enddate, DateTime currentDate, long? klientOid) // Klient oid muss mitgegeben werden
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
@@ -97,7 +96,6 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
OrdenerieThings();
|
||||
|
||||
|
||||
|
||||
if (y == 1)
|
||||
{
|
||||
//y == 1 Mitarbeiterauswahl
|
||||
@@ -110,14 +108,7 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
}
|
||||
|
||||
//setze Ort und olz des Klienten zur ansicht
|
||||
SetKlientOrtAndPlz();
|
||||
|
||||
|
||||
//################ UmkreisErmittler prototyp status ################
|
||||
//List<String> woaa = new List<string> { "5 km", "10 km", "15 km", "20 km", "25 km" };
|
||||
// ComboBoxUmkreisExtender.ItemsSource = woaa;
|
||||
//##################################################
|
||||
|
||||
SetKlientOrtAndPlz();
|
||||
}
|
||||
|
||||
|
||||
@@ -144,21 +135,13 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
}
|
||||
|
||||
private void SetKlientOrtAndPlz()
|
||||
{
|
||||
//Übergebe hier die Plz und den Ort des Klienten zur ansicht
|
||||
List<long> x = new List<long>();
|
||||
x.Add(_klientOid.Value);
|
||||
|
||||
// neue funktion schreiben um die person hinter customer mit customer oid zu holen
|
||||
var klient = ServiceFacade.DoCustomerServiceSync(r => r.GetCustomersById(x));
|
||||
|
||||
//Platzhalter Daten
|
||||
LabelPlzKlient.Content = "53842"; // Übergebe hier die Plz des klienten
|
||||
LabelOrtKlient.Content = "Troisdorf"; // Übergebe hier den Ort des klienten
|
||||
|
||||
|
||||
|
||||
|
||||
{
|
||||
var pKlient = ServiceFacade.DoCustomerServiceSync(r => r.GetPersonWithCustomerOid(_klientOid.Value));
|
||||
|
||||
if(pKlient != null){
|
||||
LabelPlzKlient.Content = pKlient.PostalCode;
|
||||
LabelOrtKlient.Content = pKlient.Town;
|
||||
}
|
||||
}
|
||||
|
||||
#region MitarbeiterSearch
|
||||
@@ -196,13 +179,7 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
private void OrdenerieThings()
|
||||
{
|
||||
_dataListEmployee.Clear();
|
||||
//popup_MitarbeiterVertretung.IsOpen = false;
|
||||
//MitarbeiterVertretungsearchview.ItemSelected -= MitarbeiterVertretungsearchview_MitarbeiterVertretungSelected;
|
||||
|
||||
//currentEmployee = e.Data;
|
||||
//popupedit_MitarbeiterVertretungSearch.Text = currentEmployee.FirstName + " " + currentEmployee.LastName;
|
||||
|
||||
//hole alle mit Service Raus
|
||||
|
||||
//var employeeList =
|
||||
ServiceFacade.DoEmployeeServiceAsync(s => s.GetAllActiveVertreterEmployeesCompact(), employeeList => this.Dispatch(
|
||||
delegate
|
||||
@@ -363,71 +340,71 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
}
|
||||
}
|
||||
|
||||
//#######################################################################
|
||||
//#################### Nicht mehr gebrauchter code ###################################################
|
||||
|
||||
|
||||
//######################## Postalcode Range Extender
|
||||
|
||||
public void ErmittlePlzBereich(string plz, int umkreis)
|
||||
{
|
||||
decimal postleitzahl = Convert.ToDecimal(plz);
|
||||
//public void ErmittlePlzBereich(string plz, int umkreis)
|
||||
//{
|
||||
// decimal postleitzahl = Convert.ToDecimal(plz);
|
||||
|
||||
if (umkreis == 0)
|
||||
{
|
||||
//Zeige in der liste alle an die genau diese postleitzahl mit den ersten 3 Stellen haben. //villeicht auch ersten 4 mal sehen
|
||||
MessageBox.Show("Zeige alle Personen mit gleicher plz an");
|
||||
}
|
||||
else
|
||||
{
|
||||
MessageBox.Show("Hier kommt nacher eine Berechnung des Umkreises hin");
|
||||
// if (umkreis == 0)
|
||||
// {
|
||||
// //Zeige in der liste alle an die genau diese postleitzahl mit den ersten 3 Stellen haben. //villeicht auch ersten 4 mal sehen
|
||||
// MessageBox.Show("Zeige alle Personen mit gleicher plz an");
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// MessageBox.Show("Hier kommt nacher eine Berechnung des Umkreises hin");
|
||||
|
||||
#region Plzklient mit erweiterter umkreis auswahl
|
||||
//PlzKlient mit erweiterter umkreis auswahl.
|
||||
// #region Plzklient mit erweiterter umkreis auswahl
|
||||
// //PlzKlient mit erweiterter umkreis auswahl.
|
||||
|
||||
//const Erdradius = 6371000; Konstante in metern
|
||||
//
|
||||
// //const Erdradius = 6371000; Konstante in metern
|
||||
// //
|
||||
|
||||
//// Umwandlung der Kugel-Koordinaten ins kathesische Koordinatensystem:
|
||||
//// Umrechnung ins Bogenmaß
|
||||
//lambda := geoLaenge * PI / 180;
|
||||
//phi := geoBreite * PI / 180;
|
||||
// //// Umwandlung der Kugel-Koordinaten ins kathesische Koordinatensystem:
|
||||
// //// Umrechnung ins Bogenmaß
|
||||
// //lambda := geoLaenge * PI / 180;
|
||||
// //phi := geoBreite * PI / 180;
|
||||
|
||||
//geoKoordX := Round(Erdradius * cos(phi) * cos(lambda));
|
||||
//geoKoordY := Round(Erdradius * cos(phi) * sin(lambda));
|
||||
//geoKoordZ := Round(Erdradius * sin(phi));
|
||||
// //geoKoordX := Round(Erdradius * cos(phi) * cos(lambda));
|
||||
// //geoKoordY := Round(Erdradius * cos(phi) * sin(lambda));
|
||||
// //geoKoordZ := Round(Erdradius * sin(phi));
|
||||
|
||||
|
||||
// Umrechnung von Meter in Kilometer
|
||||
// Bei der Berechnung in Metern werden die Zahlen zu groß,
|
||||
// die Berechnung mit Floats ist allerdings kein Problem...
|
||||
// // Umrechnung von Meter in Kilometer
|
||||
// // Bei der Berechnung in Metern werden die Zahlen zu groß,
|
||||
// // die Berechnung mit Floats ist allerdings kein Problem...
|
||||
|
||||
//rd := mysql_fetch_row(re);
|
||||
//x1 := geoKoordX / 1000;
|
||||
//y1 := geoKoordY / 1000;
|
||||
//z1 := geoKoordZ / 1000;
|
||||
//x2 := geoKoordX2 / 1000;
|
||||
//y2 := geoKoordY2 / 1000;
|
||||
//z2 := geoKoordZ2 / 1000;
|
||||
// //rd := mysql_fetch_row(re);
|
||||
// //x1 := geoKoordX / 1000;
|
||||
// //y1 := geoKoordY / 1000;
|
||||
// //z1 := geoKoordZ / 1000;
|
||||
// //x2 := geoKoordX2 / 1000;
|
||||
// //y2 := geoKoordY2 / 1000;
|
||||
// //z2 := geoKoordZ2 / 1000;
|
||||
|
||||
//Entfernung := Round(
|
||||
// 2 * ErdradiusKm *
|
||||
// arcsin(
|
||||
// sqrt(
|
||||
// sqr(x1 - x2)
|
||||
// + sqr(y1 - y2)
|
||||
// + sqr(z1 - z2)
|
||||
// ) / (2 * ErdradiusKm)
|
||||
// )
|
||||
// * 1000
|
||||
// );
|
||||
#endregion
|
||||
}
|
||||
// //Entfernung := Round(
|
||||
// // 2 * ErdradiusKm *
|
||||
// // arcsin(
|
||||
// // sqrt(
|
||||
// // sqr(x1 - x2)
|
||||
// // + sqr(y1 - y2)
|
||||
// // + sqr(z1 - z2)
|
||||
// // ) / (2 * ErdradiusKm)
|
||||
// // )
|
||||
// // * 1000
|
||||
// // );
|
||||
// #endregion
|
||||
// }
|
||||
|
||||
}
|
||||
//}
|
||||
|
||||
//########################################################################
|
||||
|
||||
private void PlzKlient_OnTextChanged(object sender, TextChangedEventArgs e)
|
||||
private void PlzKlient_OnTextChanged(object sender, EditValueChangedEventArgs e)
|
||||
{
|
||||
bool ruecksetzpunkt = false;
|
||||
|
||||
@@ -452,7 +429,7 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
if (ruecksetzpunkt)
|
||||
{
|
||||
GridDataControlMitarbeiterVertretungsearchview.ItemsSource = alleMitarbeiterDaten;
|
||||
//aktuelleDaten = alleMitarbeiterDaten;
|
||||
//aktuelleDaten = alleMitarbeiterDaten; // sollte sich so verhalten wie bei geschlecht
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -463,75 +440,23 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
GridDataControlMitarbeiterVertretungsearchview.RefreshData();
|
||||
GridDataControlMitarbeiterVertretungsearchview.RefreshUI();
|
||||
|
||||
|
||||
#region PLZRadiusAlgorythmusplanung
|
||||
|
||||
// PlzKlien // AutoCompleteMode.Suggest;
|
||||
|
||||
//testbereiche
|
||||
//foreach (var item in aktuelleDaten)
|
||||
//{
|
||||
// if (!item.Geschlecht.Equals("Weiblich") && isOtherActive == false)
|
||||
// {
|
||||
// newItems.Add(item);
|
||||
// }
|
||||
// else if (isOtherActive)
|
||||
// {
|
||||
// newItems.Add(item);
|
||||
// }
|
||||
//}
|
||||
|
||||
|
||||
|
||||
//AutoCompleteStringCollection collection = new AutoCompleteStringCollection();
|
||||
|
||||
////Bereich der tipp anzeige für die Plz
|
||||
//foreach (var item in _dataListEmployee)
|
||||
//{
|
||||
// if(item.Adress != null){
|
||||
// string[] adressString = item.Adress.Split(' ');
|
||||
|
||||
// var adress = adressString[1];
|
||||
|
||||
// //if(adressString.Length == 3){
|
||||
// if (adress.Contains(PlzKlient.Text))
|
||||
// {
|
||||
// collection.Add(adress);
|
||||
// }
|
||||
// // }
|
||||
// }
|
||||
|
||||
//}
|
||||
|
||||
// BEreich zur anzeige der Combobox
|
||||
//if (PlzKlient.Text.Length == 5)
|
||||
//{
|
||||
// LabelUmkreis.Visibility = Visibility.Visible;
|
||||
// ComboBoxUmkreisExtender.Visibility = Visibility.Visible;
|
||||
//}
|
||||
//else
|
||||
//{
|
||||
// LabelUmkreis.Visibility = Visibility.Collapsed;
|
||||
// ComboBoxUmkreisExtender.Visibility = Visibility.Collapsed;
|
||||
//}
|
||||
#endregion
|
||||
}
|
||||
|
||||
private void ComboBoxUmkreisExtender_OnSelected(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var item = sender as NullItemComboBox;
|
||||
//private void ComboBoxUmkreisExtender_OnSelected(object sender, RoutedEventArgs e)
|
||||
//{
|
||||
// var item = sender as NullItemComboBox;
|
||||
|
||||
int umkreis = 0;
|
||||
// int umkreis = 0;
|
||||
|
||||
if (item != null && item.SelectedItem != null)
|
||||
{
|
||||
string[] ahh = item.SelectedItem.ToString().Split(' ');
|
||||
// if (item != null && item.SelectedItem != null)
|
||||
// {
|
||||
// string[] ahh = item.SelectedItem.ToString().Split(' ');
|
||||
|
||||
umkreis = Convert.ToInt32(ahh[0]);
|
||||
}
|
||||
// umkreis = Convert.ToInt32(ahh[0]);
|
||||
// }
|
||||
|
||||
ErmittlePlzBereich(PlzKlient.Text, umkreis);
|
||||
}
|
||||
// ErmittlePlzBereich(PlzKlient.Text, umkreis);
|
||||
//}
|
||||
|
||||
//private void Selector_OnSelected(object sender, RoutedEventArgs e)
|
||||
//{
|
||||
@@ -688,7 +613,7 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
//hole die liste aller Employee2Token
|
||||
var x = ServiceFacade.DoOperationsServiceSync(r => r.GetEmployee2TokenList()); // hier ggf. Async aufruf
|
||||
|
||||
//bool isAusschluss = false; // erstmal rausnehmen
|
||||
//bool isAusschluss = false; // zu test zwecke erstmal rausnehmen und später wieder rein
|
||||
|
||||
foreach (var daten in alleMitarbeiterDaten)
|
||||
{
|
||||
@@ -772,7 +697,6 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
|
||||
}
|
||||
|
||||
|
||||
private void GeschlechtsUmwandlung(int i, bool isOtherActive)
|
||||
{
|
||||
List<SearchViewDaten> newItems = new List<SearchViewDaten>();
|
||||
@@ -834,10 +758,8 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
GridDataControlMitarbeiterVertretungsearchview.RefreshUI();
|
||||
}
|
||||
|
||||
|
||||
private void OrtKlient_OnTextChanged(object sender, TextChangedEventArgs e)
|
||||
{
|
||||
//das Gleiche wie bei PLz umkreis suche nur mit Ort
|
||||
bool ruecksetzpunkt = false;
|
||||
|
||||
List<SearchViewDaten> ndaten = new List<SearchViewDaten>();
|
||||
@@ -873,6 +795,7 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
GridDataControlMitarbeiterVertretungsearchview.RefreshData();
|
||||
GridDataControlMitarbeiterVertretungsearchview.RefreshUI();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public class CustomEventArgs : EventArgs
|
||||
@@ -905,35 +828,7 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
|
||||
}
|
||||
|
||||
public class CustomKlientEventArgs : EventArgs
|
||||
{
|
||||
private CompactCustomerDC dc;
|
||||
private DateTime? startdt;
|
||||
private DateTime? enddt;
|
||||
|
||||
public CustomKlientEventArgs(CompactCustomerDC s, DateTime? start, DateTime? ende)
|
||||
{
|
||||
dc = s;
|
||||
startdt = start;
|
||||
enddt = ende;
|
||||
}
|
||||
|
||||
public CompactCustomerDC Message
|
||||
{
|
||||
get { return dc; }
|
||||
}
|
||||
|
||||
public DateTime? StartDate
|
||||
{
|
||||
get { return startdt; }
|
||||
}
|
||||
|
||||
public DateTime? EndDate
|
||||
{
|
||||
get { return enddt; }
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
public class SearchViewDaten
|
||||
{
|
||||
|
||||
@@ -0,0 +1,297 @@
|
||||
<Window x:Class="BeWo.SchulbegleitenderDienst.SchulbegleitenderDienstMitarbeiterBearbeitungsView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:view="clr-namespace:BeWo.View"
|
||||
xmlns:controls="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
|
||||
xmlns:search="clr-namespace:BeWo.View.Search"
|
||||
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
|
||||
Title="Vertretung auswählen" Height="650" Width="750" WindowStartupLocation="CenterScreen"
|
||||
ResizeMode="CanResizeWithGrip" WindowStyle="None" Background="Transparent">
|
||||
|
||||
<GroupBox Header="Vertretenden auswählen" x:Name="rootGroupBox" Style="{DynamicResource MainContentGroupBoxWithoutMaximizeBtnStyle}" MouseLeftButtonDown="RootGroupBox_OnMouseLeftButtonDown" >
|
||||
<Grid>
|
||||
|
||||
<Grid Background="White" x:Name="rootGroupBoxMitarbeiter" >
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="225"/>
|
||||
<RowDefinition Height="125"/>
|
||||
<RowDefinition Height="*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<!-- ############################### Oberes 1/3 auswahl Kriterien ################################################ -->
|
||||
<Grid Grid.Row="0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="250" />
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="100"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="100"/>
|
||||
<RowDefinition Height="125"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<GroupBox Header="Mitarbeiter Wunsch Kriterien" Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3" >
|
||||
<!-- Ready machen für teilweise funktion / Combobox zur auswahl der tokens und TextBox zur anzeige der ausgewählten tokens -->
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
|
||||
|
||||
<!-- <controls:NullItemComboBox Grid.Row="0" Grid.Column="0" x:Name="MitarbeiterWunschAuswahl" SelectionChanged="MitarbeiterWunschAuswahl_OnSelectionChanged" Width="200" Height="23" Visibility="Collapsed" /> -->
|
||||
|
||||
<TextBox Grid.Row="1" Grid.Column="0" Margin="3" x:Name="MitarbeiterWunschAnzeige" MinHeight="50" TextWrapping="Wrap" Width="200" IsReadOnly="True" />
|
||||
|
||||
|
||||
</Grid>
|
||||
|
||||
</GroupBox>
|
||||
|
||||
<GroupBox Header="Mitarbeiter Ausschluss Kriterien" Grid.Row="0" Grid.Column="2" Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3">
|
||||
<!-- Ready machen für teilweise funktion <ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/> <RowDefinition Height="Auto"/>-->
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
|
||||
|
||||
<!-- <controls:NullItemComboBox Grid.Row="0" Grid.Column="0" x:Name="MitarbeiterAussschlussAuswahl" SelectionChanged="MitarbeiterAussschlussAuswahl_OnSelectionChanged" Width="200" Height="23" Visibility="Collapsed"/> -->
|
||||
|
||||
<TextBox Grid.Row="1" Margin="3" Grid.Column="0" x:Name="MitarbeiterAussschlussAnzeige" Width="200" MinHeight="50" TextWrapping="Wrap" IsReadOnly="True"/>
|
||||
|
||||
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
|
||||
<GroupBox Header="Klient Wunsch Kriterien" Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3" >
|
||||
|
||||
<!-- ############### wird durch Token Combobox mit devexpress vers. 17 ersetzt ################################## -->
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
|
||||
<controls:NullItemComboBox Grid.Row="0" Grid.Column="0" x:Name="KlientWunschAuswahl" SelectionChanged="KlientWunschAuswahl_OnSelectionChanged" Width="200" Height="23" />
|
||||
|
||||
<TextBox Grid.Row="1" Margin="3" Grid.Column="0" x:Name="KlientWunschAnzeige" Width="200" MinHeight="50" TextWrapping="Wrap" IsReadOnly="True"/>
|
||||
|
||||
</Grid>
|
||||
|
||||
<!-- ############################################################################################################## -->
|
||||
</GroupBox>
|
||||
|
||||
<GroupBox Header="Klient Ausschluss Kriterien" Grid.Row="1" Grid.Column="2" Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3" >
|
||||
|
||||
<!-- ############### wird durch Token Combobox mit devexpress vers. 17 ersetzt ################################## -->
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<controls:NullItemComboBox Grid.Row="0" Grid.Column="0" x:Name="KlientAussschlussAuswahl" SelectionChanged="KlientAussschlussAuswahl_OnSelectionChanged" Width="200" Height="23" />
|
||||
|
||||
<TextBox Grid.Row="1" Margin="3" Grid.Column="0" x:Name="KlientAussschlussAnzeige" Width="200" MinHeight="50" TextWrapping="Wrap" IsReadOnly="True"/>
|
||||
|
||||
</Grid>
|
||||
<!-- ############################################################################################################## -->
|
||||
</GroupBox>
|
||||
|
||||
|
||||
<GroupBox Header="Geschlecht" Grid.Row="0" Grid.Column="4" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3">
|
||||
<WrapPanel Orientation="Horizontal">
|
||||
<CheckBox Content="männlich" Margin="3,3,3,3" Click="RBMaennlich_OnClick" x:Name="RBMaennlich" IsChecked="True"/>
|
||||
<CheckBox Content="weiblich" Margin="3,3,3,3" Click="RBWeiblich_OnClick" x:Name="RBWeiblich" IsChecked="True" />
|
||||
</WrapPanel>
|
||||
</GroupBox>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<Grid Column="4" Grid.Row="1" Margin="3,3,3,3">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="60"/>
|
||||
<RowDefinition Height="60"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<GroupBox Grid.Row="0" Margin="1" Style="{StaticResource ObjectEditGroupBox}" Header="Klienten PLZ">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<WrapPanel Orientation="Horizontal" Margin="1" HorizontalAlignment="Left" Grid.Column="0">
|
||||
<Label Content ="Plz:" />
|
||||
<Label x:Name="LabelPlzMitarbeiter" Width="50" />
|
||||
</WrapPanel>
|
||||
|
||||
<WrapPanel Orientation="Horizontal" Margin="1" HorizontalAlignment="Right" Grid.Column="1">
|
||||
<Label Content="Ort:"/>
|
||||
<Label x:Name="LabelOrtMitarbeiter" Width="100" />
|
||||
</WrapPanel>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
<GroupBox Grid.Row="1" Margin="1" Style="{StaticResource ObjectEditGroupBox}" Header="Suche nach">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<WrapPanel Orientation="Horizontal" HorizontalAlignment="Left" Margin="1" Grid.Column="0">
|
||||
<Label Content="Plz:" />
|
||||
<dxe:TextEdit x:Name="PlzMitarbeiter" Height="23" Width="50" VerticalContentAlignment="Center" EditValueChanged="PlzMitarbeiter_OnEditValueChanged" MaskType="RegEx" Mask="\d{1,5}" ShowError="False" />
|
||||
</WrapPanel>
|
||||
|
||||
<WrapPanel Orientation="Horizontal" HorizontalAlignment="Right" Margin="1" Grid.Column="1">
|
||||
<Label Content="Ort:" />
|
||||
<TextBox x:Name="OrtMitarbeiter" Height="23" Width="100" VerticalContentAlignment="Center" TextChanged="OrtMitarbeiter_OnTextChanged" />
|
||||
</WrapPanel>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
</Grid>
|
||||
</Grid>
|
||||
|
||||
<!-- ##################################################################################################################### -->
|
||||
|
||||
|
||||
|
||||
<!--Bereich einfügen um auszuwählen ob ganzen tag oder nur teilweise -->
|
||||
<GroupBox Header="Vertretungs Zeitraum" Grid.Row="1" Grid.Column="0" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3" >
|
||||
<Grid Grid.Row="0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<CheckBox Grid.Column="0" Grid.Row="0" Content="ganztägig" Unchecked="KVCheckBox_OnUnchecked" Checked="KVCheckBox_OnChecked"
|
||||
Grid.ColumnSpan="6" HorizontalAlignment="Right" x:Name="KVCheckBox" />
|
||||
|
||||
|
||||
<Label Grid.Row="1" Grid.Column="0" Content="Vertretung Von" />
|
||||
|
||||
<Label Grid.Row="2" Grid.Column="0" Content="Vertretung Bis" />
|
||||
|
||||
<Label Grid.Row="1" Grid.Column="2" Content="Uhrzeit Von" x:Name="KVLabelUhrzeitVon" />
|
||||
|
||||
<Label Grid.Row="2" Grid.Column="2" Content="Uhrzeit Bis" x:Name="KVLabelUhrzeitBis" />
|
||||
|
||||
|
||||
<dxe:DateEdit x:Name="KVDatepickerVon" MaskType="DateTimeAdvancingCaret" Grid.Column="1" Grid.Row="1" Margin="3" Height="23" Width="125" EditValueChanged="KVDatepickerVon_OnEditValueChanged"/>
|
||||
|
||||
<dxe:DateEdit x:Name="KVDatepickerBis" MaskType="DateTimeAdvancingCaret" Grid.Column="1" Grid.Row="2" Margin="3" Height="23" Width="125" EditValueChanged="KVDatepickerBis_OnEditValueChanged" />
|
||||
|
||||
|
||||
<dxe:TextEdit Grid.Column="3" Grid.Row="1" MaskType="RegEx" Mask="(0?\d|1\d|2[0-3]):[0-5]\d" ShowError="False" MaskShowPlaceHolders="True" x:Name="KVDatepicker_UhrzeitVon"
|
||||
MaskUseAsDisplayFormat="True" InvalidValueBehavior="AllowLeaveEditor"
|
||||
Height="23" Grid.ColumnSpan="2" Visibility="Visible" Width="75"
|
||||
Margin="3,3,3,3"/>
|
||||
|
||||
<dxe:TextEdit Grid.Column="3" Grid.Row="2" MaskType="RegEx" Mask="(0?\d|1\d|2[0-3]):[0-5]\d" ShowError="False" MaskShowPlaceHolders="True" x:Name="KVDatepicker_UhrzeitBis"
|
||||
MaskUseAsDisplayFormat="True" InvalidValueBehavior="AllowLeaveEditor" Width="75"
|
||||
Height="23" Grid.ColumnSpan="2" Visibility="Visible"
|
||||
Margin="3,3,3,3"/>
|
||||
|
||||
</Grid>
|
||||
|
||||
</GroupBox>
|
||||
<!--##################################################################-->
|
||||
|
||||
|
||||
<!-- ##################################### unterer 2/3 Mitarbeiter Controll ####################################### -->
|
||||
|
||||
<!--<search:EmployeeSearchView Grid.Row="2" Grid.Column="0" x:Name="MitarbeiterVertretungsearchview" Margin="3,3,3,3" ItemSelected="MitarbeiterVertretungsearchview_OnItemSelected" />-->
|
||||
|
||||
<!-- Aus der SearchView ein Grid Bauen das mehr Informationen Enthält / zurzeit Name Adresse Arbeitszeit -->
|
||||
|
||||
<dxg:GridControl x:Name="GridDataControlKlientVertretungsearchview" Visibility="Visible" Grid.Row="2" Grid.Column="0" AllowDrop="true" Margin="3,3,3,3" VerticalContentAlignment="Center" >
|
||||
<dxg:GridControl.Columns >
|
||||
|
||||
<dxg:GridColumn FieldName="Name" Width="155" ReadOnly="True" Header="Name"/>
|
||||
<dxg:GridColumn FieldName="Postleitzahl" Width="75" ReadOnly="True" Header="Postleitzahl" />
|
||||
<dxg:GridColumn FieldName="Straße" Width="100" ReadOnly="True" Header="Starße" />
|
||||
<dxg:GridColumn FieldName="Stadt" Width="105" ReadOnly="True" Header="Stadt" />
|
||||
<dxg:GridColumn FieldName="Geschlecht" Width="75" ReadOnly="True" Header="Geschlecht" />
|
||||
|
||||
|
||||
</dxg:GridControl.Columns>
|
||||
<dxg:GridControl.View>
|
||||
<dxg:TableView AllowPerPixelScrolling="True" ShowTotalSummary="False" AutoWidth="True" />
|
||||
</dxg:GridControl.View>
|
||||
</dxg:GridControl>
|
||||
|
||||
|
||||
|
||||
<!-- ################################################################################################## Margin="3,3,3,3"-->
|
||||
|
||||
<StackPanel Grid.Row="3" Grid.Column="0" >
|
||||
|
||||
|
||||
<WrapPanel Orientation="Horizontal" HorizontalAlignment="Right" VerticalAlignment="Bottom" >
|
||||
<Button Content="Übernehmen" Width="90" Click="ButtonBase_OnClick" Margin="3,3,3,3" />
|
||||
<Button Content="Schließen" Width="90" Click="ButtonClose_OnClick" Margin="3,3,3,3"/>
|
||||
</WrapPanel>
|
||||
</StackPanel>
|
||||
|
||||
<!-- ####################### Closed="popup_Closed" Opened="popup_Opened"###StaysOpen="False"Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2" #################################################################################### -->
|
||||
|
||||
</Grid>
|
||||
|
||||
|
||||
|
||||
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
</Window>
|
||||
|
||||
|
||||
@@ -0,0 +1,645 @@
|
||||
using System;
|
||||
using System.Linq;
|
||||
using System.Windows;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Media;
|
||||
|
||||
using BeWo.ServiceProxy;
|
||||
using BeWo.ViewModel;
|
||||
|
||||
using BS.Shared.Extensions;
|
||||
using System.Windows.Controls;
|
||||
using System.Net.Sockets;
|
||||
using System.Threading;
|
||||
using System.Windows.Threading;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.ComponentModel;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.Net;
|
||||
using System.Text;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Forms;
|
||||
using System.Windows.Media.Imaging;
|
||||
using BeWo.Controls;
|
||||
using BeWo.Core;
|
||||
using BeWo.Core.Service;
|
||||
using BeWo.View.Detail;
|
||||
using BeWo.ViewModel.ListViewModel;
|
||||
using BS.Shared;
|
||||
using BS.Shared.Core;
|
||||
using BS.Shared.DataContracts;
|
||||
using BS.Shared.DataContracts.Compact;
|
||||
using DevExpress.Xpf.Core;
|
||||
using DevExpress.Xpf.Editors;
|
||||
using DevExpress.XtraPrinting.Native;
|
||||
using DevExpress.XtraPrinting.XamlExport;
|
||||
using Microsoft.Office.Interop.Word;
|
||||
using Color = System.Drawing.Color;
|
||||
using KeyEventArgs = System.Windows.Input.KeyEventArgs;
|
||||
using MessageBox = System.Windows.MessageBox;
|
||||
using TextBox = System.Windows.Controls.TextBox;
|
||||
|
||||
namespace BeWo.SchulbegleitenderDienst
|
||||
{
|
||||
public partial class SchulbegleitenderDienstMitarbeiterBearbeitungsView
|
||||
{
|
||||
|
||||
public event EventHandler<CustomKlientEventArgs> RaiseCustomEvent;
|
||||
|
||||
//public event EventHandler<CustomKlientEventArgs> RaiseKlientCustomEvent;
|
||||
|
||||
private DateTime? _startDate;
|
||||
|
||||
private DateTime? _endDate;
|
||||
|
||||
private List<SearchKlientViewDaten> _dataListEmployee = new List<SearchKlientViewDaten>();
|
||||
|
||||
private readonly long? _employeeOid = 10;
|
||||
|
||||
List<SearchKlientViewDaten> aktuelleDaten = new List<SearchKlientViewDaten>();
|
||||
List<SearchKlientViewDaten> alleMitarbeiterDaten = new List<SearchKlientViewDaten>();
|
||||
|
||||
|
||||
private Dictionary<string, TokenDC> verfuegbareW = new Dictionary<string, TokenDC>();
|
||||
private Dictionary<string, TokenDC> gesetzteW = new Dictionary<string, TokenDC>();
|
||||
|
||||
private Dictionary<string, TokenDC> verfuegbareA = new Dictionary<string, TokenDC>();
|
||||
private Dictionary<string, TokenDC> gesetzteA = new Dictionary<string, TokenDC>();
|
||||
|
||||
|
||||
|
||||
public SchulbegleitenderDienstMitarbeiterBearbeitungsView(DateTime? startdate, DateTime? enddate, DateTime currentDate, long? employeeOid)
|
||||
{
|
||||
InitializeComponent();
|
||||
CloseWindow();
|
||||
|
||||
SetMitarbeiterKriteria();
|
||||
SetMitarbeiterInformationen();
|
||||
GetAllKlienttokens();
|
||||
LoadAllKlientenIngridData();
|
||||
|
||||
rootGroupBox.Header += " / " + currentDate.ToString("dddd dd.MM.yyyy");
|
||||
|
||||
_startDate = startdate;
|
||||
_endDate = enddate;
|
||||
|
||||
_employeeOid = employeeOid;
|
||||
|
||||
if (_startDate != null)
|
||||
KVDatepickerVon.EditValue = _startDate;
|
||||
|
||||
if (_endDate != null)
|
||||
KVDatepickerBis.EditValue = _endDate;
|
||||
|
||||
|
||||
//Width = System.Windows.SystemParameters.PrimaryScreenWidth / 2;
|
||||
//Height = System.Windows.SystemParameters.PrimaryScreenWidth / 2;
|
||||
}
|
||||
|
||||
|
||||
private void RootGroupBox_OnMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
DragMove();
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
private void CloseWindow()
|
||||
{
|
||||
CommandBindings.Add(
|
||||
new CommandBinding(
|
||||
ApplicationCommands.Close,
|
||||
(s, e) =>
|
||||
{
|
||||
Close();
|
||||
}));
|
||||
}
|
||||
|
||||
|
||||
private void SetMitarbeiterKriteria()
|
||||
{
|
||||
var tokenlist = ServiceFacade.DoOperationsServiceSync(r => r.GetAllTokens(SchulbegleitenderZugehörigkeitsTyp.Mitarbeiter, _employeeOid));
|
||||
|
||||
foreach (var tkList in tokenlist)
|
||||
{
|
||||
if (tkList.TokenTyp == TokenTyp.WunschKriterium)
|
||||
{
|
||||
MitarbeiterWunschAnzeige.Text = tkList.Beschreibung + "; ";
|
||||
}
|
||||
else if (tkList.TokenTyp == TokenTyp.AusschlussKriterium)
|
||||
{
|
||||
MitarbeiterAussschlussAnzeige.Text = tkList.Beschreibung + "; ";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void GetAllKlienttokens()
|
||||
{
|
||||
verfuegbareW.Clear();
|
||||
gesetzteW.Clear();
|
||||
verfuegbareA.Clear();
|
||||
gesetzteA.Clear();
|
||||
|
||||
|
||||
ServiceFacade.DoOperationsServiceAsync(
|
||||
r => r.GetAllTokens(SchulbegleitenderZugehörigkeitsTyp.Klient, 0), x => this.Dispatch(delegate
|
||||
{
|
||||
List<string> wunschliste = new List<string>();
|
||||
List<string> ausschlussliste = new List<string>();
|
||||
|
||||
foreach (var token in x)
|
||||
{
|
||||
if (token.TokenTyp == TokenTyp.WunschKriterium)
|
||||
{
|
||||
if (!verfuegbareW.ContainsKey(token.Beschreibung))
|
||||
verfuegbareW.Add(token.Beschreibung, token);
|
||||
|
||||
wunschliste.Add(token.Beschreibung);
|
||||
}
|
||||
|
||||
if (token.TokenTyp == TokenTyp.AusschlussKriterium)
|
||||
{
|
||||
if (!verfuegbareA.ContainsKey(token.Beschreibung))
|
||||
verfuegbareA.Add(token.Beschreibung, token);
|
||||
|
||||
ausschlussliste.Add(token.Beschreibung);
|
||||
}
|
||||
}
|
||||
|
||||
KlientWunschAuswahl.ItemsSource = wunschliste;
|
||||
KlientAussschlussAuswahl.ItemsSource = ausschlussliste;
|
||||
|
||||
}));
|
||||
}
|
||||
|
||||
|
||||
private void KlientWunschAuswahl_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
|
||||
{
|
||||
var item = sender as NullItemComboBox;
|
||||
|
||||
if (item.SelectedItem != null && !item.SelectedItem.ToString().Equals(""))
|
||||
{
|
||||
KlientWunschAnzeige.Text += item.SelectedItem + "; ";
|
||||
|
||||
KlientWunschAuswahl.SelectedIndex = 0;
|
||||
|
||||
SortKlientliste();
|
||||
}
|
||||
}
|
||||
|
||||
private void KlientAussschlussAuswahl_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
|
||||
{
|
||||
var item = sender as NullItemComboBox;
|
||||
|
||||
if (item.SelectedItem != null && !item.SelectedItem.ToString().Equals(""))
|
||||
{
|
||||
KlientAussschlussAnzeige.Text += item.SelectedItem + "; ";
|
||||
|
||||
KlientAussschlussAuswahl.SelectedIndex = 0;
|
||||
|
||||
SortKlientliste();
|
||||
}
|
||||
}
|
||||
|
||||
public void SortKlientliste()
|
||||
{
|
||||
List<SearchKlientViewDaten> nSVD = new List<SearchKlientViewDaten>();
|
||||
|
||||
var x = ServiceFacade.DoOperationsServiceSync(r => r.GetCustomer2TokenList());
|
||||
|
||||
bool isAusschluss = false;
|
||||
|
||||
foreach (var daten in alleMitarbeiterDaten)
|
||||
{
|
||||
foreach (var item in x)
|
||||
{
|
||||
if (daten.CustomerDC.CustomerOid == item.Customer.CustomerOid)
|
||||
{
|
||||
foreach (var gesA in gesetzteA)
|
||||
{
|
||||
if (item.Token.TokenOid == gesA.Value.TokenOid)
|
||||
{
|
||||
if (!nSVD.Contains(daten))
|
||||
nSVD.Add(daten);
|
||||
isAusschluss = true;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
foreach (var gesW in gesetzteW)
|
||||
{
|
||||
if (item.Token.TokenOid == gesW.Value.TokenOid)
|
||||
{
|
||||
if (isAusschluss)
|
||||
{
|
||||
isAusschluss = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!nSVD.Contains(daten))
|
||||
nSVD.Add(daten);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
if (isAusschluss)
|
||||
{
|
||||
isAusschluss = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
GridDataControlKlientVertretungsearchview.ItemsSource = nSVD;
|
||||
|
||||
GridDataControlKlientVertretungsearchview.RefreshData();
|
||||
GridDataControlKlientVertretungsearchview.RefreshUI();
|
||||
|
||||
aktuelleDaten = nSVD;
|
||||
}
|
||||
|
||||
|
||||
private void RBMaennlich_OnClick(object sender, RoutedEventArgs e)
|
||||
{
|
||||
bool isOtherActive = RBWeiblich.IsChecked.Value;
|
||||
|
||||
if (RBMaennlich.IsChecked.Value)
|
||||
{
|
||||
GeschlechtsUmwandlung(3, isOtherActive);
|
||||
}
|
||||
else
|
||||
{
|
||||
GeschlechtsUmwandlung(1, isOtherActive);
|
||||
}
|
||||
}
|
||||
|
||||
private void RBWeiblich_OnClick(object sender, RoutedEventArgs e)
|
||||
{
|
||||
bool isOtherActive = RBMaennlich.IsChecked.Value;
|
||||
|
||||
if (RBWeiblich.IsChecked.Value)
|
||||
{
|
||||
GeschlechtsUmwandlung(4, isOtherActive);
|
||||
}
|
||||
else
|
||||
{
|
||||
GeschlechtsUmwandlung(2, isOtherActive);
|
||||
}
|
||||
}
|
||||
|
||||
private void GeschlechtsUmwandlung(int i, bool isOtherActive)
|
||||
{
|
||||
List<SearchKlientViewDaten> newItems = new List<SearchKlientViewDaten>();
|
||||
|
||||
// 1 == entferne jungs | 2 == entferne mädels | 3 füge jungs hinzu | 4 füge mädels hinzu
|
||||
|
||||
if (i == 1)
|
||||
{
|
||||
foreach (var item in aktuelleDaten)
|
||||
{
|
||||
if (item.Geschlecht.Equals("Weiblich") && isOtherActive)
|
||||
{
|
||||
newItems.Add(item);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (i == 2)
|
||||
{
|
||||
foreach (var item in aktuelleDaten)
|
||||
{
|
||||
if (item.Geschlecht.Equals("Männlich") && isOtherActive)
|
||||
{
|
||||
newItems.Add(item);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (i == 3)
|
||||
{
|
||||
foreach (var item in aktuelleDaten)
|
||||
{
|
||||
if (!item.Geschlecht.Equals("Weiblich") && isOtherActive == false)
|
||||
{
|
||||
newItems.Add(item);
|
||||
}
|
||||
else if (isOtherActive)
|
||||
{
|
||||
newItems.Add(item);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (i == 4)
|
||||
{
|
||||
foreach (var item in aktuelleDaten)
|
||||
{
|
||||
if (!item.Geschlecht.Equals("Männlich") && isOtherActive == false)
|
||||
{
|
||||
newItems.Add(item);
|
||||
}
|
||||
else if (isOtherActive)
|
||||
{
|
||||
newItems.Add(item);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
GridDataControlKlientVertretungsearchview.ItemsSource = newItems;
|
||||
|
||||
GridDataControlKlientVertretungsearchview.RefreshData();
|
||||
GridDataControlKlientVertretungsearchview.RefreshUI();
|
||||
}
|
||||
|
||||
private void SetMitarbeiterInformationen()
|
||||
{
|
||||
var employee = ServiceFacade.DoEmployeeServiceSync(r => r.GetEmployeeByID(_employeeOid.Value));
|
||||
|
||||
LabelPlzMitarbeiter.Content = employee.PostalCode;
|
||||
LabelOrtMitarbeiter.Content = employee.Town;
|
||||
}
|
||||
|
||||
|
||||
private void PlzMitarbeiter_OnEditValueChanged(object sender, EditValueChangedEventArgs e)
|
||||
{
|
||||
bool ruecksetzpunkt = false;
|
||||
|
||||
List<SearchKlientViewDaten> ndaten = new List<SearchKlientViewDaten>();
|
||||
|
||||
foreach (var daten in alleMitarbeiterDaten)
|
||||
{
|
||||
if (daten.Postleitzahl != null)
|
||||
{
|
||||
if (daten.Postleitzahl.StartsWith(PlzMitarbeiter.Text))
|
||||
{
|
||||
ndaten.Add(daten);
|
||||
}
|
||||
}
|
||||
|
||||
if (daten.Postleitzahl != null && PlzMitarbeiter.Text.Length == 0)
|
||||
{
|
||||
if (!ruecksetzpunkt)
|
||||
ruecksetzpunkt = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (ruecksetzpunkt)
|
||||
{
|
||||
GridDataControlKlientVertretungsearchview.ItemsSource = alleMitarbeiterDaten;
|
||||
//aktuelleDaten = alleMitarbeiterDaten; // sollte sich so verhalten wie bei geschlecht
|
||||
}
|
||||
else
|
||||
{
|
||||
GridDataControlKlientVertretungsearchview.ItemsSource = ndaten;
|
||||
// aktuelleDaten = ndaten;
|
||||
}
|
||||
|
||||
GridDataControlKlientVertretungsearchview.RefreshData();
|
||||
GridDataControlKlientVertretungsearchview.RefreshUI();
|
||||
|
||||
}
|
||||
|
||||
|
||||
private void OrtMitarbeiter_OnTextChanged(object sender, TextChangedEventArgs e)
|
||||
{
|
||||
bool ruecksetzpunkt = false;
|
||||
|
||||
List<SearchKlientViewDaten> ndaten = new List<SearchKlientViewDaten>();
|
||||
|
||||
foreach (var daten in alleMitarbeiterDaten)
|
||||
{
|
||||
if (daten.Stadt != null)
|
||||
{
|
||||
if (daten.Stadt.StartsWith(OrtMitarbeiter.Text))
|
||||
{
|
||||
ndaten.Add(daten);
|
||||
}
|
||||
}
|
||||
|
||||
if (daten.Stadt != null && OrtMitarbeiter.Text.Length == 0)
|
||||
{
|
||||
if (!ruecksetzpunkt)
|
||||
ruecksetzpunkt = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (ruecksetzpunkt)
|
||||
{
|
||||
GridDataControlKlientVertretungsearchview.ItemsSource = alleMitarbeiterDaten;
|
||||
//aktuelleDaten = alleMitarbeiterDaten;
|
||||
}
|
||||
else
|
||||
{
|
||||
GridDataControlKlientVertretungsearchview.ItemsSource = ndaten;
|
||||
// aktuelleDaten = ndaten;
|
||||
}
|
||||
|
||||
GridDataControlKlientVertretungsearchview.RefreshData();
|
||||
GridDataControlKlientVertretungsearchview.RefreshUI();
|
||||
|
||||
}
|
||||
|
||||
|
||||
// ################ Vertretungszeitraumswahl ##############################################
|
||||
private void KVCheckBox_OnUnchecked(object sender, RoutedEventArgs e)
|
||||
{
|
||||
KVDatepicker_UhrzeitBis.Text = "";
|
||||
KVDatepicker_UhrzeitBis.Visibility = Visibility.Visible;
|
||||
KVLabelUhrzeitVon.Visibility = Visibility.Visible;
|
||||
|
||||
KVDatepicker_UhrzeitVon.Text = "";
|
||||
KVDatepicker_UhrzeitVon.Visibility = Visibility.Visible;
|
||||
KVLabelUhrzeitBis.Visibility = Visibility.Visible;
|
||||
}
|
||||
|
||||
private void KVCheckBox_OnChecked(object sender, RoutedEventArgs e)
|
||||
{
|
||||
KVDatepicker_UhrzeitBis.Visibility = Visibility.Collapsed;
|
||||
KVLabelUhrzeitVon.Visibility = Visibility.Collapsed;
|
||||
|
||||
KVDatepicker_UhrzeitVon.Visibility = Visibility.Collapsed;
|
||||
KVLabelUhrzeitBis.Visibility = Visibility.Collapsed;
|
||||
}
|
||||
|
||||
private void KVDatepickerVon_OnEditValueChanged(object sender, EditValueChangedEventArgs e)
|
||||
{
|
||||
DateEdit ed = (DateEdit)sender;
|
||||
|
||||
DateTime date = ed.DateTime;
|
||||
|
||||
if (date > _endDate.Value || date < _startDate.Value)
|
||||
{
|
||||
KVDatepickerVon.EditValue = _startDate.Value;
|
||||
}
|
||||
}
|
||||
|
||||
private void KVDatepickerBis_OnEditValueChanged(object sender, EditValueChangedEventArgs e)
|
||||
{
|
||||
DateEdit ed = (DateEdit)sender;
|
||||
|
||||
DateTime date = ed.DateTime;
|
||||
|
||||
if (date < _startDate.Value || date > _endDate.Value)
|
||||
{
|
||||
KVDatepickerBis.EditValue = _endDate.Value;
|
||||
}
|
||||
}
|
||||
|
||||
//################################################################################################
|
||||
|
||||
|
||||
private void LoadAllKlientenIngridData()
|
||||
{
|
||||
ServiceFacade.DoCustomerServiceAsync(s => s.GetAllActiveCompactCustomers(), customerList => this.Dispatch(
|
||||
delegate
|
||||
{
|
||||
foreach (var cus in customerList)
|
||||
{
|
||||
var geschlecht = cus.Sex == Sex.Male ? "Männlich" : "Weiblich";
|
||||
|
||||
_dataListEmployee.Add(
|
||||
new SearchKlientViewDaten(cus.FirstName + " " + cus.LastName, cus.PostalCode, cus.Street, cus.Town, cus, geschlecht));
|
||||
|
||||
}
|
||||
|
||||
GridDataControlKlientVertretungsearchview.ItemsSource = _dataListEmployee;
|
||||
aktuelleDaten = _dataListEmployee;
|
||||
alleMitarbeiterDaten = _dataListEmployee;
|
||||
}));
|
||||
}
|
||||
|
||||
|
||||
private void ButtonClose_OnClick(object sender, RoutedEventArgs e)
|
||||
{
|
||||
Close();
|
||||
}
|
||||
|
||||
private void ButtonBase_OnClick(object sender, RoutedEventArgs e)
|
||||
{
|
||||
//Rückgabe der Daten
|
||||
var item = GridDataControlKlientVertretungsearchview.SelectedItem as SearchKlientViewDaten;
|
||||
|
||||
CompactCustomerDC x = item.CustomerDC;
|
||||
|
||||
if (GridDataControlKlientVertretungsearchview.SelectedItem != null)
|
||||
{
|
||||
if (_startDate.HasValue && _endDate.HasValue && KVCheckBox.IsChecked.Value)
|
||||
{
|
||||
RaiseCustomEvent(this, new CustomKlientEventArgs(x, _startDate, _endDate));
|
||||
|
||||
Close();
|
||||
}
|
||||
else if (!KVDatepickerVon.Text.Equals("") && !KVDatepickerBis.Text.Equals("") && _startDate.HasValue && _endDate.HasValue && !KVDatepicker_UhrzeitVon.Text.Equals("") && !KVDatepicker_UhrzeitBis.Text.Equals(""))
|
||||
{
|
||||
var von = KVDatepicker_UhrzeitVon.Text;
|
||||
var bis = KVDatepicker_UhrzeitBis.Text;
|
||||
|
||||
if (von.Length < 5)
|
||||
{
|
||||
von = "0" + von;
|
||||
}
|
||||
|
||||
if (bis.Length < 5)
|
||||
{
|
||||
bis = "0" + bis;
|
||||
}
|
||||
|
||||
DateTime dateVon = DateTime.ParseExact(von, "HH:mm", CultureInfo.CurrentCulture);
|
||||
DateTime dateBis = DateTime.ParseExact(bis, "HH:mm", CultureInfo.CurrentCulture);
|
||||
|
||||
|
||||
if (dateVon > dateBis)
|
||||
{
|
||||
MessageBox.Show("Die Startzeit darf nicht größer sein als die Endzeit.");
|
||||
}
|
||||
else
|
||||
{
|
||||
DateTime? xVon = new DateTime(_startDate.Value.Year, _startDate.Value.Month, _startDate.Value.Day, dateVon.Hour, dateVon.Minute, dateVon.Second);
|
||||
|
||||
DateTime? xBis = new DateTime(_endDate.Value.Year, _endDate.Value.Month, _endDate.Value.Day, dateBis.Hour, dateBis.Minute, dateBis.Second);
|
||||
|
||||
|
||||
RaiseCustomEvent(this, new CustomKlientEventArgs(x, xVon, xBis));
|
||||
|
||||
Close();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (_startDate.HasValue && _endDate.HasValue && (KVDatepicker_UhrzeitVon.Text.Equals("") || KVDatepicker_UhrzeitBis.Text.Equals("")) && !KVCheckBox.IsChecked.Value)
|
||||
{
|
||||
MessageBox.Show("Bitte Geben sie eine Start Uhrzeit und eine End Uhrzeit an.");
|
||||
}
|
||||
else
|
||||
{
|
||||
MessageBox.Show("Bitte Geben sie ein Start und ein Enddatum an.");
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
MessageBox.Show("Bitte wählen sie zuerst einen Klienten aus.");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public class CustomKlientEventArgs : EventArgs
|
||||
{
|
||||
private CompactCustomerDC dc;
|
||||
private DateTime? startdt;
|
||||
private DateTime? enddt;
|
||||
|
||||
public CustomKlientEventArgs(CompactCustomerDC s, DateTime? start, DateTime? ende)
|
||||
{
|
||||
dc = s;
|
||||
startdt = start;
|
||||
enddt = ende;
|
||||
}
|
||||
|
||||
public CompactCustomerDC Message
|
||||
{
|
||||
get { return dc; }
|
||||
}
|
||||
|
||||
public DateTime? StartDate
|
||||
{
|
||||
get { return startdt; }
|
||||
}
|
||||
|
||||
public DateTime? EndDate
|
||||
{
|
||||
get { return enddt; }
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public class SearchKlientViewDaten
|
||||
{
|
||||
public string Name { get; set; }
|
||||
|
||||
public string Postleitzahl { get; set; }
|
||||
public string Straße { get; set; }
|
||||
public string Stadt { get; set; }
|
||||
public string Geschlecht { get; set; }
|
||||
|
||||
public CompactCustomerDC CustomerDC { get; set; }
|
||||
|
||||
public SearchKlientViewDaten(string name, string postleitzahl, string strasse, string stadt, CompactCustomerDC comcudc, string geschlecht)
|
||||
{
|
||||
Name = name;
|
||||
Postleitzahl = postleitzahl;
|
||||
Straße = strasse;
|
||||
Stadt = stadt;
|
||||
CustomerDC = comcudc;
|
||||
Geschlecht = geschlecht;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -166,6 +166,10 @@ namespace BeWo.ServiceProxy
|
||||
public interface IEmployeeService
|
||||
{
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IEmployeeService/GetEmployeeByID", ReplyAction="http://tempuri.org/IEmployeeService/GetEmployeeByIDResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IEmployeeService/GetEmployeeByIDBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
BS.Shared.DataContracts.EmployeeDC GetEmployeeByID(long employeeOid);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IEmployeeService/ArchiveEmployee", ReplyAction="http://tempuri.org/IEmployeeService/ArchiveEmployeeResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IEmployeeService/ArchiveEmployeeBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
void ArchiveEmployee(long pOid, long pVersion);
|
||||
@@ -563,6 +567,11 @@ namespace BeWo.ServiceProxy
|
||||
{
|
||||
}
|
||||
|
||||
public BS.Shared.DataContracts.EmployeeDC GetEmployeeByID(long employeeOid)
|
||||
{
|
||||
return base.Channel.GetEmployeeByID(employeeOid);
|
||||
}
|
||||
|
||||
public void ArchiveEmployee(long pOid, long pVersion)
|
||||
{
|
||||
base.Channel.ArchiveEmployee(pOid, pVersion);
|
||||
@@ -1304,6 +1313,13 @@ namespace BeWo.ServiceProxy
|
||||
"", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
System.Collections.Generic.List<BS.Shared.DataContracts.CustomerTokenRelationDC> LoadCustomerTokenRelationsByOid(System.Collections.Generic.List<long> pOids);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ICustomerService/GetPersonWithCustomerOid", ReplyAction="http://tempuri.org/ICustomerService/GetPersonWithCustomerOidResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/ICustomerService/GetPersonWithCustomerOidBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.CustomerDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.WohnheimDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.EmployeeDC))]
|
||||
BS.Shared.DataContracts.PersonDC GetPersonWithCustomerOid(long oid);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ICustomerService/ArchiveCustomer", ReplyAction="http://tempuri.org/ICustomerService/ArchiveCustomerResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/ICustomerService/ArchiveCustomerBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
void ArchiveCustomer(long pOid, long pVersion);
|
||||
@@ -2068,6 +2084,11 @@ namespace BeWo.ServiceProxy
|
||||
return base.Channel.LoadCustomerTokenRelationsByOid(pOids);
|
||||
}
|
||||
|
||||
public BS.Shared.DataContracts.PersonDC GetPersonWithCustomerOid(long oid)
|
||||
{
|
||||
return base.Channel.GetPersonWithCustomerOid(oid);
|
||||
}
|
||||
|
||||
public void ArchiveCustomer(long pOid, long pVersion)
|
||||
{
|
||||
base.Channel.ArchiveCustomer(pOid, pVersion);
|
||||
@@ -4253,6 +4274,12 @@ namespace BeWo.ServiceProxy
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/GetEmployee2TokenListBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
System.Collections.Generic.List<BS.Shared.DataContracts.EmployeeTokenRelationDC> GetEmployee2TokenList();
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/VertretungsMitarbeiterListeWoechentlich", ReplyAction="http://tempuri.org/IOperationsService/VertretungsMitarbeiterListeWoechentlichResp" +
|
||||
"onse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/VertretungsMitarbeiterListeWoechentlichBeWo" +
|
||||
"FaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
System.Collections.Generic.List<BS.Shared.DataContracts.VertretungsListeMitarbeiterItemsDC> VertretungsMitarbeiterListeWoechentlich(System.DateTime start, System.DateTime ende);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/DeactivateInvoices", ReplyAction="http://tempuri.org/IOperationsService/DeactivateInvoicesResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/DeactivateInvoicesBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
void DeactivateInvoices(System.Collections.Generic.List<BS.Shared.DataContracts.InvoiceDC> invoices);
|
||||
@@ -5033,6 +5060,11 @@ namespace BeWo.ServiceProxy
|
||||
return base.Channel.GetEmployee2TokenList();
|
||||
}
|
||||
|
||||
public System.Collections.Generic.List<BS.Shared.DataContracts.VertretungsListeMitarbeiterItemsDC> VertretungsMitarbeiterListeWoechentlich(System.DateTime start, System.DateTime ende)
|
||||
{
|
||||
return base.Channel.VertretungsMitarbeiterListeWoechentlich(start, ende);
|
||||
}
|
||||
|
||||
public void DeactivateInvoices(System.Collections.Generic.List<BS.Shared.DataContracts.InvoiceDC> invoices)
|
||||
{
|
||||
base.Channel.DeactivateInvoices(invoices);
|
||||
|
||||
@@ -2067,7 +2067,7 @@ namespace BeWo.Data.Access
|
||||
}
|
||||
|
||||
return a;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,8 +4,10 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using BeWo.Data.Access;
|
||||
using BeWo.Data.Entities;
|
||||
using BeWo.Service.Core;
|
||||
using BS.Shared;
|
||||
using BS.Shared.DataContracts;
|
||||
using BS.Shared.DataContracts.Compact;
|
||||
|
||||
namespace BeWo.Service.SBD.Vertretung
|
||||
{
|
||||
@@ -26,6 +28,10 @@ namespace BeWo.Service.SBD.Vertretung
|
||||
|
||||
public List<VertretungsListeItemsDC> vertretungsliste = new List<VertretungsListeItemsDC>();
|
||||
|
||||
public List<EmployeeDC> EmployeeListe = new List<EmployeeDC>();
|
||||
|
||||
public List<VertretungsListeMitarbeiterItemsDC> Mitarbeiterliste = new List<VertretungsListeMitarbeiterItemsDC>();
|
||||
|
||||
private readonly List<long> _vorhandeneCustomerOidListe = new List<long>();
|
||||
|
||||
public VertretungsAlgorithmus(VertretungsListeDC sbd , DateTime date)
|
||||
@@ -49,398 +55,556 @@ namespace BeWo.Service.SBD.Vertretung
|
||||
ErstelleItemVonWoechentlicherAbsencetimes();
|
||||
}
|
||||
|
||||
public VertretungsAlgorithmus(DateTime start, DateTime ende)
|
||||
{
|
||||
_startDate = start;
|
||||
_endDate = ende;
|
||||
|
||||
//erstmal hier hinein und dann mal kuken
|
||||
GetAlleMitarbeiterForWochenanzeige();
|
||||
}
|
||||
|
||||
public void Hauptbetreuungen()
|
||||
{
|
||||
try
|
||||
{
|
||||
foreach (var xa in _schulbegleitenderDienst.Employeesliste)
|
||||
{
|
||||
List<long> klientoids = new List<long>();
|
||||
|
||||
foreach (var xa in _schulbegleitenderDienst.Employeesliste)
|
||||
{
|
||||
List<long> klientoids = new List<long>();
|
||||
Employee e = DAOFactory.GenericDAO.LoadByID<Employee>(xa.EmployeeOid);
|
||||
|
||||
Employee e = DAOFactory.GenericDAO.LoadByID<Employee>(xa.EmployeeOid);
|
||||
foreach (var e2c in e.Employee2CustomerList)
|
||||
{
|
||||
foreach (var v2o in e2c.ValueList)
|
||||
{
|
||||
if (v2o.Entry.Type == ValueListEntryType.StaffRoleType && v2o.Entry.SystemEntryID.HasValue &&
|
||||
v2o.Entry.SystemEntryID.Value == SystemEntryID.EmployeeRoleMainAttendant)
|
||||
{
|
||||
klientoids.Add(e2c.CustomerOid.Value);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
foreach (var e2c in e.Employee2CustomerList)
|
||||
{
|
||||
foreach (var v2o in e2c.ValueList)
|
||||
{
|
||||
if (v2o.Entry.Type == ValueListEntryType.StaffRoleType && v2o.Entry.SystemEntryID.HasValue &&
|
||||
v2o.Entry.SystemEntryID.Value == SystemEntryID.EmployeeRoleMainAttendant)
|
||||
{
|
||||
klientoids.Add(e2c.CustomerOid.Value);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!_employee2CustomerHaupt.ContainsKey(xa.EmployeeOid))
|
||||
_employee2CustomerHaupt.Add(xa.EmployeeOid, klientoids);
|
||||
|
||||
if (!_employee2CustomerHaupt.ContainsKey(xa.EmployeeOid))
|
||||
_employee2CustomerHaupt.Add(xa.EmployeeOid, klientoids);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
_schulbegleitenderDienst.Employee2CustomerHauptbetreuung = _employee2CustomerHaupt;
|
||||
_schulbegleitenderDienst.Employee2CustomerHauptbetreuung = _employee2CustomerHaupt;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw Utils.CreateBeWoFaultException(e);
|
||||
}
|
||||
}
|
||||
|
||||
//----- Tages Vertretung
|
||||
private void ErstelleItemVonVertretungen()
|
||||
//----- Tages Vertretung // ggf noch anpassen
|
||||
#region Tagesanzeige
|
||||
private void ErstelleItemVonVertretungen()
|
||||
{
|
||||
_vorhandeneCustomerOidListe.Clear();
|
||||
VertretungsListeItemsDC item = new VertretungsListeItemsDC();
|
||||
try
|
||||
{
|
||||
_vorhandeneCustomerOidListe.Clear();
|
||||
VertretungsListeItemsDC item = new VertretungsListeItemsDC();
|
||||
|
||||
|
||||
foreach (var vertritt in _schulbegleitenderDienst.Vertretungsliste)
|
||||
{
|
||||
item = BuildVertertungslisteItems();
|
||||
foreach (var vertritt in _schulbegleitenderDienst.Vertretungsliste)
|
||||
{
|
||||
item = BuildVertertungslisteItems();
|
||||
|
||||
//Vertretungsdc wird übergeben
|
||||
item.Vertretung = vertritt;
|
||||
//Vertretungsdc wird übergeben
|
||||
item.Vertretung = vertritt;
|
||||
|
||||
if (vertritt.VertretungsZeitraumVon.Date <= _absenceTime.Date && vertritt.VertretungsZeitraumBis.Date >= _absenceTime.Date)
|
||||
{
|
||||
foreach (var mit in _schulbegleitenderDienst.Employeesliste)
|
||||
{
|
||||
if (vertritt.EmployeeOid == mit.EmployeeOid)
|
||||
{
|
||||
item.EmployeeName = mit.FirstName + " " + mit.LastName;
|
||||
if (vertritt.VertretungsZeitraumVon.Date <= _absenceTime.Date && vertritt.VertretungsZeitraumBis.Date >= _absenceTime.Date)
|
||||
{
|
||||
foreach (var mit in _schulbegleitenderDienst.Employeesliste)
|
||||
{
|
||||
if (vertritt.EmployeeOid == mit.EmployeeOid)
|
||||
{
|
||||
item.EmployeeName = mit.FirstName + " " + mit.LastName;
|
||||
|
||||
item.EmployeeOid = mit.EmployeeOid;
|
||||
}
|
||||
item.EmployeeOid = mit.EmployeeOid;
|
||||
}
|
||||
|
||||
if (vertritt.VertretenderMitarbeiterOid == mit.EmployeeOid)
|
||||
{
|
||||
item.VertretenderMitarbeiter = mit.FirstName + " " + mit.LastName;
|
||||
if (vertritt.VertretenderMitarbeiterOid == mit.EmployeeOid)
|
||||
{
|
||||
item.VertretenderMitarbeiter = mit.FirstName + " " + mit.LastName;
|
||||
|
||||
item.VertetenderMit = mit.EmployeeOid;
|
||||
}
|
||||
item.VertetenderMit = mit.EmployeeOid;
|
||||
}
|
||||
|
||||
foreach (var hauptbetreuung in _schulbegleitenderDienst.Employee2CustomerHauptbetreuung)
|
||||
{
|
||||
if (hauptbetreuung.Key == vertritt.EmployeeOid && vertritt.EmployeeOid == mit.EmployeeOid)
|
||||
{
|
||||
foreach (var cust in _schulbegleitenderDienst.Customersliste)
|
||||
{
|
||||
foreach (var val in hauptbetreuung.Value)
|
||||
{
|
||||
if (val == cust.CustomerOid)
|
||||
{
|
||||
if (cust.CustomerOid == vertritt.CustomerOid)
|
||||
{
|
||||
_vorhandeneCustomerOidListe.Add(cust.CustomerOid);
|
||||
item.Customer.Add(cust.CustomerOid, cust.FullName);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
foreach (var hauptbetreuung in _schulbegleitenderDienst.Employee2CustomerHauptbetreuung)
|
||||
{
|
||||
if (hauptbetreuung.Key == vertritt.EmployeeOid && vertritt.EmployeeOid == mit.EmployeeOid)
|
||||
{
|
||||
foreach (var cust in _schulbegleitenderDienst.Customersliste)
|
||||
{
|
||||
foreach (var val in hauptbetreuung.Value)
|
||||
{
|
||||
if (val == cust.CustomerOid)
|
||||
{
|
||||
if (cust.CustomerOid == vertritt.CustomerOid)
|
||||
{
|
||||
_vorhandeneCustomerOidListe.Add(cust.CustomerOid);
|
||||
item.Customer.Add(cust.CustomerOid, cust.FullName);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
foreach (var ab in _schulbegleitenderDienst.AbsenceTimeliste)
|
||||
{
|
||||
if (vertritt.AbsenceTimeOid == ab.AbsenceTimeOid)
|
||||
{
|
||||
item.Abwesenheitskategorie = ab.Reason;
|
||||
foreach (var ab in _schulbegleitenderDienst.AbsenceTimeliste)
|
||||
{
|
||||
if (vertritt.AbsenceTimeOid == ab.AbsenceTimeOid)
|
||||
{
|
||||
item.Abwesenheitskategorie = ab.Reason;
|
||||
|
||||
AddKrankheitsZeitraumAndMeldungToItem(item, ab);
|
||||
AddKrankheitsZeitraumAndMeldungToItem(item, ab);
|
||||
|
||||
item.Absencetime = ab;
|
||||
item.Absencetime = ab;
|
||||
|
||||
AddArbeitszeitToItem(item, vertritt.EmployeeOid,1);
|
||||
AddArbeitszeitToItem(item, vertritt.EmployeeOid,1);
|
||||
|
||||
|
||||
if (item.EmployeeOid == 0 || item.EmployeeName.Equals(""))
|
||||
{
|
||||
foreach (var emp in _schulbegleitenderDienst.Employeesliste)
|
||||
{
|
||||
if (emp.EmployeeOid == ab.EmployeeOid)
|
||||
{
|
||||
item.EmployeeOid = ab.EmployeeOid.Value;
|
||||
item.EmployeeName = emp.FirstName + " " + emp.LastName;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (item.EmployeeOid == 0 || item.EmployeeName.Equals(""))
|
||||
{
|
||||
foreach (var emp in _schulbegleitenderDienst.Employeesliste)
|
||||
{
|
||||
if (emp.EmployeeOid == ab.EmployeeOid)
|
||||
{
|
||||
item.EmployeeOid = ab.EmployeeOid.Value;
|
||||
item.EmployeeName = emp.FirstName + " " + emp.LastName;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
//überprüfung durchführen und ggf mehrere Davon anlegen. wegen vertretungszeiten bei krankheitszeiträumen
|
||||
//überprüfung durchführen und ggf mehrere Davon anlegen. wegen vertretungszeiten bei krankheitszeiträumen
|
||||
|
||||
//Abfragen ob überhaupt ein Employee Vorhanden ist.
|
||||
vertretungsliste.Add(item);
|
||||
//Abfragen ob überhaupt ein Employee Vorhanden ist.
|
||||
vertretungsliste.Add(item);
|
||||
|
||||
//if (vertritt.VertretungsZeitraumVon != ab.Start.Value && vertritt.VertretungsZeitraumBis != ab.End.Value) für die zeiten inerghalb eines tages
|
||||
//{
|
||||
//if (vertritt.VertretungsZeitraumVon != ab.Start.Value && vertritt.VertretungsZeitraumBis != ab.End.Value) für die zeiten inerghalb eines tages
|
||||
//{
|
||||
|
||||
// add der vertretungsliste einen Weiteren Tag der nicht
|
||||
// allerdings müsste da wieder ne neue vertretung erstellt werden.
|
||||
// desweiteren müsste die range der Stunden ermittelt werden.
|
||||
// vertretungsliste.Add(item);
|
||||
// add der vertretungsliste einen Weiteren Tag der nicht
|
||||
// allerdings müsste da wieder ne neue vertretung erstellt werden.
|
||||
// desweiteren müsste die range der Stunden ermittelt werden.
|
||||
// vertretungsliste.Add(item);
|
||||
|
||||
//}
|
||||
}
|
||||
|
||||
}
|
||||
//}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw Utils.CreateBeWoFaultException(e);
|
||||
}
|
||||
}
|
||||
|
||||
private void ErstelleItemVonAbsencetimes()
|
||||
{
|
||||
VertretungsListeItemsDC item = new VertretungsListeItemsDC();
|
||||
try
|
||||
{
|
||||
VertretungsListeItemsDC item = new VertretungsListeItemsDC();
|
||||
|
||||
foreach (var ars in _schulbegleitenderDienst.AbsenceTimeliste)
|
||||
{
|
||||
item = BuildVertertungslisteItems();
|
||||
foreach (var ars in _schulbegleitenderDienst.AbsenceTimeliste)
|
||||
{
|
||||
item = BuildVertertungslisteItems();
|
||||
|
||||
item.Abwesenheitskategorie = ars.Reason;
|
||||
item.Absencetime = ars;
|
||||
item.Abwesenheitskategorie = ars.Reason;
|
||||
item.Absencetime = ars;
|
||||
|
||||
|
||||
AddKrankheitsZeitraumAndMeldungToItem(item, ars);
|
||||
AddKrankheitsZeitraumAndMeldungToItem(item, ars);
|
||||
|
||||
|
||||
if (ars.Start.Value.Date <= _absenceTime.Date && ars.End.Value.Date >= _absenceTime.Date)
|
||||
{
|
||||
foreach (var emp in _schulbegleitenderDienst.Employeesliste)
|
||||
{
|
||||
if (ars.EmployeeOid == emp.EmployeeOid)
|
||||
{
|
||||
item.EmployeeName = emp.FirstName + " " + emp.LastName;
|
||||
item.EmployeeOid = emp.EmployeeOid;
|
||||
}
|
||||
if (ars.Start.Value.Date <= _absenceTime.Date && ars.End.Value.Date >= _absenceTime.Date)
|
||||
{
|
||||
foreach (var emp in _schulbegleitenderDienst.Employeesliste)
|
||||
{
|
||||
if (ars.EmployeeOid == emp.EmployeeOid)
|
||||
{
|
||||
item.EmployeeName = emp.FirstName + " " + emp.LastName;
|
||||
item.EmployeeOid = emp.EmployeeOid;
|
||||
}
|
||||
|
||||
foreach (var hauptbetreuung in _schulbegleitenderDienst.Employee2CustomerHauptbetreuung)
|
||||
{
|
||||
if (hauptbetreuung.Key == emp.EmployeeOid && emp.EmployeeOid == ars.EmployeeOid)
|
||||
{
|
||||
foreach (var cust in _schulbegleitenderDienst.Customersliste)
|
||||
{
|
||||
foreach (var val in hauptbetreuung.Value)
|
||||
{
|
||||
if (val == cust.CustomerOid)
|
||||
{
|
||||
if (!_vorhandeneCustomerOidListe.Contains(cust.CustomerOid))
|
||||
item.Customer.Add(cust.CustomerOid, cust.FullName);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
foreach (var hauptbetreuung in _schulbegleitenderDienst.Employee2CustomerHauptbetreuung)
|
||||
{
|
||||
if (hauptbetreuung.Key == emp.EmployeeOid && emp.EmployeeOid == ars.EmployeeOid)
|
||||
{
|
||||
foreach (var cust in _schulbegleitenderDienst.Customersliste)
|
||||
{
|
||||
foreach (var val in hauptbetreuung.Value)
|
||||
{
|
||||
if (val == cust.CustomerOid)
|
||||
{
|
||||
if (!_vorhandeneCustomerOidListe.Contains(cust.CustomerOid))
|
||||
item.Customer.Add(cust.CustomerOid, cust.FullName);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (item.EmployeeOid == 0 || item.EmployeeName.Equals(""))
|
||||
{
|
||||
foreach (var emp in _schulbegleitenderDienst.Employeesliste)
|
||||
{
|
||||
if (emp.EmployeeOid == ars.EmployeeOid)
|
||||
{
|
||||
item.EmployeeOid = ars.EmployeeOid.Value;
|
||||
item.EmployeeName = emp.FirstName + " " + emp.LastName;
|
||||
if (item.EmployeeOid == 0 || item.EmployeeName.Equals(""))
|
||||
{
|
||||
foreach (var emp in _schulbegleitenderDienst.Employeesliste)
|
||||
{
|
||||
if (emp.EmployeeOid == ars.EmployeeOid)
|
||||
{
|
||||
item.EmployeeOid = ars.EmployeeOid.Value;
|
||||
item.EmployeeName = emp.FirstName + " " + emp.LastName;
|
||||
|
||||
AddArbeitszeitToItem(item, emp.EmployeeOid,1);
|
||||
}
|
||||
}
|
||||
}
|
||||
AddArbeitszeitToItem(item, emp.EmployeeOid,1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Sonderfall wenn keine vertertung verfügbar und employee nicht gegeben aber absence eine customer oid besitzt
|
||||
if (item.Customer.Count == 0 && item.EmployeeOid == 0 && ars.CustomerOid.Value != 0)
|
||||
{
|
||||
foreach (var cust in _schulbegleitenderDienst.Customersliste)
|
||||
{
|
||||
if (ars.CustomerOid.Value == cust.CustomerOid)
|
||||
{
|
||||
item.Customer.Add(cust.CustomerOid, cust.FullName);
|
||||
}
|
||||
}
|
||||
}
|
||||
//Sonderfall wenn keine vertertung verfügbar und employee nicht gegeben aber absence eine customer oid besitzt
|
||||
if (item.Customer.Count == 0 && item.EmployeeOid == 0 && ars.CustomerOid.Value != 0)
|
||||
{
|
||||
foreach (var cust in _schulbegleitenderDienst.Customersliste)
|
||||
{
|
||||
if (ars.CustomerOid.Value == cust.CustomerOid)
|
||||
{
|
||||
item.Customer.Add(cust.CustomerOid, cust.FullName);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//if (item.Customer.Count != 0 && item.EmployeeOid != 0 )//hier auch employee ob vorhanden abfragen // bearbeiten
|
||||
//{
|
||||
vertretungsliste.Add(item);
|
||||
//}
|
||||
//if (item.Customer.Count != 0 && item.EmployeeOid != 0 )//hier auch employee ob vorhanden abfragen // bearbeiten
|
||||
//{
|
||||
vertretungsliste.Add(item);
|
||||
//}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw Utils.CreateBeWoFaultException(e);
|
||||
}
|
||||
}
|
||||
//---------
|
||||
#endregion
|
||||
//---------
|
||||
|
||||
//----- Bearbeiten --------------------------------------------------------------------------------------------
|
||||
//----- Woechentliche Vertretungen, Die anzeige jeweiliger tage muss angepasst werden wenn zum beispiel eine
|
||||
//krabkmeldung mehrere vertretungen zugewiesen bekomment hat. Die müssen dann richtig angezeigt werden.
|
||||
|
||||
//----- Wochentliche Vertretungen date abfrage muss hier gerichtet werden ?? habe ich das nicht bereits erledigt
|
||||
private void ErstelleItemVonWoechentlicherVertretungen()
|
||||
#region Klienten Wochenanzeige
|
||||
|
||||
private void ErstelleItemVonWoechentlicherVertretungen()
|
||||
{
|
||||
_vorhandeneCustomerOidListe.Clear();
|
||||
VertretungsListeItemsDC item = new VertretungsListeItemsDC();
|
||||
try
|
||||
{
|
||||
_vorhandeneCustomerOidListe.Clear();
|
||||
VertretungsListeItemsDC item = new VertretungsListeItemsDC();
|
||||
|
||||
|
||||
foreach (var vertritt in _schulbegleitenderDienst.Vertretungsliste)
|
||||
{
|
||||
item = BuildVertertungslisteItems();
|
||||
foreach (var vertritt in _schulbegleitenderDienst.Vertretungsliste)
|
||||
{
|
||||
item = BuildVertertungslisteItems();
|
||||
|
||||
//Vertretungsdc wird übergeben
|
||||
item.Vertretung = vertritt;
|
||||
//Vertretungsdc wird übergeben
|
||||
item.Vertretung = vertritt;
|
||||
|
||||
if (vertritt.VertretungsZeitraumVon.Date <= _endDate.Date && vertritt.VertretungsZeitraumBis.Date >= _startDate.Date)
|
||||
{
|
||||
foreach (var mit in _schulbegleitenderDienst.Employeesliste)
|
||||
{
|
||||
if (vertritt.EmployeeOid == mit.EmployeeOid)
|
||||
{
|
||||
item.EmployeeName = mit.FirstName + " " + mit.LastName;
|
||||
if (vertritt.VertretungsZeitraumVon.Date <= _endDate.Date && vertritt.VertretungsZeitraumBis.Date >= _startDate.Date)
|
||||
{
|
||||
foreach (var mit in _schulbegleitenderDienst.Employeesliste)
|
||||
{
|
||||
if (vertritt.EmployeeOid == mit.EmployeeOid)
|
||||
{
|
||||
item.EmployeeName = mit.FirstName + " " + mit.LastName;
|
||||
|
||||
item.EmployeeOid = mit.EmployeeOid;
|
||||
}
|
||||
item.EmployeeOid = mit.EmployeeOid;
|
||||
}
|
||||
|
||||
if (vertritt.VertretenderMitarbeiterOid == mit.EmployeeOid)
|
||||
{
|
||||
item.VertretenderMitarbeiter = mit.FirstName + " " + mit.LastName;
|
||||
if (vertritt.VertretenderMitarbeiterOid == mit.EmployeeOid)
|
||||
{
|
||||
item.VertretenderMitarbeiter = mit.FirstName + " " + mit.LastName;
|
||||
|
||||
item.VertetenderMit = mit.EmployeeOid;
|
||||
}
|
||||
item.VertetenderMit = mit.EmployeeOid;
|
||||
}
|
||||
|
||||
foreach (var hauptbetreuung in _schulbegleitenderDienst.Employee2CustomerHauptbetreuung)
|
||||
{
|
||||
if (hauptbetreuung.Key == vertritt.EmployeeOid && vertritt.EmployeeOid == mit.EmployeeOid)
|
||||
{
|
||||
foreach (var cust in _schulbegleitenderDienst.Customersliste)
|
||||
{
|
||||
foreach (var val in hauptbetreuung.Value)
|
||||
{
|
||||
if (val == cust.CustomerOid)
|
||||
{
|
||||
if (cust.CustomerOid == vertritt.CustomerOid)
|
||||
{
|
||||
_vorhandeneCustomerOidListe.Add(cust.CustomerOid);
|
||||
item.Customer.Add(cust.CustomerOid, cust.FullName);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
foreach (var hauptbetreuung in _schulbegleitenderDienst.Employee2CustomerHauptbetreuung)
|
||||
{
|
||||
if (hauptbetreuung.Key == vertritt.EmployeeOid && vertritt.EmployeeOid == mit.EmployeeOid)
|
||||
{
|
||||
foreach (var cust in _schulbegleitenderDienst.Customersliste)
|
||||
{
|
||||
foreach (var val in hauptbetreuung.Value)
|
||||
{
|
||||
if (val == cust.CustomerOid)
|
||||
{
|
||||
if (cust.CustomerOid == vertritt.CustomerOid)
|
||||
{
|
||||
_vorhandeneCustomerOidListe.Add(cust.CustomerOid);
|
||||
item.Customer.Add(cust.CustomerOid, cust.FullName);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
foreach (var ab in _schulbegleitenderDienst.AbsenceTimeliste)
|
||||
{
|
||||
if (vertritt.AbsenceTimeOid == ab.AbsenceTimeOid)
|
||||
{
|
||||
item.Abwesenheitskategorie = ab.Reason;
|
||||
foreach (var ab in _schulbegleitenderDienst.AbsenceTimeliste)
|
||||
{
|
||||
if (vertritt.AbsenceTimeOid == ab.AbsenceTimeOid)
|
||||
{
|
||||
item.Abwesenheitskategorie = ab.Reason;
|
||||
|
||||
AddKrankheitsZeitraumAndMeldungToItem(item, ab);
|
||||
AddKrankheitsZeitraumAndMeldungToItem(item, ab);
|
||||
|
||||
item.Absencetime = ab;
|
||||
item.Absencetime = ab;
|
||||
|
||||
AddArbeitszeitToItem(item, vertritt.EmployeeOid,2);
|
||||
AddArbeitszeitToItem(item, vertritt.EmployeeOid,2);
|
||||
|
||||
|
||||
if (item.EmployeeOid == 0 || item.EmployeeName.Equals(""))
|
||||
{
|
||||
foreach (var emp in _schulbegleitenderDienst.Employeesliste)
|
||||
{
|
||||
if (emp.EmployeeOid == ab.EmployeeOid)
|
||||
{
|
||||
item.EmployeeOid = ab.EmployeeOid.Value;
|
||||
item.EmployeeName = emp.FirstName + " " + emp.LastName;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (item.EmployeeOid == 0 || item.EmployeeName.Equals(""))
|
||||
{
|
||||
foreach (var emp in _schulbegleitenderDienst.Employeesliste)
|
||||
{
|
||||
if (emp.EmployeeOid == ab.EmployeeOid)
|
||||
{
|
||||
item.EmployeeOid = ab.EmployeeOid.Value;
|
||||
item.EmployeeName = emp.FirstName + " " + emp.LastName;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Abfragen ob Employee vorhanden
|
||||
vertretungsliste.Add(item);
|
||||
}
|
||||
//Abfragen ob Employee vorhanden
|
||||
vertretungsliste.Add(item);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw Utils.CreateBeWoFaultException(e);
|
||||
}
|
||||
}
|
||||
|
||||
private void ErstelleItemVonWoechentlicherAbsencetimes()
|
||||
{
|
||||
VertretungsListeItemsDC item = new VertretungsListeItemsDC();
|
||||
try
|
||||
{
|
||||
VertretungsListeItemsDC item = new VertretungsListeItemsDC();
|
||||
|
||||
foreach (var ars in _schulbegleitenderDienst.AbsenceTimeliste)
|
||||
{
|
||||
item = BuildVertertungslisteItems();
|
||||
foreach (var ars in _schulbegleitenderDienst.AbsenceTimeliste)
|
||||
{
|
||||
item = BuildVertertungslisteItems();
|
||||
|
||||
item.Abwesenheitskategorie = ars.Reason;
|
||||
item.Absencetime = ars;
|
||||
item.Abwesenheitskategorie = ars.Reason;
|
||||
item.Absencetime = ars;
|
||||
|
||||
|
||||
AddKrankheitsZeitraumAndMeldungToItem(item, ars);
|
||||
AddKrankheitsZeitraumAndMeldungToItem(item, ars);
|
||||
|
||||
|
||||
if (ars.Start.Value.Date <= _endDate.Date && ars.End.Value.Date >= _startDate.Date )
|
||||
{
|
||||
foreach (var emp in _schulbegleitenderDienst.Employeesliste)
|
||||
{
|
||||
if (ars.EmployeeOid == emp.EmployeeOid)
|
||||
{
|
||||
item.EmployeeName = emp.FirstName + " " + emp.LastName;
|
||||
item.EmployeeOid = emp.EmployeeOid;
|
||||
}
|
||||
if (ars.Start.Value.Date <= _endDate.Date && ars.End.Value.Date >= _startDate.Date )
|
||||
{
|
||||
foreach (var emp in _schulbegleitenderDienst.Employeesliste)
|
||||
{
|
||||
if (ars.EmployeeOid == emp.EmployeeOid)
|
||||
{
|
||||
item.EmployeeName = emp.FirstName + " " + emp.LastName;
|
||||
item.EmployeeOid = emp.EmployeeOid;
|
||||
}
|
||||
|
||||
foreach (var hauptbetreuung in _schulbegleitenderDienst.Employee2CustomerHauptbetreuung)
|
||||
{
|
||||
if (hauptbetreuung.Key == emp.EmployeeOid && emp.EmployeeOid == ars.EmployeeOid)
|
||||
{
|
||||
foreach (var cust in _schulbegleitenderDienst.Customersliste)
|
||||
{
|
||||
foreach (var val in hauptbetreuung.Value)
|
||||
{
|
||||
if (val == cust.CustomerOid)
|
||||
{
|
||||
if (!_vorhandeneCustomerOidListe.Contains(cust.CustomerOid))
|
||||
item.Customer.Add(cust.CustomerOid, cust.FullName);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
foreach (var hauptbetreuung in _schulbegleitenderDienst.Employee2CustomerHauptbetreuung)
|
||||
{
|
||||
if (hauptbetreuung.Key == emp.EmployeeOid && emp.EmployeeOid == ars.EmployeeOid)
|
||||
{
|
||||
foreach (var cust in _schulbegleitenderDienst.Customersliste)
|
||||
{
|
||||
foreach (var val in hauptbetreuung.Value)
|
||||
{
|
||||
if (val == cust.CustomerOid)
|
||||
{
|
||||
if (!_vorhandeneCustomerOidListe.Contains(cust.CustomerOid))
|
||||
item.Customer.Add(cust.CustomerOid, cust.FullName);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (item.EmployeeOid == 0 || item.EmployeeName.Equals(""))
|
||||
{
|
||||
foreach (var emp in _schulbegleitenderDienst.Employeesliste)
|
||||
{
|
||||
if (emp.EmployeeOid == ars.EmployeeOid)
|
||||
{
|
||||
item.EmployeeOid = ars.EmployeeOid.Value;
|
||||
item.EmployeeName = emp.FirstName + " " + emp.LastName;
|
||||
if (item.EmployeeOid == 0 || item.EmployeeName.Equals(""))
|
||||
{
|
||||
foreach (var emp in _schulbegleitenderDienst.Employeesliste)
|
||||
{
|
||||
if (emp.EmployeeOid == ars.EmployeeOid)
|
||||
{
|
||||
item.EmployeeOid = ars.EmployeeOid.Value;
|
||||
item.EmployeeName = emp.FirstName + " " + emp.LastName;
|
||||
|
||||
AddArbeitszeitToItem(item, emp.EmployeeOid,2);
|
||||
}
|
||||
}
|
||||
}
|
||||
AddArbeitszeitToItem(item, emp.EmployeeOid,2);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Sonderfall wenn keine vertertung verfügbar und employee nicht gegeben aber absence eine customer oid besitzt
|
||||
if (item.Customer.Count == 0 && item.EmployeeOid == 0 && ars.CustomerOid.Value != 0)
|
||||
{
|
||||
foreach (var cust in _schulbegleitenderDienst.Customersliste)
|
||||
{
|
||||
if (ars.CustomerOid.Value == cust.CustomerOid)
|
||||
{
|
||||
item.Customer.Add(cust.CustomerOid, cust.FullName);
|
||||
}
|
||||
}
|
||||
}
|
||||
//Sonderfall wenn keine vertertung verfügbar und employee nicht gegeben aber absence eine customer oid besitzt
|
||||
if (item.Customer.Count == 0 && item.EmployeeOid == 0 && ars.CustomerOid.Value != 0)
|
||||
{
|
||||
foreach (var cust in _schulbegleitenderDienst.Customersliste)
|
||||
{
|
||||
if (ars.CustomerOid.Value == cust.CustomerOid)
|
||||
{
|
||||
item.Customer.Add(cust.CustomerOid, cust.FullName);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// if (item.Customer.Count != 0 item.EmployeeOid != 0)//hier auch employee ob vorhanden abfragen // bearbeiten
|
||||
// {
|
||||
vertretungsliste.Add(item);
|
||||
// }
|
||||
// if (item.Customer.Count != 0 item.EmployeeOid != 0)//hier auch employee ob vorhanden abfragen // bearbeiten
|
||||
// {
|
||||
vertretungsliste.Add(item);
|
||||
// }
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw Utils.CreateBeWoFaultException(e);
|
||||
}
|
||||
}
|
||||
//----
|
||||
|
||||
#endregion
|
||||
//-------------------------------------------------------------------------------------------------------------
|
||||
|
||||
//########## Neuer bereich der ausprobiert werden soll
|
||||
private void ErmittleTimeRange(DateTime start, DateTime end, DateTime VertretStart, DateTime VertretEnd)
|
||||
|
||||
//-------------- Vorhandene Mitarbeiter die Keiner Vertretung zugewiesen sind.
|
||||
#region Mitarbeiter Wochenanzeige
|
||||
|
||||
public void GetAlleMitarbeiterForWochenanzeige()
|
||||
{
|
||||
try
|
||||
{
|
||||
var x = DAOFactory.GenericDAO.GetAllActive<Employee>();
|
||||
|
||||
var y = DCEntityMapper.MapperFactory.EmployeeDC_Employee.MapToNewDCs(x);
|
||||
|
||||
EmployeeListe = y;
|
||||
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw Utils.CreateBeWoFaultException(e);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public List<VertretungsListeMitarbeiterItemsDC> ErstelleItemVonWoechentlicherVorhandenerMitarbeiterVertretungen()
|
||||
{
|
||||
try
|
||||
{
|
||||
//Code Für die Mitarbeiter ansicht
|
||||
|
||||
foreach (var employee in EmployeeListe)
|
||||
{
|
||||
// eine für die Mitarbeiter Wochenanzeige angepasste Liste Zurück liefern
|
||||
Dictionary<DateTime, CompactCustomerDC> dict = new Dictionary<DateTime, CompactCustomerDC>();
|
||||
|
||||
|
||||
//mit vertretung vergleichen ?? && nur mitarbeiter mitnehmen die noch einen freien tag in der vertretung haben ??
|
||||
|
||||
//foreach (var abs in employee.AbsenceTimes)
|
||||
//{
|
||||
// if (_startDate >= abs.Start.Value && _endDate <= abs.End.Value)
|
||||
// {
|
||||
|
||||
|
||||
// }
|
||||
//}
|
||||
|
||||
|
||||
//foreach (var rel in employee.RelatedCustomers)
|
||||
//{
|
||||
// if (!dict.ContainsKey(DateTime.Now))
|
||||
// dict.Add(DateTime.Now, rel.Customer);
|
||||
//}
|
||||
|
||||
|
||||
VertretungsListeMitarbeiterItemsDC mVert = new VertretungsListeMitarbeiterItemsDC()
|
||||
{
|
||||
Employee = employee.FirstName +" "+ employee.LastName,
|
||||
EmployeeOid = employee.EmployeeOid,
|
||||
WochenPlan = dict,
|
||||
|
||||
};
|
||||
|
||||
if (employee.AbsenceTimes != null && employee.AbsenceTimes.Count > 0)
|
||||
{
|
||||
mVert.AbsenceStartDate = employee.AbsenceTimes[0].Start;
|
||||
mVert.AbsenceEndDate = employee.AbsenceTimes[0].End;
|
||||
}
|
||||
|
||||
if (employee.RelatedCustomers != null && employee.RelatedCustomers.Count > 0)
|
||||
{
|
||||
mVert.Customer = employee.RelatedCustomers[0].Customer;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Mitarbeiterliste.Add(mVert);
|
||||
|
||||
}
|
||||
|
||||
return Mitarbeiterliste;
|
||||
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw Utils.CreateBeWoFaultException(e);
|
||||
}
|
||||
}
|
||||
|
||||
private void ErstelleItemVonWoechentklicherVorhandenerMitarbeiterAbsencetimes()
|
||||
{
|
||||
try
|
||||
{
|
||||
//Mall sehen ob das gebraucht wird.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw Utils.CreateBeWoFaultException(e);
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
//########## Neuer bereich der ausprobiert werden soll #########################################################################
|
||||
#region Ermittle time Range ,Erstelle neue Vertretung
|
||||
|
||||
|
||||
private void ErmittleTimeRange(DateTime start, DateTime end, DateTime vertretStart, DateTime vertretEnd)
|
||||
{
|
||||
var startzeit = start.TimeOfDay;
|
||||
var endzeit = end.TimeOfDay;
|
||||
|
||||
// der Zeitraum der Vertretung muss auch überprüft werden.
|
||||
if (startzeit > VertretEnd.TimeOfDay && endzeit < VertretStart.TimeOfDay)
|
||||
if (startzeit > vertretEnd.TimeOfDay && endzeit < vertretStart.TimeOfDay)
|
||||
{
|
||||
// Haben wir eine Zeitraum überschneidung, dann muss noch überprüft werden ob die Zeit sich überschneidet
|
||||
// denn wenn nicht, dann soll eine Weitere Vertretung erstellt werden die die Ausstehende Zeit anzeigt oer so.
|
||||
@@ -470,10 +634,12 @@ namespace BeWo.Service.SBD.Vertretung
|
||||
|
||||
DAOFactory.GenericDAO.Insert(x);
|
||||
}
|
||||
#endregion
|
||||
//############################# ende Probe ####################################################################################
|
||||
|
||||
//############################# ende Probe
|
||||
#region Behilfsmethoden
|
||||
|
||||
private void AddKrankheitsZeitraumAndMeldungToItem(VertretungsListeItemsDC item, AbsenceTimeDC ars)
|
||||
private void AddKrankheitsZeitraumAndMeldungToItem(VertretungsListeItemsDC item, AbsenceTimeDC ars)
|
||||
{
|
||||
if (ars.Start.Value.Date != ars.End.Value.Date)
|
||||
{
|
||||
@@ -586,5 +752,11 @@ namespace BeWo.Service.SBD.Vertretung
|
||||
return item;
|
||||
}
|
||||
|
||||
}
|
||||
//neu Für Mitarbeiter Woche
|
||||
//private
|
||||
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
|
||||
@@ -640,5 +640,9 @@ namespace BeWo.Service.ServiceContracts
|
||||
[FaultContract(typeof(BeWoFault))]
|
||||
[OperationContract]
|
||||
List<CustomerTokenRelationDC> LoadCustomerTokenRelationsByOid(IEnumerable<long> pOids);
|
||||
|
||||
[FaultContract(typeof(BeWoFault))]
|
||||
[OperationContract]
|
||||
PersonDC GetPersonWithCustomerOid(long oid);
|
||||
}
|
||||
}
|
||||
@@ -351,5 +351,9 @@ namespace BeWo.Service.ServiceContracts
|
||||
[FaultContract(typeof(BeWoFault))]
|
||||
[OperationContract]
|
||||
List<EmployeeTokenRelationDC> LoadEmployeeTokenRelationsByOid(IEnumerable<long> pOids);
|
||||
|
||||
[FaultContract(typeof(BeWoFault))]
|
||||
[OperationContract]
|
||||
EmployeeDC GetEmployeeByID(long employeeOid);
|
||||
}
|
||||
}
|
||||
@@ -665,5 +665,9 @@ namespace BeWo.Service.ServiceContracts
|
||||
[FaultContract(typeof(BeWoFault))]
|
||||
[OperationContract]
|
||||
List<EmployeeTokenRelationDC> GetEmployee2TokenList();
|
||||
|
||||
[FaultContract(typeof(BeWoFault))]
|
||||
[OperationContract]
|
||||
List<VertretungsListeMitarbeiterItemsDC> VertretungsMitarbeiterListeWoechentlich(DateTime start, DateTime ende);
|
||||
}
|
||||
}
|
||||
@@ -3447,6 +3447,23 @@ namespace BeWo.Service.ServiceImplementations
|
||||
}
|
||||
}
|
||||
|
||||
public PersonDC GetPersonWithCustomerOid(long oid)
|
||||
{
|
||||
try
|
||||
{
|
||||
var klient = DAOFactory.GenericDAO.GetByID<Customer>(oid);
|
||||
|
||||
var person = MapperFactory.PersonDC_Person.MapToNewDC(klient.Person);
|
||||
|
||||
return person;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw Utils.CreateBeWoFaultException(e);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
internal struct WohnheimbuchungsIntervallStruct
|
||||
|
||||
@@ -1320,6 +1320,20 @@ namespace BeWo.Service.ServiceImplementations
|
||||
}
|
||||
}
|
||||
|
||||
public EmployeeDC GetEmployeeByID(long employeeOid)
|
||||
{
|
||||
try
|
||||
{
|
||||
var employee = DAOFactory.GenericDAO.GetByID<Employee>(employeeOid);
|
||||
|
||||
return MapperFactory.EmployeeDC_Employee.MapToNewDC(employee);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw Utils.CreateBeWoFaultException(e);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
@@ -3841,6 +3841,22 @@ namespace BeWo.Service.ServiceImplementations
|
||||
}
|
||||
}
|
||||
|
||||
public List<VertretungsListeMitarbeiterItemsDC> VertretungsMitarbeiterListeWoechentlich(DateTime start, DateTime ende)
|
||||
{
|
||||
try
|
||||
{
|
||||
VertretungsAlgorithmus alorythmus = new VertretungsAlgorithmus(start, ende);
|
||||
|
||||
var x = alorythmus.ErstelleItemVonWoechentlicherVorhandenerMitarbeiterVertretungen();
|
||||
|
||||
return x;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw Utils.CreateBeWoFaultException(e);
|
||||
}
|
||||
}
|
||||
|
||||
//hole die Range an vertretungen raus raus
|
||||
public List<VertretungsListeItemsDC> VertretungsListeWoechentlich(DateTime start, DateTime ende)
|
||||
{
|
||||
|
||||
31
Shared/DataContracts/VertretungsListeMitarbeiterItemsDC.cs
Normal file
31
Shared/DataContracts/VertretungsListeMitarbeiterItemsDC.cs
Normal file
@@ -0,0 +1,31 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Runtime.Serialization;
|
||||
using BS.Shared.DataContracts.Compact;
|
||||
using DevExpress.Schedule;
|
||||
|
||||
namespace BS.Shared.DataContracts
|
||||
{
|
||||
[DataContract]
|
||||
public class VertretungsListeMitarbeiterItemsDC : IDataContract
|
||||
{
|
||||
|
||||
[DataMember]
|
||||
public string Employee { get; set; }
|
||||
|
||||
[DataMember]
|
||||
public Dictionary<DateTime,CompactCustomerDC> WochenPlan { get; set; }
|
||||
|
||||
[DataMember]
|
||||
public long? EmployeeOid { get; set; }
|
||||
|
||||
[DataMember]
|
||||
public DateTime? AbsenceStartDate { get; set; }
|
||||
|
||||
[DataMember]
|
||||
public DateTime? AbsenceEndDate { get; set; }
|
||||
|
||||
[DataMember]
|
||||
public CompactCustomerDC Customer { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -177,6 +177,7 @@
|
||||
<Compile Include="DataContracts\ArbeitszeitEintragDC.cs" />
|
||||
<Compile Include="DataContracts\CustomerTokenRelationDC.cs" />
|
||||
<Compile Include="DataContracts\EmployeeTokenRelationDC.cs" />
|
||||
<Compile Include="DataContracts\VertretungsListeMitarbeiterItemsDC.cs" />
|
||||
<Compile Include="DataContracts\TokenDC.cs" />
|
||||
<Compile Include="DataContracts\VertretungsListeItemsDC.cs" />
|
||||
<Compile Include="DataContracts\VertretungsListeDC.cs" />
|
||||
|
||||
Reference in New Issue
Block a user