Änderungen aller art + Mobile gedönse mit chat token controller

This commit is contained in:
Waldi
2017-07-14 14:17:02 +02:00
parent e0b28c6fa3
commit e3e59fe705
22 changed files with 1138 additions and 803 deletions

View File

@@ -643,7 +643,6 @@
<Compile Include="ViewModel\CustomerTokenRelationVM.cs" />
<Compile Include="ViewModel\EmployeeTokenRelationVM.cs" />
<Compile Include="ViewModel\TokenVM.cs" />
<Compile Include="ViewModel\KriterienVM.cs" />
<Compile Include="ViewModel\ListViewModel\ArbeitszeitListVM.cs" />
<Compile Include="ViewModel\ListViewModel\ArbeitszeitEintragListVM.cs" />
<Compile Include="ViewModel\VertretungVM.cs" />

View File

@@ -265,6 +265,11 @@ namespace BeWo.SchulbegleitenderDienst
}
}
private Dictionary<string, Dictionary<DateTime, SchulbegleitenderDienst>> a;
private Dictionary<String, Dictionary<DateTime, SchulbegleitenderDienst>> klientb;
private void GetWochenDienstFromItems(DateTime time)
{
_itemsWochen.Clear();
@@ -275,9 +280,13 @@ namespace BeWo.SchulbegleitenderDienst
foreach (var item in _items)
{
Dictionary<string, Dictionary<DateTime, SchulbegleitenderDienst>> a = new Dictionary<string, Dictionary<DateTime, SchulbegleitenderDienst>>();
//Dictionary<string, Dictionary<DateTime, SchulbegleitenderDienst>> a = new Dictionary<string, Dictionary<DateTime, SchulbegleitenderDienst>>();
Dictionary<String, Dictionary<DateTime, SchulbegleitenderDienst>> klientb = new Dictionary<string, Dictionary<DateTime, SchulbegleitenderDienst>>();
//Dictionary<String, Dictionary<DateTime, SchulbegleitenderDienst>> klientb = new Dictionary<string, Dictionary<DateTime, SchulbegleitenderDienst>>();
a = new Dictionary<string, Dictionary<DateTime, SchulbegleitenderDienst>>();
klientb = new Dictionary<string, Dictionary<DateTime, SchulbegleitenderDienst>>();
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<DateTime, SchulbegleitenderDienst> mo = new Dictionary<DateTime, SchulbegleitenderDienst>();
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<DateTime, SchulbegleitenderDienst> mo = new Dictionary<DateTime, SchulbegleitenderDienst>();
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<DateTime, SchulbegleitenderDienst> di = new Dictionary<DateTime, SchulbegleitenderDienst>();
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<DateTime, SchulbegleitenderDienst> di = new Dictionary<DateTime, SchulbegleitenderDienst>();
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<DateTime, SchulbegleitenderDienst> mi = new Dictionary<DateTime, SchulbegleitenderDienst>();
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<DateTime, SchulbegleitenderDienst> mi = new Dictionary<DateTime, SchulbegleitenderDienst>();
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<DateTime, SchulbegleitenderDienst> Do = new Dictionary<DateTime, SchulbegleitenderDienst>();
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<DateTime, SchulbegleitenderDienst> Do = new Dictionary<DateTime, SchulbegleitenderDienst>();
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<DateTime, SchulbegleitenderDienst> fr = new Dictionary<DateTime, SchulbegleitenderDienst>();
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<DateTime, SchulbegleitenderDienst> fr = new Dictionary<DateTime, SchulbegleitenderDienst>();
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<DateTime, SchulbegleitenderDienst> sa = new Dictionary<DateTime, SchulbegleitenderDienst>();
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<DateTime, SchulbegleitenderDienst> sa = new Dictionary<DateTime, SchulbegleitenderDienst>();
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<DateTime, SchulbegleitenderDienst> sa = new Dictionary<DateTime, SchulbegleitenderDienst>();
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<DateTime, SchulbegleitenderDienst> sa = new Dictionary<DateTime, SchulbegleitenderDienst>();
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<CustomEventArgs>(newWindow_RaiseCustomEvent);
_view.ShowDialog();
}
}else
{
MessageBox.Show("Du kannst einem kranken Klienten keine Mitarbeiter hinzufügen.");

View File

@@ -6,7 +6,7 @@
xmlns:search="clr-namespace:BeWo.View.Search"
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
Title="Vertretung auswählen" Height="750" Width="850" WindowStartupLocation="CenterScreen"
Title="Vertretung auswählen" Height="650" Width="700" WindowStartupLocation="CenterScreen"
ResizeMode="CanResizeWithGrip" WindowStyle="None" Background="Transparent">
<GroupBox Header="Vertretung auswählen" x:Name="rootGroupBox" Style="{DynamicResource MainContentGroupBoxWithoutMaximizeBtnStyle}" MouseLeftButtonDown="RootGroupBox_OnMouseLeftButtonDown" >
@@ -18,48 +18,45 @@
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<RowDefinition Height="225"/>
<RowDefinition Height="125"/>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<!-- ############################### Oberes 1/3 auswahl Kriterien #######Search########################################## -->
<!-- ############################### Oberes 1/3 auswahl Kriterien ################################################ -->
<Grid Grid.Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="250" />
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="150"/>
<RowDefinition Height="150"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="100"/>
<RowDefinition Height="125"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<GroupBox Header="Klient Wunsch Kriterien" Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3" >
<!-- Ready machen für teilweise funktion / Cobobox zur auswahl der tokens und TextBox zur anzeige der ausgewählten tokens -->
<!-- Ready machen für teilweise funktion / Combobox zur auswahl der tokens und TextBox zur anzeige der ausgewählten tokens -->
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<controls:NullItemComboBox Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="3" x:Name="ComboBoxWunschAuswahl" SelectionChanged="ComboBoxWunschAuswahl_OnSelected" Width="200" Height="23" Visibility="Collapsed" />
<controls:NullItemComboBox Grid.Row="0" Grid.Column="0" x:Name="ComboBoxWunschAuswahl" SelectionChanged="ComboBoxWunschAuswahl_OnSelected" Width="200" Height="23" Visibility="Collapsed" />
<TextBox Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="3" Margin="3" x:Name="TBoxWunschAnzeige" MinHeight="50" TextWrapping="Wrap" Width="200" IsReadOnly="True" />
<TextBox Grid.Row="1" Grid.Column="0" Margin="3" x:Name="TBoxWunschAnzeige" MinHeight="50" TextWrapping="Wrap" Width="200" IsReadOnly="True" />
</Grid>
@@ -67,101 +64,127 @@
</GroupBox>
<GroupBox Header="Klient Ausschluss Kriterien" Grid.Row="0" Grid.Column="2" Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3">
<!-- Ready machen für teilweise funktion -->
<!-- Ready machen für teilweise funktion <ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/> <RowDefinition Height="Auto"/>-->
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<controls:NullItemComboBox Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="3" x:Name="ComboBoxAussschlussAuswahl" SelectionChanged="ComboBoxAussschlussAuswahl_OnSelected" Width="200" Height="23" Visibility="Collapsed"/>
<controls:NullItemComboBox Grid.Row="0" Grid.Column="0" x:Name="ComboBoxAussschlussAuswahl" SelectionChanged="ComboBoxAussschlussAuswahl_OnSelected" Width="200" Height="23" Visibility="Collapsed"/>
<TextBox Grid.Row="1" Margin="3" Grid.Column="0" Grid.ColumnSpan="3" x:Name="TBoxAussschlussAnzeige" Width="200" MinHeight="50" TextWrapping="Wrap" IsReadOnly="True"/>
<TextBox Grid.Row="1" Margin="3" Grid.Column="0" x:Name="TBoxAussschlussAnzeige" Width="200" MinHeight="50" TextWrapping="Wrap" IsReadOnly="True"/>
</Grid>
</GroupBox>
<GroupBox Header="Mitarbeiter Wunsch Kriterien" Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}" >
<GroupBox Header="Mitarbeiter Wunsch Kriterien" Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3" >
<!-- ############### wird durch Token Combobox mit devexpress vers. 17 ersetzt ################################## -->
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<controls:NullItemComboBox Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="3" x:Name="ComboBoxMitarbeiterWunschAuswahl" SelectionChanged="ComboBoxMitarbeiterWunschAuswahl_OnSelectionChanged" Width="200" Height="23" />
<controls:NullItemComboBox Grid.Row="0" Grid.Column="0" x:Name="ComboBoxMitarbeiterWunschAuswahl" SelectionChanged="ComboBoxMitarbeiterWunschAuswahl_OnSelectionChanged" Width="200" Height="23" />
<TextBox Grid.Row="1" Margin="3" Grid.Column="0" Grid.ColumnSpan="3" x:Name="TBoxMitarbeiterWunschAnzeige" Width="200" MinHeight="50" TextWrapping="Wrap" IsReadOnly="True"/>
<TextBox Grid.Row="1" Margin="3" Grid.Column="0" x:Name="TBoxMitarbeiterWunschAnzeige" Width="200" MinHeight="50" TextWrapping="Wrap" IsReadOnly="True"/>
</Grid>
<!-- ############################################################################################################## -->
</GroupBox>
<GroupBox Header="Mitarbeiter Ausschluss Kriterien" Grid.Row="1" Grid.Column="2" Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}" >
<GroupBox Header="Mitarbeiter Ausschluss Kriterien" Grid.Row="1" Grid.Column="2" Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3" >
<!-- ############### wird durch Token Combobox mit devexpress vers. 17 ersetzt ################################## -->
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<controls:NullItemComboBox Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="3" x:Name="ComboBoxMitarbeiterAussschlussAuswahl" SelectionChanged="ComboBoxMitarbeiterAussschlussAuswahl_OnSelectionChanged" Width="200" Height="23" />
<controls:NullItemComboBox Grid.Row="0" Grid.Column="0" x:Name="ComboBoxMitarbeiterAussschlussAuswahl" SelectionChanged="ComboBoxMitarbeiterAussschlussAuswahl_OnSelectionChanged" Width="200" Height="23" />
<TextBox Grid.Row="1" Margin="3" Grid.Column="0" Grid.ColumnSpan="3" x:Name="TBoxMitarbeiterAussschlussAnzeige" Width="200" MinHeight="50" TextWrapping="Wrap" IsReadOnly="True"/>
<TextBox Grid.Row="1" Margin="3" Grid.Column="0" x:Name="TBoxMitarbeiterAussschlussAnzeige" Width="200" MinHeight="50" TextWrapping="Wrap" IsReadOnly="True"/>
</Grid>
<!-- ############################################################################################################## -->
</GroupBox>
<GroupBox Header="Geschlecht" Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3">
<GroupBox Header="Geschlecht" Grid.Row="0" Grid.Column="4" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3">
<WrapPanel Orientation="Horizontal">
<CheckBox Content="männlich" Margin="3,3,3,3" Click="RBMaennlich_OnClick" x:Name="RBMaennlich" IsChecked="True"/>
<CheckBox Content="weiblich" Margin="3,3,3,3" Click="RBWeiblich_OnClick" x:Name="RBWeiblich" IsChecked="True" />
</WrapPanel>
</GroupBox>
<GroupBox Grid.Column="2" Grid.Row="2" Grid.ColumnSpan="2" Margin="3,3,3,3" Style="{StaticResource ObjectEditGroupBox}" Header="Klienten PLZ">
<WrapPanel Orientation="Horizontal">
<Label Margin="3,3,3,3">PLZ: </Label>
<!-- Combobox unter TextBox positionieren und -->
<Grid Column="4" Grid.Row="1" Margin="3,3,3,3">
<Grid.RowDefinitions>
<RowDefinition Height="60"/>
<RowDefinition Height="60"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<GroupBox Grid.Row="0" Margin="1" Style="{StaticResource ObjectEditGroupBox}" Header="Klienten PLZ">
<Grid>
<WrapPanel Orientation="Horizontal" Margin="1" HorizontalAlignment="Left" >
<Label Content ="Plz:" />
<Label x:Name="LabelPlzKlient" Width="50" />
</WrapPanel>
<WrapPanel Orientation="Horizontal" Margin="1" HorizontalAlignment="Right">
<Label Content="Ort:"/>
<Label x:Name="LabelOrtKlient" />
</WrapPanel>
</Grid>
<!-- Combobox unter TextBox positionieren und Grid.ColumnSpan="2" Grid.ColumnSpan="2"-->
<!--<ComboBox x:name="jfwj" Visibility="Collapsed" Selected="Selector_OnSelected" IsEditable="True" />-->
<!--<ComboBox x:name="jfwj" Visibility="Collapsed" Selected="Selector_OnSelected" IsEditable="True" />-->
<TextBox x:Name="PlzKlient" Height="23" Width="50" MaxLength="5" Margin="3,3,3,3" VerticalContentAlignment="Center" TextChanged="PlzKlient_OnTextChanged" />
<!--hier combobox mit umkreis 5 10 15 20 25 km anzeigen-->
<Label Margin="3" x:Name="LabelUmkreis" Visibility="Collapsed" >Umkreis</Label>
<controls:NullItemComboBox Margin="3" Height="23" x:Name="ComboBoxUmkreisExtender" Width="75" Visibility="Collapsed" SelectionChanged="ComboBoxUmkreisExtender_OnSelected"/>
</WrapPanel>
</GroupBox>
<!--hier combobox mit umkreis 5 10 15 20 25 km anzeigen | Zurzeit deakiviert -->
<!--<Label Margin="3" x:Name="LabelUmkreis" Visibility="Collapsed" >Umkreis</Label> -->
<!--<controls:NullItemComboBox Margin="3" Height="23" x:Name="ComboBoxUmkreisExtender" Width="75" Visibility="Collapsed" SelectionChanged="ComboBoxUmkreisExtender_OnSelected"/>-->
<!-- ####### Zurzeit Deaktiviert ####### -->
</GroupBox>
<GroupBox Grid.Row="1" Margin="1" Style="{StaticResource ObjectEditGroupBox}" Header="Suche nach" >
<Grid>
<WrapPanel Orientation="Horizontal" HorizontalAlignment="Left" Margin="1">
<Label Content="Plz:" />
<TextBox x:Name="PlzKlient" Height="23" Width="50" MaxLength="5" VerticalContentAlignment="Center" TextChanged="PlzKlient_OnTextChanged" /> <!-- Aus Textbiox ein Texedit machen und Regex hinzufügen "[^0-9]+" -->
</WrapPanel>
<WrapPanel Orientation="Horizontal" HorizontalAlignment="Right" Margin="1">
<Label Content="Ort:" />
<TextBox x:Name="OrtKlient" Height="23" Width="50" VerticalContentAlignment="Center" TextChanged="OrtKlient_OnTextChanged" />
</WrapPanel>
</Grid>
</GroupBox>
</Grid>
</Grid>
@@ -253,12 +276,12 @@
<!-- ################################################################################################## -->
<!-- ################################################################################################## Margin="3,3,3,3"-->
<StackPanel Grid.Row="3" Grid.Column="0" >
<WrapPanel Orientation="Horizontal" HorizontalAlignment="Right" Margin="3,3,3,3" VerticalAlignment="Bottom" >
<WrapPanel Orientation="Horizontal" HorizontalAlignment="Right" VerticalAlignment="Bottom" >
<Button Content="Übernehmen" Width="90" Click="ButtonBase_OnClick" Margin="3,3,3,3" />
<Button Content="Schließen" Width="90" Click="ButtonClose_OnClick" Margin="3,3,3,3"/>
</WrapPanel>

