diff --git a/BeWo.sln b/BeWo.sln
index 8ec5b989f..dd8525bd0 100644
--- a/BeWo.sln
+++ b/BeWo.sln
@@ -369,6 +369,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BetreuungsBueroScholzReport
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BAPBielefelderAmbulantePflege", "ReportImp\BAPBielefelderAmbulantePflege\BAPBielefelderAmbulantePflege.csproj", "{7A7E980E-447C-444C-B43B-A23A20F52C02}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LebenshilfeMannheimEV", "ReportImp\LebenshilfeMannheimEV\LebenshilfeMannheimEV.csproj", "{0FDF87A6-B39E-4494-AE31-0CE302D8BA80}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|.NET = Debug|.NET
@@ -2728,6 +2730,18 @@ Global
{7A7E980E-447C-444C-B43B-A23A20F52C02}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{7A7E980E-447C-444C-B43B-A23A20F52C02}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{7A7E980E-447C-444C-B43B-A23A20F52C02}.Release|x86.ActiveCfg = Release|Any CPU
+ {0FDF87A6-B39E-4494-AE31-0CE302D8BA80}.Debug|.NET.ActiveCfg = Debug|Any CPU
+ {0FDF87A6-B39E-4494-AE31-0CE302D8BA80}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {0FDF87A6-B39E-4494-AE31-0CE302D8BA80}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {0FDF87A6-B39E-4494-AE31-0CE302D8BA80}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+ {0FDF87A6-B39E-4494-AE31-0CE302D8BA80}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+ {0FDF87A6-B39E-4494-AE31-0CE302D8BA80}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {0FDF87A6-B39E-4494-AE31-0CE302D8BA80}.Release|.NET.ActiveCfg = Release|Any CPU
+ {0FDF87A6-B39E-4494-AE31-0CE302D8BA80}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {0FDF87A6-B39E-4494-AE31-0CE302D8BA80}.Release|Any CPU.Build.0 = Release|Any CPU
+ {0FDF87A6-B39E-4494-AE31-0CE302D8BA80}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+ {0FDF87A6-B39E-4494-AE31-0CE302D8BA80}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+ {0FDF87A6-B39E-4494-AE31-0CE302D8BA80}.Release|x86.ActiveCfg = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -2908,5 +2922,6 @@ Global
{56D310FE-DB98-4EFE-8527-DF94628657F8} = {D8A691C5-146D-4613-86CC-438F02FE9106}
{606566D9-B8B5-4522-A2B4-175F4BCE98DD} = {D8A691C5-146D-4613-86CC-438F02FE9106}
{7A7E980E-447C-444C-B43B-A23A20F52C02} = {D8A691C5-146D-4613-86CC-438F02FE9106}
+ {0FDF87A6-B39E-4494-AE31-0CE302D8BA80} = {D8A691C5-146D-4613-86CC-438F02FE9106}
EndGlobalSection
EndGlobal
diff --git a/BeWo/BeWo.csproj b/BeWo/BeWo.csproj
index a55204e7c..eb3650fc2 100644
--- a/BeWo/BeWo.csproj
+++ b/BeWo/BeWo.csproj
@@ -182,6 +182,10 @@
Designer
MSBuild:Compile
+
+ Designer
+ MSBuild:Compile
+
MSBuild:Compile
Designer
@@ -432,6 +436,10 @@
MSBuild:Compile
Designer
+
+ MSBuild:Compile
+ Designer
+
MSBuild:Compile
Designer
@@ -534,6 +542,9 @@
ProxyLoginView.xaml
+
+ KrankheitsZeitraumView.xaml
+
SchulbegleitenderDienstBearbeitungsView.xaml
@@ -623,7 +634,10 @@
+
+
+
@@ -823,6 +837,9 @@
ChatEmojisView.xaml
+
+ EmployeeArbeitszeitView.xaml
+
SchulbegleitenderDienstCustomer.xaml
diff --git a/BeWo/MainControl.xaml b/BeWo/MainControl.xaml
index 842144f26..30e0bc6bf 100644
--- a/BeWo/MainControl.xaml
+++ b/BeWo/MainControl.xaml
@@ -247,7 +247,7 @@
-
+
diff --git a/BeWo/Scheduler/View/NewSchedulerView.xaml.cs b/BeWo/Scheduler/View/NewSchedulerView.xaml.cs
index 2a0ad8f3c..19af5f7ff 100644
--- a/BeWo/Scheduler/View/NewSchedulerView.xaml.cs
+++ b/BeWo/Scheduler/View/NewSchedulerView.xaml.cs
@@ -1464,8 +1464,6 @@ namespace BeWo.Scheduler.View
OnPropertyChanged("SelectedEmployees");
OnPropertyChanged("SelectedItems");
OnPropertyChanged("ViewModel");
-
- Scheduler.ActiveView.LayoutChanged();
}
//private void ExportAsiCal(object sender, RoutedEventArgs e)
diff --git a/BeWo/Scheduler/ViewModel/NewSchedulerViewModel.cs b/BeWo/Scheduler/ViewModel/NewSchedulerViewModel.cs
index b49b61905..c6b55ce6e 100644
--- a/BeWo/Scheduler/ViewModel/NewSchedulerViewModel.cs
+++ b/BeWo/Scheduler/ViewModel/NewSchedulerViewModel.cs
@@ -30,11 +30,13 @@ namespace BeWo.Scheduler.ViewModel
set
{
if(value != null)
- {
+ {
mActiveAppointmentViewModel = value;
- if(ViewModelChanged != null)
+ if (ViewModelChanged != null)
+ {
ViewModelChanged.Invoke(this, new EventArgs(value));
+ }
}
}
}
diff --git a/BeWo/SchulbegleitenderDienst/KrankheitsZeitraumView.xaml b/BeWo/SchulbegleitenderDienst/KrankheitsZeitraumView.xaml
new file mode 100644
index 000000000..67ced3cb5
--- /dev/null
+++ b/BeWo/SchulbegleitenderDienst/KrankheitsZeitraumView.xaml
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/BeWo/SchulbegleitenderDienst/KrankheitsZeitraumView.xaml.cs b/BeWo/SchulbegleitenderDienst/KrankheitsZeitraumView.xaml.cs
new file mode 100644
index 000000000..35dbf5714
--- /dev/null
+++ b/BeWo/SchulbegleitenderDienst/KrankheitsZeitraumView.xaml.cs
@@ -0,0 +1,88 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Data;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Imaging;
+using System.Windows.Shapes;
+
+namespace BeWo.SchulbegleitenderDienst
+{
+ ///
+ /// Interaktionslogik für KrankheitsZeitraumView.xaml
+ ///
+ public partial class KrankheitsZeitraumView : Window
+ {
+
+ public event EventHandler RaiseCustomEvent;
+ public KrankheitsZeitraumView( DateTime[] Zeitraum)
+ {
+ InitializeComponent();
+
+ DateVon.DateTime = Zeitraum[0];
+ DateBis.DateTime = Zeitraum[1];
+
+ CloseWindow();
+ }
+
+
+ private void RootGroupBox_OnMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
+ {
+ try
+ {
+ DragMove();
+ }
+ catch (Exception)
+ {
+ }
+ }
+
+ public void CloseWindow()
+ {
+ CommandBindings.Add(
+ new CommandBinding(
+ ApplicationCommands.Close,
+ (s, e) =>
+ {
+ Close();
+ }));
+ }
+
+
+
+ public void RaisEvent_OnClick(object sender, RoutedEventArgs e)
+ {
+ string a = DateVon.DateTime.ToString();
+ string b = DateBis.DateTime.ToString();
+
+ string x = a + " - " + b;
+
+ RaiseCustomEvent(this, new KrankheitsEventArgs(x));
+
+ CloseWindow();
+ }
+
+ private void ButtonBase_OnClick(object sender, RoutedEventArgs e)
+ {
+ CloseWindow();
+ }
+ }
+
+ public class KrankheitsEventArgs : EventArgs
+ {
+ public KrankheitsEventArgs(string s)
+ {
+ dc = s;
+ }
+ private string dc;
+ public string Message
+ {
+ get { return dc; }
+ }
+ }
+}
diff --git a/BeWo/SchulbegleitenderDienst/NewSchulbegleitenderDienstView.xaml b/BeWo/SchulbegleitenderDienst/NewSchulbegleitenderDienstView.xaml
index eb88cdc3a..9e76a910a 100644
--- a/BeWo/SchulbegleitenderDienst/NewSchulbegleitenderDienstView.xaml
+++ b/BeWo/SchulbegleitenderDienst/NewSchulbegleitenderDienstView.xaml
@@ -6,8 +6,7 @@
xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
xmlns:dxsch="http://schemas.devexpress.com/winfx/2008/xaml/scheduler"
- xmlns:dxschint="http://schemas.devexpress.com/winfx/2008/xaml/scheduler/internal"
- xmlns:dxschui="clr-namespace:DevExpress.Xpf.Scheduler.Drawing;assembly=DevExpress.Xpf.Scheduler.v13.1"
+ xmlns:dxschint="http://schemas.devexpress.com/winfx/2008/xaml/scheduler/internal"
xmlns:dxscht="http://schemas.devexpress.com/winfx/2008/xaml/scheduler/themekeys"
xmlns:view="clr-namespace:BeWo.Scheduler.View"
xmlns:converter="clr-namespace:BeWo.Converter"
@@ -248,7 +247,7 @@
-
+
-
+
+
-
+
-
+
@@ -368,15 +384,25 @@
+
+
+
-
+
-
+
@@ -384,15 +410,25 @@
+
+
+
-
+
-
+
@@ -400,15 +436,25 @@
+
+
+
-
+
-
+
@@ -416,15 +462,25 @@
+
+
+
-
+
-
+
@@ -432,6 +488,16 @@
+
+
+
@@ -444,10 +510,10 @@
-
+
-
+
-
+
wurde dies denn nicht schon erledigt?? Nur Vertretung
private void DeletPerson_OnClick(object sender, RoutedEventArgs e)
{
if (MessageBox.Show("Möchten Sie die Vertretung wirklich Löschen?", "Vertretung Löschen", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
@@ -924,69 +1516,213 @@ namespace BeWo.SchulbegleitenderDienst
// delet vertretung from oid
VertretungDC vert = new VertretungDC();
- vert = a.VertretungsDC;
-
- ServiceFacade.DoOperationsServiceSync(s => s.DeleteVertretung(vert));
+ if (a.VertretungsDC != null)
+ {
+ vert = a.VertretungsDC;
+ ServiceFacade.DoOperationsServiceSync(s => s.DeleteVertretung(vert.VertretungOid.Value));
+ }
GetAllVertretungenOnLoad(Datepicker.DateTime.Date);
}
}
+
+ // Delet Für Wochenanzeige // ggf die Krankmeldung mit Löschen
+ private void DeletVertretungForWochenanzeige_OnClick(object sender, RoutedEventArgs e)
+ {
+ if (MessageBox.Show("Möchten Sie die Vertretung wirklich Löschen?", "Vertretung Löschen", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
+ {
+ var a = (Wochenansichten)GridDataControlKlientenWochenansicht.SelectedItem;
+
+ foreach (var wochentag in a.vertretungsWoche)
+ {
+ if (wochentag.Key.Equals(deletVertretungsWeek))
+ {
+ deletVertretungsWeek = "";
+
+ foreach (var item in wochentag.Value)
+ {
+ if (item.Key != null)
+ {
+ if (!item.Value.Vertretung.Equals(""))
+ {
+ // ggf die Krankmeldung mit Löschen
+ ServiceFacade.DoOperationsServiceSync(s => s.DeleteVertretung(item.Value.VertretungsDC.VertretungOid.Value));
+
+ GetAllVertretungenOnLoad(Datepicker.DateTime.Date);
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+
+ //Fertig
+ public void DeleteKrankmeldung_OnClick(object sender, RoutedEventArgs e)
+ {
+ if (MessageBox.Show("Möchten Sie die Krankmeldung wirklich Löschen?", "Krankmeldung Löschen", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
+ {
+ var a = (SchulbegleitenderDienst)GridDataControlTagesansicht.SelectedItem;
+
+ Dictionary ahh = new Dictionary();
+ ahh.Add(a.absenceTimeDC.AbsenceTimeOid.Value,a.absenceTimeDC.AbsenceTimeVersion.Value);
+
+ ServiceFacade.DoOperationsServiceSync(s => s.DeactivateAbsenceTime(ahh));
+
+ VertretungDC vert = new VertretungDC();
+
+
+ if (a.VertretungsDC != null)
+ {
+ vert = a.VertretungsDC;
+ ServiceFacade.DoOperationsServiceSync(s => s.DeleteVertretung(vert.VertretungOid.Value));
+ }
+
+ GetAllVertretungenOnLoad(Datepicker.DateTime.Date);
+ }
+ }
+
//############################################################################
+ //#######String mit 2 DateTimes in DateTimes umwandeln #######################
+
+ private DateTime[] StringTo2Date(string StringtoDate)
+ {
+ DateTime[] ahh = new DateTime[2];
+ try
+ {
+ string[] zeitraum = StringtoDate.Split('-');
+
+
+ ahh[0] = DateTime.Parse(zeitraum[0]);
+
+ if (zeitraum.Length != 1)
+ ahh[1] = DateTime.Parse(zeitraum[1]);
+ else
+ ahh[1] = DateTime.Parse(zeitraum[0]);
+
+ }
+ catch (Exception exception)
+ {
+ MessageBox.Show("Es ist ein Fehler beim splitten eines strings aufgetretten");
+ }
+
+
+ return ahh;
+ }
+
+ private void KrankmeldungsZeitraumBearbeitungsView(object sender, RoutedEventArgs e)
+ {
+
+ var a = (SchulbegleitenderDienst)GridDataControlTagesansicht.SelectedItem;
+
+ if (krankView == null)
+ {
+ krankView = new KrankheitsZeitraumView(StringTo2Date(a.KrankheitsZeitraum));
+
+ krankView.RaiseCustomEvent += new EventHandler(newWindowKrankzeitraum_RaiseCustomEvent);
+ krankView.ShowDialog();
+ }
+ else
+ {
+ krankView.Close();
+ krankView = new KrankheitsZeitraumView(StringTo2Date(a.KrankheitsZeitraum));
+
+ krankView.RaiseCustomEvent += new EventHandler(newWindowKrankzeitraum_RaiseCustomEvent);
+ krankView.ShowDialog();
+ }
+
+ }
+
+ private void newWindowKrankzeitraum_RaiseCustomEvent(object sender, KrankheitsEventArgs e)
+ {
+ UpdateKrankheitsZeitraum(e.Message);
+ }
+
+ public void UpdateKrankheitsZeitraum(string KrankheitsZeitraum)
+ {
+ var ab = (SchulbegleitenderDienst)GridDataControlTagesansicht.SelectedItem;
+
+ DateTime[] harray = StringTo2Date(KrankheitsZeitraum);
+
+ ab.absenceTimeDC.Start = harray[0];
+ ab.absenceTimeDC.End = harray[1];
+
+
+ List a = new List();
+
+ a.Add(ab.absenceTimeDC);
+
+ ServiceFacade.DoCustomerServiceSync(s => s.UpdateAbsenceTimes(a));
+
+ GetAllVertretungenOnLoad(Datepicker.DateTime.Date);
+ }
+
//################## Ermögliche save nach änderung am grid ###################
private void GridViewBase_OnRowUpdated(object sender, RowEventArgs e)
{
var a = (SchulbegleitenderDienst) GridDataControlTagesansicht.SelectedItem;
VertretungDC vert = new VertretungDC();
-
- vert = a.VertretungsDC;
+
+ DateTime[] behh = StringTo2Date(a.KrankheitsZeitraum);
+
+ vert.VertretungsZeitraumVon = behh[0];
+ vert.VertretungsZeitraumBis = behh[1];
+
+ if (a.VertretungsDC != null){
+
+ vert = a.VertretungsDC;
+
+ vert.Notice = a.Beschreibung;
+
+ ServiceFacade.DoOperationsServiceSync(s => s.UpdateVertretung(vert , a.AbwesenheitsKategorie));
- vert.Notice = a.Beschreibung;
-
- //das muss in die updateVertretung und absencereason muss dann mit übergeben werden + kreankheitsmeldung und der andere rest
- //vert.AbwesenheitsOid = a.AbwesenheitsKategorie.AbsenceReasonOid;
-
- //noch alle daten übergeben
- //vert.KrankheitsMeldung = a.KrankheitsMeldung;
-
- try
- {
- string[] zeitraum = a.KrankheitsZeitraum.Split('-');
-
- vert.VertretungsZeitraumVon = DateTime.Parse(zeitraum[0]);
- vert.VertretungsZeitraumBis = DateTime.Parse(zeitraum[1]);
+ GetAllVertretungenOnLoad(Datepicker.DateTime.Date);
}
- catch (Exception exception)
+ else
{
- MessageBox.Show("Es ist ein Fehler beim splitten eines strings aufgetretten");
+ var c = ServiceFacade.DoOperationsServiceSync(s => s.CreateVertretung(a.mitarbeiteroid,a.klientoid,a.vertreteroid,a.absenceTimeDC.AbsenceTimeOid.Value,a.Beschreibung,vert.VertretungsZeitraumVon,vert.VertretungsZeitraumBis));
+
+
+ GetAllVertretungenOnLoad(Datepicker.DateTime.Date);
}
-
-
- ServiceFacade.DoOperationsServiceSync(s => s.UpdateVertretung(vert));
-
-
- GetAllVertretungenOnLoad(Datepicker.DateTime.Date);
}
- //Wochenanzeige Save nach änderung am grid
-
+ //Wochenanzeige Save nach änderung am grid // die änderungen weden bei einem change nicht aufgerufen // Dies wird ggf nicht mal benötigt
private void GridViewWochenMitarbeiterBase_OnRowUpdated(object sender, CellValueChangedEventArgs e)
{
- var b = (Wochenansichten)GridDataControlMitarbeiterWochenansicht.SelectedItem;
+ var babsi = (Wochenansichten)GridDataControlMitarbeiterWochenansicht.SelectedItem;
+
+
+ //foreach (var wochen in babsi.vertretungsWoche)
+ //{
+
+ // foreach (var item in wochen.Value)
+ // {
+
+ // if (item.Key == 1)
+ // {
+ // //mache hier den Update kram // ist das überhaupt nötig
+ // }
+ // }
+ //}
+
+
+
+
-
//miess eig. für jede vertretung ein update. / dieser bereiche muss komplett umgeschrieben werden
//************************************************************************************************************
var a = (SchulbegleitenderDienst)GridDataControlTagesansicht.SelectedItem;
VertretungDC vert = new VertretungDC();
vert = a.VertretungsDC;
-
+
vert.Notice = a.Beschreibung;
@@ -996,20 +1732,13 @@ namespace BeWo.SchulbegleitenderDienst
//noch alle daten übergeben
// vert.KrankheitsMeldung = a.KrankheitsMeldung;
- try
- {
- string[] zeitraum = a.KrankheitsZeitraum.Split('-');
+ DateTime[] behh = StringTo2Date(a.KrankheitsZeitraum);
- vert.VertretungsZeitraumVon = DateTime.Parse(zeitraum[0]);
- vert.VertretungsZeitraumBis = DateTime.Parse(zeitraum[1]);
- }
- catch (Exception exception)
- {
- MessageBox.Show("Es ist ein Fehler beim splitten eines strings aufgetretten");
- }
+ vert.VertretungsZeitraumVon = behh[0];
+ vert.VertretungsZeitraumBis = behh[1];
- ServiceFacade.DoOperationsServiceSync(s => s.UpdateVertretung(vert));
+ ServiceFacade.DoOperationsServiceSync(s => s.UpdateVertretung(vert,a.AbwesenheitsKategorie));
GetAllVertretungenOnLoad(Datepicker.DateTime.Date);
@@ -1018,6 +1747,7 @@ namespace BeWo.SchulbegleitenderDienst
}
+ //????? Brauch ich das wirklich
private void GridViewWochenKlientBase_OnRowUpdated(object sender, CellValueChangedEventArgs e)
{
var b = (Wochenansichten)GridDataControlKlientenWochenansicht.SelectedItem;
@@ -1037,20 +1767,12 @@ namespace BeWo.SchulbegleitenderDienst
//noch alle daten übergeben
//vert.KrankheitsMeldung = a.KrankheitsMeldung;
- try
- {
- string[] zeitraum = a.KrankheitsZeitraum.Split('-');
+ DateTime[] behh = StringTo2Date(a.KrankheitsZeitraum);
- vert.VertretungsZeitraumVon = DateTime.Parse(zeitraum[0]);
- vert.VertretungsZeitraumBis = DateTime.Parse(zeitraum[1]);
- }
- catch (Exception exception)
- {
- MessageBox.Show("Es ist ein Fehler beim splitten eines strings aufgetretten");
- }
+ vert.VertretungsZeitraumVon = behh[0];
+ vert.VertretungsZeitraumBis = behh[1];
-
- ServiceFacade.DoOperationsServiceSync(s => s.UpdateVertretung(vert));
+ ServiceFacade.DoOperationsServiceSync(s => s.UpdateVertretung(vert,a.AbwesenheitsKategorie));
GetAllVertretungenOnLoad(Datepicker.DateTime.Date);
@@ -1088,10 +1810,7 @@ namespace BeWo.SchulbegleitenderDienst
}
public void KWWochenAnzeigen()
- {
- //Umbauen
- //DateTime Datelbl.Content
-
+ {
DateTime dt = DateTime.Parse(Datelbl.Content.ToString());
DateTime startdt = dt.FirstDateOfWeek(dt.GetIso8601WeekOfYear());
@@ -1114,14 +1833,25 @@ namespace BeWo.SchulbegleitenderDienst
}
- public void TagesAnzeige()
+ private void TagesAnzeige()
{
DateTime dt = Datepicker.DateTime;
Datelbl.Content = dt.ToString("dddd dd.MM.yyyy");
}
+ //################## Vertretung für Bstimmte Zeiten #################
+ //------------------------- Wochenanzeige Für jeden Tag eine Vertretung ermöglichen ---------------------
+
+
+
+
+ //-------------------------- StundenWeise Vertretung ermöglichen ----------------------------------------
+
+
+
+ //###################################################################
}
#region Connectoren
@@ -1131,6 +1861,19 @@ namespace BeWo.SchulbegleitenderDienst
public class SchulbegleitenderDienst //---> muss durch die VertretungsVM ersetzt weden.
{
public VertretungDC VertretungsDC { get; set; } // ---> Sicherheitsrisiko ??
+
+ //----------------------------------------------------------------
+ public AbsenceTimeDC absenceTimeDC { get; set; } // --> muss das sein ?
+
+
+
+ // KAnnn das nicht weg
+ public long mitarbeiteroid { get; set; }
+ public long klientoid { get; set; }
+ public long vertreteroid { get; set; } // --> Nein muss nicht.
+ //----------------------------------------------------------------
+
+
public string Vertretung { get; set; }
public string Kunde { get; set; }
public string KrankerMitarbeiter { get; set; }
@@ -1139,28 +1882,14 @@ namespace BeWo.SchulbegleitenderDienst
//public string MaFehlzeit { get; set; }
//public string KindFehlzeit { get; set; }
public string KrankheitsZeitraum { get; set; }
+ public string VertretungsZeitraum { get; set; }
public string Beschreibung { get; set; }
//public int ParentId { get; set; }
//public int Oid { get; set; }
//Farbe der Jeweiligen Zeile
public int IsKunde { get; set; }
- //{
- // get
- // {
- // //Bearbeiten, vllt Grid Updaten oder so
- // if (!Kunde.Equals(""))
- // {
- // return 1; //true
- // }
- // else
- // {
- // return 0; //false
- // }
- // }
-
- //}
-
+
public int IsMitarbeiter { get; set; }
//Villeicht mal schauen mal sehen
@@ -1176,16 +1905,34 @@ namespace BeWo.SchulbegleitenderDienst
public class Wochenansichten
{
- public long? VertretungsOid { get; set; }
+ //public long? VertretungsOid { get; set; }
public string MaFrei { get; set; }
public string MaKrank { get; set; }
public string Kind { get; set; }
+
+ //Fürs WPF Klient
public string VertretungMo { get; set; }
public string VertretungDi { get; set; }
public string VertretungMi { get; set; }
public string VertretungDo { get; set; }
public string VertretungFr { get; set; }
public string VertretungSa { get; set; }
+
+ //Fürs WPF Employee
+ public string EingesetztBeiMo { get; set; }
+ public string EingesetztBeiDi { get; set; }
+ public string EingesetztBeiMi { get; set; }
+ public string EingesetztBeiDo { get; set; }
+ public string EingesetztBeiFr { get; set; }
+ public string EingesetztBeiSa { get; set; }
+
+
+ //KlientenView
+ public Dictionary> vertretungsWoche { get; set; }
+
+ //MitarbeiterView
+ public Dictionary> KlientvertretungsWoche { get; set; }
+
}
}
diff --git a/BeWo/SchulbegleitenderDienst/SchulbegleitenderDienstBearbeitungsView.xaml b/BeWo/SchulbegleitenderDienst/SchulbegleitenderDienstBearbeitungsView.xaml
index 9055d4f4b..d44b789c7 100644
--- a/BeWo/SchulbegleitenderDienst/SchulbegleitenderDienstBearbeitungsView.xaml
+++ b/BeWo/SchulbegleitenderDienst/SchulbegleitenderDienstBearbeitungsView.xaml
@@ -7,8 +7,11 @@
Title="Chat Dokumentation" Height="500" Width="800" WindowStartupLocation="CenterScreen"
ResizeMode="CanResizeWithGrip" WindowStyle="None" Background="Transparent">
-
-
+
+
+
+
+
@@ -76,8 +79,36 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/BeWo/SchulbegleitenderDienst/SchulbegleitenderDienstBearbeitungsView.xaml.cs b/BeWo/SchulbegleitenderDienst/SchulbegleitenderDienstBearbeitungsView.xaml.cs
index aa733c133..097c5f85b 100644
--- a/BeWo/SchulbegleitenderDienst/SchulbegleitenderDienstBearbeitungsView.xaml.cs
+++ b/BeWo/SchulbegleitenderDienst/SchulbegleitenderDienstBearbeitungsView.xaml.cs
@@ -42,8 +42,10 @@ namespace BeWo.SchulbegleitenderDienst
public event EventHandler RaiseCustomEvent;
+ public event EventHandler RaiseKlientCustomEvent;
- public SchulbegleitenderDienstBearbeitungsView()
+
+ public SchulbegleitenderDienstBearbeitungsView(int y)
{
InitializeComponent();
@@ -53,6 +55,18 @@ namespace BeWo.SchulbegleitenderDienst
CloseWindow();
+
+
+ if (y == 1)
+ {
+ //y == 1 Mitarbeiterauswahl
+ rootGroupBoxMitarbeiter.Visibility = Visibility.Visible;
+ }else if (y == 2)
+ {
+ //y == 2 Klientenauswahl
+ rootGroupBoxKlient.Visibility = Visibility.Visible;
+ }
+
}
@@ -137,7 +151,10 @@ namespace BeWo.SchulbegleitenderDienst
CompactEmployeeDC x = MitarbeiterVertretungsearchview.SelectedItem;
RaiseCustomEvent(this, new CustomEventArgs(x));
+
+ Close();
}
+
}
//Schließe aktuelles Fenster
@@ -145,6 +162,19 @@ namespace BeWo.SchulbegleitenderDienst
{
Close();
}
+
+ private void ButtonBaseKlient_OnClick(object sender, RoutedEventArgs e)
+ {
+ if (Klientsearchview.SelectedItem != null)
+ {
+ CompactCustomerDC x = Klientsearchview.SelectedItem;
+
+ RaiseKlientCustomEvent(this, new CustomKlientEventArgs(x));
+
+ Close();
+ }
+
+ }
}
public class CustomEventArgs : EventArgs
@@ -159,4 +189,19 @@ namespace BeWo.SchulbegleitenderDienst
get { return dc; }
}
}
+
+ public class CustomKlientEventArgs : EventArgs
+ {
+ private CompactCustomerDC dc;
+
+ public CustomKlientEventArgs(CompactCustomerDC s)
+ {
+ dc = s;
+ }
+
+ public CompactCustomerDC Message
+ {
+ get { return dc; }
+ }
+ }
}
diff --git a/BeWo/ServiceProxy/Generated.cs b/BeWo/ServiceProxy/Generated.cs
index 4c7dc54df..2acf3f27b 100644
--- a/BeWo/ServiceProxy/Generated.cs
+++ b/BeWo/ServiceProxy/Generated.cs
@@ -504,6 +504,10 @@ namespace BeWo.ServiceProxy
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IEmployeeService/GetActiveCompactEmployeeWithOidBeWoFaultFault" +
"", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
BS.Shared.DataContracts.Compact.CompactEmployeeDC GetActiveCompactEmployeeWithOid(long employeeOid);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IEmployeeService/InsertNewArbeitsZeit", ReplyAction="http://tempuri.org/IEmployeeService/InsertNewArbeitsZeitResponse")]
+ [System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IEmployeeService/InsertNewArbeitsZeitBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
+ void InsertNewArbeitsZeit(BS.Shared.DataContracts.ArbeitszeitDC arbeitszeit, BS.Shared.DataContracts.ArbeitszeitEintragDC arbeitszeitEintrag);
}
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
@@ -939,6 +943,11 @@ namespace BeWo.ServiceProxy
{
return base.Channel.GetActiveCompactEmployeeWithOid(employeeOid);
}
+
+ public void InsertNewArbeitsZeit(BS.Shared.DataContracts.ArbeitszeitDC arbeitszeit, BS.Shared.DataContracts.ArbeitszeitEintragDC arbeitszeitEintrag)
+ {
+ base.Channel.InsertNewArbeitsZeit(arbeitszeit, arbeitszeitEintrag);
+ }
}
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
@@ -4141,16 +4150,32 @@ namespace BeWo.ServiceProxy
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/DeleteVertretung", ReplyAction="http://tempuri.org/IOperationsService/DeleteVertretungResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/DeleteVertretungBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
- void DeleteVertretung(BS.Shared.DataContracts.VertretungDC vert);
+ void DeleteVertretung(long vert);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/UpdateVertretung", ReplyAction="http://tempuri.org/IOperationsService/UpdateVertretungResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/UpdateVertretungBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
- void UpdateVertretung(BS.Shared.DataContracts.VertretungDC vert);
+ void UpdateVertretung(BS.Shared.DataContracts.VertretungDC vert, BS.Shared.DataContracts.AbsenceReasonDC absenceReason);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/VertretungsListe", ReplyAction="http://tempuri.org/IOperationsService/VertretungsListeResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/VertretungsListeBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
BS.Shared.DataContracts.VertretungsListeDC VertretungsListe(System.DateTime absenceTime);
+ [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/CreateVertretung", ReplyAction="http://tempuri.org/IOperationsService/CreateVertretungResponse")]
+ [System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/CreateVertretungBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
+ BS.Shared.DataContracts.VertretungDC CreateVertretung(long mitarbeiterOid, long klientenOid, long vertretenderMitarbeiterOid, long absencetimeOid, string notiz, System.DateTime vertretungszeitraumVon, System.DateTime vertretungszeitraumBis);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/DeletAbsenceTime", ReplyAction="http://tempuri.org/IOperationsService/DeletAbsenceTimeResponse")]
+ [System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/DeletAbsenceTimeBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
+ void DeletAbsenceTime(long absenceoid);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/DeactivateAbsenceTime", ReplyAction="http://tempuri.org/IOperationsService/DeactivateAbsenceTimeResponse")]
+ [System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/DeactivateAbsenceTimeBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
+ void DeactivateAbsenceTime(System.Collections.Generic.Dictionary pOid2Version);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/GetAlleArbeitszeiten", ReplyAction="http://tempuri.org/IOperationsService/GetAlleArbeitszeitenResponse")]
+ [System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/GetAlleArbeitszeitenBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
+ BS.Shared.DataContracts.ArbeitszeitListeDC GetAlleArbeitszeiten(long employeeOid);
+
[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 invoices);
@@ -4861,14 +4886,14 @@ namespace BeWo.ServiceProxy
base.Channel.InsertNewKlientenVertretung(vertretungK, absenceReasonOid, krankheitsMeldung);
}
- public void DeleteVertretung(BS.Shared.DataContracts.VertretungDC vert)
+ public void DeleteVertretung(long vert)
{
base.Channel.DeleteVertretung(vert);
}
- public void UpdateVertretung(BS.Shared.DataContracts.VertretungDC vert)
+ public void UpdateVertretung(BS.Shared.DataContracts.VertretungDC vert, BS.Shared.DataContracts.AbsenceReasonDC absenceReason)
{
- base.Channel.UpdateVertretung(vert);
+ base.Channel.UpdateVertretung(vert, absenceReason);
}
public BS.Shared.DataContracts.VertretungsListeDC VertretungsListe(System.DateTime absenceTime)
@@ -4876,6 +4901,26 @@ namespace BeWo.ServiceProxy
return base.Channel.VertretungsListe(absenceTime);
}
+ public BS.Shared.DataContracts.VertretungDC CreateVertretung(long mitarbeiterOid, long klientenOid, long vertretenderMitarbeiterOid, long absencetimeOid, string notiz, System.DateTime vertretungszeitraumVon, System.DateTime vertretungszeitraumBis)
+ {
+ return base.Channel.CreateVertretung(mitarbeiterOid, klientenOid, vertretenderMitarbeiterOid, absencetimeOid, notiz, vertretungszeitraumVon, vertretungszeitraumBis);
+ }
+
+ public void DeletAbsenceTime(long absenceoid)
+ {
+ base.Channel.DeletAbsenceTime(absenceoid);
+ }
+
+ public void DeactivateAbsenceTime(System.Collections.Generic.Dictionary pOid2Version)
+ {
+ base.Channel.DeactivateAbsenceTime(pOid2Version);
+ }
+
+ public BS.Shared.DataContracts.ArbeitszeitListeDC GetAlleArbeitszeiten(long employeeOid)
+ {
+ return base.Channel.GetAlleArbeitszeiten(employeeOid);
+ }
+
public void DeactivateInvoices(System.Collections.Generic.List invoices)
{
base.Channel.DeactivateInvoices(invoices);
diff --git a/BeWo/View/Detail/EmployeeView.xaml b/BeWo/View/Detail/EmployeeView.xaml
index 6efa18f89..973468bbf 100644
--- a/BeWo/View/Detail/EmployeeView.xaml
+++ b/BeWo/View/Detail/EmployeeView.xaml
@@ -686,6 +686,8 @@
+
+
diff --git a/BeWo/View/Detail/EmployeeView.xaml.cs b/BeWo/View/Detail/EmployeeView.xaml.cs
index 54e1988bd..6fe22a6fa 100644
--- a/BeWo/View/Detail/EmployeeView.xaml.cs
+++ b/BeWo/View/Detail/EmployeeView.xaml.cs
@@ -441,6 +441,14 @@ namespace BeWo.View.Detail
}
}
+ private void tabitem_arbeitszeit_Selected(object sender, RoutedEventArgs e)
+ {
+ if (tabitem_arbeitszeit.Content == null)
+ {
+ tabitem_arbeitszeit.Content = new EmployeeArbeitszeitView(TableID.Employee, ViewModel.DataContract.EmployeeOid.Value);
+ }
+ }
+
private void tabitem_chatservice_Selected(object sender, RoutedEventArgs e)
{
if (tabitem_chatservice.Content == null)
diff --git a/BeWo/View/EmployeeArbeitszeitView.xaml b/BeWo/View/EmployeeArbeitszeitView.xaml
new file mode 100644
index 000000000..9bc2d1af8
--- /dev/null
+++ b/BeWo/View/EmployeeArbeitszeitView.xaml
@@ -0,0 +1,206 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/BeWo/View/EmployeeArbeitszeitView.xaml.cs b/BeWo/View/EmployeeArbeitszeitView.xaml.cs
new file mode 100644
index 000000000..4e2f02082
--- /dev/null
+++ b/BeWo/View/EmployeeArbeitszeitView.xaml.cs
@@ -0,0 +1,283 @@
+using System;
+using System.ComponentModel;
+using System.IO;
+using System.Linq;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Controls.Primitives;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Navigation;
+using System.Windows.Threading;
+
+using BeWo.Core;
+using BeWo.ViewModel;
+using BeWo.ServiceProxy;
+
+using BS.Shared.DataContracts;
+using BS.Shared.Extensions;
+using BS.Shared;
+using BS.Shared.Core;
+using DevExpress.Xpf.Editors;
+using Microsoft.Win32;
+
+namespace BeWo.View
+{
+ public partial class EmployeeArbeitszeitView
+ {
+
+ private ArbeitszeitVM _ArbeitszeitViewModel;
+
+ private ArbeitszeitEintragVM _ArbeitszeitEintragViewModel;
+
+ long? employeeOid;
+
+ public EmployeeArbeitszeitView(TableID pObjectTid, long? oid)
+ {
+ InitializeComponent();
+
+ employeeOid = oid;
+
+ // LaodInfostoView();
+
+ ReloadViewModel();
+
+ //AppointmentDayOfWeeks
+
+
+
+ }
+
+
+ public ArbeitszeitVM PublicViewModel { get { return _ArbeitszeitViewModel; } }
+
+
+ public override bool IsDirty
+ {
+ get
+ {
+ return ArbeitszeitViewModel != null && ArbeitszeitViewModel.IsDirty || ArbeitszeitEintragViewModel != null && ArbeitszeitEintragViewModel.IsDirty;
+ }
+ }
+
+ private ArbeitszeitVM ArbeitszeitViewModel
+ {
+ get { return _ArbeitszeitViewModel; }
+
+ set
+ {
+ DataContext = value;
+ _ArbeitszeitViewModel = value;
+ }
+ }
+
+ private ArbeitszeitEintragVM ArbeitszeitEintragViewModel
+ {
+ get { return _ArbeitszeitEintragViewModel; }
+
+ set
+ {
+ DataContext = value;
+ _ArbeitszeitEintragViewModel = value;
+ }
+ }
+
+
+ private void ReloadViewModel()
+ {
+
+ //hole hier die Arbeistzeiten raus und füge dieser der view hinzu
+
+ ArbeitszeitListeDC arListe = new ArbeitszeitListeDC();
+
+ ServiceFacade.DoOperationsServiceAsync(s => s.GetAlleArbeitszeiten(employeeOid.Value), r => this.Dispatch(
+ delegate
+ {
+
+ arListe.ArbeitszeitEintragliste = r.ArbeitszeitEintragliste;
+ arListe.Arbeitszeitliste = r.Arbeitszeitliste;
+
+
+ if(arListe.ArbeitszeitEintragliste.Count != 0)
+ ArbeitszeitEintragViewModel = new ArbeitszeitEintragVM(arListe.ArbeitszeitEintragliste[0]);
+
+ if(arListe.Arbeitszeitliste.Count != 0)
+ ArbeitszeitViewModel = new ArbeitszeitVM(arListe.Arbeitszeitliste[0]);
+
+
+ }));
+
+ }
+
+
+ //###################### Popup Arbeitszeit ###########################################
+ private void ButtonOpenAndAddArbeitszeitClick(object sender, RoutedEventArgs e)
+ {
+ //Verträge pendant
+ //ViewModel.Contracts.AddNewVMToList();
+ //tabcontrol_contracts.SelectedIndex = tabcontrol_contracts.Items.Count - 1;
+
+
+ TabItem newTabItem = new TabItem
+ {
+ Header = "Neuer Vertrag",
+ Name = "NeuerVertrag"
+ };
+ tabcontrol_Arbeitszeit.Items.Add(newTabItem);
+
+ tabcontrol_Arbeitszeit.SelectedIndex = tabcontrol_Arbeitszeit.Items.Count - 1;
+
+ }
+
+
+ private void ClosePopupNewArbeitszeit_Click(object sender, RoutedEventArgs e)
+ {
+ //popup_newArbeitszeit.IsOpen = false;
+ }
+
+ private void AddArbeitszeit_OnClick(object sender, RoutedEventArgs e)
+ {
+ /* Beispiel von Bargeldkassen
+ if (!Validate(groupbox_newBargeldkasse))
+ {
+ return;
+ }
+
+ var neu = ViewModel.NewVM;
+ neu.ObjectOid = currentObjectOid;
+ neu.ObjectTid = currentObjectTid;
+
+ ServiceFacade.DoOperationsServiceAsync(s => s.InsertNewBargeldkasse(neu.CommitToDataContract()), r => this.Dispatch(delegate
+ {
+ popup_newBargeldkasse.IsOpen = false;
+
+ ViewModel.NewVM = new BargeldkassenVM(new BargeldkassenDC());
+
+ ReloadViewModel();
+ }));
+ */
+
+
+
+
+ }
+
+
+ //#####################################################################################
+ private void btn_deleteArbeitszeit_Click(object sender, RoutedEventArgs e)
+ {
+ //Verträge pendant
+ //var contract = tabcontrol_contracts.SelectedItem as ContractVM;
+ //ViewModel.Contracts.VMList.Remove(contract);
+
+
+ }
+
+
+ private void AddArbeitszeitToView_Click(object sender, RoutedEventArgs e)
+ {
+ AddNewArbeitsZeit();
+ }
+
+
+ public void AddNewArbeitsZeit()
+ {
+ var tab = tabcontrol_Arbeitszeit.Items.GetItemAt(tabcontrol_Arbeitszeit.SelectedIndex);
+
+ var tabbi = (TabItem)tab;
+
+ //Auslagern
+ var DE = tabcontrol_Arbeitszeit.GetAllChildren().OfType();
+ var CBE = tabcontrol_Arbeitszeit.GetAllChildren().OfType();
+ var TE = tabcontrol_Arbeitszeit.GetAllChildren().OfType();
+
+ var AV = DE.First(x => x.Name.Equals("ArbeitszeitVon"));
+ var AB = DE.First(x => x.Name.Equals("ArbeitszeitBis"));
+
+ var TAG = CBE.First(x => x.Name.Equals("Tag"));
+
+ var UV = TE.First(x => x.Name.Equals("UhrzeitVon"));
+ var UB = TE.First(x => x.Name.Equals("UhrzeitBis"));
+
+ var dateAVon = AV.DateTime;
+ var dateABis = AB.DateTime;
+
+ var AnTagenWieDiese = TAG.SelectedText;
+
+ var UVon = UV.Text;
+ var UBis = UB.Text;
+ //Auslagern
+
+ tabbi.Header = dateAVon.ToString("dd.MM.yyyy") + " - " + dateABis.ToString("dd.MM.yyyy");
+
+ //erstelle hier den ServiceAufruf für die Arbeitszeit
+
+
+ ArbeitszeitDC arbeitszeit = new ArbeitszeitDC();
+ arbeitszeit.EmployeeOid = employeeOid;
+ arbeitszeit.GueltigVon = dateAVon;
+ arbeitszeit.GueltigBis = dateABis;
+ arbeitszeit.Notice = "Eine notiz muss noch auf die view";
+
+
+ ArbeitszeitEintragDC arbeitszeitEintrag = new ArbeitszeitEintragDC();
+ arbeitszeitEintrag.Tag = (AppointmentDayOfWeek)TAG.SelectedItem; //den tag in
+ arbeitszeitEintrag.UhrzeitVon = UVon; //zu string umschreiben
+ arbeitszeitEintrag.UhrzeitBis = UBis; //zu string umschreiben
+ arbeitszeitEintrag.Notice = "Eine notiz muss noch auf die view";
+
+
+ ServiceFacade.DoEmployeeServiceSync(s => s.InsertNewArbeitsZeit(arbeitszeit, arbeitszeitEintrag));
+ ClearArbeitszeitItems();
+
+ }
+
+
+ private void ClearArbeitszeitItems()
+ {
+ //Auslagern
+ var DE = tabcontrol_Arbeitszeit.GetAllChildren().OfType();
+ var CBE = tabcontrol_Arbeitszeit.GetAllChildren().OfType();
+ var TE = tabcontrol_Arbeitszeit.GetAllChildren().OfType();
+
+ var AV = DE.First(x => x.Name.Equals("ArbeitszeitVon"));
+ var AB = DE.First(x => x.Name.Equals("ArbeitszeitBis"));
+
+ var TAG = CBE.First(x => x.Name.Equals("Tag"));
+
+ var UV = TE.First(x => x.Name.Equals("UhrzeitVon"));
+ var UB = TE.First(x => x.Name.Equals("UhrzeitBis"));
+
+ //auslagern
+
+ //AV.Clear();
+ //AB.Clear();
+ TAG.Clear();
+ UV.Clear();
+ UB.Clear();
+
+ }
+
+ private string GetArbeitszeitOnRunTime()
+ {
+ var DE = tabcontrol_Arbeitszeit.GetAllChildren().OfType();
+ var CBE = tabcontrol_Arbeitszeit.GetAllChildren().OfType();
+ var TE = tabcontrol_Arbeitszeit.GetAllChildren().OfType();
+
+
+
+ var AV = DE.First(x => x.Name.Equals("ArbeitszeitVon"));
+ var AB = DE.First(x => x.Name.Equals("ArbeitszeitBis"));
+
+ var TAG = CBE.First(x => x.Name.Equals("Tag"));
+
+ var UV = TE.First(x => x.Name.Equals("UhrzeitVon"));
+ var UB = TE.First(x => x.Name.Equals("UhrzeitBis"));
+
+
+ return null;
+ }
+
+ }
+}
\ No newline at end of file
diff --git a/BeWo/ViewModel/ArbeitszeitEintragVM.cs b/BeWo/ViewModel/ArbeitszeitEintragVM.cs
new file mode 100644
index 000000000..1abea6da3
--- /dev/null
+++ b/BeWo/ViewModel/ArbeitszeitEintragVM.cs
@@ -0,0 +1,113 @@
+using BS.Shared;
+using BS.Shared.DataContracts;
+using System;
+
+namespace BeWo.ViewModel
+{
+ public class ArbeitszeitEintragVM : AbstractDCMapperVM
+ {
+ public static string PropertyName_UhrzeitVon = "UhrzeitVon";
+
+ public static string PropertyName_UhrzeitBis = "UhrzeitBis";
+
+ public static string PropertyName_Tag = "Tag";
+
+ public static string PropertyName_Notice = "Notice";
+
+ private string _UhrzeitVon;
+
+ private string _UhrzeitBis;
+
+ private AppointmentDayOfWeek _Tag;
+
+ private string _Notice;
+
+
+ public ArbeitszeitEintragVM(ArbeitszeitEintragDC pDC)
+ : base(pDC, true)
+ {
+ }
+
+ public string UhrzeitVon
+ {
+ get { return this._UhrzeitVon; }
+
+ set
+ {
+ if (this.AreDifferent(this._UhrzeitVon, value))
+ {
+ this._UhrzeitVon = value;
+ this.StoreDirtyInformation(this.AreDifferent(this.DataContract.UhrzeitVon, value), PropertyName_UhrzeitVon);
+ this.FirePropertyChanged(PropertyName_UhrzeitVon);
+ }
+ }
+ }
+
+ public string UhrzeitBis
+ {
+ get { return this._UhrzeitBis; }
+
+ set
+ {
+ if (this.AreDifferent(this._UhrzeitBis, value))
+ {
+ this._UhrzeitBis = value;
+ this.StoreDirtyInformation(this.AreDifferent(this.DataContract.UhrzeitBis, value), PropertyName_UhrzeitBis);
+ this.FirePropertyChanged(PropertyName_UhrzeitBis);
+ }
+ }
+ }
+
+
+ public AppointmentDayOfWeek Tag
+ {
+ get { return this._Tag; }
+
+ set
+ {
+ if (this.AreDifferent(this._Tag, value))
+ {
+ this._Tag = value;
+ this.StoreDirtyInformation(this.AreDifferent(this.DataContract.Tag, value), PropertyName_Tag);
+ this.FirePropertyChanged(PropertyName_Tag);
+ }
+ }
+ }
+
+ public string Notice
+ {
+ get { return _Notice; }
+
+ set
+ {
+ if (AreDifferent(_Notice, value))
+ {
+ _Notice = value;
+ StoreDirtyInformation(AreDifferent(DataContract.Notice, value), PropertyName_Notice);
+ FirePropertyChanged(PropertyName_Notice);
+ }
+ }
+ }
+
+
+ protected override void InitByDataContract(ArbeitszeitEintragDC pDataContract)
+ {
+ this._Tag = pDataContract.Tag;
+ this._UhrzeitVon = pDataContract.UhrzeitVon;
+ this._UhrzeitBis = pDataContract.UhrzeitBis;
+ this._Notice = pDataContract.Notice;
+
+ }
+
+ protected override ArbeitszeitEintragDC MapToDataContract(ArbeitszeitEintragDC pDataContract, bool doCommit)
+ {
+ pDataContract.UhrzeitVon = _UhrzeitVon;
+ pDataContract.UhrzeitBis = _UhrzeitBis;
+ pDataContract.Tag = _Tag;
+ pDataContract.Notice = _Notice;
+
+
+ return pDataContract;
+ }
+ }
+}
\ No newline at end of file
diff --git a/BeWo/ViewModel/ArbeitszeitVM.cs b/BeWo/ViewModel/ArbeitszeitVM.cs
new file mode 100644
index 000000000..1c190ddee
--- /dev/null
+++ b/BeWo/ViewModel/ArbeitszeitVM.cs
@@ -0,0 +1,91 @@
+using BS.Shared;
+using BS.Shared.DataContracts;
+using System;
+
+namespace BeWo.ViewModel
+{
+ public class ArbeitszeitVM : AbstractDCMapperVM
+ {
+ public static string PropertyName_GueltigVon = "GueltigVon";
+
+ public static string PropertyName_GueltigBis = "GueltigBis";
+
+ public static string PropertyName_Notice = "Notice";
+
+ private DateTime _GueltigVon;
+
+ private DateTime _GueltigBis;
+
+ private string _Notice;
+
+
+ public ArbeitszeitVM(ArbeitszeitDC pDC)
+ : base(pDC, true)
+ {
+ }
+
+ public DateTime GueltigVon
+ {
+ get { return this._GueltigVon; }
+
+ set
+ {
+ if (this.AreDifferent(this._GueltigVon, value))
+ {
+ this._GueltigVon = value;
+ this.StoreDirtyInformation(this.AreDifferent(this.DataContract.GueltigVon, value), PropertyName_GueltigVon);
+ this.FirePropertyChanged(PropertyName_GueltigVon);
+ }
+ }
+ }
+
+ public DateTime GueltigBis
+ {
+ get { return this._GueltigBis; }
+
+ set
+ {
+ if (this.AreDifferent(this._GueltigBis, value))
+ {
+ this._GueltigBis = value;
+ this.StoreDirtyInformation(this.AreDifferent(this.DataContract.GueltigBis, value), PropertyName_GueltigBis);
+ this.FirePropertyChanged(PropertyName_GueltigBis);
+ }
+ }
+ }
+
+ public string Notice
+ {
+ get { return _Notice; }
+
+ set
+ {
+ if (AreDifferent(_Notice, value))
+ {
+ _Notice = value;
+ StoreDirtyInformation(AreDifferent(DataContract.Notice, value), PropertyName_Notice);
+ FirePropertyChanged(PropertyName_Notice);
+ }
+ }
+ }
+
+
+ protected override void InitByDataContract(ArbeitszeitDC pDataContract)
+ {
+ this._GueltigBis = pDataContract.GueltigBis;
+ this._GueltigVon = pDataContract.GueltigVon;
+ this._Notice = pDataContract.Notice;
+
+ }
+
+ protected override ArbeitszeitDC MapToDataContract(ArbeitszeitDC pDataContract, bool doCommit)
+ {
+ pDataContract.GueltigVon = _GueltigVon;
+ pDataContract.GueltigBis = _GueltigBis;
+ pDataContract.Notice = _Notice;
+
+
+ return pDataContract;
+ }
+ }
+}
\ No newline at end of file
diff --git a/BeWo/ViewModel/EmployeeVM.cs b/BeWo/ViewModel/EmployeeVM.cs
index cbccb879b..f00ad297a 100644
--- a/BeWo/ViewModel/EmployeeVM.cs
+++ b/BeWo/ViewModel/EmployeeVM.cs
@@ -76,6 +76,7 @@ namespace BeWo.ViewModel
public static String PropertyName_EmployeeColor = "EmployeeColor";
public static String PropertyName_EmployeeBrush = "EmployeeBrush";
public static string PropertyName_EmployeeImage = "EmployeeImage";
+ public static string PropertyName_Arbeitszeit = "Arbeitszeit";
#endregion
@@ -126,6 +127,7 @@ namespace BeWo.ViewModel
private String _EmployeeColor;
private SolidColorBrush _EmployeeBrush;
private byte[] _EmployeeImage;
+ private ArbeitszeitVM _Arbeitszeit;
public EmployeeVM(
EmployeeDC pEmployeeDC, IList pPossibleTypes, IEnumerable pPossibleQualifications,
@@ -260,6 +262,17 @@ namespace BeWo.ViewModel
}
}
+ public ArbeitszeitVM Arbietszeit
+ {
+ get { return _Arbeitszeit; }
+
+ set
+ {
+ _Arbeitszeit = value;
+ FirePropertyChanged(PropertyName_Arbeitszeit);
+ }
+ }
+
public ContractVM LastContract
{
get
@@ -596,7 +609,7 @@ namespace BeWo.ViewModel
get
{
return base.IsDirty || (CustomerRelations != null && CustomerRelations.IsDirty)
- || (_AbsenceTimes != null && _AbsenceTimes.IsDirty) || (_Contracts != null && _Contracts.IsDirty) || (_Overtimes != null && _Overtimes.IsDirty);
+ || (_AbsenceTimes != null && _AbsenceTimes.IsDirty) || (_Contracts != null && _Contracts.IsDirty) || (_Overtimes != null && _Overtimes.IsDirty) || (_Arbeitszeit != null && _Arbeitszeit.IsDirty);
}
}
@@ -1229,6 +1242,11 @@ namespace BeWo.ViewModel
pDataContract.Contracts = _Contracts.CopyToDCList(doCommit);
}
+ //if (_Arbeitszeit != null)
+ //{
+ // pDataContract.Arbeitszeit = _Arbeitszeit.CopyToDCList(doCommit);
+ //}
+
if (_Overtimes != null)
{
pDataContract.Overtimes = _Overtimes.CopyToDCList(doCommit);
diff --git a/BeWo/ViewModel/ListViewModel/ArbeitszeitListVM.cs b/BeWo/ViewModel/ListViewModel/ArbeitszeitListVM.cs
new file mode 100644
index 000000000..013861aa9
--- /dev/null
+++ b/BeWo/ViewModel/ListViewModel/ArbeitszeitListVM.cs
@@ -0,0 +1,26 @@
+using System.Collections.Generic;
+
+using BS.Shared.DataContracts;
+
+namespace BeWo.ViewModel.ListViewModel
+{
+ public class ArbeitszeitListVM : AbstractDCListMapperVM
+ {
+ private IList _PossibleEmploymentTypes;
+
+ public ArbeitszeitListVM(IList allEmploymentTypes, List pDCs)
+ : base(pDCs)
+ {
+ this._PossibleEmploymentTypes = allEmploymentTypes;
+ }
+
+ //protected override ArbeitszeitVM CreateVM(ArbeitszeitDC pDC)
+ //{
+ // ArbeitszeitVM vm = base.CreateVM(pDC);
+
+ // vm. = _PossibleEmploymentTypes;
+
+ // return vm;
+ //}
+ }
+}
\ No newline at end of file
diff --git a/BeWoPlanerAndroid/Web.config b/BeWoPlanerAndroid/Web.config
index 5c180b9d0..f0cab4d14 100644
--- a/BeWoPlanerAndroid/Web.config
+++ b/BeWoPlanerAndroid/Web.config
@@ -34,7 +34,7 @@
-
+
diff --git a/BeWoPlanerMobil/Web.config b/BeWoPlanerMobil/Web.config
index 5d3057b1c..8c12ed9ee 100644
--- a/BeWoPlanerMobil/Web.config
+++ b/BeWoPlanerMobil/Web.config
@@ -124,7 +124,7 @@
-
+
diff --git a/Data/Access/SearchDAO.cs b/Data/Access/SearchDAO.cs
index f325eb32c..002668a91 100644
--- a/Data/Access/SearchDAO.cs
+++ b/Data/Access/SearchDAO.cs
@@ -2057,5 +2057,33 @@ namespace BeWo.Data.Access
return liste;
}
+
+ public ArbeitszeitListe FindEmployeeArbeitszeitListe(long employeeOid)
+ {
+ var c = CreateCriteria().Add(Restrictions.Eq(Arbeitszeit.PropertyName_EmployeeOid,employeeOid));
+
+ List nAr = new List();
+
+
+ foreach (var item in c.List())
+ {
+ nAr.Add(item.Oid.Value);
+ }
+
+ ArbeitszeitListe a = new ArbeitszeitListe();
+ a.Arbeitszeit = c.List().ToList();
+
+ if(nAr.Count != 0){
+ var cEintrag =
+ CreateCriteria()
+ .Add(Restrictions.Eq(ArbeitszeitEintrag.PropertyName_ArbeitszeitOid, nAr));
+
+ a.ArbeitszeitEintrag = cEintrag.List().ToList();
+
+ }
+
+ return a;
+ }
+
}
}
diff --git a/Data/Data.csproj b/Data/Data.csproj
index 269204356..3cba8fa1e 100644
--- a/Data/Data.csproj
+++ b/Data/Data.csproj
@@ -159,6 +159,9 @@
+
+
+
@@ -557,6 +560,12 @@
PreserveNewest
+
+ Designer
+
+
+ Designer
+
Designer
diff --git a/Data/Entities/Arbeitszeit.cs b/Data/Entities/Arbeitszeit.cs
new file mode 100644
index 000000000..fcab5e85f
--- /dev/null
+++ b/Data/Entities/Arbeitszeit.cs
@@ -0,0 +1,87 @@
+using BS.Shared;
+using System;
+using System.Collections.Generic;
+
+namespace BeWo.Data.Entities
+{
+ public class Arbeitszeit : BeWoEntityBase
+ {
+ public static string PropertyName_GueltigVon = "GueltigVon";
+
+ public static string PropertyName_GueltigBis = "GueltigBis";
+
+ public static string PropertyName_EmployeeOid = "EmployeeOid";
+
+ public static string PropertyName_ArbeitsZeiteintragListe = "ArbeitszeitEintragListe";
+
+ private DateTime _GueltigVon;
+
+ private DateTime _GueltigBis;
+
+ private long? _EmployeeOid;
+
+ private IList _ArbeitszeitEintrag;
+
+
+ public virtual DateTime GueltigVon
+ {
+ get
+ {
+ return this._GueltigVon;
+ }
+
+ set
+ {
+ if (this.AreDifferent(this._GueltigVon, value))
+ {
+ this._GueltigVon = value;
+ }
+ }
+ }
+
+ public virtual DateTime GueltigBis
+ {
+ get
+ {
+ return this._GueltigBis;
+ }
+
+ set
+ {
+ if (this.AreDifferent(this._GueltigBis, value))
+ {
+ this._GueltigBis = value;
+ }
+ }
+ }
+
+
+ public virtual long? EmployeeOid
+ {
+ get
+ {
+ return this._EmployeeOid;
+ }
+
+ set
+ {
+ if (this.AreDifferent(this._EmployeeOid, value))
+ {
+ this._EmployeeOid = value;
+ }
+ }
+ }
+
+ public virtual IList ArbeitszeitEintra
+ {
+ get { return this._ArbeitszeitEintrag; }
+ set
+ {
+ if (this.AreDifferent(this._ArbeitszeitEintrag, value))
+ {
+ this._ArbeitszeitEintrag = value;
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Data/Entities/ArbeitszeitEintrag.cs b/Data/Entities/ArbeitszeitEintrag.cs
new file mode 100644
index 000000000..012846686
--- /dev/null
+++ b/Data/Entities/ArbeitszeitEintrag.cs
@@ -0,0 +1,91 @@
+using BS.Shared;
+using System;
+
+namespace BeWo.Data.Entities
+{
+ public class ArbeitszeitEintrag : BeWoEntityBase
+ {
+ public static string PropertyName_UhrzeitVon = "UhrzeitVon";
+
+ public static string PropertyName_UhrzeitBis = "UhrzeitBis";
+
+ public static string PropertyName_Tag = "Tag";
+
+ public static string PropertyName_ArbeitszeitOid = "ArbeitszeitOid";
+
+ private string _UhrzeitVon;
+
+ private string _UhrzeitBis;
+
+ private AppointmentDayOfWeek _Tag;
+
+ private long? _ArbeitszeitOid;
+
+
+ public virtual string UhrzeitVon
+ {
+ get
+ {
+ return this._UhrzeitVon;
+ }
+
+ set
+ {
+ if (this.AreDifferent(this._UhrzeitVon, value))
+ {
+ this._UhrzeitVon = value;
+ }
+ }
+ }
+
+ public virtual string UhrzeitBis
+ {
+ get
+ {
+ return this._UhrzeitBis;
+ }
+
+ set
+ {
+ if (this.AreDifferent(this._UhrzeitBis, value))
+ {
+ this._UhrzeitBis = value;
+ }
+ }
+ }
+
+
+ public virtual AppointmentDayOfWeek Tag
+ {
+ get
+ {
+ return this._Tag;
+ }
+
+ set
+ {
+ if (this.AreDifferent(this._Tag, value))
+ {
+ this._Tag = value;
+ }
+ }
+ }
+
+ public virtual long? ArbeitszeitOid
+ {
+ get
+ {
+ return this._ArbeitszeitOid;
+ }
+
+ set
+ {
+ if (this.AreDifferent(this._ArbeitszeitOid, value))
+ {
+ this._ArbeitszeitOid = value;
+ }
+ }
+ }
+
+ }
+}
\ No newline at end of file
diff --git a/Data/Entities/ArbeitszeitListe.cs b/Data/Entities/ArbeitszeitListe.cs
new file mode 100644
index 000000000..f88a74561
--- /dev/null
+++ b/Data/Entities/ArbeitszeitListe.cs
@@ -0,0 +1,51 @@
+using BS.Shared;
+using System;
+using System.Collections.Generic;
+
+namespace BeWo.Data.Entities
+{
+ public class ArbeitszeitListe : BeWoEntityBase
+ {
+ public static string PropertyName_ArbeitszeitEintrag = "ArbeitszeitEintrag";
+
+ public static string PropertyName_Arbeitszeit = "Arbeitszeit";
+
+ private List _ArbeitszeitEintrag;
+
+ private List _Arbeitszeit;
+
+
+ public virtual List ArbeitszeitEintrag
+ {
+ get
+ {
+ return this._ArbeitszeitEintrag;
+ }
+
+ set
+ {
+ if (this.AreDifferent(this._ArbeitszeitEintrag, value))
+ {
+ this._ArbeitszeitEintrag = value;
+ }
+ }
+ }
+
+ public virtual List Arbeitszeit
+ {
+ get
+ {
+ return this._Arbeitszeit;
+ }
+
+ set
+ {
+ if (this.AreDifferent(this._Arbeitszeit, value))
+ {
+ this._Arbeitszeit = value;
+ }
+ }
+ }
+
+ }
+}
\ No newline at end of file
diff --git a/Data/Entities/Employee.cs b/Data/Entities/Employee.cs
index 10bac64a4..ade8bbcfe 100644
--- a/Data/Entities/Employee.cs
+++ b/Data/Entities/Employee.cs
@@ -36,6 +36,8 @@ namespace BeWo.Data.Entities
public static string PropertyName_Contracts = "Contracts";
+ public static string PropertyName_Arbeitszeit = "Arbeitszeit";
+
public static string PropertyName_Text1 = "Text1";
public static string PropertyName_Text2 = "Text2";
@@ -54,6 +56,8 @@ namespace BeWo.Data.Entities
private IList _Contracts;
+ private IList _Arbeitszeit;
+
private IList _Employee2CustomerList;
private string _HealthInsurance;
@@ -152,6 +156,19 @@ namespace BeWo.Data.Entities
}
}
+ public virtual IList Arbeitszeit
+ {
+ get { return _Arbeitszeit ?? (_Arbeitszeit = new List()); }
+
+ set
+ {
+ if (AreDifferent(_Arbeitszeit, value))
+ {
+ _Arbeitszeit = value;
+ }
+ }
+ }
+
public virtual IList Employee2CustomerList
{
get { return _Employee2CustomerList ?? (_Employee2CustomerList = new List()); }
diff --git a/Data/Mappings/Arbeitszeit.hbm.xml b/Data/Mappings/Arbeitszeit.hbm.xml
new file mode 100644
index 000000000..1a049611b
--- /dev/null
+++ b/Data/Mappings/Arbeitszeit.hbm.xml
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Data/Mappings/ArbeitszeitEintrag.hbm.xml b/Data/Mappings/ArbeitszeitEintrag.hbm.xml
new file mode 100644
index 000000000..f877e1914
--- /dev/null
+++ b/Data/Mappings/ArbeitszeitEintrag.hbm.xml
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Model/Changes_2017_05_11.txt b/Model/Changes_2017_05_11.txt
new file mode 100644
index 000000000..6b27bcb51
--- /dev/null
+++ b/Model/Changes_2017_05_11.txt
@@ -0,0 +1,55 @@
+CREATE TABLE `1234567890`.`arbeitszeit` (
+ `Oid` BIGINT(19) NOT NULL AUTO_INCREMENT COMMENT '',
+
+ `EmployeeOid` 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 '',
+
+`GueltigVon` DATETIME NULL COMMENT '',
+ `GueltigBis` DATETIME NULL COMMENT '',
+ PRIMARY KEY (`Oid`) COMMENT '');
+
+
+
+
+
+
+CREATE TABLE `1234567890`.`arbeitszeiteintrag` (
+ `Oid` BIGINT(19) NOT NULL AUTO_INCREMENT COMMENT '',
+ `ArbeitszeitOid` 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 '',
+
+ `Tag` DATETIME NULL COMMENT '',
+ `UhrzeitVon` DATETIME NULL COMMENT '',
+ `UhrzeitBis` DATETIME NULL COMMENT '',
+ PRIMARY KEY (`Oid`) COMMENT '');
+
+
+
+
+ALTER TABLE `1234567890`.`arbeitszeiteintrag`
+CHANGE COLUMN `Tag` `Tag` INT(10) NULL DEFAULT NULL COMMENT '' ;
+
+
+ALTER TABLE `1234567890`.`arbeitszeiteintrag`
+
+CHANGE COLUMN `UhrzeitVon` `UhrzeitVon` VARCHAR(256) NULL DEFAULT NULL COMMENT '' ,
+
+CHANGE COLUMN `UhrzeitBis` `UhrzeitBis` VARCHAR(256) NULL DEFAULT NULL COMMENT '' ;
diff --git a/ReportImp/BetreuWoReports/Kostenstellenauswertung2.cs b/ReportImp/BetreuWoReports/Kostenstellenauswertung2.cs
index e5d805bd4..99178d405 100644
--- a/ReportImp/BetreuWoReports/Kostenstellenauswertung2.cs
+++ b/ReportImp/BetreuWoReports/Kostenstellenauswertung2.cs
@@ -10,7 +10,6 @@ using BS.Shared.Extensions;
using BS.Shared.Services;
using BS.Shared.DataContracts;
using BeWo.Service.DCEntityMapper;
-using DevExpress.XtraPivotGrid.Data.Wrappers;
namespace BeWo.BetreuWoReports
{
diff --git a/ReportImp/BetreuWoReports/Kostenstellenauswertung3.cs b/ReportImp/BetreuWoReports/Kostenstellenauswertung3.cs
index 4b0dbe49a..41fc16f39 100644
--- a/ReportImp/BetreuWoReports/Kostenstellenauswertung3.cs
+++ b/ReportImp/BetreuWoReports/Kostenstellenauswertung3.cs
@@ -10,7 +10,6 @@ using BS.Shared.Extensions;
using BS.Shared.Services;
using BS.Shared.DataContracts;
using BeWo.Service.DCEntityMapper;
-using DevExpress.XtraPivotGrid.Data.Wrappers;
namespace BeWo.BetreuWoReports.Kostenstellenauswertung3
{
diff --git a/ReportImp/HphBersenbrueckAtz/HphBersenbrueckAtz.csproj b/ReportImp/HphBersenbrueckAtz/HphBersenbrueckAtz.csproj
index 988e5c175..b6e03fb64 100644
--- a/ReportImp/HphBersenbrueckAtz/HphBersenbrueckAtz.csproj
+++ b/ReportImp/HphBersenbrueckAtz/HphBersenbrueckAtz.csproj
@@ -9,8 +9,9 @@
Properties
HphBersenbrueckAtz
1106039294_Reports
- v4.5.2
+ v4.0
512
+
true
@@ -30,12 +31,11 @@
4
-
-
-
-
-
-
+
+
+
+
+
@@ -53,12 +53,6 @@
-
- Component
-
-
- QueryListReport.cs
-
Component
@@ -68,10 +62,6 @@
-
- QueryListReport.cs
- Designer
-
ServicesOverviewReport.cs
@@ -94,6 +84,9 @@
Shared
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 17, 17
-
-
-
-
- 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
- YII=
-
-
-
- 154, 17
-
-
\ No newline at end of file
diff --git a/Service/DCEntityMapper/ArbeitszeitDC_Arbeitszeit.cs b/Service/DCEntityMapper/ArbeitszeitDC_Arbeitszeit.cs
new file mode 100644
index 000000000..786d2acdf
--- /dev/null
+++ b/Service/DCEntityMapper/ArbeitszeitDC_Arbeitszeit.cs
@@ -0,0 +1,44 @@
+using System.IO;
+using BeWo.Data.Entities;
+
+using BS.Shared.DataContracts;
+
+namespace BeWo.Service.DCEntityMapper
+{
+ public class ArbeitszeitDC_Arbeitszeit : AbstractIDCEntityMapper
+ {
+ public override ArbeitszeitDC MergeWithDC(Arbeitszeit pEntity, ArbeitszeitDC pDataContract)
+ {
+ pDataContract.ArbeitszeitOid = pEntity.Oid;
+
+ pDataContract.EmployeeOid = pEntity.EmployeeOid;
+ pDataContract.GueltigVon = pEntity.GueltigVon;
+ pDataContract.GueltigBis = pEntity.GueltigBis;
+ pDataContract.Notice = pEntity.Notice;
+
+ return pDataContract;
+ }
+
+ public override Arbeitszeit MergeWithEntity(ArbeitszeitDC pDataContract, Arbeitszeit pEntity)
+ {
+ pEntity.EmployeeOid = pDataContract.EmployeeOid;
+ pEntity.GueltigVon = pDataContract.GueltigVon;
+ pEntity.GueltigBis = pDataContract.GueltigBis;
+ pEntity.Notice = pDataContract.Notice;
+ pEntity.Oid = pDataContract.ArbeitszeitOid;
+
+ return pEntity;
+ }
+
+ protected override bool AreDCAndEntityEqual(ArbeitszeitDC pDC, Arbeitszeit pEntity)
+ {
+
+ if (pDC.ArbeitszeitOid == null)
+ {
+ return false;
+ }
+
+ return pDC.ArbeitszeitOid == pEntity.Oid;
+ }
+ }
+}
\ No newline at end of file
diff --git a/Service/DCEntityMapper/ArbeitszeitEintragDC_ArbeitszeitEintrag.cs b/Service/DCEntityMapper/ArbeitszeitEintragDC_ArbeitszeitEintrag.cs
new file mode 100644
index 000000000..637ce89c5
--- /dev/null
+++ b/Service/DCEntityMapper/ArbeitszeitEintragDC_ArbeitszeitEintrag.cs
@@ -0,0 +1,45 @@
+using System.IO;
+using BeWo.Data.Entities;
+
+using BS.Shared.DataContracts;
+
+namespace BeWo.Service.DCEntityMapper
+{
+ public class ArbeitszeitEintragDC_ArbeitszeitEintrag : AbstractIDCEntityMapper
+ {
+ public override ArbeitszeitEintragDC MergeWithDC(ArbeitszeitEintrag pEntity, ArbeitszeitEintragDC pDataContract)
+ {
+ pDataContract.ArbeitszeitEintragOid = pEntity.Oid;
+ pDataContract.ArbeitszeitOid = pEntity.ArbeitszeitOid;
+ pDataContract.Tag = pEntity.Tag;
+ pDataContract.UhrzeitVon = pEntity.UhrzeitVon;
+ pDataContract.UhrzeitBis = pEntity.UhrzeitBis;
+ pDataContract.Notice = pEntity.Notice;
+
+ return pDataContract;
+ }
+
+ public override ArbeitszeitEintrag MergeWithEntity(ArbeitszeitEintragDC pDataContract, ArbeitszeitEintrag pEntity)
+ {
+ pEntity.ArbeitszeitOid = pDataContract.ArbeitszeitOid;
+ pEntity.Tag = pDataContract.Tag;
+ pEntity.UhrzeitVon = pDataContract.UhrzeitVon;
+ pEntity.UhrzeitBis = pDataContract.UhrzeitBis;
+ pEntity.Notice = pDataContract.Notice;
+ pEntity.Oid = pDataContract.ArbeitszeitEintragOid;
+
+ return pEntity;
+ }
+
+ protected override bool AreDCAndEntityEqual(ArbeitszeitEintragDC pDC, ArbeitszeitEintrag pEntity)
+ {
+
+ if (pDC.ArbeitszeitEintragOid == null)
+ {
+ return false;
+ }
+
+ return pDC.ArbeitszeitEintragOid == pEntity.Oid;
+ }
+ }
+}
\ No newline at end of file
diff --git a/Service/DCEntityMapper/ArbeitszeitListeDC_ArbeitszeitListe.cs b/Service/DCEntityMapper/ArbeitszeitListeDC_ArbeitszeitListe.cs
new file mode 100644
index 000000000..a57fd2f6d
--- /dev/null
+++ b/Service/DCEntityMapper/ArbeitszeitListeDC_ArbeitszeitListe.cs
@@ -0,0 +1,38 @@
+using System.IO;
+using BeWo.Data.Entities;
+
+using BS.Shared.DataContracts;
+
+namespace BeWo.Service.DCEntityMapper
+{
+ public class ArbeitszeitListeDC_ArbeitszeitListe : AbstractIDCEntityMapper
+ {
+ public override ArbeitszeitListeDC MergeWithDC(ArbeitszeitListe pEntity, ArbeitszeitListeDC pDataContract)
+ {
+ pDataContract.Arbeitszeitliste = MapperFactory.ArbeitszeitDC_Arbeitszeit.MapToNewDCs(pEntity.Arbeitszeit);
+ pDataContract.ArbeitszeitEintragliste = MapperFactory.ArbeitszeitEintragDC_ArbeitszeitEintrag.MapToNewDCs(pEntity.ArbeitszeitEintrag);
+
+
+ return pDataContract;
+ }
+
+ public override ArbeitszeitListe MergeWithEntity(ArbeitszeitListeDC pDataContract, ArbeitszeitListe pEntity)
+ {
+ pEntity.Arbeitszeit = MapperFactory.ArbeitszeitDC_Arbeitszeit.MapToNewEntities(pDataContract.Arbeitszeitliste);
+ pEntity.ArbeitszeitEintrag = MapperFactory.ArbeitszeitEintragDC_ArbeitszeitEintrag.MapToNewEntities(pDataContract.ArbeitszeitEintragliste);
+
+ return pEntity;
+ }
+
+ protected override bool AreDCAndEntityEqual(ArbeitszeitListeDC pDC, ArbeitszeitListe pEntity)
+ {
+
+ if (pDC.VertretungslisteOid == null)
+ {
+ return false;
+ }
+
+ return pDC.VertretungslisteOid == pEntity.Oid;
+ }
+ }
+}
\ No newline at end of file
diff --git a/Service/DCEntityMapper/MapperFactory.cs b/Service/DCEntityMapper/MapperFactory.cs
index e07e1d386..83858660e 100644
--- a/Service/DCEntityMapper/MapperFactory.cs
+++ b/Service/DCEntityMapper/MapperFactory.cs
@@ -47,10 +47,16 @@ namespace BeWo.Service.DCEntityMapper
private static VertretungDC_Vertretung _VertretungDC_Vertretung;
+ private static ArbeitszeitDC_Arbeitszeit _ArbeitszeitDC_Arbeitszeit;
+
+ private static ArbeitszeitEintragDC_ArbeitszeitEintrag _ArbeitszeitEintragDC_ArbeitszeitEintrag;
+
private static KriterienDC_Kriterien _KriterienDC_Kriterien;
private static VertretungsListeDC_VertretungsListe _VertretungsListeDC_VertretungsListe;
+ private static ArbeitszeitListeDC_ArbeitszeitListe _ArbeitszeitListeDC_ArbeitszeitListe;
+
private static PasswortVerlaufDC_PasswortVerlauf _PasswortVerlaufDC_PasswortVerlauf;
private static ChatMessageDC_ChatMessage _ChatMessageDC_ChatMessage;
@@ -538,6 +544,21 @@ namespace BeWo.Service.DCEntityMapper
}
}
+ public static ArbeitszeitDC_Arbeitszeit ArbeitszeitDC_Arbeitszeit
+ {
+ get
+ {
+ return _ArbeitszeitDC_Arbeitszeit ?? (_ArbeitszeitDC_Arbeitszeit = new ArbeitszeitDC_Arbeitszeit());
+ }
+ }
+
+ public static ArbeitszeitEintragDC_ArbeitszeitEintrag ArbeitszeitEintragDC_ArbeitszeitEintrag
+ {
+ get
+ {
+ return _ArbeitszeitEintragDC_ArbeitszeitEintrag ?? (_ArbeitszeitEintragDC_ArbeitszeitEintrag = new ArbeitszeitEintragDC_ArbeitszeitEintrag());
+ }
+ }
public static KriterienDC_Kriterien KriterienDC_Kriterien
{
get
@@ -554,6 +575,15 @@ namespace BeWo.Service.DCEntityMapper
}
}
+ public static ArbeitszeitListeDC_ArbeitszeitListe ArbeitszeitListeDC_ArbeitszeitListe
+ {
+ get
+ {
+ return _ArbeitszeitListeDC_ArbeitszeitListe ?? (_ArbeitszeitListeDC_ArbeitszeitListe = new ArbeitszeitListeDC_ArbeitszeitListe());
+ }
+ }
+
+
public static PasswortVerlaufDC_PasswortVerlauf PasswortVerlaufDC_PasswortVerlauf
{
get
diff --git a/Service/Service.csproj b/Service/Service.csproj
index 53ddf0a65..60bc7f61d 100644
--- a/Service/Service.csproj
+++ b/Service/Service.csproj
@@ -214,6 +214,9 @@
+
+
+
diff --git a/Service/ServiceContracts/IEmployeeService.cs b/Service/ServiceContracts/IEmployeeService.cs
index 35fd2f43b..e4123d679 100644
--- a/Service/ServiceContracts/IEmployeeService.cs
+++ b/Service/ServiceContracts/IEmployeeService.cs
@@ -330,5 +330,9 @@ namespace BeWo.Service.ServiceContracts
[FaultContract(typeof(BeWoFault))]
[OperationContract]
CompactEmployeeDC GetActiveCompactEmployeeWithOid(long employeeOid);
+
+ [FaultContract(typeof(BeWoFault))]
+ [OperationContract]
+ void InsertNewArbeitsZeit(ArbeitszeitDC arbeitszeit, ArbeitszeitEintragDC arbeitszeitEintrag);
}
}
\ No newline at end of file
diff --git a/Service/ServiceContracts/IOperationsService.cs b/Service/ServiceContracts/IOperationsService.cs
index 517f31940..4992b8ec7 100644
--- a/Service/ServiceContracts/IOperationsService.cs
+++ b/Service/ServiceContracts/IOperationsService.cs
@@ -596,14 +596,31 @@ namespace BeWo.Service.ServiceContracts
[FaultContract(typeof(BeWoFault))]
[OperationContract]
- void DeleteVertretung(VertretungDC vert);
+ void DeleteVertretung(long vert);
[FaultContract(typeof(BeWoFault))]
[OperationContract]
- void UpdateVertretung(VertretungDC vert);
+ void UpdateVertretung(VertretungDC vert, AbsenceReasonDC absenceReason);
[FaultContract(typeof(BeWoFault))]
[OperationContract]
VertretungsListeDC VertretungsListe(DateTime absenceTime);
+
+ [FaultContract(typeof(BeWoFault))]
+ [OperationContract]
+ VertretungDC CreateVertretung(long mitarbeiterOid, long klientenOid, long vertretenderMitarbeiterOid,
+ long absencetimeOid, string notiz, DateTime vertretungszeitraumVon, DateTime vertretungszeitraumBis);
+
+ [FaultContract(typeof(BeWoFault))]
+ [OperationContract]
+ void DeletAbsenceTime(long absenceoid);
+
+ [FaultContract(typeof(BeWoFault))]
+ [OperationContract]
+ void DeactivateAbsenceTime(Dictionary pOid2Version);
+
+ [FaultContract(typeof(BeWoFault))]
+ [OperationContract]
+ ArbeitszeitListeDC GetAlleArbeitszeiten(long employeeOid);
}
}
\ No newline at end of file
diff --git a/Service/ServiceImplementations/EmployeeServiceImp.cs b/Service/ServiceImplementations/EmployeeServiceImp.cs
index 0c2a9ff6e..06f2c3866 100644
--- a/Service/ServiceImplementations/EmployeeServiceImp.cs
+++ b/Service/ServiceImplementations/EmployeeServiceImp.cs
@@ -1240,6 +1240,27 @@ namespace BeWo.Service.ServiceImplementations
}
}
+ public void InsertNewArbeitsZeit(ArbeitszeitDC arbeitszeit, ArbeitszeitEintragDC arbeitszeitEintrag)
+ {
+ try
+ {
+ var x = MapperFactory.ArbeitszeitDC_Arbeitszeit.MapToNewEntity(arbeitszeit);
+
+ arbeitszeitEintrag.ArbeitszeitOid = x.Oid;
+
+ var y = MapperFactory.ArbeitszeitEintragDC_ArbeitszeitEintrag.MapToNewEntity(arbeitszeitEintrag);
+
+ DAOFactory.GenericDAO.Insert(x);
+
+ DAOFactory.GenericDAO.Insert(y);
+
+ }
+ catch (Exception e)
+ {
+ throw Utils.CreateBeWoFaultException(e);
+ }
+ }
+
}
}
\ No newline at end of file
diff --git a/Service/ServiceImplementations/OperationsServiceImp.cs b/Service/ServiceImplementations/OperationsServiceImp.cs
index bfef5d66d..ff1c1524e 100644
--- a/Service/ServiceImplementations/OperationsServiceImp.cs
+++ b/Service/ServiceImplementations/OperationsServiceImp.cs
@@ -3467,7 +3467,35 @@ namespace BeWo.Service.ServiceImplementations
}
}
- //all new Audi ##############################################
+ //####################### Schulbegleitender Dienst ##############################################
+
+ public void DeletAbsenceTime(long absenceoid)
+ {
+ try
+ {
+ var x = DAOFactory.GenericDAO.GetByID(absenceoid);
+
+ DAOFactory.GenericDAO.Delete(x);
+
+ }
+ catch (Exception e)
+ {
+ throw Utils.CreateBeWoFaultException(e);
+ }
+ }
+
+ public void DeactivateAbsenceTime( Dictionary pOid2Version)
+ {
+ try
+ {
+ ServiceLogic.SetActivationType(pOid2Version, ActivationTypeId.Deleted);
+ }
+ catch (Exception e)
+ {
+ throw Utils.CreateBeWoFaultException(e);
+ }
+ }
+
public ListGetAllVertretungen()
{
try
@@ -3550,11 +3578,11 @@ namespace BeWo.Service.ServiceImplementations
}
}
- public void DeleteVertretung(VertretungDC vert)
+ public void DeleteVertretung(long vert)
{
try
{
- var origVertretung = DAOFactory.GenericDAO.LoadByID(vert.VertretungOid.Value);
+ var origVertretung = DAOFactory.GenericDAO.LoadByID(vert);
DAOFactory.GenericDAO.Delete(origVertretung);
}
@@ -3564,7 +3592,7 @@ namespace BeWo.Service.ServiceImplementations
}
}
- public void UpdateVertretung(VertretungDC vert)
+ public void UpdateVertretung(VertretungDC vert, AbsenceReasonDC absenceReason)
{
try
{
@@ -3574,6 +3602,26 @@ namespace BeWo.Service.ServiceImplementations
MapperFactory.VertretungDC_Vertretung.MergeWithEntity(vert, origVertretung);
DAOFactory.GenericDAO.Update(origVertretung);
+
+
+ //Upadate AbsenceTime
+ var origAbsenceTime = DAOFactory.GenericDAO.LoadByID(vert.AbsenceTimeOid.Value);
+
+ //AbsenceReason abs = new AbsenceReason();
+
+ //abs.Oid = absenceReason.AbsenceReasonOid;
+ //abs.Description = absenceReason.Description;
+ //abs.BillableMinutes = absenceReason.BillableMinutes;
+ //abs.Color = absenceReason.Color;
+
+ //MapperFactory.AbsenceReasonDC_AbsenceReason.MergeWithEntity(absenceReason,abs);
+
+ var abs = DAOFactory.GenericDAO.LoadByID(absenceReason.AbsenceReasonOid.Value);
+
+ origAbsenceTime.AbsenceReason = abs;
+
+ DAOFactory.GenericDAO.Update(origAbsenceTime);
+
}
catch (Exception e)
{
@@ -3581,8 +3629,8 @@ namespace BeWo.Service.ServiceImplementations
}
}
- //Muss noch generiert werden
- public void CreateVertretung(long mitarbeiterOid, long klientenOid,long vertretenderMitarbeiter,string notiz, DateTime vertretungszeitraumVon, DateTime vertretungszeitraumBis)
+ //verbesserungswürdig
+ public VertretungDC CreateVertretung(long mitarbeiterOid, long klientenOid,long vertretenderMitarbeiterOid,long absencetimeOid,string notiz, DateTime vertretungszeitraumVon, DateTime vertretungszeitraumBis)
{
try
{
@@ -3591,18 +3639,19 @@ namespace BeWo.Service.ServiceImplementations
{
EmployeeOid = mitarbeiterOid,
CustomerOid = klientenOid,
- VertretenderMitarbeiterOid = vertretenderMitarbeiter,
+ VertretenderMitarbeiterOid = vertretenderMitarbeiterOid,
Notice = notiz,
VertretungsZeitraumVon = vertretungszeitraumVon,
VertretungsZeitraumBis = vertretungszeitraumBis,
-
+ AbsenceTimeOid = absencetimeOid
};
+
var x = MapperFactory.VertretungDC_Vertretung.MapToNewEntity(ahh);
DAOFactory.GenericDAO.Insert(x);
-
+ return ahh;
}
catch (Exception e)
{
@@ -3657,6 +3706,24 @@ namespace BeWo.Service.ServiceImplementations
}
//#################################################################
+
+ public ArbeitszeitListeDC GetAlleArbeitszeiten(long employeeOid)
+ {
+ try
+ {
+ var x = DAOFactory.SearchDAO.FindEmployeeArbeitszeitListe(employeeOid);
+
+ var aff = MapperFactory.ArbeitszeitListeDC_ArbeitszeitListe.MapToNewDC(x);
+
+
+ return aff;
+ }
+ catch (Exception e)
+ {
+ throw Utils.CreateBeWoFaultException(e);
+ }
+ }
+
#endregion
#endregion
diff --git a/Shared/DataContracts/ArbeitszeitDC.cs b/Shared/DataContracts/ArbeitszeitDC.cs
new file mode 100644
index 000000000..3eb841f52
--- /dev/null
+++ b/Shared/DataContracts/ArbeitszeitDC.cs
@@ -0,0 +1,30 @@
+using System;
+using System.Collections.Generic;
+using System.Runtime.Serialization;
+
+namespace BS.Shared.DataContracts
+{
+ [DataContract]
+ public class ArbeitszeitDC : IDataContract
+ {
+ [DataMember]
+ public long? ArbeitszeitOid { get; set; }
+
+ [DataMember]
+ public long? EmployeeOid { get; set; }
+
+ [DataMember]
+ public DateTime GueltigVon { get; set; }
+
+ [DataMember]
+ public DateTime GueltigBis { get; set; }
+
+ [DataMember]
+ public string Notice { get; set; }
+
+ [DataMember]
+ public List Eintraege { get; set; }
+
+
+ }
+}
\ No newline at end of file
diff --git a/Shared/DataContracts/ArbeitszeitEintragDC.cs b/Shared/DataContracts/ArbeitszeitEintragDC.cs
new file mode 100644
index 000000000..3e01cf74f
--- /dev/null
+++ b/Shared/DataContracts/ArbeitszeitEintragDC.cs
@@ -0,0 +1,30 @@
+using System;
+using System.Collections.Generic;
+using System.Runtime.Serialization;
+
+namespace BS.Shared.DataContracts
+{
+ [DataContract]
+ public class ArbeitszeitEintragDC : IDataContract
+ {
+ [DataMember]
+ public long? ArbeitszeitEintragOid { get; set; }
+
+ [DataMember]
+ public long? ArbeitszeitOid { get; set; }
+
+ [DataMember]
+ public AppointmentDayOfWeek Tag { get; set; }
+
+ [DataMember]
+ public string UhrzeitVon { get; set; }
+
+ [DataMember]
+ public string UhrzeitBis { get; set; }
+
+ [DataMember]
+ public string Notice { get; set; }
+
+
+ }
+}
\ No newline at end of file
diff --git a/Shared/DataContracts/ArbeitszeitListeDC.cs b/Shared/DataContracts/ArbeitszeitListeDC.cs
new file mode 100644
index 000000000..b9b055060
--- /dev/null
+++ b/Shared/DataContracts/ArbeitszeitListeDC.cs
@@ -0,0 +1,22 @@
+using System;
+using System.Collections.Generic;
+using System.Runtime.Serialization;
+using BS.Shared.DataContracts.Compact;
+
+namespace BS.Shared.DataContracts
+{
+ [DataContract]
+ public class ArbeitszeitListeDC : IDataContract
+ {
+ [DataMember]
+ public long? VertretungslisteOid { get; set; }
+
+ [DataMember]
+ public List Arbeitszeitliste { get; set; }
+
+ [DataMember]
+ public List ArbeitszeitEintragliste { get; set; }
+
+
+ }
+}
\ No newline at end of file
diff --git a/Shared/DataContracts/EmployeeDC.cs b/Shared/DataContracts/EmployeeDC.cs
index 5cff7ab49..6c4d65ebd 100644
--- a/Shared/DataContracts/EmployeeDC.cs
+++ b/Shared/DataContracts/EmployeeDC.cs
@@ -18,6 +18,9 @@ namespace BS.Shared.DataContracts
[DataMember]
public List Contracts { get; set; }
+ [DataMember]
+ public List Arbeitszeit { get; set; }
+
//[DataMember]
//public int CancellationPeriod { get; set; }
diff --git a/Shared/Shared.csproj b/Shared/Shared.csproj
index 84aa27e2c..c18e49d55 100644
--- a/Shared/Shared.csproj
+++ b/Shared/Shared.csproj
@@ -170,6 +170,9 @@
+
+
+