Schulbegleitende dienste

This commit is contained in:
Waldi
2017-06-30 13:33:49 +02:00
parent 82fa78bcf4
commit e0b28c6fa3
57 changed files with 2258 additions and 241 deletions

View File

@@ -444,7 +444,7 @@
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="View\SchulbegleitenderDienstCustomer.xaml">
<Page Include="View\SchulbegleitenderDienst.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
@@ -640,6 +640,9 @@
<Compile Include="ViewModel\ChatMediaMessageVM.cs" />
<Compile Include="ViewModel\ArbeitszeitVM.cs" />
<Compile Include="ViewModel\ArbeitszeitEintragVM.cs" />
<Compile Include="ViewModel\CustomerTokenRelationVM.cs" />
<Compile Include="ViewModel\EmployeeTokenRelationVM.cs" />
<Compile Include="ViewModel\TokenVM.cs" />
<Compile Include="ViewModel\KriterienVM.cs" />
<Compile Include="ViewModel\ListViewModel\ArbeitszeitListVM.cs" />
<Compile Include="ViewModel\ListViewModel\ArbeitszeitEintragListVM.cs" />
@@ -848,8 +851,8 @@
<Compile Include="View\EmployeeArbeitszeitView.xaml.cs">
<DependentUpon>EmployeeArbeitszeitView.xaml</DependentUpon>
</Compile>
<Compile Include="View\SchulbegleitenderDienstCustomer.xaml.cs">
<DependentUpon>SchulbegleitenderDienstCustomer.xaml</DependentUpon>
<Compile Include="View\SchulbegleitenderDienst.xaml.cs">
<DependentUpon>SchulbegleitenderDienst.xaml</DependentUpon>
</Compile>
<Compile Include="View\Master\SchulbegleitenderDienstMasterView.xaml.cs">
<DependentUpon>SchulbegleitenderDienstMasterView.xaml</DependentUpon>

View File