View File

@@ -57,8 +57,6 @@ namespace BeWo.SchulbegleitenderDienst
private List<SearchViewDaten> _dataListEmployee = new List<SearchViewDaten>();
private SchulbegleitenderZugehörigkeitsTyp zugehoerigkeitsTyp;
private readonly long? _klientOid = 10;
List<SearchViewDaten> aktuelleDaten = new List<SearchViewDaten>();
@@ -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<String> woaa = new List<string> { "5 km", "10 km", "15 km", "20 km", "25 km" };
ComboBoxUmkreisExtender.ItemsSource = woaa;
//################ UmkreisErmittler prototyp status ################
//List<String> woaa = new List<string> { "5 km", "10 km", "15 km", "20 km", "25 km" };
// ComboBoxUmkreisExtender.ItemsSource = woaa;
//##################################################
//typ muss noch übergeben werden
zugehoerigkeitsTyp = SchulbegleitenderZugehörigkeitsTyp.Klient;
}
@@ -148,6 +143,23 @@ namespace BeWo.SchulbegleitenderDienst
}));
}
private void SetKlientOrtAndPlz()
{
//Übergebe hier die Plz und den Ort des Klienten zur ansicht
List<long> x = new List<long>();
x.Add(_klientOid.Value);
// neue funktion schreiben um die person hinter customer mit customer oid zu holen
var klient = ServiceFacade.DoCustomerServiceSync(r => r.GetCustomersById(x));
//Platzhalter Daten
LabelPlzKlient.Content = "53842"; // Übergebe hier die Plz des klienten
LabelOrtKlient.Content = "Troisdorf"; // Übergebe hier den Ort des klienten
}
#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<CompactEmployeeDC> 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<SearchViewDaten> ndaten = new List<SearchViewDaten>();
@@ -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<string> wunschliste = new List<string>();
List<string> ausschlussliste = new List<string>();
foreach (var token in x)
{
if(token.MemberOid == _klientOid){
if (token.TokenTyp == TokenTyp.WunschKriterium)
// var x =
ServiceFacade.DoOperationsServiceAsync(r => r.GetAllTokens(SchulbegleitenderZugehörigkeitsTyp.Klient, _klientOid), x => this.Dispatch(
delegate
{
wunschliste.Add(token.Beschreibung);
TBoxWunschAnzeige.Text += token.Beschreibung + "; ";
}
List<string> wunschliste = new List<string>();
List<string> ausschlussliste = new List<string>();
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<string> wunschliste = new List<string>();
List<string> ausschlussliste = new List<string>();
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<string> wunschliste = new List<string>();
List<string> ausschlussliste = new List<string>();
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<SearchViewDaten> nSVD = new List<SearchViewDaten>();
//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<SearchViewDaten> ndaten = new List<SearchViewDaten>();
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

View File

@@ -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<long> 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<long> oid);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/UpdateToken", ReplyAction="http://tempuri.org/IOperationsService/UpdateTokenResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/UpdateTokenBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
void UpdateToken(BS.Shared.DataContracts.TokenDC token);
@@ -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<long> oid)
{
base.Channel.InsertNewRelationToken(token, typ, zugehoerigkeitsTyp, oid);
}
public void UpdateToken(BS.Shared.DataContracts.TokenDC token)
{
base.Channel.UpdateToken(token);

View File

@@ -39,6 +39,10 @@ namespace BeWo.View
long? Oid = 0;
private SchulbegleitenderZugehörigkeitsTyp zugehoerigkeitsTyp;
Dictionary<string, TokenDC> verfuegbarerWunschToken = new Dictionary<string, TokenDC>();
Dictionary<string, TokenDC> verfuegbarerAusschlussToken = new Dictionary<string, TokenDC>();
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;
}
}
}

