diff --git a/BeWo/BeWo.csproj b/BeWo/BeWo.csproj
index 9b363ba8f..8c0767f50 100644
--- a/BeWo/BeWo.csproj
+++ b/BeWo/BeWo.csproj
@@ -643,7 +643,6 @@
-
diff --git a/BeWo/SchulbegleitenderDienst/NewSchulbegleitenderDienstView.xaml.cs b/BeWo/SchulbegleitenderDienst/NewSchulbegleitenderDienstView.xaml.cs
index 772a8623c..9e3a59314 100644
--- a/BeWo/SchulbegleitenderDienst/NewSchulbegleitenderDienstView.xaml.cs
+++ b/BeWo/SchulbegleitenderDienst/NewSchulbegleitenderDienstView.xaml.cs
@@ -265,6 +265,11 @@ namespace BeWo.SchulbegleitenderDienst
}
}
+
+ private Dictionary> a;
+
+ private Dictionary> klientb;
+
private void GetWochenDienstFromItems(DateTime time)
{
_itemsWochen.Clear();
@@ -275,9 +280,13 @@ namespace BeWo.SchulbegleitenderDienst
foreach (var item in _items)
{
- Dictionary> a = new Dictionary>();
+ //Dictionary> a = new Dictionary>();
- Dictionary> klientb = new Dictionary>();
+ //Dictionary> klientb = new Dictionary>();
+
+ a = new Dictionary>();
+
+ klientb = new Dictionary>();
DateTime anfangDt;
DateTime endeDt;
@@ -292,6 +301,7 @@ namespace BeWo.SchulbegleitenderDienst
DateTime freitagDt = startdt.Date.AddDays(4);
DateTime samstagDt = startdt.Date.AddDays(5);
+
Wochenansichten wwk = new Wochenansichten()
{
MaKrank = item.KrankerMitarbeiter,
@@ -299,287 +309,24 @@ namespace BeWo.SchulbegleitenderDienst
MaFrei = item.Vertretung
};
-
- #region Wochenansicht Mo - Sa
-
- if (anfangDt.Date <= montagDt && montagDt <= endeDt.Date )
- {
- if (item.VertretungsDC != null)
- {
- if (item.VertretungsDC.VertretungsZeitraumVon <= montagDt &&
- item.VertretungsDC.VertretungsZeitraumBis >= montagDt)
- {
- //########## Original ##################
- Dictionary mo = new Dictionary();
- mo.Add(montagDt, item);
-
- a.Add("VertretungMo", mo);
-
- klientb.Add("EingesetztBeiMo", mo);
-
- wwk.VertretungMo = item.Vertretung;
- wwk.EingesetztBeiMo = item.Kunde;
-
- wwk.Mo = WochenanzeigeHinzufügen(montagDt, item.Wochentagsarbeitszeit);
- //######################################
- }
- else
- {
- wwk.VertretungMo = "";
- wwk.EingesetztBeiMo = "";
- }
- }
- else
- {
- Dictionary mo = new Dictionary();
- mo.Add(montagDt, item);
-
- a.Add("VertretungMo", mo);
-
- klientb.Add("EingesetztBeiMo", mo);
-
- wwk.VertretungMo = item.Vertretung;
- wwk.EingesetztBeiMo = item.Kunde;
-
- wwk.Mo = WochenanzeigeHinzufügen(montagDt, item.Wochentagsarbeitszeit);
- } //bis hierhin nicht original
- }
- else
- {
- //###Original
- wwk.VertretungMo = " ";
- wwk.EingesetztBeiMo = " ";
- //#######
- }
-
- if (anfangDt.Date <= dienstagDt && dienstagDt <= endeDt.Date)
- {
- if (item.VertretungsDC != null)
- {
- if (item.VertretungsDC.VertretungsZeitraumVon <= mittwochDt &&
- item.VertretungsDC.VertretungsZeitraumBis >= mittwochDt)
- {
- Dictionary di = new Dictionary();
- di.Add(dienstagDt, item);
-
- a.Add("VertretungDi", di);
-
- klientb.Add("EingesetztBeiDi", di);
-
- wwk.VertretungDi = item.Vertretung;
- wwk.EingesetztBeiDi = item.Kunde;
-
- wwk.Di = WochenanzeigeHinzufügen(dienstagDt, item.Wochentagsarbeitszeit);
- }
- else
- {
- wwk.VertretungDi = "";
- wwk.EingesetztBeiDi = "";
- }
- }
- else
- {
- Dictionary di = new Dictionary();
- di.Add(dienstagDt, item);
-
- a.Add("VertretungDi", di);
-
- klientb.Add("EingesetztBeiDi", di);
-
- wwk.VertretungDi = item.Vertretung;
- wwk.EingesetztBeiDi = item.Kunde;
-
- wwk.Di = WochenanzeigeHinzufügen(dienstagDt, item.Wochentagsarbeitszeit);
- }
- }
- else
- {
- wwk.VertretungDi = " ";
- wwk.EingesetztBeiDi = " ";
- }
-
- if (anfangDt.Date <= mittwochDt && mittwochDt <= endeDt.Date)
- {
- if (item.VertretungsDC != null)
- {
- if (item.VertretungsDC.VertretungsZeitraumVon <= mittwochDt &&
- item.VertretungsDC.VertretungsZeitraumBis >= mittwochDt)
- {
- Dictionary mi = new Dictionary();
- mi.Add(mittwochDt, item);
-
- a.Add("VertretungMi", mi);
- klientb.Add("EingesetztBeiMi", mi);
-
- wwk.VertretungMi = item.Vertretung;
- wwk.EingesetztBeiMi = item.Kunde;
-
- wwk.Mi = WochenanzeigeHinzufügen(mittwochDt, item.Wochentagsarbeitszeit);
- }
- else
- {
- wwk.VertretungMi = "";
- wwk.EingesetztBeiMi = "";
- }
- }
- else
- {
- Dictionary mi = new Dictionary();
- mi.Add(mittwochDt, item);
-
- a.Add("VertretungMi", mi);
- klientb.Add("EingesetztBeiMi", mi);
-
- wwk.VertretungMi = item.Vertretung;
- wwk.EingesetztBeiMi = item.Kunde;
-
- wwk.Mi = WochenanzeigeHinzufügen(mittwochDt, item.Wochentagsarbeitszeit);
- }
- }
- else
- {
- wwk.VertretungMi = " ";
- wwk.EingesetztBeiMi = " ";
- }
-
-
- if (anfangDt.Date <= donnerstagDt && donnerstagDt <= endeDt.Date)
- {
- if (item.VertretungsDC != null)
- {
- if (item.VertretungsDC.VertretungsZeitraumVon <= donnerstagDt &&
- item.VertretungsDC.VertretungsZeitraumBis >= donnerstagDt)
- {
- Dictionary Do = new Dictionary();
- Do.Add(donnerstagDt, item);
-
- a.Add("VertretungDo", Do);
- klientb.Add("EingesetztBeiDo", Do);
-
- wwk.VertretungDo = item.Vertretung;
- wwk.EingesetztBeiDo = item.Kunde;
-
- wwk.Do = WochenanzeigeHinzufügen(donnerstagDt, item.Wochentagsarbeitszeit);
- }
- else
- {
- wwk.VertretungDo = "";
- wwk.EingesetztBeiDo = "";
- }
- }
- else
- {
- Dictionary Do = new Dictionary();
- Do.Add(donnerstagDt, item);
-
- a.Add("VertretungDo", Do);
- klientb.Add("EingesetztBeiDo", Do);
-
- wwk.VertretungDo = item.Vertretung;
- wwk.EingesetztBeiDo = item.Kunde;
-
- wwk.Do = WochenanzeigeHinzufügen(donnerstagDt, item.Wochentagsarbeitszeit);
- }
- }
- else
- {
- wwk.VertretungDo = " ";
- wwk.EingesetztBeiDo = " ";
- }
-
- if (anfangDt.Date <= freitagDt && freitagDt <= endeDt.Date)
- {
- if (item.VertretungsDC != null)
- {
- if (item.VertretungsDC.VertretungsZeitraumVon <= freitagDt &&
- item.VertretungsDC.VertretungsZeitraumBis >= freitagDt)
- {
- Dictionary fr = new Dictionary();
- fr.Add(freitagDt, item);
-
- a.Add("VertretungFr", fr);
- klientb.Add("EingesetztBeiFr", fr);
-
- wwk.VertretungFr = item.Vertretung;
- wwk.EingesetztBeiFr = item.Kunde;
-
- wwk.Fr = WochenanzeigeHinzufügen(freitagDt, item.Wochentagsarbeitszeit);
- }
- else
- {
- wwk.VertretungFr = "";
- wwk.EingesetztBeiFr = "";
- }
- }
- else
- {
- //###Origianl###
- Dictionary fr = new Dictionary();
- fr.Add(freitagDt, item);
-
- a.Add("VertretungFr", fr);
- klientb.Add("EingesetztBeiFr", fr);
-
- wwk.VertretungFr = item.Vertretung;
- wwk.EingesetztBeiFr = item.Kunde;
-
- wwk.Fr = WochenanzeigeHinzufügen(freitagDt, item.Wochentagsarbeitszeit);
- //###Original###
- }
- }
- else
- {
- wwk.VertretungFr = " ";
- wwk.EingesetztBeiFr = " ";
- }
-
- if (anfangDt.Date <= samstagDt && samstagDt <= endeDt.Date)
- {
- if (item.VertretungsDC != null)
- {
- if (item.VertretungsDC.VertretungsZeitraumVon <= samstagDt &&
- item.VertretungsDC.VertretungsZeitraumBis >= samstagDt)
- {
- Dictionary sa = new Dictionary();
- sa.Add(samstagDt, item); // item.vertreteroid
-
- a.Add("VertretungSa", sa);
- klientb.Add("EingesetztBeiSa", sa);
-
- wwk.VertretungSa = item.Vertretung;
- wwk.EingesetztBeiSa = item.Kunde;
-
- wwk.Sa = WochenanzeigeHinzufügen(samstagDt, item.Wochentagsarbeitszeit);
-
- }
- else
- {
- wwk.VertretungSa = "";
- wwk.EingesetztBeiSa = "";
- }
- }
- else
- {
- Dictionary sa = new Dictionary();
- sa.Add(samstagDt, item); // item.vertreteroid
-
- a.Add("VertretungSa", sa);
- klientb.Add("EingesetztBeiSa", sa);
-
- wwk.VertretungSa = item.Vertretung;
- wwk.EingesetztBeiSa = item.Kunde;
-
- wwk.Sa = WochenanzeigeHinzufügen(samstagDt, item.Wochentagsarbeitszeit);
- }
- }
- else
- {
- wwk.VertretungSa = " ";
- wwk.EingesetztBeiSa = " ";
- }
-
- #endregion
-
+
+ // Montag | 0
+ wwk = WochentagVerarbeitung(anfangDt, endeDt, montagDt, item, "VertretungMo", "EingesetztBeiMo",wwk,0);
+
+ //Dienstag | 1
+ wwk = WochentagVerarbeitung(anfangDt, endeDt, dienstagDt, item, "VertretungDi", "EingesetztBeiDi",wwk,1);
+
+ //Mittwoch | 2
+ wwk = WochentagVerarbeitung(anfangDt, endeDt, mittwochDt, item, "VertretungMi", "EingesetztBeiMi",wwk,2);
+
+ //Donnerstag | 3
+ wwk = WochentagVerarbeitung(anfangDt, endeDt, donnerstagDt, item, "VertretungDo", "EingesetztBeiDo",wwk,3);
+
+ //Freitag | 4
+ wwk = WochentagVerarbeitung(anfangDt, endeDt, freitagDt, item, "VertretungFr", "EingesetztBeiFr",wwk,4);
+
+ //Samstag | 5
+ wwk = WochentagVerarbeitung(anfangDt, endeDt, samstagDt, item, "VertretungSa", "EingesetztBeiSa",wwk,5);
wwk.VertretungsWoche = a;
@@ -614,6 +361,169 @@ namespace BeWo.SchulbegleitenderDienst
return "";
}
+ private Wochenansichten WochentagVerarbeitung(DateTime anfangDt, DateTime endeDt, DateTime wochentagDt, SchulbegleitenderDienst item,string vertretungstag, string einsetzungstag,Wochenansichten wwk ,int i)
+ {
+ if (anfangDt.Date <= wochentagDt && wochentagDt <= endeDt.Date)
+ {
+ if (item.VertretungsDC != null)
+ {
+ if (item.VertretungsDC.VertretungsZeitraumVon <= wochentagDt &&
+ item.VertretungsDC.VertretungsZeitraumBis >= wochentagDt)
+ {
+ Dictionary sa = new Dictionary();
+ sa.Add(wochentagDt, item); // item.vertreteroid
+
+ a.Add(vertretungstag, sa);
+ klientb.Add(einsetzungstag, sa);
+
+ switch (i)
+ {
+ case 0:
+ wwk.VertretungMo = item.Vertretung;
+ wwk.EingesetztBeiMo = item.Kunde;
+ wwk.Mo = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
+ break;
+ case 1:
+ wwk.VertretungDi = item.Vertretung;
+ wwk.EingesetztBeiDi = item.Kunde;
+ wwk.Di = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
+ break;
+ case 2:
+ wwk.VertretungMi = item.Vertretung;
+ wwk.EingesetztBeiMi = item.Kunde;
+ wwk.Mi = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
+ break;
+ case 3:
+ wwk.VertretungDo = item.Vertretung;
+ wwk.EingesetztBeiDo = item.Kunde;
+ wwk.Do = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
+ break;
+ case 4:
+ wwk.VertretungFr = item.Vertretung;
+ wwk.EingesetztBeiFr = item.Kunde;
+ wwk.Fr = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
+ break;
+ case 5:
+ wwk.VertretungSa = item.Vertretung;
+ wwk.EingesetztBeiSa = item.Kunde;
+ wwk.Sa = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
+ break;
+ }
+
+ }
+ else
+ {
+ switch (i)
+ {
+ case 0:
+ wwk.VertretungMo = "";
+ wwk.EingesetztBeiMo = "";
+ break;
+ case 1:
+ wwk.VertretungDi = "";
+ wwk.EingesetztBeiDi = "";
+ break;
+ case 2:
+ wwk.VertretungMi = "";
+ wwk.EingesetztBeiMi = "";
+ break;
+ case 3:
+ wwk.VertretungDo = "";
+ wwk.EingesetztBeiDo = "";
+ break;
+ case 4:
+ wwk.VertretungFr = "";
+ wwk.EingesetztBeiFr = "";
+ break;
+ case 5:
+ wwk.VertretungSa = "";
+ wwk.EingesetztBeiSa = "";
+ break;
+ }
+ }
+ }
+ else
+ {
+ Dictionary sa = new Dictionary();
+ sa.Add(wochentagDt, item); // item.vertreteroid
+
+ a.Add(vertretungstag, sa);
+ klientb.Add(einsetzungstag, sa);
+
+ switch (i)
+ {
+ case 0:
+ wwk.VertretungMo = item.Vertretung;
+ wwk.EingesetztBeiMo = item.Kunde;
+ wwk.Mo = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
+ break;
+ case 1:
+ wwk.VertretungDi = item.Vertretung;
+ wwk.EingesetztBeiDi = item.Kunde;
+ wwk.Di = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
+ break;
+ case 2:
+ wwk.VertretungMi = item.Vertretung;
+ wwk.EingesetztBeiMi = item.Kunde;
+ wwk.Mi = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
+ break;
+ case 3:
+ wwk.VertretungDo = item.Vertretung;
+ wwk.EingesetztBeiDo = item.Kunde;
+ wwk.Do = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
+ break;
+ case 4:
+ wwk.VertretungFr = item.Vertretung;
+ wwk.EingesetztBeiFr = item.Kunde;
+ wwk.Fr = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
+ break;
+ case 5:
+ wwk.VertretungSa = item.Vertretung;
+ wwk.EingesetztBeiSa = item.Kunde;
+ wwk.Sa = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
+ break;
+ }
+ }
+ }
+ else
+ {
+ switch (i)
+ {
+ case 0:
+ wwk.VertretungMo = " ";
+ wwk.EingesetztBeiMo = " ";
+ break;
+ case 1:
+ wwk.VertretungDi = " ";
+ wwk.EingesetztBeiDi = " ";
+ break;
+ case 2:
+ wwk.VertretungMi = " ";
+ wwk.EingesetztBeiMi = " ";
+ break;
+ case 3:
+ wwk.VertretungDo = " ";
+ wwk.EingesetztBeiDo = " ";
+ break;
+ case 4:
+ wwk.VertretungFr = " ";
+ wwk.EingesetztBeiFr = " ";
+ break;
+ case 5:
+ wwk.VertretungSa = " ";
+ wwk.EingesetztBeiSa = " ";
+ break;
+ }
+
+ }
+
+ return wwk;
+
+
+ }
+
+
+
private SchulbegleitenderDienst Vertretungsgedoense(SchulbegleitenderDienst xyc, VertretungsListeItemsDC item,int i)
{
if (item.Vertretung.VertretungsZeitraumVon.Date != item.Vertretung.VertretungsZeitraumBis.Date)
@@ -793,7 +703,7 @@ namespace BeWo.SchulbegleitenderDienst
{
bool xsf = false;
- if (!popupedit_MitarbeiterVertretungSearch.Text.Equals("") && ComboBoxMitarbeiterVertretung.SelectedValue != null ) //zusätzliche abfragen hinzufügen
+ if (!popupedit_MitarbeiterVertretungSearch.Text.Equals("") && ComboBoxMitarbeiterVertretung.SelectedValue != null )
{
if (MVCheckBox.IsChecked.Value )
@@ -802,9 +712,43 @@ namespace BeWo.SchulbegleitenderDienst
}
else
{
- if (!MVDatepicker_UhrzeitVon.Text.Equals("") && !MVDatepicker_UhrzeitBis.Text.Equals(""))
- {
- xsf = true;
+ if (!MVDatepicker_UhrzeitVon.Text.Equals("") && !MVDatepicker_UhrzeitBis.Text.Equals(""))
+ {
+ string uVon="";
+ string uBis="";
+
+ if (MVDatepicker_UhrzeitVon.Text.Length < 5)
+ {
+ uVon = "0" + MVDatepicker_UhrzeitVon.Text;
+ }
+ else
+ {
+ uVon = MVDatepicker_UhrzeitVon.Text;
+ }
+
+ if (MVDatepicker_UhrzeitBis.Text.Length < 5)
+ {
+ uBis = "0" + MVDatepicker_UhrzeitBis.Text;
+ }
+ else
+ {
+ uBis = MVDatepicker_UhrzeitBis.Text;
+ }
+
+ var von = DateTime.ParseExact(uVon, "HH:mm", CultureInfo.CurrentCulture);
+
+ var bis = DateTime.ParseExact(uBis, "HH:mm", CultureInfo.CurrentCulture);
+
+
+ if (von <= bis)
+ {
+ xsf = true;
+ }
+ else
+ {
+ MessageBox.Show("Die Startzeit muss kleiner als die Endzeit sein.");
+ }
+
}
else
{
@@ -855,10 +799,28 @@ namespace BeWo.SchulbegleitenderDienst
}
else
{
- var xvon = MVDatepicker_UhrzeitVon.Text;
+ string xvon = "";
+ string yvon = "";
+
+ if (MVDatepicker_UhrzeitVon.Text.Length < 5){
+ xvon = "0" + MVDatepicker_UhrzeitVon.Text;
+ }
+ else
+ {
+ xvon = MVDatepicker_UhrzeitVon.Text;
+ }
+
+ if (MVDatepicker_UhrzeitBis.Text.Length < 5)
+ {
+ yvon = "0" + MVDatepicker_UhrzeitBis.Text;
+ }
+ else
+ {
+ yvon = MVDatepicker_UhrzeitBis.Text;
+ }
+
DateTime dateTimeStart = DateTime.ParseExact(xvon, "HH:mm", CultureInfo.CurrentCulture);
-
- var yvon = MVDatepicker_UhrzeitBis.Text;
+
DateTime dateTimeEnd = DateTime.ParseExact(yvon, "HH:mm", CultureInfo.CurrentCulture);
var start = new DateTime(MVDatepickerVon.DateTime.Date.Year, MVDatepickerVon.DateTime.Date.Month, MVDatepickerVon.DateTime.Date.Day, dateTimeStart.Hour, dateTimeStart.Minute, dateTimeStart.Second);
@@ -946,7 +908,7 @@ namespace BeWo.SchulbegleitenderDienst
{
bool xsf = false;
- if (!popupedit_KlientVertretungSearch.Text.Equals("") && ComboBoxKlientVertretung.SelectedValue != null)
+ if (!popupedit_KlientVertretungSearch.Text.Equals("") && ComboBoxKlientVertretung.SelectedValue != null)
{
if (KVCheckBox.IsChecked.Value)
{
@@ -954,9 +916,42 @@ namespace BeWo.SchulbegleitenderDienst
}
else
{
- if (!KVDatepicker_UhrzeitVon.Text.Equals("") && !KVDatepicker_UhrzeitBis.Text.Equals(""))
+ if (!KVDatepicker_UhrzeitVon.Text.Equals("") && !KVDatepicker_UhrzeitBis.Text.Equals(""))
{
- xsf = true;
+ string uVon="";
+ string uBis="";
+
+ if (KVDatepicker_UhrzeitVon.Text.Length < 5)
+ {
+ uVon = "0" + KVDatepicker_UhrzeitVon.Text;
+ }
+ else
+ {
+ uVon = KVDatepicker_UhrzeitVon.Text;
+ }
+
+ if (KVDatepicker_UhrzeitBis.Text.Length < 5)
+ {
+ uBis = "0" + KVDatepicker_UhrzeitBis.Text;
+ }
+ else
+ {
+ uBis = KVDatepicker_UhrzeitBis.Text;
+ }
+
+ var von = DateTime.ParseExact(uVon, "HH:mm", CultureInfo.CurrentCulture);
+
+ var bis = DateTime.ParseExact(uBis, "HH:mm", CultureInfo.CurrentCulture);
+
+
+ if (von <= bis)
+ {
+ xsf = true;
+ }
+ else
+ {
+ MessageBox.Show("Die Startzeit muss kleiner als die Endzeit sein.");
+ }
}
else
{
@@ -1006,10 +1001,29 @@ namespace BeWo.SchulbegleitenderDienst
}
else
{
- var xvon = KVDatepicker_UhrzeitVon.Text;
+ string xvon = "";
+ string yvon = "";
+
+ if (KVDatepicker_UhrzeitVon.Text.Length < 5)
+ {
+ xvon = "0" + KVDatepicker_UhrzeitVon.Text;
+ }
+ else
+ {
+ xvon = KVDatepicker_UhrzeitVon.Text;
+ }
+
+ if (KVDatepicker_UhrzeitBis.Text.Length < 5)
+ {
+ yvon = "0" + KVDatepicker_UhrzeitBis.Text;
+ }
+ else
+ {
+ yvon = KVDatepicker_UhrzeitBis.Text;
+ }
+
DateTime dateTimeStart = DateTime.ParseExact(xvon, "HH:mm", CultureInfo.CurrentCulture);
- var yvon = KVDatepicker_UhrzeitBis.Text;
DateTime dateTimeEnd = DateTime.ParseExact(yvon, "HH:mm", CultureInfo.CurrentCulture);
var start = new DateTime(KVDatepickerVon.DateTime.Date.Year, KVDatepickerVon.DateTime.Date.Month, KVDatepickerVon.DateTime.Date.Day, dateTimeStart.Hour, dateTimeStart.Minute, dateTimeStart.Second);
@@ -1061,11 +1075,11 @@ namespace BeWo.SchulbegleitenderDienst
{
//Es gibt noch probleme -> Button anclickbar obwohl nicht sichtbar
//Rufe hier ein Neues Fenster auf das VErschiedenste Settings bearbeitet
-
+
//Button ifo =(Button) sender;
//var ifo = sender;
-
-
+
+
//if (CheckColumnIfFocused())
//{
@@ -1167,7 +1181,6 @@ namespace BeWo.SchulbegleitenderDienst
if (a.Mitarbeiteroid != 0)
{
-
if (_view == null)
{
_view = new SchulbegleitenderDienstBearbeitungsView(1, a.StartD, a.EndD, Datepicker.DateTime,a.Klientoid);
@@ -1183,8 +1196,7 @@ namespace BeWo.SchulbegleitenderDienst
_view.RaiseCustomEvent += new EventHandler(newWindow_RaiseCustomEvent);
_view.ShowDialog();
}
-
-
+
}else
{
MessageBox.Show("Du kannst einem kranken Klienten keine Mitarbeiter hinzufügen.");
diff --git a/BeWo/SchulbegleitenderDienst/SchulbegleitenderDienstBearbeitungsView.xaml b/BeWo/SchulbegleitenderDienst/SchulbegleitenderDienstBearbeitungsView.xaml
index 8c3ab1fea..4ff059503 100644
--- a/BeWo/SchulbegleitenderDienst/SchulbegleitenderDienstBearbeitungsView.xaml
+++ b/BeWo/SchulbegleitenderDienst/SchulbegleitenderDienstBearbeitungsView.xaml
@@ -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="750" Width="850" WindowStartupLocation="CenterScreen"
+ Title="Vertretung auswählen" Height="650" Width="700" WindowStartupLocation="CenterScreen"
ResizeMode="CanResizeWithGrip" WindowStyle="None" Background="Transparent">
@@ -18,48 +18,45 @@
-
-
-
-
-
+
+
+
+
+
-
+
+
-
-
-
+
+
-
+
-
-
-
+
-
-
+
-
+
@@ -67,101 +64,127 @@
-
+
-
-
-
+
-
-
+
-
+
-
+
-
+
+
-
-
-
+
-
-
+
-
+
+
+
-
+
+
-
-
-
+
-
-
+
-
+
-
+
-
-
+
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -253,12 +276,12 @@
-
+
-
+
diff --git a/BeWo/SchulbegleitenderDienst/SchulbegleitenderDienstBearbeitungsView.xaml.cs b/BeWo/SchulbegleitenderDienst/SchulbegleitenderDienstBearbeitungsView.xaml.cs
index 379323b45..84d4219d2 100644
--- a/BeWo/SchulbegleitenderDienst/SchulbegleitenderDienstBearbeitungsView.xaml.cs
+++ b/BeWo/SchulbegleitenderDienst/SchulbegleitenderDienstBearbeitungsView.xaml.cs
@@ -57,8 +57,6 @@ namespace BeWo.SchulbegleitenderDienst
private List _dataListEmployee = new List();
- private SchulbegleitenderZugehörigkeitsTyp zugehoerigkeitsTyp;
-
private readonly long? _klientOid = 10;
List aktuelleDaten = new List();
@@ -84,7 +82,7 @@ namespace BeWo.SchulbegleitenderDienst
_startDate = startdate;
_endDate = enddate;
- //_klientOid = klientOid;
+ _klientOid = klientOid;
if (_startDate != null)
KVDatepickerVon.EditValue = _startDate;
@@ -107,22 +105,19 @@ namespace BeWo.SchulbegleitenderDienst
}
else if (y == 2)
{
- //y == 2 Klientenauswahl
+ //y == 2 Klientenauswahl --> muss das nicht ehh anders angepasst werden
//rootGroupBoxKlient.Visibility = Visibility.Visible;
}
+ //setze Ort und olz des Klienten zur ansicht
+ SetKlientOrtAndPlz();
-
- //################ UmkreisErmittler ################
- List woaa = new List { "5 km", "10 km", "15 km", "20 km", "25 km" };
-
-
- ComboBoxUmkreisExtender.ItemsSource = woaa;
+ //################ UmkreisErmittler prototyp status ################
+ //List woaa = new List { "5 km", "10 km", "15 km", "20 km", "25 km" };
+ // ComboBoxUmkreisExtender.ItemsSource = woaa;
//##################################################
-
- //typ muss noch übergeben werden
- zugehoerigkeitsTyp = SchulbegleitenderZugehörigkeitsTyp.Klient;
+
}
@@ -148,6 +143,23 @@ namespace BeWo.SchulbegleitenderDienst
}));
}
+ private void SetKlientOrtAndPlz()
+ {
+ //Übergebe hier die Plz und den Ort des Klienten zur ansicht
+ List x = new List();
+ x.Add(_klientOid.Value);
+
+ // neue funktion schreiben um die person hinter customer mit customer oid zu holen
+ var klient = ServiceFacade.DoCustomerServiceSync(r => r.GetCustomersById(x));
+
+ //Platzhalter Daten
+ LabelPlzKlient.Content = "53842"; // Übergebe hier die Plz des klienten
+ LabelOrtKlient.Content = "Troisdorf"; // Übergebe hier den Ort des klienten
+
+
+
+
+ }
#region MitarbeiterSearch
@@ -191,55 +203,45 @@ namespace BeWo.SchulbegleitenderDienst
//popupedit_MitarbeiterVertretungSearch.Text = currentEmployee.FirstName + " " + currentEmployee.LastName;
//hole alle mit Service Raus
- var employeeList = ServiceFacade.DoEmployeeServiceSync(s => s.GetAllActiveVertreterEmployeesCompact());
-
- // MitarbeiterVertretungsearchview.ObjectList = employeeList;
-
- //popupedit_MitarbeiterVertretungSearch.Focus();
-
-
-
- foreach (var emp in employeeList)
- {
- string arbeitszeitEintrag = "";
-
- foreach (var artime in emp.Arbeitszeit)
+ //var employeeList =
+ ServiceFacade.DoEmployeeServiceAsync(s => s.GetAllActiveVertreterEmployeesCompact(), employeeList => this.Dispatch(
+ delegate
{
- foreach (var eintrag in artime.Eintraege)
+ // MitarbeiterVertretungsearchview.ObjectList = employeeList;
+
+ //popupedit_MitarbeiterVertretungSearch.Focus();
+ foreach (var emp in employeeList)
{
- if ((int)_startDate.Value.DayOfWeek == (int)eintrag.Tag + 1)
- {
- arbeitszeitEintrag = eintrag.UhrzeitVon + " - " + eintrag.UhrzeitBis;
+ string arbeitszeitEintrag = "";
+
+ foreach (var artime in emp.Arbeitszeit)
+ {
+ foreach (var eintrag in artime.Eintraege)
+ {
+ if (_startDate != null && eintrag != null){
+ if ((int)_startDate.Value.DayOfWeek == (int)eintrag.Tag + 1)
+ {
+ arbeitszeitEintrag = eintrag.UhrzeitVon + " - " + eintrag.UhrzeitBis;
+ }
+ }
+ }
}
- }
- }
- var geschlecht = emp.Geschlecht == Sex.Male ? "Männlich" : "Weiblich";
+ var geschlecht = emp.Geschlecht == Sex.Male ? "Männlich" : "Weiblich";
- _dataListEmployee.Add(
- new SearchViewDaten(emp.FirstName + " " + emp.LastName, emp.PersonAdressPLZ, emp.PersonAdressStr, emp.PersonAdressStadt, arbeitszeitEintrag, emp, geschlecht));
+ _dataListEmployee.Add(
+ new SearchViewDaten(emp.FirstName + " " + emp.LastName, emp.PersonAdressPLZ, emp.PersonAdressStr, emp.PersonAdressStadt, arbeitszeitEintrag, emp, geschlecht));
- }
+ }
- GridDataControlMitarbeiterVertretungsearchview.ItemsSource = _dataListEmployee;
- aktuelleDaten = _dataListEmployee;
- alleMitarbeiterDaten = _dataListEmployee;
+ GridDataControlMitarbeiterVertretungsearchview.ItemsSource = _dataListEmployee;
+ aktuelleDaten = _dataListEmployee;
+ alleMitarbeiterDaten = _dataListEmployee;
+ }));
}
#endregion
- // ####################### Am ende des tage rausnehmen ######################################
- private void MitarbeiterVertretungsearchview_OnSelected(object sender, RoutedEventArgs e)
- {
- //MessageBox.Show("Item wurde Selektiert");
- }
-
- private void MitarbeiterVertretungsearchview_OnItemSelected(object sender, EventArgs e)
- {
- //MessageBox.Show("Youre welcome! Not");
- }
- //############################################################################################
-
//Übergebe die Daten Zurück
private void ButtonBase_OnClick(object sender, RoutedEventArgs e)
@@ -257,21 +259,39 @@ namespace BeWo.SchulbegleitenderDienst
Close();
}
else if (!KVDatepickerVon.Text.Equals("") && !KVDatepickerBis.Text.Equals("") && _startDate.HasValue && _endDate.HasValue && !KVDatepicker_UhrzeitVon.Text.Equals("") && !KVDatepicker_UhrzeitBis.Text.Equals(""))
- {
- var xvon = KVDatepicker_UhrzeitVon.Text;
- DateTime dateTimeStart = DateTime.ParseExact(xvon, "HH:mm", CultureInfo.CurrentCulture);
+ {
+ var von = KVDatepicker_UhrzeitVon.Text;
+ var bis = KVDatepicker_UhrzeitBis.Text;
- var yvon = KVDatepicker_UhrzeitBis.Text;
- DateTime dateTimeEnd = DateTime.ParseExact(yvon, "HH:mm", CultureInfo.CurrentCulture);
+ if (von.Length < 5)
+ {
+ von = "0" + von;
+ }
- DateTime? xVon = new DateTime(_startDate.Value.Year, _startDate.Value.Month, _startDate.Value.Day, dateTimeStart.Hour, dateTimeStart.Minute, dateTimeStart.Second);
-
- DateTime? xBis = new DateTime(_endDate.Value.Year, _endDate.Value.Month, _endDate.Value.Day, dateTimeEnd.Hour, dateTimeEnd.Minute, dateTimeEnd.Second);
+ if (bis.Length < 5)
+ {
+ bis = "0" + bis;
+ }
+
+ DateTime dateVon = DateTime.ParseExact(von, "HH:mm", CultureInfo.CurrentCulture);
+ DateTime dateBis = DateTime.ParseExact(bis, "HH:mm", CultureInfo.CurrentCulture);
- RaiseCustomEvent(this, new CustomEventArgs(x, xVon, xBis));
+ if (dateVon > dateBis)
+ {
+ MessageBox.Show("Die Startzeit darf nicht größer sein als die Endzeit.");
+ }
+ else
+ {
+ DateTime? xVon = new DateTime(_startDate.Value.Year, _startDate.Value.Month, _startDate.Value.Day, dateVon.Hour, dateVon.Minute, dateVon.Second);
- Close();
+ DateTime? xBis = new DateTime(_endDate.Value.Year, _endDate.Value.Month, _endDate.Value.Day, dateBis.Hour, dateBis.Minute, dateBis.Second);
+
+
+ RaiseCustomEvent(this, new CustomEventArgs(x, xVon, xBis));
+
+ Close();
+ }
}
else
{
@@ -298,7 +318,7 @@ namespace BeWo.SchulbegleitenderDienst
Close();
}
- //################### Neuer bereich Vertretungs zeitraum bereich/ ganztägig oder nur ein teil ####################################
+ //################### Neuer bereich Vertretungs zeitraum bereich / ganztägig oder nur ein teil ####################################
private void KVCheckBox_OnUnchecked(object sender, RoutedEventArgs e)
{
KVDatepicker_UhrzeitBis.Text = "";
@@ -355,18 +375,13 @@ namespace BeWo.SchulbegleitenderDienst
if (umkreis == 0)
{
//Zeige in der liste alle an die genau diese postleitzahl mit den ersten 3 Stellen haben. //villeicht auch ersten 4 mal sehen
-
MessageBox.Show("Zeige alle Personen mit gleicher plz an");
-
-
-
-
-
-
}
else
{
MessageBox.Show("Hier kommt nacher eine Berechnung des Umkreises hin");
+
+ #region Plzklient mit erweiterter umkreis auswahl
//PlzKlient mit erweiterter umkreis auswahl.
//const Erdradius = 6371000; Konstante in metern
@@ -405,6 +420,7 @@ namespace BeWo.SchulbegleitenderDienst
// )
// * 1000
// );
+ #endregion
}
}
@@ -413,7 +429,6 @@ namespace BeWo.SchulbegleitenderDienst
private void PlzKlient_OnTextChanged(object sender, TextChangedEventArgs e)
{
- // hier der bereich zum neu entwickeln
bool ruecksetzpunkt = false;
List ndaten = new List();
@@ -448,6 +463,9 @@ namespace BeWo.SchulbegleitenderDienst
GridDataControlMitarbeiterVertretungsearchview.RefreshData();
GridDataControlMitarbeiterVertretungsearchview.RefreshUI();
+
+ #region PLZRadiusAlgorythmusplanung
+
// PlzKlien // AutoCompleteMode.Suggest;
//testbereiche
@@ -496,6 +514,7 @@ namespace BeWo.SchulbegleitenderDienst
// LabelUmkreis.Visibility = Visibility.Collapsed;
// ComboBoxUmkreisExtender.Visibility = Visibility.Collapsed;
//}
+ #endregion
}
private void ComboBoxUmkreisExtender_OnSelected(object sender, RoutedEventArgs e)
@@ -550,28 +569,34 @@ namespace BeWo.SchulbegleitenderDienst
public void GetAllTokensAndSetAll()
{
- var x = ServiceFacade.DoOperationsServiceSync(r => r.GetAllTokens(SchulbegleitenderZugehörigkeitsTyp.Klient, _klientOid));
-
- List wunschliste = new List();
- List ausschlussliste = new List();
-
- foreach (var token in x)
- {
- if(token.MemberOid == _klientOid){
- if (token.TokenTyp == TokenTyp.WunschKriterium)
+ // var x =
+ ServiceFacade.DoOperationsServiceAsync(r => r.GetAllTokens(SchulbegleitenderZugehörigkeitsTyp.Klient, _klientOid), x => this.Dispatch(
+ delegate
{
- wunschliste.Add(token.Beschreibung);
- TBoxWunschAnzeige.Text += token.Beschreibung + "; ";
- }
+ List wunschliste = new List();
+ List ausschlussliste = new List();
- if (token.TokenTyp == TokenTyp.AusschlussKriterium)
- {
- ausschlussliste.Add(token.Beschreibung);
- TBoxAussschlussAnzeige.Text += token.Beschreibung + "; ";
- }
- }
- }
-
+ 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();
}
@@ -582,34 +607,36 @@ namespace BeWo.SchulbegleitenderDienst
verfuegbareA.Clear();
gesetzteA.Clear();
- var x =
- ServiceFacade.DoOperationsServiceSync(
- r => r.GetAllTokens(SchulbegleitenderZugehörigkeitsTyp.Mitarbeiter, 0));
-
- List wunschliste = new List();
- List ausschlussliste = new List();
-
- foreach (var token in x)
- {
- if (token.TokenTyp == TokenTyp.WunschKriterium)
+ //var x =
+ ServiceFacade.DoOperationsServiceAsync(
+ r => r.GetAllTokens(SchulbegleitenderZugehörigkeitsTyp.Mitarbeiter, 0), x =>this.Dispatch(delegate
{
- if (!verfuegbareW.ContainsKey(token.Beschreibung))
- verfuegbareW.Add(token.Beschreibung,token);
+ List wunschliste = new List();
+ List ausschlussliste = new List();
- wunschliste.Add(token.Beschreibung);
- }
+ foreach (var token in x)
+ {
+ if (token.TokenTyp == TokenTyp.WunschKriterium)
+ {
+ if (!verfuegbareW.ContainsKey(token.Beschreibung))
+ verfuegbareW.Add(token.Beschreibung,token);
- if (token.TokenTyp == TokenTyp.AusschlussKriterium)
- {
- if (!verfuegbareA.ContainsKey(token.Beschreibung))
- verfuegbareA.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);
- }
- }
+ ausschlussliste.Add(token.Beschreibung);
+ }
+ }
- ComboBoxMitarbeiterWunschAuswahl.ItemsSource = wunschliste;
- ComboBoxMitarbeiterAussschlussAuswahl.ItemsSource = ausschlussliste;
+ ComboBoxMitarbeiterWunschAuswahl.ItemsSource = wunschliste;
+ ComboBoxMitarbeiterAussschlussAuswahl.ItemsSource = ausschlussliste;
+
+ }));
}
@@ -659,9 +686,9 @@ namespace BeWo.SchulbegleitenderDienst
List nSVD = new List();
//hole die liste aller Employee2Token
- var x = ServiceFacade.DoOperationsServiceSync(r => r.GetEmployee2TokenList());
+ var x = ServiceFacade.DoOperationsServiceSync(r => r.GetEmployee2TokenList()); // hier ggf. Async aufruf
- //bool isAusschluss = false; // rausnehmen sobald das faxen macht
+ //bool isAusschluss = false; // erstmal rausnehmen
foreach (var daten in alleMitarbeiterDaten)
{
@@ -674,9 +701,10 @@ namespace BeWo.SchulbegleitenderDienst
{
if (item.Token.TokenOid == gesA.Value.TokenOid)
{
- //if(!nSVD.Contains(daten))
- nSVD.Add(daten); // --> original muss wieder rein
+ if(!nSVD.Contains(daten))
+ nSVD.Add(daten);
// isAusschluss = true;
+
}
}
@@ -690,8 +718,8 @@ namespace BeWo.SchulbegleitenderDienst
//}
//else
//{
- //if (!nSVD.Contains(daten))
- nSVD.Add(daten);
+ if (!nSVD.Contains(daten))
+ nSVD.Add(daten);
//}
}
@@ -807,7 +835,44 @@ namespace BeWo.SchulbegleitenderDienst
}
-
+ private void OrtKlient_OnTextChanged(object sender, TextChangedEventArgs e)
+ {
+ //das Gleiche wie bei PLz umkreis suche nur mit Ort
+ bool ruecksetzpunkt = false;
+
+ List ndaten = new List();
+
+ foreach (var daten in alleMitarbeiterDaten)
+ {
+ if (daten.Stadt != null)
+ {
+ if (daten.Stadt.StartsWith(OrtKlient.Text))
+ {
+ ndaten.Add(daten);
+ }
+ }
+
+ if (daten.Stadt != null && OrtKlient.Text.Length == 0)
+ {
+ if (!ruecksetzpunkt)
+ ruecksetzpunkt = true;
+ }
+ }
+
+ if (ruecksetzpunkt)
+ {
+ GridDataControlMitarbeiterVertretungsearchview.ItemsSource = alleMitarbeiterDaten;
+ //aktuelleDaten = alleMitarbeiterDaten;
+ }
+ else
+ {
+ GridDataControlMitarbeiterVertretungsearchview.ItemsSource = ndaten;
+ // aktuelleDaten = ndaten;
+ }
+
+ GridDataControlMitarbeiterVertretungsearchview.RefreshData();
+ GridDataControlMitarbeiterVertretungsearchview.RefreshUI();
+ }
}
public class CustomEventArgs : EventArgs
diff --git a/BeWo/ServiceProxy/Generated.cs b/BeWo/ServiceProxy/Generated.cs
index c384694b0..f9890be9d 100644
--- a/BeWo/ServiceProxy/Generated.cs
+++ b/BeWo/ServiceProxy/Generated.cs
@@ -4237,6 +4237,10 @@ namespace BeWo.ServiceProxy
[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 oid);
+ [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/InsertNewRelationToken", ReplyAction="http://tempuri.org/IOperationsService/InsertNewRelationTokenResponse")]
+ [System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/InsertNewRelationTokenBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
+ void InsertNewRelationToken(BS.Shared.DataContracts.TokenDC token, BS.Shared.TokenTyp typ, BS.Shared.SchulbegleitenderZugehörigkeitsTyp zugehoerigkeitsTyp, System.Nullable 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);
@@ -5009,6 +5013,11 @@ namespace BeWo.ServiceProxy
base.Channel.InsertNewToken(beschreibung, typ, zugehoerigkeitsTyp, oid);
}
+ public void InsertNewRelationToken(BS.Shared.DataContracts.TokenDC token, BS.Shared.TokenTyp typ, BS.Shared.SchulbegleitenderZugehörigkeitsTyp zugehoerigkeitsTyp, System.Nullable oid)
+ {
+ base.Channel.InsertNewRelationToken(token, typ, zugehoerigkeitsTyp, oid);
+ }
+
public void UpdateToken(BS.Shared.DataContracts.TokenDC token)
{
base.Channel.UpdateToken(token);
diff --git a/BeWo/View/SchulbegleitenderDienst.xaml.cs b/BeWo/View/SchulbegleitenderDienst.xaml.cs
index 1cdc6237d..b3c427922 100644
--- a/BeWo/View/SchulbegleitenderDienst.xaml.cs
+++ b/BeWo/View/SchulbegleitenderDienst.xaml.cs
@@ -39,6 +39,10 @@ namespace BeWo.View
long? Oid = 0;
private SchulbegleitenderZugehörigkeitsTyp zugehoerigkeitsTyp;
+ Dictionary verfuegbarerWunschToken = new Dictionary();
+ Dictionary verfuegbarerAusschlussToken = new Dictionary();
+
+
public SchulbegleitenderDienst(TableID pObjectTid, long? oid,SchulbegleitenderZugehörigkeitsTyp typ)
{
InitializeComponent();
@@ -94,11 +98,16 @@ namespace BeWo.View
private void GetAllTokenItems()
{
tokenlist.Clear();
- tokenlist = ServiceFacade.DoOperationsServiceSync(r => r.GetAllTokens(zugehoerigkeitsTyp,Oid));
- SetAusschlussKriterien();
+ ServiceFacade.DoOperationsServiceAsync(r => r.GetAllTokens(zugehoerigkeitsTyp,Oid), h => this.Dispatch(delegate
+ {
+ tokenlist = h;
- SetWunschKriterien();
+ SetAusschlussKriterien();
+
+ SetWunschKriterien();
+
+ }));
}
private void SetAusschlussKriterien()
@@ -118,12 +127,15 @@ namespace BeWo.View
else if (token.TokenTyp == TokenTyp.AusschlussKriterium)
{
list.Add(token.Beschreibung);
+
+ if (!verfuegbarerAusschlussToken.ContainsKey(token.Beschreibung))
+ verfuegbarerAusschlussToken.Add(token.Beschreibung,token);
}
}
}
-
- ComboAusschluss.ItemsSource = list;
+ if(list.Count > 0)
+ ComboAusschluss.ItemsSource = list;
}
@@ -144,11 +156,15 @@ namespace BeWo.View
else if(token.TokenTyp == TokenTyp.WunschKriterium)
{
list.Add(token.Beschreibung);
+
+ if(!verfuegbarerWunschToken.ContainsKey(token.Beschreibung))
+ verfuegbarerWunschToken.Add(token.Beschreibung,token);
}
}
}
- ComboWunsch.ItemsSource = list;
+ if(list.Count > 0)
+ ComboWunsch.ItemsSource = list;
}
//TODO Speicher Button Aktivieren
@@ -200,55 +216,80 @@ namespace BeWo.View
private void ButtonWunschKriterium_OnClick(object sender, RoutedEventArgs e)
{
var token = TextBoxWunsch.Text;
-
- ServiceFacade.DoOperationsServiceSync(r => r.InsertNewToken(token, TokenTyp.WunschKriterium, zugehoerigkeitsTyp,Oid));
+
+
+ if (verfuegbarerWunschToken.ContainsKey(token))
+ {
+ TokenDC nToken = null;
+
+ foreach (var tokenkey in verfuegbarerWunschToken)
+ {
+ if (tokenkey.Key.Equals(token))
+ {
+ nToken = tokenkey.Value;
+ }
+ }
+
+ if (nToken != null)
+ {
+ ServiceFacade.DoOperationsServiceSync(r => r.InsertNewRelationToken(nToken, TokenTyp.WunschKriterium, zugehoerigkeitsTyp, Oid));
+ }
+ }
+ else
+ {
+ 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 ()
- //{
+ if (verfuegbarerAusschlussToken.ContainsKey(token))
+ {
+ TokenDC nToken = null;
- //}
+ foreach (var tokenkey in verfuegbarerAusschlussToken)
+ {
+ if (tokenkey.Key.Equals(token))
+ {
+ nToken = tokenkey.Value;
+ }
+ }
-
- ServiceFacade.DoOperationsServiceSync(r => r.InsertNewToken(token, TokenTyp.AusschlussKriterium,zugehoerigkeitsTyp,Oid));
+ if (nToken != null)
+ {
+ ServiceFacade.DoOperationsServiceSync(r => r.InsertNewRelationToken(nToken, TokenTyp.AusschlussKriterium, zugehoerigkeitsTyp, Oid));
+ }
+ }
+ else
+ {
+ 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;
-
+ TextBoxAusschluss.Text = tokendc;
}
private void ComboWunsch_OnSelected(object sender, RoutedEventArgs e)
{
- //Test
var tokendc = ComboWunsch.SelectedItem as string;
- TextBoxWunsch.Text = tokendc;
-
+ TextBoxWunsch.Text = tokendc;
}
}
}
\ No newline at end of file
diff --git a/BeWo/ViewModel/KriterienVM.cs b/BeWo/ViewModel/KriterienVM.cs
deleted file mode 100644
index 06d73ebb9..000000000
--- a/BeWo/ViewModel/KriterienVM.cs
+++ /dev/null
@@ -1,96 +0,0 @@
-using BS.Shared;
-using BS.Shared.DataContracts;
-using System;
-
-namespace BeWo.ViewModel
-{
- public class KriterienVM : AbstractDCMapperVM
- {
- public static string PropertyName_AusschlussKriterien = "AusschlussKriterien";
-
- public static string PropertyName_WunschKriterien = "WunschKriterien";
-
- //public static string PropertyName_Notice = "Notice";
-
- private string _AusschlussKriterien;
-
- private string _WunschKriterien;
-
- //private string _Notice;
-
-
- public KriterienVM(KriterienDC pDC)
- : base(pDC, true)
- {
- }
-
- public string AusschlussKriterien
- {
- get { return this._AusschlussKriterien; }
-
- set
- {
- if (this.AreDifferent(this._AusschlussKriterien, value))
- {
- this._AusschlussKriterien = value;
- this.StoreDirtyInformation(this.AreDifferent(this.DataContract.AusschlussKriterien, value), PropertyName_AusschlussKriterien);
- this.FirePropertyChanged(PropertyName_AusschlussKriterien);
- }
- }
- }
-
- public string WunschKriterien
- {
- get { return this._WunschKriterien; }
-
- set
- {
- if (this.AreDifferent(this._WunschKriterien, value))
- {
- this._WunschKriterien = value;
- this.StoreDirtyInformation(this.AreDifferent(this.DataContract.WunschKriterien, value), PropertyName_WunschKriterien);
- this.FirePropertyChanged(PropertyName_WunschKriterien);
- }
- }
- }
-
-
-
- //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(KriterienDC pDataContract)
- {
- this._AusschlussKriterien = pDataContract.AusschlussKriterien;
- this._WunschKriterien = pDataContract.WunschKriterien;
-
-
- //this._Notice = pDataContract.Notice;
-
-
- }
-
- protected override KriterienDC MapToDataContract(KriterienDC pDataContract, bool doCommit)
- {
- pDataContract.AusschlussKriterien = _AusschlussKriterien;
- pDataContract.WunschKriterien = _WunschKriterien;
- //pDataContract.Notice = _Notice;
-
-
- return pDataContract;
- }
- }
-}
\ No newline at end of file
diff --git a/BeWoPlanerMobil/BeWoPlanerMobil.csproj b/BeWoPlanerMobil/BeWoPlanerMobil.csproj
index 63d61abc6..202a472c0 100644
--- a/BeWoPlanerMobil/BeWoPlanerMobil.csproj
+++ b/BeWoPlanerMobil/BeWoPlanerMobil.csproj
@@ -148,6 +148,7 @@
+
diff --git a/BeWoPlanerMobil/Controllers/ChatTokenController.cs b/BeWoPlanerMobil/Controllers/ChatTokenController.cs
new file mode 100644
index 000000000..0fd54b3fe
--- /dev/null
+++ b/BeWoPlanerMobil/Controllers/ChatTokenController.cs
@@ -0,0 +1,406 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+using System.Web.Mvc;
+using BeWo.Data.Access;
+using BeWo.Data.Entities;
+using BeWo.Service.ServiceImplementations;
+using BeWoPlanerMobil.Service;
+using BS.Shared;
+using log4net.Core;
+
+namespace BeWoPlanerMobil.Controllers
+{
+ public class ChatTokenController : Controller
+ {
+ //
+ // GET: /ChatToken/
+
+ //public ActionResult Index()
+ //{
+ // return View();
+ //}
+
+ public string Index()
+ {
+ return "Das ist die Default aktion... Sie haben hier nix verloren.";
+ }
+
+ public JsonResult LoginToken(string benutzername , string passwort, string kundennummer,string typ)
+ {
+ // lese hier die daten aus dem header aus
+ //var x = HttpUtility.HtmlEncode("Benutzer: "+benutzername+" / "+ "Passwort: "+passwort +" / "+"Kundennummer: "+kundennummer);
+
+
+ //#### prüfe ob kundennummer vorhanden
+ if (kundennummer == null)
+ {
+ return Json("99", JsonRequestBehavior.AllowGet);
+ }
+
+ MobileSessionFacade.Tenant = kundennummer;
+
+ var isKundennummerVorhanden = ASPHibernateSessionManager.ConfigureHibernateSessionForWebService();
+
+ if (isKundennummerVorhanden)
+ {
+ var s = new UserServiceImp();
+
+ //ist benutzer und passwort richtig
+ if (s.IsUserValid(benutzername, passwort, null, "MobilClient", false) == UserValidationResult.UserValid)
+ {
+ var user = DAOFactory.UserDAO.FindUserByLoginName(benutzername);
+
+ if (user == null || !DAOFactory.UserDAO.CheckPassword(user, passwort))
+ {
+ //gib json zurück {"STATE":1}
+ return Json("1", JsonRequestBehavior.AllowGet);
+ }
+
+ MobileSessionFacade.LoggedInUser = user; // das wird garnicht gebraucht
+
+
+ Response.AddHeader("Content-Type","application/json"); //; charset=utf8
+
+ //Useroid übergeben auch nur dann wenn UserOid Vorhanden ist.
+
+#region Typ Verarbeitung
+
+ if (typ != null)
+ {
+ if (typ.Equals("clients"))
+ {
+ //Klient Bereich
+
+ var daten = DAOFactory.GenericDAO.LoadByID(1);// was wird aus customer ?
+
+
+ List inputList = new List();
+
+ // input 2 als liste übergeben und für jeden Mitarbeiter dem Customer zugeteilt ist
+
+ foreach (var emp in daten.Employee2CustomerList)
+ {
+ if (emp.EmployeeOid == 1) //Unbedingt umbauen weil Hauptbetreuer Sollen geadded werden.
+ {
+
+ JsonInputKlient2 input2 = new JsonInputKlient2("1",user.Oid.ToString(), emp.EmployeeOid.ToString());
+
+ if (emp.IsActive == ActivationTypeId.Deleted)
+ input2.Status = "3";
+ if (emp.IsActive == ActivationTypeId.Archived)
+ input2.Status = "2";
+
+
+ inputList.Add(input2);
+ }
+ }
+
+
+ JsonInputKlient1 input1 = new JsonInputKlient1(daten.Oid.ToString(),"1",
+ daten.Person.FirstName, daten.Person.LastName, daten.CustomerAlias, inputList);
+
+
+ if (daten.IsActive == ActivationTypeId.Deleted)
+ input1.Status = "3";
+ if (daten.IsActive == ActivationTypeId.Archived)
+ input1.Status = "2";
+
+ var ssx = new JsonRueckgabeKlient("0", input1);
+
+
+ return Json(ssx, JsonRequestBehavior.AllowGet);
+
+ }
+ else if (typ.Equals("users"))
+ {
+ //Mitarbeiter Bereich
+ var daten = user;
+
+ var empChatCode = DAOFactory.GenericDAO.GetAllActive();
+
+ EmployeeAPPCode chatcode = new EmployeeAPPCode();
+
+ foreach (var code in empChatCode)
+ {
+ if (daten.Employee.Oid == code.EmployeeOid)
+ {
+ chatcode = code;
+ }
+ }
+
+ DateTime? insTs = null;
+
+ foreach (var img in daten.Employee.Person.Images)
+ {
+ insTs = img.InsTs.Value;
+ }
+
+ JsonRueckgabeMitarbeiterInput miInput;
+
+
+ //es kann sein das miInput in eine liste verändert werden muss um mehrere Users zu übergeben
+ //| kann alles nach belieben angepasst werden
+ if (daten.IsActive == ActivationTypeId.Deleted )
+ {
+ miInput = new JsonRueckgabeMitarbeiterInput("",
+ daten.Employee.Oid.ToString(),"3",
+ "","", "", "", "", "", "", "");
+
+ }else if (daten.IsActive == ActivationTypeId.Archived)
+ {
+ miInput = new JsonRueckgabeMitarbeiterInput("",
+ daten.Employee.Oid.ToString(),"2",
+ "", "", "", "", "", "", "", "");
+ }
+ else
+ {
+ miInput = new JsonRueckgabeMitarbeiterInput(user.Oid.ToString(),
+ daten.Employee.Oid.ToString(),"1", daten.LoginName,
+ daten.HashedPassword, daten.Employee.Person.FirstName, daten.Employee.Person.LastName,
+ chatcode.EmployeeCode, "Mobile number", daten.Employee.Person.Oid.ToString(), insTs.ToString()); // statt imageoid die person oid ubergeben
+
+ if (insTs != null)
+ {
+ miInput.PictureId = insTs.ToString();
+ }
+ }
+
+ JsonRueckgabeMitarbeiter mi = new JsonRueckgabeMitarbeiter("0", miInput);
+
+
+ return Json(mi, JsonRequestBehavior.AllowGet);
+
+ }
+ else if (typ.Equals("teams"))
+ {
+ //Mitarbeiter Team Bereich
+ var daten = DAOFactory.GenericDAO.GetAllActive();
+
+ List JRTMI = new List();
+
+
+ foreach (var dat in daten)
+ {
+ foreach (var mem in dat.MemberList)
+ {
+ if (mem.Oid == user.Employee.Oid)
+ {
+ List mtInputList = new List();
+
+ foreach (var member in dat.MemberList)
+ {
+ JsonRueckgabeTeamMitarbeiterInput2 mtInput2 = new JsonRueckgabeTeamMitarbeiterInput2("1",
+ "UserOid", member.Oid.ToString());
+
+ if (member.IsActive == ActivationTypeId.Deleted)
+ mtInput2.Status = "3";
+ if (member.IsActive == ActivationTypeId.Archived)
+ mtInput2.Status = "2";
+
+ mtInputList.Add(mtInput2);
+ }
+
+ JsonRueckgabeTeamMitarbeiterInput mtInput1 = new JsonRueckgabeTeamMitarbeiterInput(dat.Oid.ToString(),"1", dat.Name, mtInputList);
+
+ if (dat.IsActive == ActivationTypeId.Deleted)
+ mtInput1.Status = "3";
+ if (dat.IsActive == ActivationTypeId.Deleted)
+ mtInput1.Status = "2";
+
+ JRTMI.Add(mtInput1);
+
+ }
+ }
+ }
+
+ JsonRueckgabeTeamMitarbeiter mt = new JsonRueckgabeTeamMitarbeiter("0", JRTMI);
+
+ return Json(mt, JsonRequestBehavior.AllowGet);
+ }
+ //Falls typ nicht stimmt
+ return Json("1", JsonRequestBehavior.AllowGet);
+ }
+
+ #endregion
+ //fallsa typ nicht vorhanden
+ return Json("1", JsonRequestBehavior.AllowGet);
+ }
+ else
+ {
+ //gib json zurück {"STATE":1}
+ return Json("1", JsonRequestBehavior.AllowGet);
+ }
+ }
+ else
+ {
+ //gib json zurück {"STATE":99}
+ return Json("99", JsonRequestBehavior.AllowGet);
+ }
+
+ return Json("99", JsonRequestBehavior.AllowGet);
+ }
+
+ public JsonResult BildUrl(int oid)
+ {
+ //Small thumbnail zurückschicken
+ //var img = DAOFactory.GenericDAO.GetAllActive(); // diese form von rausholden ist nicht möglich
+ var img = DAOFactory.GenericDAO.GetByID(oid);
+
+ //Erstmal doof image komplett zurück schicken nacher nur die image datei
+ return Json(img.Images[0].SmallThumbnail, JsonRequestBehavior.AllowGet);
+ }
+
+
+ }
+
+ #region Klient
+ public class JsonRueckgabeKlient
+ {
+ public string State { get; set; }
+
+ public JsonInputKlient1 Input { get; set; }
+
+ public JsonRueckgabeKlient(string state, JsonInputKlient1 input )
+ {
+ State = state;
+ Input = input;
+ }
+ }
+
+ //klienten input
+ public class JsonInputKlient1
+ {
+ public string Oid { get; set; }
+ public string Status { get; set; }
+ public string Firstname { get; set; }
+ public string LastName { get; set; }
+ public string Alias { get; set; }
+ public List Guardians { get; set; }
+
+ public JsonInputKlient1(string oid,string status, string firstname, string lastname, string alias, List guardians)
+ {
+ Oid = oid;
+ Status = status;
+ Firstname = firstname;
+ LastName = lastname;
+ Alias = alias;
+ Guardians = guardians;
+ }
+ }
+
+ public class JsonInputKlient2
+ {
+ public string Status { get; set; }
+
+ public string UserOid { get; set; }
+
+ public string EmployeeOid { get; set; }
+
+ public JsonInputKlient2(string status, string userOid,string employeeOid)
+ {
+ Status = status;
+ UserOid = userOid;
+ EmployeeOid = employeeOid;
+ }
+ }
+
+ #endregion
+
+ #region Mitarbeiter
+
+ public class JsonRueckgabeMitarbeiter
+ {
+ public string State { get; set; }
+ public JsonRueckgabeMitarbeiterInput Input { get; set; }
+
+ public JsonRueckgabeMitarbeiter(string state, JsonRueckgabeMitarbeiterInput input )
+ {
+ State = state;
+ Input = input;
+ }
+ }
+
+ public class JsonRueckgabeMitarbeiterInput
+ {
+ public string Useroid { get; set; }
+ public string EmployeeOid { get; set; }
+ public string Status { get; set; }
+ public string Login { get; set; }
+ public string Password { get; set; }
+ public string Firstname { get; set; }
+ public string LastName { get; set; }
+ public string ChatCode { get; set; }
+ public string Mobile { get; set; }
+ public string Picture { get; set; }
+ public string PictureId { get; set; }
+
+
+ public JsonRueckgabeMitarbeiterInput(string useroid, string employeeOid, string status, string login, string password,
+ string firstname, string lastname,string chatcode,string mobile,string picture,string pictureId)
+ {
+ Useroid = useroid;
+ EmployeeOid = employeeOid;
+ Status = status;
+ Login = login;
+ Password = password;
+ Firstname = firstname;
+ LastName = lastname;
+ ChatCode = chatcode;
+ Mobile = mobile;
+ Picture = picture;
+ PictureId = pictureId;
+ }
+ }
+
+ #endregion
+
+ #region TeamMitarbeiter
+
+ public class JsonRueckgabeTeamMitarbeiter
+ {
+ public string State { get; set; }
+ public List Input { get; set; }
+
+ public JsonRueckgabeTeamMitarbeiter(string state, List input)
+ {
+ State = state;
+ Input = input;
+ }
+ }
+
+ public class JsonRueckgabeTeamMitarbeiterInput
+ {
+ public string Oid { get; set; }
+ public string Status { get; set; }
+ public string Name { get; set; }
+ public List Member { get; set; }
+
+ public JsonRueckgabeTeamMitarbeiterInput(string oid,string status, string name,List member)
+ {
+ Oid = oid;
+ Name = name;
+ Member = member;
+ Status = status;
+ }
+ }
+
+ public class JsonRueckgabeTeamMitarbeiterInput2
+ {
+ public string Status { get; set; }
+ public string UserOid { get; set; }
+ public string EmployeeOid { get; set; }
+
+ public JsonRueckgabeTeamMitarbeiterInput2(string status, string userOid,string employeeOid)
+ {
+ Status = status;
+ UserOid = userOid;
+ EmployeeOid = employeeOid;
+ }
+ }
+
+ #endregion
+
+
+}
diff --git a/BeWoPlanerMobil/Web.config b/BeWoPlanerMobil/Web.config
index 8c12ed9ee..5d3057b1c 100644
--- a/BeWoPlanerMobil/Web.config
+++ b/BeWoPlanerMobil/Web.config
@@ -124,7 +124,7 @@
-
+
diff --git a/Data/Data.csproj b/Data/Data.csproj
index dc5fa8d2a..d36849eb8 100644
--- a/Data/Data.csproj
+++ b/Data/Data.csproj
@@ -166,7 +166,6 @@
-
@@ -574,9 +573,6 @@
Designer
-
- Designer
-
Designer
diff --git a/Data/Entities/Kriterien.cs b/Data/Entities/Kriterien.cs
deleted file mode 100644
index b325702ec..000000000
--- a/Data/Entities/Kriterien.cs
+++ /dev/null
@@ -1,70 +0,0 @@
-using BS.Shared;
-using System;
-
-namespace BeWo.Data.Entities
-{
- public class Kriterien : BeWoEntityBase
- {
- public static string PropertyName_AusschlussKriterien = "AusschlussKriterien";
-
- public static string PropertyName_WunschKriterien = "WunschKriterien";
-
- public static string PropertyName_CustomerOid = "CustomerOid";
-
- private string _AusschlussKriterien;
-
- private string _WunschKriterien;
-
- private long? _CustomerOid;
-
-
- public virtual string AusschlussKriterien
- {
- get
- {
- return this._AusschlussKriterien;
- }
-
- set
- {
- if (this.AreDifferent(this._AusschlussKriterien, value))
- {
- this._AusschlussKriterien = value;
- }
- }
- }
-
- public virtual string WunschKriterien
- {
- get
- {
- return this._WunschKriterien;
- }
-
- set
- {
- if (this.AreDifferent(this._WunschKriterien, value))
- {
- this._WunschKriterien = value;
- }
- }
- }
-
- public virtual long? CustomerOid
- {
- get
- {
- return this._CustomerOid;
- }
-
- set
- {
- if (this.AreDifferent(this._CustomerOid, value))
- {
- this._CustomerOid = value;
- }
- }
- }
-
- }
-}
\ No newline at end of file
diff --git a/Data/Mappings/Kriterien.hbm.xml b/Data/Mappings/Kriterien.hbm.xml
deleted file mode 100644
index a7e703009..000000000
--- a/Data/Mappings/Kriterien.hbm.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Model/Changes_2017_07_12.txt b/Model/Changes_2017_07_12.txt
new file mode 100644
index 000000000..afdac07ce
--- /dev/null
+++ b/Model/Changes_2017_07_12.txt
@@ -0,0 +1 @@
+DROP TABLE Kriterien;
\ No newline at end of file
diff --git a/Service/DCEntityMapper/KriterienDC_Kriterien.cs b/Service/DCEntityMapper/KriterienDC_Kriterien.cs
deleted file mode 100644
index 997a23e7a..000000000
--- a/Service/DCEntityMapper/KriterienDC_Kriterien.cs
+++ /dev/null
@@ -1,45 +0,0 @@
-using System.IO;
-using BeWo.Data.Entities;
-
-using BS.Shared.DataContracts;
-
-namespace BeWo.Service.DCEntityMapper
-{
- public class KriterienDC_Kriterien : AbstractIDCEntityMapper
- {
- public override KriterienDC MergeWithDC(Kriterien pEntity, KriterienDC pDataContract)
- {
-
- pDataContract.CustomerOid = pEntity.CustomerOid;
- pDataContract.AusschlussKriterien = pEntity.AusschlussKriterien;
- pDataContract.WunschKriterien = pEntity.WunschKriterien;
-
- //pDataContract.Notice = pEntity.Notice;
-
- return pDataContract;
- }
-
- public override Kriterien MergeWithEntity(KriterienDC pDataContract, Kriterien pEntity)
- {
- pEntity.CustomerOid = pDataContract.CustomerOid;
- pEntity.AusschlussKriterien = pDataContract.AusschlussKriterien;
- pEntity.WunschKriterien = pDataContract.WunschKriterien;
-
- //pEntity.Notice = pDataContract.Notice;
-
-
- return pEntity;
- }
-
- protected override bool AreDCAndEntityEqual(KriterienDC pDC, Kriterien pEntity)
- {
-
- if (pDC.KriterienOid == null)
- {
- return false;
- }
-
- return pDC.KriterienOid == pEntity.Oid;
- }
- }
-}
\ No newline at end of file
diff --git a/Service/DCEntityMapper/MapperFactory.cs b/Service/DCEntityMapper/MapperFactory.cs
index 1e7ade9e9..b83ff0e3d 100644
--- a/Service/DCEntityMapper/MapperFactory.cs
+++ b/Service/DCEntityMapper/MapperFactory.cs
@@ -51,9 +51,7 @@ namespace BeWo.Service.DCEntityMapper
private static ArbeitszeitDC_Arbeitszeit _ArbeitszeitDC_Arbeitszeit;
- private static ArbeitszeitEintragDC_ArbeitszeitEintrag _ArbeitszeitEintragDC_ArbeitszeitEintrag;
-
- private static KriterienDC_Kriterien _KriterienDC_Kriterien;
+ private static ArbeitszeitEintragDC_ArbeitszeitEintrag _ArbeitszeitEintragDC_ArbeitszeitEintrag;
private static VertretungsListeDC_VertretungsListe _VertretungsListeDC_VertretungsListe;
@@ -576,13 +574,6 @@ namespace BeWo.Service.DCEntityMapper
return _ArbeitszeitEintragDC_ArbeitszeitEintrag ?? (_ArbeitszeitEintragDC_ArbeitszeitEintrag = new ArbeitszeitEintragDC_ArbeitszeitEintrag());
}
}
- public static KriterienDC_Kriterien KriterienDC_Kriterien
- {
- get
- {
- return _KriterienDC_Kriterien ?? (_KriterienDC_Kriterien = new KriterienDC_Kriterien());
- }
- }
public static VertretungsListeDC_VertretungsListe VertretungsListeDC_VertretungsListe
{
diff --git a/Service/SBD/Vertretung/VertretungsAlgorithmus.cs b/Service/SBD/Vertretung/VertretungsAlgorithmus.cs
index a71aa3559..e8320b31e 100644
--- a/Service/SBD/Vertretung/VertretungsAlgorithmus.cs
+++ b/Service/SBD/Vertretung/VertretungsAlgorithmus.cs
@@ -165,16 +165,17 @@ namespace BeWo.Service.SBD.Vertretung
//überprüfung durchführen und ggf mehrere Davon anlegen. wegen vertretungszeiten bei krankheitszeiträumen
+ //Abfragen ob überhaupt ein Employee Vorhanden ist.
vertretungsliste.Add(item);
//if (vertritt.VertretungsZeitraumVon != ab.Start.Value && vertritt.VertretungsZeitraumBis != ab.End.Value) für die zeiten inerghalb eines tages
//{
+
// add der vertretungsliste einen Weiteren Tag der nicht
// allerdings müsste da wieder ne neue vertretung erstellt werden.
// desweiteren müsste die range der Stunden ermittelt werden.
// vertretungsliste.Add(item);
-
//}
}
@@ -251,10 +252,10 @@ namespace BeWo.Service.SBD.Vertretung
}
}
- //if (item.Customer.Count != 0)//hier auch employeecount abfragen // bearbeiten
- //{
- vertretungsliste.Add(item);
- //}
+ //if (item.Customer.Count != 0 && item.EmployeeOid != 0 )//hier auch employee ob vorhanden abfragen // bearbeiten
+ //{
+ vertretungsliste.Add(item);
+ //}
}
@@ -344,6 +345,7 @@ namespace BeWo.Service.SBD.Vertretung
}
}
+ //Abfragen ob Employee vorhanden
vertretungsliste.Add(item);
}
@@ -420,7 +422,7 @@ namespace BeWo.Service.SBD.Vertretung
}
}
- // if (item.Customer.Count != 0)//hier auch employeecount abfragen // bearbeiten
+ // if (item.Customer.Count != 0 item.EmployeeOid != 0)//hier auch employee ob vorhanden abfragen // bearbeiten
// {
vertretungsliste.Add(item);
// }
@@ -447,9 +449,7 @@ namespace BeWo.Service.SBD.Vertretung
-
-
-
+ CreateNewVertretung();
}
else
{
@@ -460,14 +460,18 @@ namespace BeWo.Service.SBD.Vertretung
private void CreateNewVertretung()
{
-
-
-
+ //erstelle neue Vertretung
+ VertretungDC vertretung = new VertretungDC()
+ {
+
+ };
+ var x = DCEntityMapper.MapperFactory.VertretungDC_Vertretung.MapToNewEntity(vertretung);
+ DAOFactory.GenericDAO.Insert(x);
}
- //############################# ende Probezeit
+ //############################# ende Probe
private void AddKrankheitsZeitraumAndMeldungToItem(VertretungsListeItemsDC item, AbsenceTimeDC ars)
{
diff --git a/Service/Service.csproj b/Service/Service.csproj
index 43a4c92b4..75fe41589 100644
--- a/Service/Service.csproj
+++ b/Service/Service.csproj
@@ -222,7 +222,6 @@
-
diff --git a/Service/ServiceContracts/IOperationsService.cs b/Service/ServiceContracts/IOperationsService.cs
index 33d115ccc..9385afdf2 100644
--- a/Service/ServiceContracts/IOperationsService.cs
+++ b/Service/ServiceContracts/IOperationsService.cs
@@ -649,6 +649,10 @@ namespace BeWo.Service.ServiceContracts
[FaultContract(typeof(BeWoFault))]
[OperationContract]
void InsertNewToken(string beschreibung, TokenTyp typ, SchulbegleitenderZugehörigkeitsTyp zugehoerigkeitsTyp, long? oid);
+
+ [FaultContract(typeof(BeWoFault))]
+ [OperationContract]
+ void InsertNewRelationToken(TokenDC token, TokenTyp typ, SchulbegleitenderZugehörigkeitsTyp zugehoerigkeitsTyp, long? oid);
[FaultContract(typeof(BeWoFault))]
[OperationContract]
diff --git a/Service/ServiceImplementations/OperationsServiceImp.cs b/Service/ServiceImplementations/OperationsServiceImp.cs
index 1725b4862..cd4199d91 100644
--- a/Service/ServiceImplementations/OperationsServiceImp.cs
+++ b/Service/ServiceImplementations/OperationsServiceImp.cs
@@ -3875,7 +3875,7 @@ namespace BeWo.Service.ServiceImplementations
}
- //Token Bereich für Kriterien
+ //Token Bereich für Token
public List GetAllTokens(SchulbegleitenderZugehörigkeitsTyp zugehoerigkeitsTyp, long? oid)
{
try
@@ -3952,9 +3952,6 @@ 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,
@@ -4005,6 +4002,56 @@ namespace BeWo.Service.ServiceImplementations
}
}
+ public void InsertNewRelationToken(TokenDC token, TokenTyp typ, SchulbegleitenderZugehörigkeitsTyp zugehoerigkeitsTyp, long? oid)
+ {
+ try
+ {
+ if (zugehoerigkeitsTyp == SchulbegleitenderZugehörigkeitsTyp.Klient)
+ {
+ var x = DAOFactory.GenericDAO.GetByID(oid.Value);
+
+ var xyz = MapperFactory.CustomerDC_Customer.MapToNewDC(x);
+
+ CustomerTokenRelationDC c2t = new CustomerTokenRelationDC()
+ {
+ Customer = xyz
+ };
+
+ List c2tList = new List();
+ c2tList.Add(c2t);
+
+ token.RelatedCustomers = c2tList;
+
+ }
+ else if (zugehoerigkeitsTyp == SchulbegleitenderZugehörigkeitsTyp.Mitarbeiter)
+ {
+ var x = DAOFactory.GenericDAO.GetByID(oid.Value);
+
+ var xyz = MapperFactory.EmployeeDC_Employee.MapToNewDC(x);
+
+ EmployeeTokenRelationDC e2t = new EmployeeTokenRelationDC()
+ {
+ Employee = xyz
+ };
+
+ List e2tList = new List();
+ e2tList.Add(e2t);
+
+ token.RelatedEmployees = e2tList;
+ }
+
+ var tok = DAOFactory.GenericDAO.GetByID(token.TokenOid.Value);
+
+ var t = MapperFactory.TokenDC_Token.MergeWithEntity(token,tok);
+
+ DAOFactory.GenericDAO.Update(t);
+ }
+ catch (Exception e)
+ {
+ throw Utils.CreateBeWoFaultException(e);
+ }
+ }
+
public void DeleteToken(TokenDC token)
{
try
diff --git a/Shared/DataContracts/KriterienDC.cs b/Shared/DataContracts/KriterienDC.cs
deleted file mode 100644
index d5fab8078..000000000
--- a/Shared/DataContracts/KriterienDC.cs
+++ /dev/null
@@ -1,27 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Runtime.Serialization;
-
-namespace BS.Shared.DataContracts
-{
- [DataContract]
- public class KriterienDC : IDataContract
- {
- [DataMember]
- public long? KriterienOid { get; set; }
-
- [DataMember]
- public long? CustomerOid { get; set; }
-
- [DataMember]
- public string AusschlussKriterien { get; set; }
-
- [DataMember]
- public string WunschKriterien { get; set; }
-
-
- //[DataMember]
- //public string Notice { get; set; }
-
- }
-}
\ No newline at end of file
diff --git a/Shared/Shared.csproj b/Shared/Shared.csproj
index 5075a3b2a..7d339d6df 100644
--- a/Shared/Shared.csproj
+++ b/Shared/Shared.csproj
@@ -180,7 +180,6 @@
-