@@ -1063,7 +1063,7 @@ namespace BeWo.SchulbegleitenderDienst
//Rufe hier ein Neues Fenster auf das VErschiedenste Settings bearbeitet
//Button ifo =(Button) sender;
var ifo = sender;
//var ifo = sender;
//if (CheckColumnIfFocused())
@@ -1099,7 +1099,7 @@ namespace BeWo.SchulbegleitenderDienst
//if(vertretung.EmployeeOid != 0){
if (_view == null)
{
_view = new SchulbegleitenderDienstBearbeitungsView(1, absenceTime.Start, absenceTime.End, Datepicker.DateTime);
_view = new SchulbegleitenderDienstBearbeitungsView(1, absenceTime.Start, absenceTime.End, Datepicker.DateTime,vertretung.CustomerOid );
_view.RaiseCustomEvent += new EventHandler<CustomEventArgs>(newWindow_RaiseCustomEvent);
_view.ShowDialog();
@@ -1107,7 +1107,7 @@ namespace BeWo.SchulbegleitenderDienst
else
{
_view.Close();
_view = new SchulbegleitenderDienstBearbeitungsView(1, absenceTime.Start, absenceTime.End, Datepicker.DateTime);
_view = new SchulbegleitenderDienstBearbeitungsView(1, absenceTime.Start, absenceTime.End, Datepicker.DateTime, vertretung.CustomerOid);
_view.RaiseCustomEvent += new EventHandler<CustomEventArgs>(newWindow_RaiseCustomEvent);
_view.ShowDialog();
@@ -1170,7 +1170,7 @@ namespace BeWo.SchulbegleitenderDienst
if (_view == null)
{
_view = new SchulbegleitenderDienstBearbeitungsView(1, a.StartD, a.EndD, Datepicker.DateTime);
_view = new SchulbegleitenderDienstBearbeitungsView(1, a.StartD, a.EndD, Datepicker.DateTime,a.Klientoid);
_view.RaiseCustomEvent += new EventHandler<CustomEventArgs>(newWindow_RaiseCustomEvent);
_view.ShowDialog();
@@ -1178,7 +1178,7 @@ namespace BeWo.SchulbegleitenderDienst
else
{
_view.Close();
_view = new SchulbegleitenderDienstBearbeitungsView(1, a.StartD, a.EndD, Datepicker.DateTime);
_view = new SchulbegleitenderDienstBearbeitungsView(1, a.StartD, a.EndD, Datepicker.DateTime, a.Klientoid);
_view.RaiseCustomEvent += new EventHandler<CustomEventArgs>(newWindow_RaiseCustomEvent);
_view.ShowDialog();
@@ -1228,6 +1228,7 @@ namespace BeWo.SchulbegleitenderDienst
Notice = a.Beschreibung
};
AbsenceTimeDC abstime = new AbsenceTimeDC()
{
AbsenceTimeOid = a.AbsenceTimeDC.AbsenceTimeOid,
@@ -1813,8 +1814,8 @@ namespace BeWo.SchulbegleitenderDienst
GetAllVertretungenOnLoad(Datepicker.DateTime.Date);
}
//Arbeiten verrichten
//den gegebenheiten Anpassen
private void GridViewBase_OnRowUpdated(object sender, RowEventArgs e)
{
var a = (SchulbegleitenderDienst) GridDataControlTagesansicht.SelectedItem;
@@ -1838,6 +1839,7 @@ namespace BeWo.SchulbegleitenderDienst
Notice = a.Beschreibung
};
//?? villeicht nur Vertretungszeitraum wenn Mitarbeiter ist geadded
//if (a.Vertreteroid != 0)
//{
vert.VertretungsZeitraumVon = a.StartD;

View File

@@ -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="600" Width="600" WindowStartupLocation="CenterScreen"
Title="Vertretung auswählen" Height="750" Width="850" WindowStartupLocation="CenterScreen"
ResizeMode="CanResizeWithGrip" WindowStyle="None" Background="Transparent">
<GroupBox Header="Vertretung auswählen" x:Name="rootGroupBox" Style="{DynamicResource MainContentGroupBoxWithoutMaximizeBtnStyle}" MouseLeftButtonDown="RootGroupBox_OnMouseLeftButtonDown" >
@@ -33,39 +33,139 @@
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="100"/>
<RowDefinition Height="150"/>
<RowDefinition Height="150"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<GroupBox Header="WunschKriterien" Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3" >
<GroupBox Header="Klient 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 / Cobobox zur auswahl der tokens und TextBox zur anzeige der ausgewählten tokens -->
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<controls:NullItemComboBox Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="3" x:Name="ComboBoxWunschAuswahl" SelectionChanged="ComboBoxWunschAuswahl_OnSelected" Width="200" Height="23" Visibility="Collapsed" />
<TextBox Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="3" Margin="3" x:Name="TBoxWunschAnzeige" MinHeight="50" TextWrapping="Wrap" Width="200" IsReadOnly="True" />
</Grid>
</GroupBox>
<GroupBox Header="AusschlussKriterien" Grid.Row="0" Grid.Column="2" Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3">
<GroupBox Header="Klient 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 -->
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<controls:NullItemComboBox Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="3" x:Name="ComboBoxAussschlussAuswahl" SelectionChanged="ComboBoxAussschlussAuswahl_OnSelected" Width="200" Height="23" Visibility="Collapsed"/>
<TextBox Grid.Row="1" Margin="3" Grid.Column="0" Grid.ColumnSpan="3" x:Name="TBoxAussschlussAnzeige" Width="200" MinHeight="50" TextWrapping="Wrap" IsReadOnly="True"/>
</Grid>
</GroupBox>
<GroupBox Header="Geschlecht" Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3">
<WrapPanel Orientation="Horizontal">
<RadioButton Content="männlich" GroupName="Geschlecht" Margin="3,3,3,3"/>
<RadioButton Content="weiblich" GroupName="Geschlecht" Margin="3,3,3,3"/>
<GroupBox Header="Mitarbeiter Wunsch Kriterien" Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}" >
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<controls:NullItemComboBox Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="3" x:Name="ComboBoxMitarbeiterWunschAuswahl" SelectionChanged="ComboBoxMitarbeiterWunschAuswahl_OnSelectionChanged" Width="200" Height="23" />
<TextBox Grid.Row="1" Margin="3" Grid.Column="0" Grid.ColumnSpan="3" x:Name="TBoxMitarbeiterWunschAnzeige" Width="200" MinHeight="50" TextWrapping="Wrap" IsReadOnly="True"/>
</Grid>
</GroupBox>
<GroupBox Header="Mitarbeiter Ausschluss Kriterien" Grid.Row="1" Grid.Column="2" Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}" >
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<controls:NullItemComboBox Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="3" x:Name="ComboBoxMitarbeiterAussschlussAuswahl" SelectionChanged="ComboBoxMitarbeiterAussschlussAuswahl_OnSelectionChanged" Width="200" Height="23" />
<TextBox Grid.Row="1" Margin="3" Grid.Column="0" Grid.ColumnSpan="3" x:Name="TBoxMitarbeiterAussschlussAnzeige" Width="200" MinHeight="50" TextWrapping="Wrap" IsReadOnly="True"/>
</Grid>
</GroupBox>
<GroupBox Header="Geschlecht" Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2" 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>
<GroupBox Grid.Column="2" Grid.Row="1" Grid.ColumnSpan="2" Margin="3,3,3,3" Style="{StaticResource ObjectEditGroupBox}" Header="Klienten PLZ">
<GroupBox Grid.Column="2" Grid.Row="2" Grid.ColumnSpan="2" Margin="3,3,3,3" Style="{StaticResource ObjectEditGroupBox}" Header="Klienten PLZ">
<WrapPanel Orientation="Horizontal">
<Label Margin="3,3,3,3">PLZ: </Label>
<TextBox x:Name="PlzKlient" Height="20" Width="50" MaxLength="5" Margin="3,3,3,3" VerticalContentAlignment="Center" />
<Label Margin="3,3,3,3">PLZ: </Label>
<!-- Combobox unter TextBox positionieren und -->
<!--<ComboBox x:name="jfwj" Visibility="Collapsed" Selected="Selector_OnSelected" IsEditable="True" />-->
<TextBox x:Name="PlzKlient" Height="23" Width="50" MaxLength="5" Margin="3,3,3,3" VerticalContentAlignment="Center" TextChanged="PlzKlient_OnTextChanged" />
<!--hier combobox mit umkreis 5 10 15 20 25 km anzeigen-->
<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"/>
</WrapPanel>
</GroupBox>
</Grid>
<!-- ############################################################################################################## -->
<!-- ######################################################################Checked="ToggleButtonMaennlich_OnChecked" ## Checked="ToggleButtonWeiblich_OnChecked" ###################################### -->
@@ -107,7 +207,7 @@
<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"
MaskUseAsDisplayFormat="True" InvalidValueBehavior="AllowLeaveEditor"
Height="23" Grid.ColumnSpan="2" Visibility="Visible" Width="75"
Margin="3,3,3,3"/>
@@ -136,8 +236,14 @@
<dxg:GridControl.Columns >
<dxg:GridColumn FieldName="Name" Width="125" ReadOnly="True" Header="Name"/>
<dxg:GridColumn FieldName="Adress" Width="125" ReadOnly="True" Header="Adresse"/>
<dxg:GridColumn FieldName="Arbeitszeit" Width="125" ReadOnly="True" Header="Arbeitzeit"/>
<dxg:GridColumn FieldName="Arbeitszeit" MinWidth="60" ReadOnly="True" Header="Arbeitzeit"/>
<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="75" ReadOnly="True" Header="Stadt" />
<dxg:GridColumn FieldName="Geschlecht" Width="75" ReadOnly="True" Header="Geschlecht" />
</dxg:GridControl.Columns>
<dxg:GridControl.View>

View File

@@ -18,10 +18,13 @@ 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;
@@ -36,6 +39,8 @@ using DevExpress.XtraPrinting.Native;
using DevExpress.XtraPrinting.XamlExport;
using Microsoft.Office.Interop.Word;
using Color = System.Drawing.Color;
using MessageBox = System.Windows.MessageBox;
using TextBox = System.Windows.Controls.TextBox;
namespace BeWo.SchulbegleitenderDienst
{
@@ -52,15 +57,34 @@ namespace BeWo.SchulbegleitenderDienst
private List<SearchViewDaten> _dataListEmployee = new List<SearchViewDaten>();
public SchulbegleitenderDienstBearbeitungsView(int y, DateTime? startdate, DateTime? enddate, DateTime currentDate)
private SchulbegleitenderZugehörigkeitsTyp zugehoerigkeitsTyp;
private readonly long? _klientOid = 10;
List<SearchViewDaten> aktuelleDaten = new List<SearchViewDaten>();
List<SearchViewDaten> alleMitarbeiterDaten = new List<SearchViewDaten>();
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 SchulbegleitenderDienstBearbeitungsView(int y, DateTime? startdate, DateTime? enddate, DateTime currentDate, long? klientOid) // oid muss mitgegeben werden
{
InitializeComponent();
GetAllTokensAndSetAll();
rootGroupBox.Header += " / " + currentDate.ToString("dddd dd.MM.yyyy");
_startDate = startdate;
_endDate = enddate;
//_klientOid = klientOid;
if (_startDate != null)
KVDatepickerVon.EditValue = _startDate;
@@ -87,6 +111,18 @@ namespace BeWo.SchulbegleitenderDienst
//rootGroupBoxKlient.Visibility = Visibility.Visible;
}
//################ UmkreisErmittler ################
List<String> woaa = new List<string> { "5 km", "10 km", "15 km", "20 km", "25 km" };
ComboBoxUmkreisExtender.ItemsSource = woaa;
//##################################################
//typ muss noch übergeben werden
zugehoerigkeitsTyp = SchulbegleitenderZugehörigkeitsTyp.Klient;
}
@@ -147,6 +183,7 @@ namespace BeWo.SchulbegleitenderDienst
private void OrdenerieThings()
{
_dataListEmployee.Clear();
//popup_MitarbeiterVertretung.IsOpen = false;
//MitarbeiterVertretungsearchview.ItemSelected -= MitarbeiterVertretungsearchview_MitarbeiterVertretungSelected;
@@ -160,7 +197,7 @@ namespace BeWo.SchulbegleitenderDienst
//popupedit_MitarbeiterVertretungSearch.Focus();
foreach (var emp in employeeList)
{
@@ -176,14 +213,17 @@ namespace BeWo.SchulbegleitenderDienst
}
}
}
var geschlecht = emp.Geschlecht == Sex.Male ? "Männlich" : "Weiblich";
_dataListEmployee.Add(
new SearchViewDaten(emp.FirstName + " " + emp.LastName, emp.PersonAdressInfo, arbeitszeitEintrag, emp));
new SearchViewDaten(emp.FirstName + " " + emp.LastName, emp.PersonAdressPLZ, emp.PersonAdressStr, emp.PersonAdressStadt, arbeitszeitEintrag, emp, geschlecht));
}
GridDataControlMitarbeiterVertretungsearchview.ItemsSource = _dataListEmployee;
aktuelleDaten = _dataListEmployee;
alleMitarbeiterDaten = _dataListEmployee;
}
#endregion
@@ -305,6 +345,469 @@ namespace BeWo.SchulbegleitenderDienst
//#######################################################################
//######################## Postalcode Range Extender
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");
//PlzKlient mit erweiterter umkreis auswahl.
//const Erdradius = 6371000; Konstante in metern
//
//// 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));
// 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;
//Entfernung := Round(
// 2 * ErdradiusKm *
// arcsin(
// sqrt(
// sqr(x1 - x2)
// + sqr(y1 - y2)
// + sqr(z1 - z2)
// ) / (2 * ErdradiusKm)
// )
// * 1000
// );
}
}
//########################################################################
private void PlzKlient_OnTextChanged(object sender, TextChangedEventArgs e)
{
// hier der bereich zum neu entwickeln
bool ruecksetzpunkt = false;
List<SearchViewDaten> ndaten = new List<SearchViewDaten>();
foreach (var daten in alleMitarbeiterDaten)
{
if(daten.Postleitzahl != null){
if (daten.Postleitzahl.StartsWith(PlzKlient.Text))
{
ndaten.Add(daten);
}
}
if (daten.Postleitzahl != null && PlzKlient.Text.Length == 0)
{
if (!ruecksetzpunkt)
ruecksetzpunkt = true;
}
}
if (ruecksetzpunkt)
{
GridDataControlMitarbeiterVertretungsearchview.ItemsSource = alleMitarbeiterDaten;
//aktuelleDaten = alleMitarbeiterDaten;
}
else
{
GridDataControlMitarbeiterVertretungsearchview.ItemsSource = ndaten;
// aktuelleDaten = ndaten;
}
GridDataControlMitarbeiterVertretungsearchview.RefreshData();
GridDataControlMitarbeiterVertretungsearchview.RefreshUI();
// 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;
//}
}
private void ComboBoxUmkreisExtender_OnSelected(object sender, RoutedEventArgs e)
{
var item = sender as NullItemComboBox;
int umkreis = 0;
if (item != null && item.SelectedItem != null)
{
string[] ahh = item.SelectedItem.ToString().Split(' ');
umkreis = Convert.ToInt32(ahh[0]);
}
ErmittlePlzBereich(PlzKlient.Text, umkreis);
}
//private void Selector_OnSelected(object sender, RoutedEventArgs e)
//{
// throw new NotImplementedException();
//}
private void ComboBoxWunschAuswahl_OnSelected(object sender, RoutedEventArgs e)
{
var item = sender as NullItemComboBox;
if (item.SelectedItem != null && !item.SelectedItem.ToString().Equals(""))
{
TBoxWunschAnzeige.Text += item.SelectedItem + "; ";
ComboBoxWunschAuswahl.SelectedIndex = 0;
// SortMitarbeiterliste();
}
}
private void ComboBoxAussschlussAuswahl_OnSelected(object sender, RoutedEventArgs e)
{
var item = sender as NullItemComboBox;
if (item.SelectedItem != null && !item.SelectedItem.ToString().Equals(""))
{
TBoxAussschlussAnzeige.Text += item.SelectedItem + "; ";
ComboBoxAussschlussAuswahl.SelectedIndex = 0;
// SortMitarbeiterliste();
}
}
public void GetAllTokensAndSetAll()
{
var x = ServiceFacade.DoOperationsServiceSync(r => r.GetAllTokens(SchulbegleitenderZugehörigkeitsTyp.Klient, _klientOid));
List<string> wunschliste = new List<string>();
List<string> ausschlussliste = new List<string>();
foreach (var token in x)
{
if(token.MemberOid == _klientOid){
if (token.TokenTyp == TokenTyp.WunschKriterium)
{
wunschliste.Add(token.Beschreibung);
TBoxWunschAnzeige.Text += token.Beschreibung + "; ";
}
if (token.TokenTyp == TokenTyp.AusschlussKriterium)
{
ausschlussliste.Add(token.Beschreibung);
TBoxAussschlussAnzeige.Text += token.Beschreibung + "; ";
}
}
}
LoadMitarbeiterKriterien();
}
private void LoadMitarbeiterKriterien()
{
verfuegbareW.Clear();
gesetzteW.Clear();
verfuegbareA.Clear();
gesetzteA.Clear();
var x =
ServiceFacade.DoOperationsServiceSync(
r => r.GetAllTokens(SchulbegleitenderZugehörigkeitsTyp.Mitarbeiter, 0));
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);
}
}
ComboBoxMitarbeiterWunschAuswahl.ItemsSource = wunschliste;
ComboBoxMitarbeiterAussschlussAuswahl.ItemsSource = ausschlussliste;
}
private void ComboBoxMitarbeiterAussschlussAuswahl_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
{
var token = ComboBoxMitarbeiterAussschlussAuswahl.SelectedItem as string;
if(token != null)
TBoxMitarbeiterAussschlussAnzeige.Text += token + "; ";
foreach (var item in verfuegbareA)
{
if (item.Key == token)
{
if(!gesetzteA.ContainsKey(token))
gesetzteA.Add(token,item.Value);
}
}
SortMitarbeiterliste();
}
private void ComboBoxMitarbeiterWunschAuswahl_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
{
var token = ComboBoxMitarbeiterWunschAuswahl.SelectedItem as string;
if(token != null)
TBoxMitarbeiterWunschAnzeige.Text += token + "; ";
foreach (var item in verfuegbareW)
{
if (item.Key == token)
{
if(!gesetzteW.ContainsKey(token))
gesetzteW.Add(token, item.Value);
}
}
SortMitarbeiterliste();
}
public void SortMitarbeiterliste()
{
List<SearchViewDaten> nSVD = new List<SearchViewDaten>();
//hole die liste aller Employee2Token
var x = ServiceFacade.DoOperationsServiceSync(r => r.GetEmployee2TokenList());
//bool isAusschluss = false; // rausnehmen sobald das faxen macht
foreach (var daten in alleMitarbeiterDaten)
{
foreach (var item in x)
{
if (daten.EmployeeDC.EmployeeOid == item.Employee.EmployeeOid)
{
//noch anpassen weil bei ausschluss equal soll der emp nicht übernommen werden oder??
foreach (var gesA in gesetzteA)
{
if (item.Token.TokenOid == gesA.Value.TokenOid)
{
//if(!nSVD.Contains(daten))
nSVD.Add(daten); // --> original muss wieder rein
// 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;
//}
}
}
}
GridDataControlMitarbeiterVertretungsearchview.ItemsSource = nSVD;
GridDataControlMitarbeiterVertretungsearchview.RefreshData();
GridDataControlMitarbeiterVertretungsearchview.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<SearchViewDaten> newItems = new List<SearchViewDaten>();
// 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);
}
}
}
GridDataControlMitarbeiterVertretungsearchview.ItemsSource = newItems;
GridDataControlMitarbeiterVertretungsearchview.RefreshData();
GridDataControlMitarbeiterVertretungsearchview.RefreshUI();
}
}
public class CustomEventArgs : EventArgs
@@ -370,16 +873,25 @@ namespace BeWo.SchulbegleitenderDienst
public class SearchViewDaten
{
public string Name { get; set; }
public string Adress { get; set; }
public string Postleitzahl { get; set; }
public string Straße { get; set; }
public string Stadt { get; set; }
public string Geschlecht { get; set; }
public string Arbeitszeit { get; set; }
public CompactVertreterEmployeeDC EmployeeDC{ get; set; }
public SearchViewDaten(string name, string adresse, string arbeitszeit, CompactVertreterEmployeeDC empdc)
public SearchViewDaten(string name, string postleitzahl, string strasse, string stadt, string arbeitszeit, CompactVertreterEmployeeDC empdc,string geschlecht)
{
Name = name;
Adress = adresse;
Postleitzahl = postleitzahl;
Straße = strasse;
Stadt = stadt;
Arbeitszeit = arbeitszeit;
EmployeeDC = empdc;
Geschlecht = geschlecht;
}

View File

@@ -522,6 +522,11 @@ namespace BeWo.ServiceProxy
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IEmployeeService/GetAllActiveVertreterEmployeesCompactBeWoFaul" +
"tFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
System.Collections.Generic.List<BS.Shared.DataContracts.Compact.CompactVertreterEmployeeDC> GetAllActiveVertreterEmployeesCompact();
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IEmployeeService/LoadEmployeeTokenRelationsByOid", ReplyAction="http://tempuri.org/IEmployeeService/LoadEmployeeTokenRelationsByOidResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IEmployeeService/LoadEmployeeTokenRelationsByOidBeWoFaultFault" +
"", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
System.Collections.Generic.List<BS.Shared.DataContracts.EmployeeTokenRelationDC> LoadEmployeeTokenRelationsByOid(System.Collections.Generic.List<long> pOids);
}
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
@@ -977,6 +982,11 @@ namespace BeWo.ServiceProxy
{
return base.Channel.GetAllActiveVertreterEmployeesCompact();
}
public System.Collections.Generic.List<BS.Shared.DataContracts.EmployeeTokenRelationDC> LoadEmployeeTokenRelationsByOid(System.Collections.Generic.List<long> pOids)
{
return base.Channel.LoadEmployeeTokenRelationsByOid(pOids);
}
}
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
@@ -1289,6 +1299,11 @@ namespace BeWo.ServiceProxy
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/ICustomerService/GetPersonForOrganisationsBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
System.Collections.Generic.List<BS.Shared.DataContracts.Compact.CompactPersonDC> GetPersonForOrganisations(long organisationoid);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ICustomerService/LoadCustomerTokenRelationsByOid", ReplyAction="http://tempuri.org/ICustomerService/LoadCustomerTokenRelationsByOidResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/ICustomerService/LoadCustomerTokenRelationsByOidBeWoFaultFault" +
"", 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/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);
@@ -2048,6 +2063,11 @@ namespace BeWo.ServiceProxy
return base.Channel.GetPersonForOrganisations(organisationoid);
}
public System.Collections.Generic.List<BS.Shared.DataContracts.CustomerTokenRelationDC> LoadCustomerTokenRelationsByOid(System.Collections.Generic.List<long> pOids)
{
return base.Channel.LoadCustomerTokenRelationsByOid(pOids);
}
public void ArchiveCustomer(long pOid, long pVersion)
{
base.Channel.ArchiveCustomer(pOid, pVersion);
@@ -4205,6 +4225,30 @@ namespace BeWo.ServiceProxy
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/UpdateAbsenceTimeBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
void UpdateAbsenceTime(BS.Shared.DataContracts.AbsenceTimeDC abs);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/GetAllTokens", ReplyAction="http://tempuri.org/IOperationsService/GetAllTokensResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/GetAllTokensBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
System.Collections.Generic.List<BS.Shared.DataContracts.TokenDC> GetAllTokens(BS.Shared.SchulbegleitenderZugehörigkeitsTyp zugehoerigkeitsTyp, System.Nullable<long> oid);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/DeleteToken", ReplyAction="http://tempuri.org/IOperationsService/DeleteTokenResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/DeleteTokenBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
void DeleteToken(BS.Shared.DataContracts.TokenDC token);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/InsertNewToken", ReplyAction="http://tempuri.org/IOperationsService/InsertNewTokenResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/InsertNewTokenBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
void InsertNewToken(string beschreibung, BS.Shared.TokenTyp typ, BS.Shared.SchulbegleitenderZugehörigkeitsTyp zugehoerigkeitsTyp, System.Nullable<long> oid);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/UpdateToken", ReplyAction="http://tempuri.org/IOperationsService/UpdateTokenResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/UpdateTokenBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
void UpdateToken(BS.Shared.DataContracts.TokenDC token);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/GetCustomer2TokenList", ReplyAction="http://tempuri.org/IOperationsService/GetCustomer2TokenListResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/GetCustomer2TokenListBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
System.Collections.Generic.List<BS.Shared.DataContracts.CustomerTokenRelationDC> GetCustomer2TokenList();
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/GetEmployee2TokenList", ReplyAction="http://tempuri.org/IOperationsService/GetEmployee2TokenListResponse")]
[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/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);
@@ -4950,6 +4994,36 @@ namespace BeWo.ServiceProxy
base.Channel.UpdateAbsenceTime(abs);
}
public System.Collections.Generic.List<BS.Shared.DataContracts.TokenDC> GetAllTokens(BS.Shared.SchulbegleitenderZugehörigkeitsTyp zugehoerigkeitsTyp, System.Nullable<long> oid)
{
return base.Channel.GetAllTokens(zugehoerigkeitsTyp, oid);
}
public void DeleteToken(BS.Shared.DataContracts.TokenDC token)
{
base.Channel.DeleteToken(token);
}
public void InsertNewToken(string beschreibung, BS.Shared.TokenTyp typ, BS.Shared.SchulbegleitenderZugehörigkeitsTyp zugehoerigkeitsTyp, System.Nullable<long> oid)
{
base.Channel.InsertNewToken(beschreibung, typ, zugehoerigkeitsTyp, oid);
}
public void UpdateToken(BS.Shared.DataContracts.TokenDC token)
{
base.Channel.UpdateToken(token);
}
public System.Collections.Generic.List<BS.Shared.DataContracts.CustomerTokenRelationDC> GetCustomer2TokenList()
{
return base.Channel.GetCustomer2TokenList();
}
public System.Collections.Generic.List<BS.Shared.DataContracts.EmployeeTokenRelationDC> GetEmployee2TokenList()
{
return base.Channel.GetEmployee2TokenList();
}
public void DeactivateInvoices(System.Collections.Generic.List<BS.Shared.DataContracts.InvoiceDC> invoices)
{
base.Channel.DeactivateInvoices(invoices);

View File

@@ -1017,7 +1017,7 @@ namespace BeWo.View.Detail
{
if (tabitem_schuldienst.Content == null)
{
tabitem_schuldienst.Content = new SchulbegleitenderDienstCustomer(TableID.Customer, ViewModel.DataContract.CustomerOid.Value);
tabitem_schuldienst.Content = new SchulbegleitenderDienst(TableID.Customer, ViewModel.DataContract.CustomerOid.Value,SchulbegleitenderZugehörigkeitsTyp.Klient);
}
}

View File

@@ -692,6 +692,8 @@
<TabItem Header="Chat Service" Name="tabitem_chatservice" Selector.Selected="tabitem_chatservice_Selected" />
<TabItem Header="Schulbegleitender Dienst" Name="tabitem_schuldienst" Selector.Selected="tabitem_SchulDienst_Selected" />
</TabControl>
<Border Grid.Row="2" Grid.ColumnSpan="3" Height="40" Margin="0,10,0,0" VerticalAlignment="Stretch" Background="#FF000000">
<Border.OpacityMask>

View File

@@ -464,6 +464,14 @@ namespace BeWo.View.Detail
}
}
private void tabitem_SchulDienst_Selected(object sender, RoutedEventArgs e)
{
if (tabitem_schuldienst.Content == null)
{
tabitem_schuldienst.Content = new SchulbegleitenderDienst(TableID.Customer, ViewModel.DataContract.EmployeeOid.Value,SchulbegleitenderZugehörigkeitsTyp.Mitarbeiter);
}
}
private void button_addContract_Click(object sender, RoutedEventArgs e)
{
ViewModel.Contracts.AddNewVMToList();

View File

@@ -0,0 +1,107 @@
<localView:BeWoView x:Class="BeWo.View.SchulbegleitenderDienst"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:localView="clr-namespace:BeWo.View"
xmlns:localViewModel="clr-namespace:BeWo.ViewModel"
xmlns:uc="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
Height="Auto" Width="Auto" HorizontalAlignment="Stretch"
xmlns:diagnostics="clr-namespace:System.Diagnostics;assembly=WindowsBase"
VerticalAlignment="Stretch" Focusable="True">
<Grid>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<GroupBox Grid.ColumnSpan="2" Padding="5" Style="{StaticResource ObjectEditGroupBox}" Header="Schulbegleitender Dienst">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<GroupBox Header="Ausschlusskriterien" Grid.Column="0" Grid.ColumnSpan="2" Grid.Row="0" >
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Label Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" HorizontalAlignment="Center" >Hier Kommt später von Dxe grid Controll Ausschlusskriterien hin </Label>
<ComboBox x:Name="ComboAusschluss" Width="125" Height="23" Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" SelectionChanged="ComboAusschluss_OnSelected"/>
<StackPanel Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2" Orientation="Horizontal" Margin="3" HorizontalAlignment="Center">
<TextBox Width="125" Height="23" Margin="3" x:Name="TextBoxAusschluss"/>
<Button Height="23" Width="75" Content="Absenden" Click="ButtonAusschlussKriterium_OnClick"/>
</StackPanel>
<TextBox Grid.Row="3" Grid.Column="0" Grid.ColumnSpan="3" IsReadOnly="True" x:Name="TbShowAusschluss" MinHeight="50" MinWidth="150" />
</Grid>
</GroupBox>
<GroupBox Header="Wunschkriterien" Grid.Column="0" Grid.ColumnSpan="2" Grid.Row="1" >
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Label Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" HorizontalAlignment="Center" Margin="3">Hier Kommt später von Dxe grid Controll Wunschkriterien hin </Label>
<ComboBox x:Name="ComboWunsch" Width="125" Height="23" Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" Margin="3" SelectionChanged="ComboWunsch_OnSelected"/>
<StackPanel Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2" Orientation="Horizontal" Margin="3" HorizontalAlignment="Center">
<TextBox Width="125" Height="23" Margin="3" x:Name="TextBoxWunsch" />
<Button Width="75" Content="Absenden" Margin="3" Height="23" Click="ButtonWunschKriterium_OnClick"/>
</StackPanel>
<TextBox Grid.Row="3" Grid.Column="0" Grid.ColumnSpan="3" IsReadOnly="True" x:Name="TbShowWunsch" MinHeight="50" MinWidth="150" />
</Grid>
</GroupBox>
</Grid>
</GroupBox>
</Grid>
</Grid>
</localView:BeWoView>

View File

@@ -0,0 +1,254 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Windows;
using System.Windows.Controls.Primitives;
using System.Windows.Documents;
using System.Windows.Forms;
using System.Windows.Forms.VisualStyles;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Navigation;
using System.Windows.Threading;
using BeWo.Core;
using BeWo.Core.Service;
using BeWo.ViewModel;
using BeWo.ServiceProxy;
using BeWo.View.Detail;
using BS.Shared.DataContracts;
using BS.Shared.Extensions;
using BS.Shared;
using BS.Shared.Core;
using Microsoft.Win32;
using CheckBox = System.Windows.Controls.CheckBox;
using MessageBox = System.Windows.MessageBox;
namespace BeWo.View
{
public partial class SchulbegleitenderDienst
{
private CustomerVM _ViewModel;
private List<TokenDC> tokenlist = new List<TokenDC>();
// private List<TokenDC> tokenMitarbeiterlist = new List<TokenDC>();
// TableID tableid;
//long? customerOid = 0;
long? Oid = 0;
private SchulbegleitenderZugehörigkeitsTyp zugehoerigkeitsTyp;
public SchulbegleitenderDienst(TableID pObjectTid, long? oid,SchulbegleitenderZugehörigkeitsTyp typ)
{
InitializeComponent();
zugehoerigkeitsTyp = typ;
Oid = oid;
//if (typ == SchulbegleitenderZugehörigkeitsTyp.Klient)
//{
// customerOid = oid;
//}
//else if (typ == SchulbegleitenderZugehörigkeitsTyp.Mitarbeiter)
//{
// employeeOid = oid;
//}
GetAllTokenItems();
//tableid = pObjectTid;
//LaodInfostoView();
}
public CustomerVM PublicViewModel { get { return _ViewModel; } }
public override bool IsDirty
{
get
{
return ViewModel != null && ViewModel.IsDirty;
}
}
private CustomerVM ViewModel
{
get { return _ViewModel; }
set
{
DataContext = value;
_ViewModel = value;
}
}
private void GetAllTokenItems()
{
tokenlist.Clear();
tokenlist = ServiceFacade.DoOperationsServiceSync(r => r.GetAllTokens(zugehoerigkeitsTyp,Oid));
SetAusschlussKriterien();
SetWunschKriterien();
}
private void SetAusschlussKriterien()
{
TbShowAusschluss.Text = "";
List<string> list = new List<string>();
if (tokenlist != null)
{
foreach (var token in tokenlist)
{
if (token.TokenTyp == TokenTyp.AusschlussKriterium && token.MemberOid == Oid)
{
//list.Add(token.Beschreibung);
TbShowAusschluss.Text += token.Beschreibung + "; ";
}
else if (token.TokenTyp == TokenTyp.AusschlussKriterium)
{
list.Add(token.Beschreibung);
}
}
}
ComboAusschluss.ItemsSource = list;
}
private void SetWunschKriterien()
{
TbShowWunsch.Text = "";
List<string> list = new List<string>();
if (tokenlist != null)
{
foreach (var token in tokenlist)
{
if (token.TokenTyp == TokenTyp.WunschKriterium && token.MemberOid == Oid)
{
//list.Add(token.Beschreibung); // entfernen weik bereits ehältlich
TbShowWunsch.Text += token.Beschreibung + "; ";
}
else if(token.TokenTyp == TokenTyp.WunschKriterium)
{
list.Add(token.Beschreibung);
}
}
}
ComboWunsch.ItemsSource = list;
}
//TODO Speicher Button Aktivieren
/* private bool DoSaveCheck()
{
Cache.GetInstance().GetActiveSupportConceptCostbearer(scList =>
VMFactory.CreateServiceRecordVMAsync(
BeWoApp.LoggedOnUser.Employee.EmployeeOid,
vm => this.Dispatch(
delegate
{
ChatServiceCustomer newView = new ChatServiceCustomer(tableid, customerOid);
if (newView.CommandBindings.Count == 0)
{
newView.CommandBindings.Add(
new CommandBinding(
ApplicationCommands.Close,
(s, e) =>
{
if (!newView.DoSaveCheck())
{
return;
}
}));
newView.CommandBindings.Add(
new CommandBinding(
ApplicationCommands.Save,
(s, e) =>
{
bool save = true;
if (!save)
{
return;
}
newView.SaveData();
}));
}
})));
}
*/
private void ButtonWunschKriterium_OnClick(object sender, RoutedEventArgs e)
{
var token = TextBoxWunsch.Text;
ServiceFacade.DoOperationsServiceSync(r => r.InsertNewToken(token, TokenTyp.WunschKriterium, zugehoerigkeitsTyp,Oid));
TextBoxWunsch.Text = "";
GetAllTokenItems();
}
private void ButtonAusschlussKriterium_OnClick(object sender, RoutedEventArgs e)
{
var token = TextBoxAusschluss.Text;
// ist der Token Verfügbar dann soll dieser eine neue verbindung zum Employee aufbauen
// Hat der Employee bereits diesen Token dann soll dieser nicht mehr zur auswahl bei der Selection stehen
// zu test zwecken
//if ()
//{
//}
ServiceFacade.DoOperationsServiceSync(r => r.InsertNewToken(token, TokenTyp.AusschlussKriterium,zugehoerigkeitsTyp,Oid));
TextBoxAusschluss.Text = "";
GetAllTokenItems();
}
private void ComboAusschluss_OnSelected(object sender, RoutedEventArgs e)
{
//Test
var tokendc = ComboAusschluss.SelectedItem as string;
TextBoxAusschluss.Text = tokendc;
}
private void ComboWunsch_OnSelected(object sender, RoutedEventArgs e)
{
//Test
var tokendc = ComboWunsch.SelectedItem as string;
TextBoxWunsch.Text = tokendc;
}
}
}

View File

@@ -1,59 +0,0 @@
<localView:BeWoView x:Class="BeWo.View.SchulbegleitenderDienstCustomer"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:localView="clr-namespace:BeWo.View"
xmlns:localViewModel="clr-namespace:BeWo.ViewModel"
xmlns:uc="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
Height="Auto" Width="Auto" HorizontalAlignment="Stretch"
xmlns:diagnostics="clr-namespace:System.Diagnostics;assembly=WindowsBase"
VerticalAlignment="Stretch" Focusable="True">
<Grid>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<GroupBox Grid.ColumnSpan="2" Padding="5" Style="{StaticResource ObjectEditGroupBox}" Header="Schulbegleitender Dienst">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<GroupBox Header="Ausschlusskriterien" Grid.Column="0" Grid.ColumnSpan="2" Grid.Row="0" >
<Label>Hier Kommt später von Dxe grid Controll Ausschlusskriterien hin </Label>
</GroupBox>
<GroupBox Header="Wunschkriterien" Grid.Column="0" Grid.ColumnSpan="2" Grid.Row="1" >
<Label>Hier Kommt später von Dxe grid Controll Wunschkriterien hin </Label>
</GroupBox>
</Grid>
</GroupBox>
</Grid>
</Grid>
</localView:BeWoView>

View File

@@ -1,123 +0,0 @@
using System;
using System.IO;
using System.Linq;
using System.Windows;
using System.Windows.Controls.Primitives;
using System.Windows.Documents;
using System.Windows.Forms;
using System.Windows.Forms.VisualStyles;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Navigation;
using System.Windows.Threading;
using BeWo.Core;
using BeWo.Core.Service;
using BeWo.ViewModel;
using BeWo.ServiceProxy;
using BeWo.View.Detail;
using BS.Shared.DataContracts;
using BS.Shared.Extensions;
using BS.Shared;
using BS.Shared.Core;
using Microsoft.Win32;
using CheckBox = System.Windows.Controls.CheckBox;
using MessageBox = System.Windows.MessageBox;
namespace BeWo.View
{
public partial class SchulbegleitenderDienstCustomer
{
private CustomerVM _ViewModel;
// TableID tableid;
long? customerOid;
public SchulbegleitenderDienstCustomer(TableID pObjectTid, long? oid)
{
InitializeComponent();
customerOid = oid;
// tableid = pObjectTid;
//LaodInfostoView();
}
public CustomerVM PublicViewModel { get { return _ViewModel; } }
public override bool IsDirty
{
get
{
return ViewModel != null && ViewModel.IsDirty;
}
}
private CustomerVM ViewModel
{
get { return _ViewModel; }
set
{
DataContext = value;
_ViewModel = value;
}
}
//TODO Speicher Button Aktivieren
/* private bool DoSaveCheck()
{
Cache.GetInstance().GetActiveSupportConceptCostbearer(scList =>
VMFactory.CreateServiceRecordVMAsync(
BeWoApp.LoggedOnUser.Employee.EmployeeOid,
vm => this.Dispatch(
delegate
{
ChatServiceCustomer newView = new ChatServiceCustomer(tableid, customerOid);
if (newView.CommandBindings.Count == 0)
{
newView.CommandBindings.Add(
new CommandBinding(
ApplicationCommands.Close,
(s, e) =>
{
if (!newView.DoSaveCheck())
{
return;
}
}));
newView.CommandBindings.Add(
new CommandBinding(
ApplicationCommands.Save,
(s, e) =>
{
bool save = true;
if (!save)
{
return;
}
newView.SaveData();
}));
}
})));
}
*/
}
}

View File

@@ -0,0 +1,106 @@
using BeWo.Validation;
using BS.Shared.Core;
using BS.Shared.DataContracts;
using BS.Shared.DataContracts.Compact;
using BS.Shared.Extensions;
namespace BeWo.ViewModel
{
public class CustomerTokenRelationVM : AbstractDCMapperVM<CustomerTokenRelationDC>
{
//public static string PropertyName_Notice = "Notice";
public static string PropertyName_Token = "Token";
public static string PropertyName_TokenString = "TokenString";
public static string PropertyName_Customer = "Customer";
//private string _Notice;
private CompactTokenDC _Token;
private CustomerDC _Customer;
public CustomerTokenRelationVM(CustomerTokenRelationDC pDC) : base(pDC, pDC.Customer2TokenOid == null) { }
//public string Notice
//{
// get { return _Notice; }
// set
// {
// if (AreDifferent(_Notice, value))
// {
// _Notice = value;
// StoreDirtyInformation(AreDifferent(DataContract.Customer2TokenNotice, value), PropertyName_Notice);
// FirePropertyChanged(PropertyName_Notice);
// }
// }
//}
public CompactTokenDC Token
{
get { return _Token; }
set
{
if (AreDifferent(_Token, value))
{
_Token = value;
StoreDirtyInformation(AreDifferent(DataContract.Token, value), PropertyName_Token);
FirePropertyChanged(PropertyName_Token);
FirePropertyChanged(PropertyName_TokenString);
}
}
}
public CustomerDC Customer
{
get { return _Customer; }
set
{
if (AreDifferent(_Customer, value))
{
_Customer = value;
StoreDirtyInformation(AreDifferent(DataContract.Customer, value), PropertyName_Customer);
FirePropertyChanged(PropertyName_Customer);
}
}
}
[Validation(ValidationRule = ValidationRules.NotNullOrStringEmpty)]
public string TokenString
{
get { return _Token.ToStringNullCheck(); } // Validation Workaround
set { }
}
protected override void InitByDataContract(CustomerTokenRelationDC pDataContract)
{
if (!IsNew)
{
//_Notice = pDataContract.Customer2TokenNotice;
_Token = pDataContract.Token;
_Customer = pDataContract.Customer;
}
}
protected override CustomerTokenRelationDC MapToDataContract(CustomerTokenRelationDC pDataContract, bool doCommit)
{
//pDataContract.Customer2TokenNotice = _Notice;
pDataContract.Token = _Token;
pDataContract.Customer = _Customer;
return pDataContract;
}
}
}

View File

@@ -0,0 +1,108 @@
using BeWo.Validation;
using BS.Shared.Core;
using BS.Shared.DataContracts;
using BS.Shared.DataContracts.Compact;
using BS.Shared.Extensions;
namespace BeWo.ViewModel
{
public class EmployeeTokenRelationVM : AbstractDCMapperVM<EmployeeTokenRelationDC>
{
//public static string PropertyName_Notice = "Notice";
public static string PropertyName_Token = "Token";
public static string PropertyName_Employee = "Employee";
public static string PropertyName_TokenString = "TokenString";
//private string _Notice;
private CompactTokenDC _Token;
private EmployeeDC _Employee;
public EmployeeTokenRelationVM(EmployeeTokenRelationDC pDC) : base(pDC, pDC.Employee2TokenOid == null) { }
//public string Notice
//{
// get { return _Notice; }
// set
// {
// if (AreDifferent(_Notice, value))
// {
// _Notice = value;
// StoreDirtyInformation(AreDifferent(DataContract.Customer2TokenNotice, value), PropertyName_Notice);
// FirePropertyChanged(PropertyName_Notice);
// }
// }
//}
public CompactTokenDC Token
{
get { return _Token; }
set
{
if (AreDifferent(_Token, value))
{
_Token = value;
StoreDirtyInformation(AreDifferent(DataContract.Token, value), PropertyName_Token);
FirePropertyChanged(PropertyName_Token);
FirePropertyChanged(PropertyName_TokenString);
}
}
}
public EmployeeDC Employee
{
get { return _Employee; }
set
{
if (AreDifferent(_Employee, value))
{
_Employee = value;
StoreDirtyInformation(AreDifferent(DataContract.Employee, value), PropertyName_Employee);
FirePropertyChanged(PropertyName_Employee);
}
}
}
[Validation(ValidationRule = ValidationRules.NotNullOrStringEmpty)]
public string TokenString
{
get { return _Token.ToStringNullCheck(); } // Validation Workaround
set { }
}
protected override void InitByDataContract(EmployeeTokenRelationDC pDataContract)
{
if (!IsNew)
{
//_Notice = pDataContract.Customer2TokenNotice;
_Token = pDataContract.Token;
_Employee = pDataContract.Employee;
}
}
protected override EmployeeTokenRelationDC MapToDataContract(EmployeeTokenRelationDC pDataContract, bool doCommit)
{
//pDataContract.Customer2TokenNotice = _Notice;
pDataContract.Token = _Token;
pDataContract.Employee = _Employee;
return pDataContract;
}
}
}

47
BeWo/ViewModel/TokenVM.cs Normal file
View File

@@ -0,0 +1,47 @@
using BS.Shared;
using BS.Shared.DataContracts;
using System;
namespace BeWo.ViewModel
{
public class TokenVM : AbstractDCMapperVM<TokenDC>
{
public static string PropertyName_Beschreibung = "VertretungsZeitraumVon";
private string _Beschreibung;
public TokenVM(TokenDC pDC)
: base(pDC, true)
{
}
public string Beschreibung
{
get { return this._Beschreibung; }
set
{
if (this.AreDifferent(this._Beschreibung, value))
{
this._Beschreibung = value;
this.StoreDirtyInformation(this.AreDifferent(this.DataContract.Beschreibung, value), PropertyName_Beschreibung);
this.FirePropertyChanged(PropertyName_Beschreibung);
}
}
}
protected override void InitByDataContract(TokenDC pDataContract)
{
this._Beschreibung = pDataContract.Beschreibung;
}
protected override TokenDC MapToDataContract(TokenDC pDataContract, bool doCommit)
{
pDataContract.Beschreibung = _Beschreibung;
return pDataContract;
}
}
}

View File

@@ -162,6 +162,9 @@
<Compile Include="Entities\Arbeitszeit.cs" />
<Compile Include="Entities\ArbeitszeitEintrag.cs" />
<Compile Include="Entities\ArbeitszeitListe.cs" />
<Compile Include="Entities\Customer2Token.cs" />
<Compile Include="Entities\Employee2Token.cs" />
<Compile Include="Entities\Token.cs" />
<Compile Include="Entities\VertretungsListe.cs" />
<Compile Include="Entities\Kriterien.cs" />
<Compile Include="Entities\Vertretung.cs" />
@@ -560,6 +563,11 @@
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="ICD10\icd10gm2012syst_claml_20110923.xml" />
<EmbeddedResource Include="Mappings\Employee2Token.hbm.xml" />
<EmbeddedResource Include="Mappings\Customer2Token.hbm.xml" />
<EmbeddedResource Include="Mappings\Token.hbm.xml">
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="Mappings\ArbeitszeitEintrag.hbm.xml">
<SubType>Designer</SubType>
</EmbeddedResource>

View File

@@ -51,7 +51,7 @@ namespace BeWo.Data.Entities
public static string PropertyName_Pflegegrad = "Pflegegrad";
public static string PropertyName_IsMigrant = "IsMigrant";
public static string PropertyName_Nationalitaet = "Nationalitaet";
public static string PropertyName_AufenthaltsStatus = "AufenthaltsStatus";
public static string PropertyName_AufenthaltsStatus = "AufenthaltsStatus";
private Auszahlungsintervall _Auszahlungsintervall;
@@ -95,7 +95,7 @@ namespace BeWo.Data.Entities
private IList<Merkzeichen> _MerkzeichenListe;
private IList<Behinderungsart> _BehinderungsartenListe;
private string _CustomerAlias;
private Pflegegrad? _Pflegegrad;
private Pflegegrad? _Pflegegrad;
public Customer()

View File

@@ -0,0 +1,53 @@
using System.Collections.Generic;
using BS.Shared;
namespace BeWo.Data.Entities
{
public class Customer2Token : BeWoEntityBase
{
public static string PropertyName_Token = "Token";
public static string PropertyName_Customer = "Customer";
private Token _Token;
private Customer _Customer;
public Customer2Token()
{
this._Tid = TableID.Customer2Token;
}
public virtual Token Token
{
get
{
return this._Token;
}
set
{
if (this.AreDifferent(this._Token, value))
{
this._Token = value;
}
}
}
public virtual Customer Customer
{
get
{
return this._Customer;
}
set
{
if (this.AreDifferent(this._Customer, value))
{
this._Customer = value;
}
}
}
}
}

View File

@@ -0,0 +1,56 @@
using System.Collections.Generic;
using BS.Shared;
namespace BeWo.Data.Entities
{
public class Employee2Token : BeWoEntityBase
{
public static string PropertyName_Token = "Token";
public static string PropertyName_Employee = "Employee";
private Token _Token;
private Employee _Employee;
public Employee2Token()
{
this._Tid = TableID.Employee2Token;
}
public virtual Token Token
{
get
{
return this._Token;
}
set
{
if (this.AreDifferent(this._Token, value))
{
this._Token = value;
}
}
}
public virtual Employee Employee
{
get
{
return this._Employee;
}
set
{
if (this.AreDifferent(this._Employee, value))
{
this._Employee = value;
}
}
}
}
}

108
Data/Entities/Token.cs Normal file
View File

@@ -0,0 +1,108 @@
using BS.Shared;
using System;
using System.Collections.Generic;
namespace BeWo.Data.Entities
{
public class Token : BeWoEntityBase
{
public static string PropertyName_Beschreibung = "Beschreibung";
public static string PropertyName_TokenTyp = "TokenTyp";
public static string PropertyName_MemberOid = "MemberOid";
private string _Beschreibung;
private TokenTyp? _TokenTyp;
private IList<Employee2Token> _Employee2TokenList;
private IList<Customer2Token> _Customer2TokenList;
private long? _MemberOid;
public Token()
{
this._Tid = TableID.Token;
}
public virtual string Beschreibung
{
get
{
return this._Beschreibung;
}
set
{
if (this.AreDifferent(this._Beschreibung, value))
{
this._Beschreibung = value;
}
}
}
public virtual TokenTyp? TokenTyp
{
get
{
return this._TokenTyp;
}
set
{
if (this.AreDifferent(this._TokenTyp, value))
{
this._TokenTyp = value;
}
}
}
public virtual IList<Employee2Token> Employee2TokenList
{
get { return _Employee2TokenList ?? (_Employee2TokenList = new List<Employee2Token>()); }
set
{
if (AreDifferent(_Employee2TokenList, value))
{
_Employee2TokenList = value;
}
}
}
public virtual IList<Customer2Token> Customer2TokenList
{
get { return _Customer2TokenList ?? (_Customer2TokenList = new List<Customer2Token>()); }
set
{
if (AreDifferent(_Customer2TokenList, value))
{
_Customer2TokenList = value;
}
}
}
public virtual long? MemberOid
{
get
{
return _MemberOid;
}
set
{
if (AreDifferent(_MemberOid, value))
{
_MemberOid = value;
}
}
}
}
}

View File

@@ -30,6 +30,11 @@ namespace BeWo.Data.Entities
private long? _AbsenceTimeOid;
public Vertretung()
{
this._Tid = TableID.Vertretung;
}
public virtual DateTime VertretungsZeitraumVon
{
get

View File

@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="BeWo.Data.Entities.Customer2Token,BeWo.Data" table="customer2token">
<id name="Oid" column="Oid" type="Int64" unsaved-value="null">
<generator class="identity" />
</id>
<version type="Int64" column="Version" name="Version" />
<property column="Tid" type="BS.Shared.TableID, BS.Shared" name="_Tid" access="field" />
<property column="Notice" type="String" name="Notice" length="1024" />
<property column="InsTs" type="DateTime" name="InsTs" />
<property column="InsUser" type="String" name="InsUser" length="256" />
<property column="UdpUser" type="String" name="UdpUser" length="256" />
<property column="IsActive" type="BS.Shared.ActivationTypeId, BS.Shared" name="IsActive" />
<property column="SystemEntryID" type="BS.Shared.SystemEntryID, BS.Shared" name="SystemEntryID" />
<many-to-one name="Token" column="TokenOid" class="BeWo.Data.Entities.Token,BeWo.Data" cascade="none" />
<many-to-one name="Customer" column="CustomerOid" class="BeWo.Data.Entities.Customer,BeWo.Data" cascade="none" />
</class>
</hibernate-mapping>

View File

@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="BeWo.Data.Entities.Employee2Token,BeWo.Data" table="employee2token">
<id name="Oid" column="Oid" type="Int64" unsaved-value="null">
<generator class="identity" />
</id>
<version type="Int64" column="Version" name="Version" />
<property column="Tid" type="BS.Shared.TableID, BS.Shared" name="_Tid" access="field" />
<property column="Notice" type="String" name="Notice" length="1024" />
<property column="InsTs" type="DateTime" name="InsTs" />
<property column="InsUser" type="String" name="InsUser" length="256" />
<property column="UdpUser" type="String" name="UdpUser" length="256" />
<property column="IsActive" type="BS.Shared.ActivationTypeId, BS.Shared" name="IsActive" />
<property column="SystemEntryID" type="BS.Shared.SystemEntryID, BS.Shared" name="SystemEntryID" />
<many-to-one name="Token" column="TokenOid" class="BeWo.Data.Entities.Token,BeWo.Data" cascade="none" />
<many-to-one name="Employee" column="EmployeeOid" class="BeWo.Data.Entities.Employee,BeWo.Data" cascade="none" />
</class>
</hibernate-mapping>

View File

@@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="BeWo.Data.Entities.Token,BeWo.Data" table="token">
<id name="Oid" column ="Oid" unsaved-value="null">
<generator class="identity" />
</id>
<version type="Int64" column="Version" name="Version" />
<property name="InsTs" />
<property name="InsUser" />
<property column="Tid" type="BS.Shared.TableID, BS.Shared" name="_Tid" access="field" />
<property name="UdpUser" />
<property name="IsActive" type="BS.Shared.ActivationTypeId, BS.Shared" />
<property name="SystemEntryID" type="BS.Shared.SystemEntryID, BS.Shared" />
<property name="Notice" column="Notice" length="1024" />
<property name="Beschreibung" column="Beschreibung" />
<property column="Typ" type="BS.Shared.TokenTyp, BS.Shared" name="TokenTyp" />
<bag name="Employee2TokenList" table="employee2token" generic="true" cascade="all-delete-orphan" batch-size="250">
<key column="TokenOid" />
<one-to-many class="BeWo.Data.Entities.Employee2Token,BeWo.Data" />
</bag>
<bag name="Customer2TokenList" table="customer2token" generic="true" cascade="all-delete-orphan" batch-size="250">
<key column="TokenOid" />
<one-to-many class="BeWo.Data.Entities.Customer2Token,BeWo.Data" />
</bag>
</class>
</hibernate-mapping>

View File

@@ -0,0 +1,58 @@
CREATE TABLE `1234567890`.`token` (
`Oid` BIGINT(19) NOT NULL AUTO_INCREMENT COMMENT '',
`Tid` INT(10) NULL COMMENT '',
`Notice` VARCHAR(1024) NULL COMMENT '',
`InsTs` DATETIME NULL COMMENT '',
`InsUser` VARCHAR(1024) NULL COMMENT '',
`Version` BIGINT(19) NULL COMMENT '',
`UdpUser` VARCHAR(256) NULL COMMENT '',
`isActive` TINYINT(4) NULL COMMENT '',
`SystemEntryID` INT(10) NULL COMMENT '',
`Beschreibung` VARCHAR(1024) NULL COMMENT '',
`Typ` TINYINT(4) NULL COMMENT '',
PRIMARY KEY (`Oid`) COMMENT '');
CREATE TABLE `1234567890`.`customer2token` (
`Oid` BIGINT(19) NOT NULL AUTO_INCREMENT COMMENT '',
`CustomerOid` BIGINT(19) NULL COMMENT '',
`TokenOid` BIGINT(19) NULL COMMENT '',
`Tid` INT(10) NULL COMMENT '',
`Notice` VARCHAR(1024) NULL COMMENT '',
`InsTs` DATETIME NULL COMMENT '',
`InsUser` VARCHAR(1024) NULL COMMENT '',
`Version` BIGINT(19) NULL COMMENT '',
`UdpUser` VARCHAR(256) NULL COMMENT '',
`isActive` TINYINT(4) NULL COMMENT '',
`SystemEntryID` INT(10) NULL COMMENT '',
PRIMARY KEY (`Oid`) COMMENT '');
CREATE TABLE `1234567890`.`employee2token` (
`Oid` BIGINT(19) NOT NULL AUTO_INCREMENT COMMENT '',
`EmployeeOid` BIGINT(19) NULL COMMENT '',
`TokenOid` BIGINT(19) NULL COMMENT '',
`Tid` INT(10) NULL COMMENT '',
`Notice` VARCHAR(1024) NULL COMMENT '',
`InsTs` DATETIME NULL COMMENT '',
`InsUser` VARCHAR(1024) NULL COMMENT '',
`Version` BIGINT(19) NULL COMMENT '',
`UdpUser` VARCHAR(256) NULL COMMENT '',
`isActive` TINYINT(4) NULL COMMENT '',
`SystemEntryID` INT(10) NULL COMMENT '',
PRIMARY KEY (`Oid`) COMMENT '');

View File

@@ -52,6 +52,7 @@
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
<Reference Include="WindowsBase" />
</ItemGroup>
<ItemGroup>
<Compile Include="AdikMitarbeiterstundenkontoBerechnung.cs" />

View File

@@ -97,6 +97,7 @@
</Reference>
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
<Reference Include="WindowsBase" />
</ItemGroup>
<ItemGroup>
<Compile Include="Finanzauswertung.cs">

View File

@@ -52,6 +52,7 @@
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
<Reference Include="WindowsBase" />
</ItemGroup>
<ItemGroup>
<Compile Include="Export\CustomDataExporter.cs" />

View File

@@ -52,6 +52,7 @@
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
<Reference Include="WindowsBase" />
</ItemGroup>
<ItemGroup>
<Compile Include="Properties\AssemblyInfo.cs" />

View File

@@ -52,6 +52,7 @@
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
<Reference Include="WindowsBase" />
</ItemGroup>
<ItemGroup>
<Compile Include="Calculations\DefaultSaveInterceptor.cs" />

View File

@@ -56,6 +56,7 @@
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
<Reference Include="WindowsBase" />
</ItemGroup>
<ItemGroup>
<Compile Include="Invoicing\CustomInvoiceCreation.cs" />

View File

@@ -94,6 +94,7 @@
</Reference>
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
<Reference Include="WindowsBase" />
</ItemGroup>
<ItemGroup>
<Compile Include="SozPsychErfassungBeratungRO.cs" />

View File

@@ -53,6 +53,7 @@
<Reference Include="System.Data" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml" />
<Reference Include="WindowsBase" />
</ItemGroup>
<ItemGroup>
<Compile Include="Calculation\CustomGroupDurationCalculator.cs" />

View File

@@ -52,6 +52,7 @@
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
<Reference Include="WindowsBase" />
</ItemGroup>
<ItemGroup>
<Compile Include="Calculations\SewoServiceRecordStatisticFactory.cs" />

View File

@@ -0,0 +1,34 @@
using BeWo.Data.Access;
using BeWo.Data.Entities;
using System.Linq;
using BS.Shared.DataContracts.Compact;
namespace BeWo.Service.DCEntityMapper
{
public class CompactTokenDC_Token : AbstractIDCEntityMapper<Token, CompactTokenDC>
{
public override CompactTokenDC MergeWithDC(Token pEntity, CompactTokenDC pDataContract)
{
pDataContract.TokenOid = pEntity.Oid;
pDataContract.Beschreibung = pEntity.Beschreibung;
pDataContract.ActivationType = pEntity.IsActive;
pDataContract.CustomerOids = pEntity.Customer2TokenList.Select(c => c.Customer.Oid.Value).ToList();
pDataContract.EmployeeOids = pEntity.Employee2TokenList.Select(c => c.Employee.Oid.Value).ToList();
return pDataContract;
}
// COMPACT Wohnheim ARE NOT EDITABLE
public override Token MergeWithEntity(CompactTokenDC pDataContract, Token pEntity)
{
return DAOFactory.GenericDAO.LoadByID<Token>(pDataContract.TokenOid.Value);
}
protected override bool AreDCAndEntityEqual(CompactTokenDC pDC, Token pEntity)
{
return pDC.TokenOid == pEntity.Oid;
}
}
}

View File

@@ -19,10 +19,14 @@ namespace BeWo.Service.DCEntityMapper
pDataContract.ActivationType = pEntity.IsActive;
pDataContract.ValueListEntries = pEntity.ValueList.ToDictionary(i => i.Entry.Oid.Value, i => i.Entry.Type);
pDataContract.EmployeeColor = pEntity.EmployeeColor;
pDataContract.Geschlecht = pEntity.Person.Sex;
if (pEntity.Person.Address != null)
{
pDataContract.PersonAdressInfo = pEntity.Person.Address.PostalCode + " " + pEntity.Person.Address.Street + " " + pEntity.Person.Address.Town;
pDataContract.PersonAdressStr = pEntity.Person.Address.Street;
pDataContract.PersonAdressPLZ = pEntity.Person.Address.PostalCode;
pDataContract.PersonAdressStadt = pEntity.Person.Address.Town;
}
if(pEntity.Arbeitszeit != null){

View File

@@ -23,7 +23,7 @@ namespace BeWo.Service.DCEntityMapper
pDataContract.RelatedTeams = MapperFactory.TeamCustomerRelDC_Team2CustomerMapper.MapToNewDCs(pEntity.Team2CustomerList);
pDataContract.CostBearers = MapperFactory.CustomerCostBearerRelDC_Customer2CostBearer.MapToNewDCs(pEntity.Customer2CostBearerList);
pDataContract.EnvironmentPersons = MapperFactory.CustomerPersonRelationDC_Customer2Person.MapToNewDCs(pEntity.Customer2PersonList);
pDataContract.EnvironmentOrganisations = MapperFactory.CustomerOrganisationRelationDC_Customer2Organisation.MapToNewDCs(pEntity.Customer2OrganisationList);
pDataContract.EnvironmentOrganisations = MapperFactory.CustomerOrganisationRelationDC_Customer2Organisation.MapToNewDCs(pEntity.Customer2OrganisationList);
//if(pEntity.Jugendamt != null)
// pDataContract.Jugendamt = MapperFactory.CompactOrganisationDC_Organisation.MapToNewDC(pEntity.Jugendamt);
@@ -126,7 +126,7 @@ namespace BeWo.Service.DCEntityMapper
MapperFactory.AbsenceTimeDC_AbsenceTime.MergeWithEntitys(pDataContract.AbsenceTimes, pEntity.AbsenceTimes);
MapperFactory.CustomerPersonRelationDC_Customer2Person.MergeWithEntitys(pDataContract.EnvironmentPersons, pEntity.Customer2PersonList);
MapperFactory.CustomerPersonRelationDC_Customer2Person.MergeWithEntitys(pDataContract.EnvironmentPersons, pEntity.Customer2PersonList);
MapperFactory.CustomerOrganisationRelationDC_Customer2Organisation.MergeWithEntitys(pDataContract.EnvironmentOrganisations, pEntity.Customer2OrganisationList);
pEntity.DistanceInMeter = pDataContract.DistanceInMeter;

View File

@@ -0,0 +1,48 @@
using BeWo.Data.Access;
using BeWo.Data.Entities;
using BS.Shared;
using BS.Shared.DataContracts;
namespace BeWo.Service.DCEntityMapper
{
public class CustomerTokenRelationDC_Customer2Token : AbstractIDCEntityMapper<Customer2Token, CustomerTokenRelationDC>
{
public override CustomerTokenRelationDC MergeWithDC(Customer2Token pEntity, CustomerTokenRelationDC pDataContract)
{
//pDataContract.Customer2TokenNotice = pEntity.Notice;
pDataContract.Customer2TokenOid = pEntity.Oid;
pDataContract.Token = MapperFactory.CompactTokenDC_Token.MapToNewDC(pEntity.Token);
pDataContract.Customer = MapperFactory.CustomerDC_Customer.MapToNewDC(pEntity.Customer);
return pDataContract;
}
public override Customer2Token MergeWithEntity(CustomerTokenRelationDC pDataContract, Customer2Token pEntity)
{
pEntity.Oid = pDataContract.Customer2TokenOid;
if (pDataContract.Token != null){
pEntity.Token = DAOFactory.GenericDAO.LoadByID<Token>(pDataContract.Token.TokenOid.Value);
}
if (pDataContract.Customer != null)
{
pEntity.Customer = DAOFactory.GenericDAO.LoadByID<Customer>(pDataContract.Customer.CustomerOid.Value);
}
return pEntity;
}
protected override bool AreDCAndEntityEqual(CustomerTokenRelationDC pDC, Customer2Token pEntity)
{
if (pDC.Customer2TokenOid == null)
{
return false;
}
return pDC.Customer2TokenOid == pEntity.Oid;
}
}
}

View File

@@ -0,0 +1,51 @@
using BeWo.Data.Access;
using BeWo.Data.Entities;
using BS.Shared;
using BS.Shared.DataContracts;
namespace BeWo.Service.DCEntityMapper
{
public class EmployeeTokenRelationDC_Employee2Token : AbstractIDCEntityMapper<Employee2Token, EmployeeTokenRelationDC>
{
public override EmployeeTokenRelationDC MergeWithDC(Employee2Token pEntity, EmployeeTokenRelationDC pDataContract)
{
//pDataContract.Customer2TokenNotice = pEntity.Notice;
pDataContract.Employee2TokenOid = pEntity.Oid;
pDataContract.Token = MapperFactory.CompactTokenDC_Token.MapToNewDC(pEntity.Token);
pDataContract.Employee = MapperFactory.EmployeeDC_Employee.MapToNewDC(pEntity.Employee);
return pDataContract;
}
public override Employee2Token MergeWithEntity(EmployeeTokenRelationDC pDataContract, Employee2Token pEntity)
{
pEntity.Oid = pDataContract.Employee2TokenOid;
if (pDataContract.Token != null)
{
pEntity.Token = DAOFactory.GenericDAO.LoadByID<Token>(pDataContract.Token.TokenOid.Value);
}
if (pDataContract.Employee != null)
{
pEntity.Employee = DAOFactory.GenericDAO.LoadByID<Employee>(pDataContract.Employee.EmployeeOid.Value);
}
return pEntity;
}
protected override bool AreDCAndEntityEqual(EmployeeTokenRelationDC pDC, Employee2Token pEntity)
{
if (pDC.Employee2TokenOid == null)
{
return false;
}
return pDC.Employee2TokenOid == pEntity.Oid;
}
}
}

View File

@@ -47,6 +47,8 @@ namespace BeWo.Service.DCEntityMapper
private static VertretungDC_Vertretung _VertretungDC_Vertretung;
private static TokenDC_Token _TokenDC_Token;
private static ArbeitszeitDC_Arbeitszeit _ArbeitszeitDC_Arbeitszeit;
private static ArbeitszeitEintragDC_ArbeitszeitEintrag _ArbeitszeitEintragDC_ArbeitszeitEintrag;
@@ -85,6 +87,12 @@ namespace BeWo.Service.DCEntityMapper
private static CustomerPersonRelationDC_Customer2Person _CustomerPersonRelationDC_Customer2Person;
private static CustomerTokenRelationDC_Customer2Token _CustomerTokenRelationDC_Customer2Token;
private static EmployeeTokenRelationDC_Employee2Token _EmployeeTokenRelationDC_Employee2Token;
private static CompactTokenDC_Token _CompactTokenDC_Token;
private static CustomerOrganisationRelationDC_Customer2Organisation _CustomerOrganisationRelationDC_Customer2Organisation;
private static CustomerEmployeeRelDC_Employee2CustomerMapper _EmployeeCustomerRelDC_Employee2CustomerMapper;
@@ -544,6 +552,15 @@ namespace BeWo.Service.DCEntityMapper
}
}
public static TokenDC_Token TokenDC_Token
{
get
{
return _TokenDC_Token ?? (_TokenDC_Token = new TokenDC_Token());
}
}
public static ArbeitszeitDC_Arbeitszeit ArbeitszeitDC_Arbeitszeit
{
get
@@ -703,6 +720,31 @@ namespace BeWo.Service.DCEntityMapper
}
}
public static CustomerTokenRelationDC_Customer2Token CustomerTokenRelationDC_Customer2Token
{
get
{
return _CustomerTokenRelationDC_Customer2Token ?? (_CustomerTokenRelationDC_Customer2Token = new CustomerTokenRelationDC_Customer2Token());
}
}
public static EmployeeTokenRelationDC_Employee2Token EmployeeTokenRelationDC_Employee2Token
{
get
{
return _EmployeeTokenRelationDC_Employee2Token ?? (_EmployeeTokenRelationDC_Employee2Token = new EmployeeTokenRelationDC_Employee2Token());
}
}
public static CompactTokenDC_Token CompactTokenDC_Token
{
get
{
return _CompactTokenDC_Token ?? (_CompactTokenDC_Token = new CompactTokenDC_Token());
}
}
public static CustomerOrganisationRelationDC_Customer2Organisation CustomerOrganisationRelationDC_Customer2Organisation
{
get

View File

@@ -0,0 +1,53 @@
using System.IO;
using BeWo.Data.Entities;
using BS.Shared;
using BS.Shared.DataContracts;
namespace BeWo.Service.DCEntityMapper
{
public class TokenDC_Token : AbstractIDCEntityMapper<Token, TokenDC>
{
public override TokenDC MergeWithDC(Token pEntity, TokenDC pDataContract)
{
pDataContract.RelatedEmployees = MapperFactory.EmployeeTokenRelationDC_Employee2Token.MapToNewDCs(pEntity.Employee2TokenList);
pDataContract.RelatedCustomers = MapperFactory.CustomerTokenRelationDC_Customer2Token.MapToNewDCs(pEntity.Customer2TokenList);
pDataContract.TokenOid = pEntity.Oid;
pDataContract.Beschreibung = pEntity.Beschreibung;
if (pEntity.TokenTyp != null)
{
pDataContract.TokenTyp = pEntity.TokenTyp;
}
pDataContract.MemberOid = pEntity.MemberOid;
return pDataContract;
}
public override Token MergeWithEntity(TokenDC pDataContract, Token pEntity)
{
pEntity.Oid = pDataContract.TokenOid;
pEntity.Beschreibung = pDataContract.Beschreibung;
pEntity.TokenTyp = pDataContract.TokenTyp;
MapperFactory.EmployeeTokenRelationDC_Employee2Token.MergeWithEntitys(pDataContract.RelatedEmployees, pEntity.Employee2TokenList);
MapperFactory.CustomerTokenRelationDC_Customer2Token.MergeWithEntitys(pDataContract.RelatedCustomers, pEntity.Customer2TokenList);
return pEntity;
}
protected override bool AreDCAndEntityEqual(TokenDC pDC, Token pEntity)
{
if (pDC.TokenOid == null)
{
return false;
}
return pDC.TokenOid == pEntity.Oid;
}
}
}

View File

@@ -203,6 +203,7 @@ namespace BeWo.Service.SBD.Vertretung
if (ars.EmployeeOid == emp.EmployeeOid)
{
item.EmployeeName = emp.FirstName + " " + emp.LastName;
item.EmployeeOid = emp.EmployeeOid;
}
foreach (var hauptbetreuung in _schulbegleitenderDienst.Employee2CustomerHauptbetreuung)
@@ -250,10 +251,10 @@ namespace BeWo.Service.SBD.Vertretung
}
}
if (item.Customer.Count != 0)//hier auch employeecount abfragen // bearbeiten
{
//if (item.Customer.Count != 0)//hier auch employeecount abfragen // bearbeiten
//{
vertretungsliste.Add(item);
}
//}
}
@@ -371,6 +372,7 @@ namespace BeWo.Service.SBD.Vertretung
if (ars.EmployeeOid == emp.EmployeeOid)
{
item.EmployeeName = emp.FirstName + " " + emp.LastName;
item.EmployeeOid = emp.EmployeeOid;
}
foreach (var hauptbetreuung in _schulbegleitenderDienst.Employee2CustomerHauptbetreuung)
@@ -418,10 +420,10 @@ namespace BeWo.Service.SBD.Vertretung
}
}
if (item.Customer.Count != 0)//hier auch employeecount abfragen // bearbeiten
{
// if (item.Customer.Count != 0)//hier auch employeecount abfragen // bearbeiten
// {
vertretungsliste.Add(item);
}
// }
}
@@ -434,15 +436,24 @@ namespace BeWo.Service.SBD.Vertretung
{
var startzeit = start.TimeOfDay;
var endzeit = end.TimeOfDay;
// der Zeitraum der Vertretung muss auch überprüft werden.
if (startzeit > VertretEnd.TimeOfDay && endzeit < VertretStart.TimeOfDay)
{
//create new irgendwas
// 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.
}
else
{
//alles gut
}
}

