//using System; //using System.Collections.Generic; //using System.Linq; //using System.Text; //using BeWo.Data.Access; //using BeWo.Data.Entities; //using BeWo.Service.Core; //using BS.Shared; //using BS.Shared.DataContracts; //using BS.Shared.DataContracts.Compact; //using BS.Shared.Extensions; //namespace BeWo.Service.SBD //{ // class VertretungsAlgorithmus // { // #region Variablen // private readonly Dictionary> _employee2CustomerHaupt = new Dictionary>(); // private readonly VertretungsListeDC _schulbegleitenderDienst = new VertretungsListeDC(); // private DateTime _auswerteDatum; // private DateTime _startDate; // private DateTime _endDate; // public List vertretungsliste = new List(); // public List EmployeeListe = new List(); // public List Mitarbeiterliste = new List(); // public Dictionary> c2a = new Dictionary>(); // private readonly List _vorhandeneCustomerOidListe = new List(); // #endregion // #region Konstruktoren // public VertretungsAlgorithmus(VertretungsListeDC sbd , DateTime date) // { // _schulbegleitenderDienst = sbd; // _auswerteDatum = date; // Hauptbetreuungen(); // ErstelleItemVonVertretungen(); // ErstelleItemVonAbsencetimes(); // } // public VertretungsAlgorithmus(VertretungsListeDC sbd, DateTime start,DateTime ende) // { // _schulbegleitenderDienst = sbd; // _startDate = start; // _endDate = ende; // Hauptbetreuungen(); // ErstelleItemVonWoechentlicherVertretungen(); // ErstelleItemVonWoechentlicherAbsencetimes(); // } // public VertretungsAlgorithmus(DateTime start, DateTime ende) // { // _startDate = start; // _endDate = ende; // //erstmal hier hinein und dann mal kuken // GetAlleMitarbeiterForWochenanzeige(); // } // #endregion // #region Nicht Benötigte Methoden // //zur zeit nicht verwendeter Konstruktor // public VertretungsAlgorithmus(DateTime start, DateTime end, int typ) // { // // hier sachen für accounting transaction handeln // if (typ == 3) // { // AccTransKlient(start, end); // } // } // #region AccountTransaction // //muss umgebaut werden | wird aber nicht benötigt // private void AccTransKlient(DateTime start, DateTime end) // { // var xs = DAOFactory.GenericDAO.GetAllActive(); // var ys = DAOFactory.GenericDAO.GetAllActive(); // var y = DCEntityMapper.MapperFactory.CompactCustomerDC_Customer.MapToNewDCs(ys); // var x = DCEntityMapper.MapperFactory.AccountingTransactionDC_AccountingTransaction.MapToNewDCs(xs); // foreach (var customer in y) // { // //was wollt ich damit nochmal bewirken ?? // //foreach (var costbar in customer.CostBearerReferenceNumbers) // //{ // //} // // den vom Customer zugehörigen AccountTranzaction hinzufügen // foreach (var accountTranz in x) // { // if(accountTranz != null && customer != null) { // if(accountTranz.SupportConceptCostBearerRelDC != null && accountTranz.SupportConceptCostBearerRelDC.SupportConcept != null ) { // if (customer.Oid == accountTranz.SupportConceptCostBearerRelDC.SupportConcept.Customer.Oid) //vom AccTrans die vom Customer vergleichen // { // //################## hier die zeit abfragen ################# // //if (accountTranz.BookingDate != null && accountTranz.BookingDate.Value.Date <= end.Date && // // accountTranz.ValidityDate != null && accountTranz.ValidityDate.Value.Date >= start.Date) // //{ // if (!c2a.ContainsKey(customer)) // { // List ahh = new List(); // ahh.Add(accountTranz); // c2a.Add(customer, ahh); // } // else // { // c2a[customer].Add(accountTranz); // } // //} // //else if(accountTranz.BookingDate == null && accountTranz.ValidityDate == null) // Abfrage ggf erweitern // //{ // // if(!c2a.ContainsKey(customer)) // // { // // List ahh = new List(); // // ahh.Add(accountTranz); // // c2a.Add(customer, ahh); // // } // // else // // { // // c2a[customer].Add(accountTranz); // // } // //} // //############################################################# // } // } // } // } // } // } // #endregion // #region Quttierungschecklist // public bool FetchReferenceNumbers { get; set; } // public void QuittierungsCheckListe(long? oid) // { // List customerListe = new List(); // //long? oid = null; // //if (!BeWoApp.LoggedOnUser.HasRight(UserRightType.ViewAll) && !BeWoApp.LoggedOnUser.HasRight(UserRightType.CustomerView_View)) // //{ // // oid = BeWoApp.LoggedOnUser.Employee.EmployeeOid; // //} // //ServiceFacade.DoCustomerServiceAsync( // // s => s.GetAllActiveCustomersCompact(this.FetchReferenceNumbers, oid), // // r => // // { // // List list = r; // // if (oid != null) // // { // // list = list.Where(c => c.IsRelatedToEmployee).ToList(); // // } // // list.Sort((x, y) => (x.LastName + ", " + x.FirstName).CompareTo(y.LastName + ", " + y.FirstName)); // (Comparison)new CustomerSorter().GetComparison("LastName", BeWo.Core.AbstractSorter.SortDirection.Ascending)); // // customerListe = list; // // }); // } // #endregion //#endregion // #region Hauptbetreuung // public void Hauptbetreuungen() // { // try // { // foreach (var xa in _schulbegleitenderDienst.Employeesliste) // { // List klientoids = new List(); // Employee e = DAOFactory.GenericDAO.LoadByID(xa.EmployeeOid); // foreach (var e2c in e.Employee2CustomerList) // { // foreach (var v2o in e2c.ValueList) // { // //if (v2o.Entry.Type == ValueListEntryType.StaffRoleType && v2o.Entry.SystemEntryID.HasValue && // // v2o.Entry.SystemEntryID.Value == SystemEntryID.EmployeeRoleMainAttendant) // if (v2o.Entry.Type == ValueListEntryType.StaffRoleType) // { // klientoids.Add(e2c.CustomerOid.Value); // } // } // } // if (!_employee2CustomerHaupt.ContainsKey(xa.EmployeeOid)) // _employee2CustomerHaupt.Add(xa.EmployeeOid, klientoids); // } // _schulbegleitenderDienst.Employee2CustomerHauptbetreuung = _employee2CustomerHaupt; // } // catch (Exception e) // { // throw Utils.CreateBeWoFaultException(e); // } // } // #endregion // //hier neu Bemerkung füllen // #region Tagesanzeige // private void ErstelleItemVonVertretungen() // { // try // { // _vorhandeneCustomerOidListe.Clear(); // foreach (var vdc in _schulbegleitenderDienst.Vertretungsliste) // { // var item = ErstelleVertretungsItem(); // //Vertretungsdc wird übergeben // item.Vertretung = vdc; // if (vdc.VertretungsZeitraumVon.Date <= _auswerteDatum.Date && vdc.VertretungsZeitraumBis.Date >= _auswerteDatum.Date) // { // foreach (var mit in _schulbegleitenderDienst.Employeesliste) // { // if (vdc.EmployeeOid == mit.EmployeeOid) // { // item.EmployeeName = mit.FirstName + " " + mit.LastName; // item.EmployeeOid = mit.EmployeeOid; // } // if (vdc.VertretenderMitarbeiterOid == mit.EmployeeOid) // { // item.VertretenderMitarbeiter = mit.FirstName + " " + mit.LastName; // item.VertreterOid = mit.EmployeeOid; // } // foreach (var hauptbetreuung in _schulbegleitenderDienst.Employee2CustomerHauptbetreuung) // { // if (hauptbetreuung.Key == vdc.EmployeeOid && vdc.EmployeeOid == mit.EmployeeOid) // { // foreach (var cust in _schulbegleitenderDienst.Customersliste) // { // foreach (var val in hauptbetreuung.Value) // { // if (val == cust.CustomerOid) // { // if (cust.CustomerOid == vdc.CustomerOid) // { // _vorhandeneCustomerOidListe.Add(cust.CustomerOid); // item.Customer.Add(cust.CustomerOid, cust.FullName); // } // } // } // } // } // } // } // foreach (var ab in _schulbegleitenderDienst.AbsenceTimeliste) // { // if (vdc.AbsenceTimeOid == ab.AbsenceTimeOid) // { // item.Abwesenheitskategorie = ab.Reason; // AddKrankheitsZeitraumAndMeldungToItem(item, ab); // item.Absencetime = ab; // //AddArbeitszeitToItem(item, vertritt.EmployeeOid,1); // if (item.EmployeeOid == 0 || item.EmployeeName.Equals("")) // { // foreach (var emp in _schulbegleitenderDienst.Employeesliste) // { // if (emp.EmployeeOid == ab.EmployeeOid) // { // item.EmployeeOid = ab.EmployeeOid.Value; // item.EmployeeName = emp.FirstName + " " + emp.LastName; // } // } // } // } // } // AddArbeitszeitToItem(item, item.EmployeeOid, 1); // //überprüfung durchführen und ggf mehrere Davon anlegen. wegen vertretungszeiten bei krankheitszeiträumen // item.Bemerkung = vdc.Notice; // //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); // //} // } // } // } // catch (Exception e) // { // throw Utils.CreateBeWoFaultException(e); // } // } // private void ErstelleItemVonAbsencetimes() // { // try // { // foreach (var ars in _schulbegleitenderDienst.AbsenceTimeliste) // { // if ((!ars.Start.HasValue || ars.Start.Value.Date <= _auswerteDatum.Date) && (!ars.End.HasValue || ars.End.Value.Date >= _auswerteDatum.Date)) // { // var item = ErstelleVertretungsItem(); // item.Abwesenheitskategorie = ars.Reason; // item.Absencetime = ars; // item.Bemerkung = ars.Notice; // AddKrankheitsZeitraumAndMeldungToItem(item, ars); // if (ars.EmployeeOid.HasValue) // { // item.IsMitarbeiterKrank = true; // foreach (var emp in _schulbegleitenderDienst.Employeesliste) // { // if (ars.EmployeeOid == emp.EmployeeOid) // { // item.EmployeeName = emp.FirstName + " " + emp.LastName; // item.EmployeeOid = emp.EmployeeOid; // } // foreach (var hauptbetreuung in _schulbegleitenderDienst.Employee2CustomerHauptbetreuung) // { // if (hauptbetreuung.Key == emp.EmployeeOid && emp.EmployeeOid == ars.EmployeeOid) // { // foreach (var cust in _schulbegleitenderDienst.Customersliste) // { // foreach (var val in hauptbetreuung.Value) // { // if (val == cust.CustomerOid) // { // if (!_vorhandeneCustomerOidListe.Contains(cust.CustomerOid)) // item.Customer.Add(cust.CustomerOid, cust.FullName); // } // } // } // } // } // } // } // //Sonderfall wenn keine vertertung verfügbar und employee nicht gegeben aber absence eine customer oid besitzt // if (item.Customer.Count == 0 && item.EmployeeOid == 0 && ars.CustomerOid.Value != 0) // { // foreach (var cust in _schulbegleitenderDienst.Customersliste) // { // if (ars.CustomerOid.Value == cust.CustomerOid) // { // item.Customer.Add(cust.CustomerOid, cust.FullName); // item.IsCustomerKrank = true; // } // } // } // if (item.EmployeeOid == 0 && item.Customer.Count > 0) // { // //item.EmployeeName = "Name des MAs"; // var customerOid = item.Customer.Keys.First(); // foreach (var eOid in _schulbegleitenderDienst.Employee2CustomerHauptbetreuung.Keys) // { // var cOidList = _schulbegleitenderDienst.Employee2CustomerHauptbetreuung[eOid]; // if (cOidList.Contains(customerOid)) // { // foreach (var emp in _schulbegleitenderDienst.Employeesliste) // { // if (emp.EmployeeOid == eOid) // { // item.EmployeeName = emp.FirstName + " " + emp.LastName; // AddArbeitszeitToItem(item, emp.EmployeeOid, 1); // } // } // } // } // } // else // { // AddArbeitszeitToItem(item, item.EmployeeOid, 1); // } // //item.Bemerkung = ars.Notice; // if (DarfGeaddetWerden(item, vertretungsliste)) // { // vertretungsliste.Add(item); // } // //if (item.Customer.Count != 0 && item.EmployeeOid != 0) // //{ // //vertretungsliste.Add(item); // //} // } // } // } // catch (Exception e) // { // throw Utils.CreateBeWoFaultException(e); // } // } // private bool DarfGeaddetWerden(VertretungsItemDC neuesItem, List vertretungsListeItemsDcs) // { // foreach (var itemAusListe in vertretungsListeItemsDcs) // { // if (neuesItem.EmployeeOid == itemAusListe.EmployeeOid && neuesItem.Absencetime.AbsenceTimeOid == // itemAusListe.Absencetime.AbsenceTimeOid) // { // return false; // } // } // return true; // } // #endregion // #region Klienten Wochenanzeige // //----- Bearbeiten -------------------------------------------------------------------------------------------- // //----- Woechentliche Vertretungen, Die anzeige jeweiliger tage muss angepasst werden wenn zum beispiel eine // //krabkmeldung mehrere vertretungen zugewiesen bekomment hat. Die müssen dann richtig angezeigt werden. // private void ErstelleItemVonWoechentlicherVertretungen() // { // try // { // _vorhandeneCustomerOidListe.Clear(); // foreach (var vertritt in _schulbegleitenderDienst.Vertretungsliste) // { // var item = ErstelleVertretungsItem(); // //Vertretungsdc wird übergeben // item.Vertretung = vertritt; // item.WochenansichtBemerkung = ""; // item.Bemerkung = vertritt.Notice; // if (vertritt.VertretungsZeitraumVon.Date <= _endDate.Date && vertritt.VertretungsZeitraumBis.Date >= _startDate.Date) // { // foreach (var mit in _schulbegleitenderDienst.Employeesliste) // { // if (vertritt.EmployeeOid == mit.EmployeeOid) // { // item.EmployeeName = mit.FirstName + " " + mit.LastName; // item.EmployeeOid = mit.EmployeeOid; // } // if (vertritt.VertretenderMitarbeiterOid == mit.EmployeeOid) // { // item.VertretenderMitarbeiter = mit.FirstName + " " + mit.LastName; // item.VertreterOid = mit.EmployeeOid; // } // foreach (var hauptbetreuung in _schulbegleitenderDienst.Employee2CustomerHauptbetreuung) // { // if (hauptbetreuung.Key == vertritt.EmployeeOid && vertritt.EmployeeOid == mit.EmployeeOid) // { // foreach (var cust in _schulbegleitenderDienst.Customersliste) // { // foreach (var val in hauptbetreuung.Value) // { // if (val == cust.CustomerOid) // { // if (cust.CustomerOid == vertritt.CustomerOid) // { // _vorhandeneCustomerOidListe.Add(cust.CustomerOid); // item.Customer.Add(cust.CustomerOid, cust.FullName); // } // } // } // } // } // } // } // foreach (var ab in _schulbegleitenderDienst.AbsenceTimeliste) // { // if (vertritt.AbsenceTimeOid == ab.AbsenceTimeOid) // { // item.Abwesenheitskategorie = ab.Reason; // AddKrankheitsZeitraumAndMeldungToItem(item, ab); // item.Absencetime = ab; // //AddArbeitszeitToItem(item, vertritt.EmployeeOid,2); // if (item.EmployeeOid == 0 || item.EmployeeName.Equals("")) // { // foreach (var emp in _schulbegleitenderDienst.Employeesliste) // { // if (emp.EmployeeOid == ab.EmployeeOid) // { // item.EmployeeOid = ab.EmployeeOid.Value; // item.EmployeeName = emp.FirstName + " " + emp.LastName; // } // } // } // } // } // //item.isCustomerKrank = true; // AddArbeitszeitToItem(item, item.EmployeeOid, 2); // //Abfragen ob Employee vorhanden // vertretungsliste.Add(item); // } // } // } // catch (Exception e) // { // throw Utils.CreateBeWoFaultException(e); // } // } // private void ErstelleItemVonWoechentlicherAbsencetimes() // { // try // { // foreach (var ars in _schulbegleitenderDienst.AbsenceTimeliste) // { // var item = ErstelleVertretungsItem(); // item.Abwesenheitskategorie = ars.Reason; // item.Absencetime = ars; // item.Bemerkung = ars.Notice; // AddKrankheitsZeitraumAndMeldungToItem(item, ars); // item.WochenansichtBemerkung = ""; // if ((!ars.Start.HasValue || ars.Start.Value.Date <= _endDate.Date) && (!ars.End.HasValue || ars.End.Value.Date >= _startDate.Date)) // { // foreach (var emp in _schulbegleitenderDienst.Employeesliste) // { // if (ars.EmployeeOid == emp.EmployeeOid) // { // item.EmployeeName = emp.FirstName + " " + emp.LastName; // item.EmployeeOid = emp.EmployeeOid; // } // foreach (var hauptbetreuung in _schulbegleitenderDienst.Employee2CustomerHauptbetreuung) // { // if (hauptbetreuung.Key == emp.EmployeeOid && emp.EmployeeOid == ars.EmployeeOid) // { // foreach (var cust in _schulbegleitenderDienst.Customersliste) // { // foreach (var val in hauptbetreuung.Value) // { // if (val == cust.CustomerOid) // { // if (!_vorhandeneCustomerOidListe.Contains(cust.CustomerOid)) // item.Customer.Add(cust.CustomerOid, cust.FullName); // } // } // } // } // } // } // if (item.EmployeeOid == 0 || item.EmployeeName.Equals("")) // { // foreach (var emp in _schulbegleitenderDienst.Employeesliste) // { // if (emp.EmployeeOid == ars.EmployeeOid) // { // item.EmployeeOid = ars.EmployeeOid.Value; // item.EmployeeName = emp.FirstName + " " + emp.LastName; // //AddArbeitszeitToItem(item, emp.EmployeeOid,2); // } // } // } // //Sonderfall wenn keine vertertung verfügbar und employee nicht gegeben aber absence eine customer oid besitzt // if (item.Customer.Count == 0 && item.EmployeeOid == 0 && ars.CustomerOid.Value != 0) // { // foreach (var cust in _schulbegleitenderDienst.Customersliste) // { // if (ars.CustomerOid.Value == cust.CustomerOid) // { // item.Customer.Add(cust.CustomerOid, cust.FullName); // } // } // } // //neu // if (item.EmployeeOid == 0 && item.Customer.Count > 0) // { // //item.EmployeeName = "Name des MAs"; // var customerOid = item.Customer.Keys.First(); // foreach (var eOid in _schulbegleitenderDienst.Employee2CustomerHauptbetreuung.Keys) // { // var cOidList = _schulbegleitenderDienst.Employee2CustomerHauptbetreuung[eOid]; // if (cOidList.Contains(customerOid)) // { // foreach (var emp in _schulbegleitenderDienst.Employeesliste) // { // if (emp.EmployeeOid == eOid) // { // item.EmployeeName = emp.FirstName + " " + emp.LastName; // item.IsMitarbeiterKrank = true; // AddArbeitszeitToItem(item, emp.EmployeeOid, 2); // item.IsCustomerKrank = true; // } // } // } // } // } // else // { // AddArbeitszeitToItem(item, item.EmployeeOid, 2); // } // if (DarfGeaddetWerden(item, vertretungsliste)) // { // vertretungsliste.Add(item); // } // //if (item.Customer.Count != 0 && item.EmployeeOid != 0) // //{ // //vertretungsliste.Add(item); // //} // } // } // } // catch (Exception e) // { // throw Utils.CreateBeWoFaultException(e); // } // } // #endregion // #region Mitarbeiter Wochenanzeige // public void GetAlleMitarbeiterForWochenanzeige() // { // try // { // var x = DAOFactory.GenericDAO.GetAllActive(); // var y = DCEntityMapper.MapperFactory.EmployeeDC_Employee.MapToNewDCs(x); // EmployeeListe = y; // } // catch (Exception e) // { // throw Utils.CreateBeWoFaultException(e); // } // } // public List ErstelleItemVonWoechentlicherVorhandenerMitarbeiterVertretungen() // { // try // { // //Code Für die Mitarbeiter ansicht // foreach (var employee in EmployeeListe) // { // // eine für die Mitarbeiter Wochenanzeige angepasste Liste Zurück liefern // Dictionary dict = new Dictionary(); // //mit vertretung vergleichen ?? && nur mitarbeiter mitnehmen die noch einen freien tag in der vertretung haben ?? // //foreach (var abs in employee.AbsenceTimes) // //{ // // if (_startDate >= abs.Start.Value && _endDate <= abs.End.Value) // // { // // } // //} // //foreach (var rel in employee.RelatedCustomers) // //{ // // if (!dict.ContainsKey(DateTime.Now)) // // dict.Add(DateTime.Now, rel.Customer); // //} // VertretungsListeMitarbeiterItemsDC mVert = new VertretungsListeMitarbeiterItemsDC() // { // Employee = employee.FirstName +" "+ employee.LastName, // EmployeeOid = employee.EmployeeOid, // WochenPlan = dict, // }; // if (employee.AbsenceTimes != null && employee.AbsenceTimes.Count > 0) // { // mVert.AbsenceStartDate = employee.AbsenceTimes[0].Start; // mVert.AbsenceEndDate = employee.AbsenceTimes[0].End; // } // if (employee.RelatedCustomers != null && employee.RelatedCustomers.Count > 0) // { // mVert.Customer = employee.RelatedCustomers[0].Customer; // } // Mitarbeiterliste.Add(mVert); // } // return Mitarbeiterliste; // } // catch (Exception e) // { // throw Utils.CreateBeWoFaultException(e); // } // } // private void ErstelleItemVonWoechentklicherVorhandenerMitarbeiterAbsencetimes() // { // try // { // //Mall sehen ob das gebraucht wird. // } // catch (Exception e) // { // throw Utils.CreateBeWoFaultException(e); // } // } // #endregion // #region Ermittle time Range ,Erstelle neue Vertretung // nicht benutzter bereich / war dafür gedacht einem klienten mehrere Employee zuzuweisen // private void ErmittleTimeRange(DateTime start, DateTime end, DateTime vertretStart, DateTime vertretEnd) // { // var startzeit = start.TimeOfDay; // var endzeit = end.TimeOfDay; // // der Zeitraum der Vertretung muss auch überprüft werden. // if (startzeit > vertretEnd.TimeOfDay && endzeit < vertretStart.TimeOfDay) // { // // Haben wir eine Zeitraum überschneidung, dann muss noch überprüft werden ob die Zeit sich überschneidet // // denn wenn nicht, dann soll eine Weitere Vertretung erstellt werden die die Ausstehende Zeit anzeigt oer so. // CreateNewVertretung(); // } // else // { // //alles gut // } // } // private void CreateNewVertretung() // { // //erstelle neue Vertretung // VertretungDC vertretung = new VertretungDC() // { // }; // var x = DCEntityMapper.MapperFactory.VertretungDC_Vertretung.MapToNewEntity(vertretung); // DAOFactory.GenericDAO.Insert(x); // } // #endregion // #region Behilfsmethoden // private void AddKrankheitsZeitraumAndMeldungToItem(VertretungsItemDC item, AbsenceTimeDC ars) // { // if (!ars.Start.HasValue || !ars.End.HasValue) // { // if (ars.Start.HasValue) // { // item.Krankheitszeitraum = ars.Start.Value.ToString("dd.MM.yyyy"); // } // else // { // item.Krankheitszeitraum = "Unbekannt"; // } // item.Krankheitszeitraum += " - "; // if (ars.End.HasValue) // { // item.Krankheitszeitraum += ars.End.Value.ToString("dd.MM.yyyy"); // } // else // { // item.Krankheitszeitraum += "Unbekannt"; // } // } // else // { // if (ars.Start.Value.Date != ars.End.Value.Date) // { // if (ars.Start.Value.Hour == 0 && ars.Start.Value.Minute == 0 && // ars.End.Value.Hour == 0 && ars.End.Value.Minute == 0) // { // item.Krankheitszeitraum = ars.Start.Value.ToString("dd.MM.yyyy") + " - " + // ars.End.Value.ToString("dd.MM.yyyy"); // } // else // { // item.Krankheitszeitraum = ars.Start.Value.ToString("dd.MM.yyyy HH:mm") + " - " + // ars.End.Value.ToString("dd.MM.yyyy HH:mm"); // } // } // else // { // if (ars.Start.Value.Hour == 0 && ars.Start.Value.Minute == 0 && // ars.End.Value.Hour == 0 && ars.End.Value.Minute == 0) // { // item.Krankheitszeitraum = ars.Start.Value.ToString("dd.MM.yyyy"); // } // else // { // item.Krankheitszeitraum = ars.Start.Value.ToString("dd.MM.yyyy HH:mm") + " - " + // ars.End.Value.ToString("HH:mm"); // } // } // } // if (ars.KrankheitsMeldung != null) // item.Krankheitsmeldung = ars.KrankheitsMeldung.Value; // else if (ars.Start.HasValue) // item.Krankheitsmeldung = ars.Start.Value; // } // private void AddArbeitszeitToItem(VertretungsItemDC item, long? emp, int i) // { // var addArbeitszeit = false; // foreach (var arbeitszeit in _schulbegleitenderDienst.Arbeitszeitliste) // { // if (!arbeitszeit.GueltigVon.HasValue && !arbeitszeit.GueltigBis.HasValue) // { // addArbeitszeit = true; // } // else // { // if (i == 1) // { // if ((!arbeitszeit.GueltigVon.HasValue || arbeitszeit.GueltigVon.Value <= _auswerteDatum) && (!arbeitszeit.GueltigBis.HasValue || arbeitszeit.GueltigBis.Value >= _auswerteDatum)) // { // addArbeitszeit = true; // } // } // else // { // if ((!arbeitszeit.GueltigVon.HasValue || arbeitszeit.GueltigVon.Value <= _endDate) && (!arbeitszeit.GueltigBis.HasValue || arbeitszeit.GueltigBis.Value >= _startDate)) // { // addArbeitszeit = true; // } // } // } // if (emp == arbeitszeit.EmployeeOid && addArbeitszeit) // { // foreach (var eintrag in arbeitszeit.Eintraege) // { // if ((int)_auswerteDatum.DayOfWeek == (int)eintrag.Tag + 1) // { // if (!String.IsNullOrEmpty(item.Worktime)) // { // item.Worktime += ", "; // } // item.Worktime += eintrag.UhrzeitVon + " - " + eintrag.UhrzeitBis; // } // if (!item.Wochentagsarbeitszeit.ContainsKey(eintrag.Tag)) // { // item.Wochentagsarbeitszeit.Add(eintrag.Tag, // eintrag.UhrzeitVon + " - " + eintrag.UhrzeitBis); // } // else // { // item.Wochentagsarbeitszeit[eintrag.Tag] += " " + eintrag.UhrzeitVon + " - " + eintrag.UhrzeitBis; // } // } // } // } // } // private VertretungsItemDC ErstelleVertretungsItem() // { // VertretungsItemDC item = new VertretungsItemDC() // { // Worktime = "", // EmployeeName = "", // CustomerName = new List(), // Krankheitszeitraum = "", // Abwesenheitskategorie = new AbsenceReasonDC(), // VertretenderMitarbeiter = "", // Krankheitsmeldung = new DateTime(), // Absencetime = new AbsenceTimeDC(), // Wochentagsarbeitszeit = new Dictionary(), // Customer = new Dictionary() // }; // return item; // } // //neu Für Mitarbeiter Woche // //private // } // #endregion //}