View File

@@ -1,96 +0,0 @@
using BS.Shared;
using BS.Shared.DataContracts;
using System;
namespace BeWo.ViewModel
{
public class KriterienVM : AbstractDCMapperVM<KriterienDC>
{
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;
}
}
}

View File

@@ -148,6 +148,7 @@
<Compile Include="App_Start\RouteConfig.cs" />
<Compile Include="App_Start\WebApiConfig.cs" />
<Compile Include="Controllers\AbstractBaseController.cs" />
<Compile Include="Controllers\ChatTokenController.cs" />
<Compile Include="Controllers\LoginController.cs" />
<Compile Include="Controllers\MainController.cs" />
<Compile Include="Global.asax.cs">

View File

@@ -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 <b>Default</b> 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<Customer>(1);// was wird aus customer ?
List<JsonInputKlient2> inputList = new List<JsonInputKlient2>();
// 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>();
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<Team>();
List<JsonRueckgabeTeamMitarbeiterInput> JRTMI = new List<JsonRueckgabeTeamMitarbeiterInput>();
foreach (var dat in daten)
{
foreach (var mem in dat.MemberList)
{
if (mem.Oid == user.Employee.Oid)
{
List<JsonRueckgabeTeamMitarbeiterInput2> mtInputList = new List<JsonRueckgabeTeamMitarbeiterInput2>();
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<Image>(); // diese form von rausholden ist nicht möglich
var img = DAOFactory.GenericDAO.GetByID<Person>(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<JsonInputKlient2> Guardians { get; set; }
public JsonInputKlient1(string oid,string status, string firstname, string lastname, string alias, List<JsonInputKlient2> 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<JsonRueckgabeTeamMitarbeiterInput> Input { get; set; }
public JsonRueckgabeTeamMitarbeiter(string state, List<JsonRueckgabeTeamMitarbeiterInput> 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<JsonRueckgabeTeamMitarbeiterInput2> Member { get; set; }
public JsonRueckgabeTeamMitarbeiterInput(string oid,string status, string name,List<JsonRueckgabeTeamMitarbeiterInput2> 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
}

View File

@@ -124,7 +124,7 @@
<add key="PreserveLoginUrl" value="true" />
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
<add key="MultitenancyPath" value="F:\Projects\BeWo\Host\Multitenancy\" />
<add key="MultitenancyPath" value="C:\Projekte\BeWo\Host\Multitenancy\" />
<!--<add key="MultitenancyPath" value="..\Host\Multitenancy"/>-->
</appSettings>

View File

@@ -166,7 +166,6 @@
<Compile Include="Entities\Employee2Token.cs" />
<Compile Include="Entities\Token.cs" />
<Compile Include="Entities\VertretungsListe.cs" />
<Compile Include="Entities\Kriterien.cs" />
<Compile Include="Entities\Vertretung.cs" />
<Compile Include="Entities\PasswortVerlauf.cs" />
<Compile Include="Entities\MedRecord.cs" />
@@ -574,9 +573,6 @@
<EmbeddedResource Include="Mappings\Arbeitszeit.hbm.xml">
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="Mappings\Kriterien.hbm.xml">
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="Mappings\Vertretung.hbm.xml">
<SubType>Designer</SubType>
</EmbeddedResource>

View File

@@ -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;
}
}
}
}
}

View File

@@ -1,24 +0,0 @@
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="BeWo.Data.Entities.Kriterien,BeWo.Data" table="Kriterien">
<id name="Oid" column ="Oid" unsaved-value="null">
<generator class="identity" />
</id>
<version type="Int64" column="Version" name="Version" />
<property name="CustomerOid" column="KlientOid" />
<property name="InsTs" />
<property name="InsUser" />
<property column="Tid" type="BS.Shared.TableID, BS.Shared" name="_Tid" access="field" />
<property name="UdpUser" />
<property name="IsActive" type="BS.Shared.ActivationTypeId, BS.Shared" />
<property name="SystemEntryID" type="BS.Shared.SystemEntryID, BS.Shared" />
<property name="Notice" column="Notice" length="1024" />
<property name="AusschlussKriterien" column="AusschlussKriterien" />
<property name="WunschKriterien" column="WunschKriterien" />
</class>
</hibernate-mapping>

View File

@@ -0,0 +1 @@
DROP TABLE Kriterien;

View File

@@ -1,45 +0,0 @@
using System.IO;
using BeWo.Data.Entities;
using BS.Shared.DataContracts;
namespace BeWo.Service.DCEntityMapper
{
public class KriterienDC_Kriterien : AbstractIDCEntityMapper<Kriterien, KriterienDC>
{
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;
}
}
}