View File

@@ -217,6 +217,10 @@
<Compile Include="DCEntityMapper\ArbeitszeitDC_Arbeitszeit.cs" />
<Compile Include="DCEntityMapper\ArbeitszeitEintragDC_ArbeitszeitEintrag.cs" />
<Compile Include="DCEntityMapper\CompactVertreterEmployeeDC_VertreterEmployee.cs" />
<Compile Include="DCEntityMapper\CustomerTokenRelationDC_Customer2Token.cs" />
<Compile Include="DCEntityMapper\EmployeeTokenRelationDC_Employee2Token.cs" />
<Compile Include="DCEntityMapper\CompactTokenDC_Token.cs" />
<Compile Include="DCEntityMapper\TokenDC_Token.cs" />
<Compile Include="DCEntityMapper\VertretungsListeDC_VertretungsListe.cs" />
<Compile Include="DCEntityMapper\KriterienDC_Kriterien.cs" />
<Compile Include="DCEntityMapper\PasswortVerlaufDC_PasswortVerlauf.cs" />

View File

@@ -636,5 +636,9 @@ namespace BeWo.Service.ServiceContracts
[FaultContract(typeof(BeWoFault))]
[OperationContract]
List<CompactPersonDC> GetPersonForOrganisations(long organisationoid);
[FaultContract(typeof(BeWoFault))]
[OperationContract]
List<CustomerTokenRelationDC> LoadCustomerTokenRelationsByOid(IEnumerable<long> pOids);
}
}

View File

@@ -347,5 +347,9 @@ namespace BeWo.Service.ServiceContracts
[FaultContract(typeof(BeWoFault))]
[OperationContract]
List<CompactVertreterEmployeeDC> GetAllActiveVertreterEmployeesCompact();
[FaultContract(typeof(BeWoFault))]
[OperationContract]
List<EmployeeTokenRelationDC> LoadEmployeeTokenRelationsByOid(IEnumerable<long> pOids);
}
}

View File

@@ -638,5 +638,28 @@ namespace BeWo.Service.ServiceContracts
[OperationContract]
void UpdateAbsenceTime(AbsenceTimeDC abs);
[FaultContract(typeof(BeWoFault))]
[OperationContract]
List<TokenDC> GetAllTokens(SchulbegleitenderZugehörigkeitsTyp zugehoerigkeitsTyp, long? oid);
[FaultContract(typeof(BeWoFault))]
[OperationContract]
void DeleteToken(TokenDC token);
[FaultContract(typeof(BeWoFault))]
[OperationContract]
void InsertNewToken(string beschreibung, TokenTyp typ, SchulbegleitenderZugehörigkeitsTyp zugehoerigkeitsTyp, long? oid);
[FaultContract(typeof(BeWoFault))]
[OperationContract]
void UpdateToken(TokenDC token);
[FaultContract(typeof(BeWoFault))]
[OperationContract]
List<CustomerTokenRelationDC> GetCustomer2TokenList();
[FaultContract(typeof(BeWoFault))]
[OperationContract]
List<EmployeeTokenRelationDC> GetEmployee2TokenList();
}
}