View File

@@ -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
{

View File

@@ -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)
{

View File

@@ -222,7 +222,6 @@
<Compile Include="DCEntityMapper\CompactTokenDC_Token.cs" />
<Compile Include="DCEntityMapper\TokenDC_Token.cs" />
<Compile Include="DCEntityMapper\VertretungsListeDC_VertretungsListe.cs" />
<Compile Include="DCEntityMapper\KriterienDC_Kriterien.cs" />
<Compile Include="DCEntityMapper\PasswortVerlaufDC_PasswortVerlauf.cs" />
<Compile Include="DCEntityMapper\MedRecordDC_MedRecord.cs" />
<Compile Include="DCEntityMapper\SignatureDC_Signature.cs" />

View File

@@ -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]

View File

@@ -3875,7 +3875,7 @@ namespace BeWo.Service.ServiceImplementations
}
//Token Bereich für Kriterien
//Token Bereich für Token
public List<TokenDC> 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<Customer>(oid.Value);
var xyz = MapperFactory.CustomerDC_Customer.MapToNewDC(x);
CustomerTokenRelationDC c2t = new CustomerTokenRelationDC()
{
Customer = xyz
};
List<CustomerTokenRelationDC> c2tList = new List<CustomerTokenRelationDC>();
c2tList.Add(c2t);
token.RelatedCustomers = c2tList;
}
else if (zugehoerigkeitsTyp == SchulbegleitenderZugehörigkeitsTyp.Mitarbeiter)
{
var x = DAOFactory.GenericDAO.GetByID<Employee>(oid.Value);
var xyz = MapperFactory.EmployeeDC_Employee.MapToNewDC(x);
EmployeeTokenRelationDC e2t = new EmployeeTokenRelationDC()
{
Employee = xyz
};
List<EmployeeTokenRelationDC> e2tList = new List<EmployeeTokenRelationDC>();
e2tList.Add(e2t);
token.RelatedEmployees = e2tList;
}
var tok = DAOFactory.GenericDAO.GetByID<Token>(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

View File

@@ -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; }
}
}

View File

@@ -180,7 +180,6 @@
<Compile Include="DataContracts\TokenDC.cs" />
<Compile Include="DataContracts\VertretungsListeItemsDC.cs" />
<Compile Include="DataContracts\VertretungsListeDC.cs" />
<Compile Include="DataContracts\KriterienDC.cs" />
<Compile Include="DataContracts\VertretungDC.cs" />
<Compile Include="DataContracts\PasswortVerlaufDC.cs" />
<Compile Include="DataContracts\MedRecordDC.cs" />