View File

@@ -3432,6 +3432,21 @@ namespace BeWo.Service.ServiceImplementations
return items;
}
public List<CustomerTokenRelationDC> LoadCustomerTokenRelationsByOid(IEnumerable<long> pOids)
{
try
{
var customerTokenRels = DAOFactory.GenericDAO.LoadByIDs<Customer2Token>(pOids);
return MapperFactory.CustomerTokenRelationDC_Customer2Token.MapToNewDCs(customerTokenRels);
}
catch (Exception e)
{
throw Utils.CreateBeWoFaultException(e);
}
}
}
internal struct WohnheimbuchungsIntervallStruct

View File

@@ -1305,5 +1305,21 @@ namespace BeWo.Service.ServiceImplementations
}
}
//####################################
public List<EmployeeTokenRelationDC> LoadEmployeeTokenRelationsByOid(IEnumerable<long> pOids)
{
try
{
var customerTokenRels = DAOFactory.GenericDAO.LoadByIDs<Employee2Token>(pOids);
return MapperFactory.EmployeeTokenRelationDC_Employee2Token.MapToNewDCs(customerTokenRels);
}
catch (Exception e)
{
throw Utils.CreateBeWoFaultException(e);
}
}
}
}

View File

@@ -3876,7 +3876,7 @@ namespace BeWo.Service.ServiceImplementations
}
//Token Bereich für Kriterien
public List<TokenDC> GetAllTokens(SchulbegleitenderZugehörigkeitsTyp zugehoerigkeitsTyp)
public List<TokenDC> GetAllTokens(SchulbegleitenderZugehörigkeitsTyp zugehoerigkeitsTyp, long? oid)
{
try
{
@@ -3892,7 +3892,12 @@ namespace BeWo.Service.ServiceImplementations
{
foreach (var c2t in x)
{
if (item.Oid == c2t.Token.TokenOid)
if (item.Oid == c2t.Token.TokenOid && c2t.Customer.CustomerOid == oid)
{
item.MemberOid = oid;
fToken.Add(item);
}
else if (item.Oid == c2t.Token.TokenOid)
{
fToken.Add(item);
}
@@ -3905,9 +3910,14 @@ namespace BeWo.Service.ServiceImplementations
foreach (var item in token)
{
foreach (var c2t in x)
foreach (var e2t in x)
{
if (item.Oid == c2t.Token.TokenOid)
if (item.Oid == e2t.Token.TokenOid && e2t.Employee.EmployeeOid == oid)
{
item.MemberOid = oid;
fToken.Add(item);
}
else if (item.Oid == e2t.Token.TokenOid)
{
fToken.Add(item);
}
@@ -3942,6 +3952,9 @@ namespace BeWo.Service.ServiceImplementations
{
try
{
// hier überprüfen ob token dc schon vorhanden
// wenn ja tu ne neue verbindung erstellen zwischen token und c2t or e2t
TokenDC token = new TokenDC()
{
Beschreibung = beschreibung,

View File

@@ -122,7 +122,11 @@ namespace BS.Shared
MedRecord = 115,
ChatMessage = 116,
ChatMediaMessage = 117,
NewestChatMessage = 118
NewestChatMessage = 118,
Customer2Token = 119,
Token = 120,
Vertretung = 121,
Employee2Token = 122
}
public enum SystemEntryID
@@ -915,4 +919,16 @@ namespace BS.Shared
ZeiterfassungMitEndDatum,
ZeiterfassungMitMonatJahr
}
public enum TokenTyp
{
AusschlussKriterium,
WunschKriterium
}
public enum SchulbegleitenderZugehörigkeitsTyp
{
Mitarbeiter,
Klient
}
}

View File

@@ -44,7 +44,11 @@ namespace BS.Shared.Core
public static Dictionary<object, String>ZeiterfassungsDauerTranslations;
public static Dictionary<object, String> ServiceRecordFormateTranslations;
public static Dictionary<object, String> ServiceRecordFormateTranslations;
public static Dictionary<object, String> TokenTypTranslations;
public static Dictionary<object, String> SchulbegleitenderZugehörigkeitsTypTranslations;
static EnumTranslations()
{
@@ -657,7 +661,6 @@ namespace BS.Shared.Core
#endregion
#region ServiceRecordFormateTranslations
ServiceRecordFormateTranslations = new Dictionary<object, string>
{
{
@@ -673,6 +676,32 @@ namespace BS.Shared.Core
#endregion
#region TokenTypTranslations
TokenTypTranslations = new Dictionary<object, string>
{
{
TokenTyp.AusschlussKriterium,"AusschlussKriterium"
},
{
TokenTyp.WunschKriterium,"WunschKriterium"
}
};
#endregion
#region SchulbegleitenderZugehörigkeitsTypTranslations
SchulbegleitenderZugehörigkeitsTypTranslations = new Dictionary<object, string>
{
{
SchulbegleitenderZugehörigkeitsTyp.Mitarbeiter,"Mitarbeiter"
},
{
SchulbegleitenderZugehörigkeitsTyp.Klient,"Klienten"
}
};
#endregion
#region ServiceRecordTimeIntervalTranslations
ServiceRecordTimeIntervalTranslations = new Dictionary<object, String>
{

View File

@@ -0,0 +1,31 @@
using System;
using System.Collections.Generic;
using System.Runtime.Serialization;
namespace BS.Shared.DataContracts.Compact
{
[DataContract, Serializable]
public partial class CompactTokenDC : IDataContract
{
[DataMember]
public long? TokenOid { get; set; }
[DataMember]
public string Beschreibung { get; set; }
[DataMember]
public TokenTyp? TokenType { get; set; }
[DataMember]
public ActivationTypeId ActivationType { get; set; }
[DataMember]
public string Notice { get; set; }
[DataMember]
public List<long> CustomerOids { get; set; }
[DataMember]
public List<long> EmployeeOids { get; set; }
}
}

View File

@@ -66,7 +66,16 @@ namespace BS.Shared.DataContracts.Compact
public String EmployeeColor { get; set; }
[DataMember]
public string PersonAdressInfo { get; set; }
public string PersonAdressPLZ { get; set; }
[DataMember]
public string PersonAdressStr { get; set; }
[DataMember]
public string PersonAdressStadt { get; set; }
[DataMember]
public Sex? Geschlecht { get; set; }
[DataMember]
public List<ArbeitszeitDC>Arbeitszeit { get; set; }

View File

@@ -0,0 +1,27 @@
using System.Runtime.Serialization;
using BS.Shared.DataContracts.Compact;
namespace BS.Shared.DataContracts
{
[DataContract]
public partial class CustomerTokenRelationDC : IDataContract
{
[DataMember]
public string Customer2TokenNotice { get; set; }
[DataMember]
public long? Customer2TokenOid { get; set; }
[DataMember]
public long? Customer2TokenVersion { get; set; }
[DataMember]
public CustomerDC Customer { get; set; }
[DataMember]
public CompactTokenDC Token { get; set; }
}
}

View File

@@ -0,0 +1,27 @@
using System.Runtime.Serialization;
using BS.Shared.DataContracts.Compact;
namespace BS.Shared.DataContracts
{
[DataContract]
public partial class EmployeeTokenRelationDC : IDataContract
{
[DataMember]
public string Employee2TokenNotice { get; set; }
[DataMember]
public long? Employee2TokenOid { get; set; }
[DataMember]
public long? Employee2TokenVersion { get; set; }
[DataMember]
public EmployeeDC Employee { get; set; }
[DataMember]
public CompactTokenDC Token { get; set; }
}
}

View File

@@ -0,0 +1,32 @@
using System;
using System.Collections.Generic;
using System.Runtime.Serialization;
namespace BS.Shared.DataContracts
{
[DataContract]
public class TokenDC : IDataContract
{
[DataMember]
public long? TokenOid { get; set; }
[DataMember]
public string Beschreibung { get; set; }
[DataMember]
public string Notice { get; set; }
[DataMember]
public TokenTyp? TokenTyp { get; set; }
[DataMember]
public long? MemberOid { get; set; }
[DataMember]
public List<EmployeeTokenRelationDC> RelatedEmployees { get; set; }
[DataMember]
public List<CustomerTokenRelationDC> RelatedCustomers { get; set; }
}
}

View File

@@ -163,6 +163,7 @@
<Compile Include="DataContracts\Compact\CompactGroupOfPeopleDC.cs" />
<Compile Include="DataContracts\Compact\CompactWohnheimDC.cs" />
<Compile Include="DataContracts\Compact\CompactVertreterEmployeeDC.cs" />
<Compile Include="DataContracts\Compact\CompactTokenDC.cs" />
<Compile Include="DataContracts\CustomerTeamRelationDC.cs" />
<Compile Include="DataContracts\ContractDC.cs" />
<Compile Include="DataContracts\DarreichungsformDC.cs" />
@@ -174,6 +175,9 @@
<Compile Include="DataContracts\ChatMediaMessageDC.cs" />
<Compile Include="DataContracts\ArbeitszeitDC.cs" />
<Compile Include="DataContracts\ArbeitszeitEintragDC.cs" />
<Compile Include="DataContracts\CustomerTokenRelationDC.cs" />
<Compile Include="DataContracts\EmployeeTokenRelationDC.cs" />
<Compile Include="DataContracts\TokenDC.cs" />
<Compile Include="DataContracts\VertretungsListeItemsDC.cs" />
<Compile Include="DataContracts\VertretungsListeDC.cs" />
<Compile Include="DataContracts\KriterienDC.cs" />