komm mit und master / Schulbegleitender Dienst Update
This commit is contained in:
@@ -209,7 +209,7 @@
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="SchulbegleitenderDienst\NewSchulbegleitenderDienstView.xaml">
|
||||
<Page Include="SchulbegleitenderDienst\SchulbegleitenderVertretungsDienstMainView.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
@@ -582,9 +582,13 @@
|
||||
<Compile Include="SchulbegleitenderDienst\SchulbegleitenderDienstBearbeitungsView.xaml.cs">
|
||||
<DependentUpon>SchulbegleitenderDienstBearbeitungsView.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="SchulbegleitenderDienst\NewSchulbegleitenderDienstView.xaml.cs">
|
||||
<DependentUpon>NewSchulbegleitenderDienstView.xaml</DependentUpon>
|
||||
<Compile Include="SchulbegleitenderDienst\SchulbegleitenderVertretungsDienstMainView.xaml.cs">
|
||||
<DependentUpon>SchulbegleitenderVertretungsDienstMainView.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="SchulbegleitenderDienst\TagesAnsicht.cs" />
|
||||
<Compile Include="SchulbegleitenderDienst\TagesVertretung.cs" />
|
||||
<Compile Include="SchulbegleitenderDienst\WochenAnsicht.cs" />
|
||||
<Compile Include="SchulbegleitenderDienst\WochenVertretung.cs" />
|
||||
<Compile Include="UploadDialog.xaml.cs">
|
||||
<DependentUpon>UploadDialog.xaml</DependentUpon>
|
||||
</Compile>
|
||||
@@ -1358,7 +1362,7 @@
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="View\SchulbegleitenderDienst.xaml">
|
||||
<Page Include="SchulbegleitenderDienst\SchulbegleitenderDienstView.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
@@ -1773,8 +1777,8 @@
|
||||
<Compile Include="View\PercentageDisplay.xaml.cs">
|
||||
<DependentUpon>PercentageDisplay.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="View\SchulbegleitenderDienst.xaml.cs">
|
||||
<DependentUpon>SchulbegleitenderDienst.xaml</DependentUpon>
|
||||
<Compile Include="SchulbegleitenderDienst\SchulbegleitenderDienstView.xaml.cs">
|
||||
<DependentUpon>SchulbegleitenderDienstView.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="View\Report\AnnualReport\AnnualReportChartControl.xaml.cs">
|
||||
<DependentUpon>AnnualReportChartControl.xaml</DependentUpon>
|
||||
@@ -1982,7 +1986,7 @@
|
||||
</BootstrapperPackage>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\..\Chat\ChatController\ChatController.csproj">
|
||||
<ProjectReference Include="..\..\Chat\ChatController\ChatController.csproj">
|
||||
<Project>{8a83c4dc-a0b1-4a51-ae1d-366d7a05b298}</Project>
|
||||
<Name>ChatController</Name>
|
||||
</ProjectReference>
|
||||
|
||||
@@ -20,13 +20,17 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
{
|
||||
|
||||
public event EventHandler<KrankheitsEventArgs> RaiseCustomEvent;
|
||||
public KrankheitsZeitraumView( DateTime start,DateTime ende)
|
||||
|
||||
private TagesAnsicht tagesAansicht;
|
||||
|
||||
public KrankheitsZeitraumView( DateTime start,DateTime ende, TagesAnsicht tansicht)
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
DateVon.EditValue = start;
|
||||
DateBis.EditValue = ende;
|
||||
|
||||
tagesAansicht = tansicht;
|
||||
|
||||
|
||||
CloseWindow();
|
||||
@@ -63,7 +67,7 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
var b = DateBis.DateTime;
|
||||
|
||||
|
||||
RaiseCustomEvent(this, new KrankheitsEventArgs(a,b));
|
||||
RaiseCustomEvent(this, new KrankheitsEventArgs(a,b,tagesAansicht));
|
||||
}
|
||||
|
||||
private void ButtonBase_OnClick(object sender, RoutedEventArgs e)
|
||||
@@ -74,14 +78,16 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
|
||||
public class KrankheitsEventArgs : EventArgs
|
||||
{
|
||||
public KrankheitsEventArgs(DateTime s, DateTime e)
|
||||
public KrankheitsEventArgs(DateTime s, DateTime e, TagesAnsicht t)
|
||||
{
|
||||
_start = s;
|
||||
_end = e;
|
||||
_tagesAnsicht = t;
|
||||
}
|
||||
|
||||
private DateTime _start;
|
||||
private DateTime _end;
|
||||
private TagesAnsicht _tagesAnsicht;
|
||||
|
||||
public DateTime Start
|
||||
{
|
||||
@@ -91,5 +97,10 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
{
|
||||
get { return _end; }
|
||||
}
|
||||
|
||||
public TagesAnsicht TagesItem
|
||||
{
|
||||
get { return _tagesAnsicht; }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -16,6 +16,11 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
{
|
||||
public partial class SchulbegleitenderDienstBearbeitungsView
|
||||
{
|
||||
#region Variablen
|
||||
|
||||
|
||||
|
||||
|
||||
public event EventHandler<CustomEventArgs> RaiseCustomEvent;
|
||||
|
||||
private DateTime? _startDate;
|
||||
@@ -38,8 +43,14 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
|
||||
Dictionary<string, SearchViewDaten> letzteVertretungsListBox = new Dictionary<string, SearchViewDaten>();
|
||||
|
||||
private TagesAnsicht tagesAnsicht;
|
||||
|
||||
public SchulbegleitenderDienstBearbeitungsView(int y, DateTime? startdate, DateTime? enddate, DateTime currentDate, long? klientOid)
|
||||
private WochenAnsicht wochenAnsicht;
|
||||
|
||||
private string wochentag;
|
||||
#endregion
|
||||
|
||||
public SchulbegleitenderDienstBearbeitungsView(int y, DateTime? startdate, DateTime? enddate, DateTime currentDate, long? klientOid,TagesAnsicht tsa,WochenAnsicht wsa,string tag)
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
@@ -102,7 +113,12 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
//setze itemsource von allen Letzten Vertretern
|
||||
|
||||
SetzeLetzteVertreter();
|
||||
|
||||
|
||||
tagesAnsicht = tsa;
|
||||
|
||||
wochenAnsicht = wsa;
|
||||
wochentag = tag;
|
||||
|
||||
}
|
||||
|
||||
private void RootGroupBox_OnMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
|
||||
@@ -248,7 +264,7 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
{
|
||||
if (_startDate.HasValue && _endDate.HasValue && KVCheckBox.IsChecked.Value)
|
||||
{
|
||||
RaiseCustomEvent(this, new CustomEventArgs(x, _startDate, _endDate));
|
||||
RaiseCustomEvent(this, new CustomEventArgs(x, _startDate, _endDate,tagesAnsicht,wochenAnsicht,wochentag));
|
||||
|
||||
Close();
|
||||
}
|
||||
@@ -282,7 +298,7 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
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));
|
||||
RaiseCustomEvent(this, new CustomEventArgs(x, xVon, xBis,tagesAnsicht,wochenAnsicht,wochentag));
|
||||
|
||||
Close();
|
||||
}
|
||||
@@ -972,12 +988,18 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
private CompactEmployeeDC dc;
|
||||
private DateTime? startdt;
|
||||
private DateTime? enddt;
|
||||
private TagesAnsicht tagesItem;
|
||||
private WochenAnsicht wochenItem;
|
||||
private string wochentag;
|
||||
|
||||
public CustomEventArgs(CompactEmployeeDC s, DateTime? start, DateTime? ende)
|
||||
public CustomEventArgs(CompactEmployeeDC s, DateTime? start, DateTime? ende,TagesAnsicht item,WochenAnsicht wItem,string wtag)
|
||||
{
|
||||
dc = s;
|
||||
startdt = start;
|
||||
enddt = ende;
|
||||
tagesItem = item;
|
||||
wochenItem = wItem;
|
||||
wochentag = wtag;
|
||||
}
|
||||
|
||||
public CompactEmployeeDC Message
|
||||
@@ -995,6 +1017,21 @@ namespace BeWo.SchulbegleitenderDienst
|
||||
get { return enddt; }
|
||||
}
|
||||
|
||||
public TagesAnsicht TagesItem
|
||||
{
|
||||
get { return tagesItem; }
|
||||
}
|
||||
|
||||
public WochenAnsicht WochenItem
|
||||
{
|
||||
get { return wochenItem; }
|
||||
}
|
||||
|
||||
public string WochenTag
|
||||
{
|
||||
get { return wochentag; }
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public class SearchViewDaten
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<localView:BeWoView x:Class="BeWo.View.SchulbegleitenderDienst"
|
||||
<localView:BeWoView x:Class="BeWo.SchulbegleitenderDienst.SchulbegleitenderDienstView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:localView="clr-namespace:BeWo.View"
|
||||
@@ -29,9 +29,9 @@ using CheckBox = System.Windows.Controls.CheckBox;
|
||||
using KeyEventArgs = System.Windows.Input.KeyEventArgs;
|
||||
using MessageBox = System.Windows.MessageBox;
|
||||
|
||||
namespace BeWo.View
|
||||
namespace BeWo.SchulbegleitenderDienst
|
||||
{
|
||||
public partial class SchulbegleitenderDienst
|
||||
public partial class SchulbegleitenderDienstView
|
||||
{
|
||||
|
||||
//private CustomerVM _ViewModel;
|
||||
@@ -48,7 +48,7 @@ namespace BeWo.View
|
||||
Dictionary<string, CompactTokenDC> verfuegbarerAusschlussToken = new Dictionary<string, CompactTokenDC>();
|
||||
|
||||
|
||||
public SchulbegleitenderDienst(TableID pObjectTid, long? oid,SchulbegleitenderZugehoerigkeitsTyp typ)
|
||||
public SchulbegleitenderDienstView(TableID pObjectTid, long? oid,SchulbegleitenderZugehoerigkeitsTyp typ)
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<localView:BeWoView x:Class="BeWo.SchulbegleitenderDienst.NewSchulbegleitenderDienstView"
|
||||
<localView:BeWoView x:Class="BeWo.SchulbegleitenderDienst.SchulbegleitenderVertretungsDienstMainView"
|
||||
xmlns:localView="clr-namespace:BeWo.View"
|
||||
xmlns:localSchConv="clr-namespace:BeWo.Scheduler.Converter"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
File diff suppressed because it is too large
Load Diff
63
BeWo/SchulbegleitenderDienst/TagesAnsicht.cs
Normal file
63
BeWo/SchulbegleitenderDienst/TagesAnsicht.cs
Normal file
@@ -0,0 +1,63 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using BS.Shared;
|
||||
using BS.Shared.DataContracts;
|
||||
|
||||
namespace BeWo.SchulbegleitenderDienst
|
||||
{
|
||||
public class TagesAnsicht //---> muss Verbessert werden
|
||||
{
|
||||
public VertretungDC VertretungsDC { get; set; } // ---> Sicherheitsrisiko ??
|
||||
|
||||
//----------------------------------------------------------------
|
||||
public AbsenceTimeDC AbsenceTimeDC { get; set; } // --> muss das sein ?
|
||||
|
||||
|
||||
public DateTime StartD { get; set; }
|
||||
public DateTime EndD { get; set; }
|
||||
|
||||
public Dictionary<AppointmentDayOfWeek, string> Wochentagsarbeitszeit { get; set; }
|
||||
|
||||
// KAnnn das nicht weg
|
||||
public long Mitarbeiteroid { get; set; }
|
||||
public long Klientoid { get; set; }
|
||||
public long Vertreteroid { get; set; } // --> Nein muss nicht.
|
||||
//----------------------------------------------------------------
|
||||
|
||||
|
||||
public string Vertretung { get; set; }
|
||||
public string Kunde { get; set; }
|
||||
public string KrankerMitarbeiter { get; set; }
|
||||
public AbsenceReasonDC AbwesenheitsKategorie { get; set; }
|
||||
public DateTime KrankheitsMeldung { get; set; }
|
||||
//public string MaFehlzeit { get; set; }
|
||||
//public string KindFehlzeit { get; set; }
|
||||
public string KrankheitsZeitraum { get; set; }
|
||||
public string VertretungsZeitraum { get; set; }
|
||||
public string Beschreibung { get; set; }
|
||||
//public int ParentId { get; set; }
|
||||
//public int Oid { get; set; }
|
||||
|
||||
//Farbe der Jeweiligen Zeile
|
||||
public int IsKunde { get; set; }
|
||||
|
||||
public int IsMitarbeiter { get; set; }
|
||||
|
||||
//Villeicht mal schauen mal sehen
|
||||
public string AbwesenheitsKategorieToString
|
||||
{
|
||||
get { return AbwesenheitsKategorie.Description; }
|
||||
}
|
||||
|
||||
public string Arbeitszeit { get; set; }
|
||||
|
||||
public bool IsMitarbeiterKrank { get; set; }
|
||||
|
||||
public bool IsCustomerKrank { get; set; }
|
||||
|
||||
public string WochenansichtBemerkung { get; set; }
|
||||
}
|
||||
}
|
||||
412
BeWo/SchulbegleitenderDienst/TagesVertretung.cs
Normal file
412
BeWo/SchulbegleitenderDienst/TagesVertretung.cs
Normal file
@@ -0,0 +1,412 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using BeWo.Core;
|
||||
using BeWo.ServiceProxy;
|
||||
using BeWo.View;
|
||||
using BeWo.ViewModel;
|
||||
using BS.Shared.DataContracts;
|
||||
using BS.Shared.DataContracts.Compact;
|
||||
|
||||
namespace BeWo.SchulbegleitenderDienst
|
||||
{
|
||||
class TagesVertretung
|
||||
{
|
||||
#region variablen
|
||||
|
||||
private SchulbegleitenderDienstBearbeitungsView _view;
|
||||
|
||||
private KrankheitsZeitraumView _krankView;
|
||||
|
||||
private List<TagesAnsicht> _items;
|
||||
|
||||
#endregion
|
||||
|
||||
#region Lade Tages Ansicht
|
||||
|
||||
public List<TagesAnsicht> VerarbeiteItemZuTagesAnsicht(VertretungsListeItemsDC item)
|
||||
{
|
||||
_items = new List<TagesAnsicht>();
|
||||
|
||||
|
||||
int i = 0, y = 0;
|
||||
|
||||
if (!item.VertretenderMitarbeiter.Equals(""))
|
||||
{
|
||||
i = 1;
|
||||
}
|
||||
|
||||
if (!item.EmployeeName.Equals(""))
|
||||
{
|
||||
y = 1;
|
||||
}
|
||||
|
||||
if (item.Customer.Count != 0)
|
||||
{
|
||||
|
||||
#region add Foreach Customers
|
||||
|
||||
foreach (var customer in item.Customer)
|
||||
{
|
||||
TagesAnsicht xyc = CreateSchulbegleitenderDienst(item, y);
|
||||
|
||||
|
||||
if (item.Vertretung != null)
|
||||
{
|
||||
if (item.Vertretung.CustomerOid == customer.Key)
|
||||
{
|
||||
xyc = Vertretungsgedoense(xyc, item, i);
|
||||
|
||||
xyc.Vertreteroid = item.VertetenderMit;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
xyc.Vertretung = "";
|
||||
}
|
||||
|
||||
if (item.Vertretung.VertretenderMitarbeiterOid == 0)
|
||||
{
|
||||
xyc.IsKunde = 0;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
xyc.IsKunde = 0;
|
||||
xyc.Vertretung = "";
|
||||
}
|
||||
|
||||
xyc.AbsenceTimeDC = item.Absencetime;
|
||||
xyc.Mitarbeiteroid = item.EmployeeOid;
|
||||
xyc.Klientoid = customer.Key;
|
||||
xyc.Kunde = customer.Value;
|
||||
xyc.WochenansichtBemerkung = item.WochenansichtBemerkung;
|
||||
//xyc.Beschreibung = item.Bemerkung;//nur anzeigen wenn gewollt das man die Message Von der Krankmeldung sieht
|
||||
|
||||
if (item.EmployeeName.Equals(""))
|
||||
{
|
||||
i = 2;
|
||||
xyc.IsKunde = i;
|
||||
|
||||
}
|
||||
|
||||
//neu
|
||||
if (item.isMitarbeiterKrank)
|
||||
{
|
||||
xyc.IsMitarbeiterKrank = true;
|
||||
xyc.IsKunde = 2;
|
||||
|
||||
// hier den Tag merken um auch für WOCHEN bereich die spalte orange zu machen
|
||||
|
||||
}
|
||||
|
||||
if (item.isCustomerKrank)
|
||||
{
|
||||
xyc.IsCustomerKrank = true;
|
||||
xyc.IsKunde = 2;
|
||||
}
|
||||
|
||||
//hier bereich zu abfrage Vertretung Gewünscht / nicht gewünscht
|
||||
//################## Besser auf Server auslagern ?? #############################################
|
||||
List<long> custOid = new List<long>();
|
||||
custOid.Add(customer.Key);
|
||||
var cus = ServiceFacade.DoCustomerServiceSync(r => r.GetCustomersById(custOid));
|
||||
|
||||
foreach (var c in cus)
|
||||
{
|
||||
// 1 für Grün | 0 für Rot
|
||||
if (c.VertretungDringendErforderlich == false && c.VertretungGewuenscht == false)
|
||||
{
|
||||
//anzeige Grün machen
|
||||
xyc.IsKunde = 1;
|
||||
}
|
||||
//else if (c.VertretungDringendErforderlich == false && c.VertretungGewuenscht == true)
|
||||
//{
|
||||
// // anzeige noral halten
|
||||
// xyc.IsKunde = 2;
|
||||
//}
|
||||
//else if (c.VertretungDringendErforderlich == true && c.VertretungGewuenscht == true)
|
||||
//{
|
||||
// //anzeige normal halten
|
||||
// xyc.IsKunde = 2;
|
||||
//}
|
||||
}
|
||||
|
||||
//############################
|
||||
|
||||
_items.Add(xyc);
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
else
|
||||
{
|
||||
#region add without customer
|
||||
|
||||
TagesAnsicht xyc = CreateSchulbegleitenderDienst(item, y);
|
||||
|
||||
if (item.Vertretung != null)
|
||||
{
|
||||
xyc = Vertretungsgedoense(xyc, item, i);
|
||||
|
||||
// Vertretung zwar vorhanden aber ohne einem Vertreter
|
||||
if (item.Vertretung.VertretenderMitarbeiterOid == 0)
|
||||
{
|
||||
xyc.IsKunde = 0;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
xyc.IsKunde = 0;
|
||||
xyc.Vertretung = "";
|
||||
}
|
||||
|
||||
xyc.AbsenceTimeDC = item.Absencetime;
|
||||
xyc.Vertreteroid = item.VertetenderMit;
|
||||
xyc.Mitarbeiteroid = item.EmployeeOid;
|
||||
xyc.WochenansichtBemerkung = item.WochenansichtBemerkung;
|
||||
//xyc.Beschreibung = item.Bemerkung; //nur anzeigen wenn gewollt das man die Message Von der Krankmeldung sieht
|
||||
|
||||
xyc.Kunde = "";
|
||||
xyc.Klientoid = 0;
|
||||
|
||||
|
||||
if (item.EmployeeName.Equals(""))
|
||||
{
|
||||
i = 2;
|
||||
xyc.IsKunde = i;
|
||||
}
|
||||
|
||||
|
||||
|
||||
_items.Add(xyc);
|
||||
|
||||
#endregion
|
||||
}
|
||||
|
||||
return _items;
|
||||
}
|
||||
|
||||
private TagesAnsicht Vertretungsgedoense(TagesAnsicht xyc, VertretungsListeItemsDC item, int i)
|
||||
{
|
||||
if (item.Vertretung.VertretungsZeitraumVon.Date != item.Vertretung.VertretungsZeitraumBis.Date)
|
||||
{
|
||||
if (item.Vertretung.VertretungsZeitraumVon.Hour == 0 && item.Vertretung.VertretungsZeitraumVon.Minute == 0 &&
|
||||
item.Vertretung.VertretungsZeitraumBis.Hour == 0 && item.Vertretung.VertretungsZeitraumBis.Minute == 0)
|
||||
{
|
||||
xyc.VertretungsZeitraum = item.Vertretung.VertretungsZeitraumVon.Date.ToString("dd.MM.yyyy") + " - " +
|
||||
item.Vertretung.VertretungsZeitraumBis.Date.ToString("dd.MM.yyyy");
|
||||
}
|
||||
else
|
||||
{
|
||||
xyc.VertretungsZeitraum = item.Vertretung.VertretungsZeitraumVon.Date.ToString("dd.MM.yyyy HH:mm") + " - " +
|
||||
item.Vertretung.VertretungsZeitraumBis.Date.ToString("dd.MM.yyyy HH:mm");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (item.Vertretung.VertretungsZeitraumVon.Hour == 0 && item.Vertretung.VertretungsZeitraumVon.Minute == 0 &&
|
||||
item.Vertretung.VertretungsZeitraumBis.Hour == 0 && item.Vertretung.VertretungsZeitraumBis.Minute == 0)
|
||||
{
|
||||
xyc.VertretungsZeitraum = item.Vertretung.VertretungsZeitraumVon.Date.ToString("dd.MM.yyyy");
|
||||
}
|
||||
else
|
||||
{
|
||||
xyc.VertretungsZeitraum = item.Vertretung.VertretungsZeitraumVon.Date.ToString("dd.MM.yyyy HH:mm") + " - " + item.Vertretung.VertretungsZeitraumBis.Date.ToString("HH:mm");
|
||||
}
|
||||
}
|
||||
|
||||
xyc.VertretungsDC = item.Vertretung;
|
||||
|
||||
xyc.Vertretung = item.VertretenderMitarbeiter;
|
||||
|
||||
xyc.IsKunde = i;
|
||||
|
||||
xyc.Beschreibung = item.Vertretung.Notice;
|
||||
|
||||
return xyc;
|
||||
}
|
||||
|
||||
private TagesAnsicht CreateSchulbegleitenderDienst(VertretungsListeItemsDC item, int y)
|
||||
{
|
||||
TagesAnsicht xyc = new TagesAnsicht()
|
||||
{
|
||||
KrankheitsZeitraum = item.Krankheitszeitraum,
|
||||
KrankerMitarbeiter = item.EmployeeName,
|
||||
KrankheitsMeldung = item.Krankheitsmeldung,
|
||||
IsMitarbeiter = y,
|
||||
Arbeitszeit = item.Worktime,
|
||||
Wochentagsarbeitszeit = item.Wochentagsarbeitszeit
|
||||
};
|
||||
|
||||
if (item.Abwesenheitskategorie != null)
|
||||
xyc.AbwesenheitsKategorie = item.Abwesenheitskategorie;
|
||||
|
||||
if (item.Absencetime.End != null && item.Absencetime.Start != null)
|
||||
{
|
||||
xyc.EndD = item.Absencetime.End.Value;
|
||||
xyc.StartD = item.Absencetime.Start.Value;
|
||||
}
|
||||
|
||||
return xyc;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Adde Der Tagesansicht Eine Vertretung
|
||||
public void AddeNeueTagesVertretung(TagesAnsicht a , DateTime dateTime)
|
||||
{
|
||||
if (a.Mitarbeiteroid != 0)
|
||||
{
|
||||
_view = new SchulbegleitenderDienstBearbeitungsView(1, a.StartD, a.EndD, dateTime, a.Klientoid,a,null,"");
|
||||
|
||||
_view.RaiseCustomEvent += new EventHandler<CustomEventArgs>(Tagesansicht_RaiseCustomEvent);
|
||||
_view.ShowDialog();
|
||||
}
|
||||
else
|
||||
{
|
||||
MessageBox.Show("Du kannst einem kranken Klienten keine Mitarbeiter hinzufügen.");
|
||||
}
|
||||
}
|
||||
|
||||
private void Tagesansicht_RaiseCustomEvent(object sender, CustomEventArgs e)
|
||||
{
|
||||
UpdateMitarbeiterToVertretung(e.Message, e.StartDate, e.EndDate, e.TagesItem);
|
||||
|
||||
_view.Close();
|
||||
}
|
||||
|
||||
private void UpdateMitarbeiterToVertretung(CompactEmployeeDC employee, DateTime? startDate, DateTime? endDate, TagesAnsicht a)
|
||||
{
|
||||
VertretungDC vert = new VertretungDC()
|
||||
{
|
||||
CustomerOid = a.Klientoid,
|
||||
EmployeeOid = a.Mitarbeiteroid,
|
||||
VertretungsZeitraumVon = startDate.Value,
|
||||
VertretungsZeitraumBis = endDate.Value,
|
||||
AbsenceTimeOid = a.AbsenceTimeDC.AbsenceTimeOid,
|
||||
VertretenderMitarbeiterOid = employee.EmployeeOid,
|
||||
Notice = a.Beschreibung
|
||||
};
|
||||
|
||||
|
||||
if (a.VertretungsDC != null)
|
||||
{
|
||||
vert.VertretungOid = a.VertretungsDC.VertretungOid;
|
||||
ServiceFacade.DoOperationsServiceSync(s => s.UpdateVertretung(vert));
|
||||
}
|
||||
else
|
||||
{
|
||||
ServiceFacade.DoOperationsServiceSync(s => s.CreateVertretung(vert));
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Delete KrankMeldung / Vertretung
|
||||
public void DeleteKrankmeldung(TagesAnsicht a)
|
||||
{
|
||||
Dictionary<long, long> ahh = new Dictionary<long, long>();
|
||||
ahh.Add(a.AbsenceTimeDC.AbsenceTimeOid.Value, a.AbsenceTimeDC.AbsenceTimeVersion.Value);
|
||||
|
||||
ServiceFacade.DoOperationsServiceSync(s => s.DeactivateAbsenceTime(ahh));
|
||||
|
||||
VertretungDC vert = new VertretungDC();
|
||||
|
||||
if (a.VertretungsDC != null)
|
||||
{
|
||||
vert = a.VertretungsDC;
|
||||
ServiceFacade.DoOperationsServiceSync(s => s.DeleteVertretung(vert.VertretungOid.Value));
|
||||
}
|
||||
}
|
||||
|
||||
public void DeleteVertretung(TagesAnsicht a)
|
||||
{
|
||||
VertretungDC vert = new VertretungDC();
|
||||
|
||||
if (a.VertretungsDC != null)
|
||||
{
|
||||
vert = a.VertretungsDC;
|
||||
ServiceFacade.DoOperationsServiceSync(s => s.DeleteVertretung(vert.VertretungOid.Value));
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region KrankheitsZeitraum Bearbeiten
|
||||
|
||||
public void KrankMeldeZeitraumBearbeiten(TagesAnsicht a)
|
||||
{
|
||||
_krankView = new KrankheitsZeitraumView(a.StartD, a.EndD,a);
|
||||
|
||||
_krankView.RaiseCustomEvent += new EventHandler<KrankheitsEventArgs>(newWindowKrankzeitraum_RaiseCustomEvent);
|
||||
_krankView.ShowDialog();
|
||||
}
|
||||
|
||||
private void newWindowKrankzeitraum_RaiseCustomEvent(object sender, KrankheitsEventArgs e)
|
||||
{
|
||||
UpdateKrankheitsZeitraum(e.Start, e.Ende,e.TagesItem);
|
||||
|
||||
_krankView.Close();
|
||||
}
|
||||
|
||||
private void UpdateKrankheitsZeitraum(DateTime startZeit, DateTime endZeit, TagesAnsicht ab)
|
||||
{
|
||||
ab.AbsenceTimeDC.Start = startZeit;
|
||||
ab.AbsenceTimeDC.End = endZeit;
|
||||
|
||||
List<AbsenceTimeDC> a = new List<AbsenceTimeDC>();
|
||||
|
||||
a.Add(ab.AbsenceTimeDC);
|
||||
|
||||
ServiceFacade.DoCustomerServiceSync(s => s.UpdateAbsenceTimes(a));
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Update das Bearbeitete Item (Row)
|
||||
|
||||
public void UpdateRowData(TagesAnsicht a)
|
||||
{
|
||||
AbsenceTimeDC abstime = new AbsenceTimeDC()
|
||||
{
|
||||
AbsenceTimeOid = a.AbsenceTimeDC.AbsenceTimeOid,
|
||||
Start = a.StartD,
|
||||
End = a.EndD,
|
||||
Reason = a.AbwesenheitsKategorie,
|
||||
KrankheitsMeldung = a.KrankheitsMeldung
|
||||
};
|
||||
|
||||
VertretungDC vert = new VertretungDC()
|
||||
{
|
||||
CustomerOid = a.Klientoid,
|
||||
EmployeeOid = a.Mitarbeiteroid,
|
||||
|
||||
AbsenceTimeOid = a.AbsenceTimeDC.AbsenceTimeOid,
|
||||
VertretenderMitarbeiterOid = a.Vertreteroid,
|
||||
Notice = a.Beschreibung
|
||||
};
|
||||
|
||||
vert.VertretungsZeitraumVon = a.StartD;
|
||||
vert.VertretungsZeitraumBis = a.EndD;
|
||||
|
||||
if (a.VertretungsDC != null)
|
||||
{
|
||||
vert.VertretungOid = a.VertretungsDC.VertretungOid;
|
||||
|
||||
ServiceFacade.DoOperationsServiceSync(s => s.UpdateVertretungAndAbsenceTime(vert, abstime));
|
||||
}
|
||||
else
|
||||
{
|
||||
ServiceFacade.DoOperationsServiceSync(s => s.CreateVertretung(vert));
|
||||
|
||||
ServiceFacade.DoOperationsServiceSync(s => s.UpdateAbsenceTime(abstime));
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
61
BeWo/SchulbegleitenderDienst/WochenAnsicht.cs
Normal file
61
BeWo/SchulbegleitenderDienst/WochenAnsicht.cs
Normal file
@@ -0,0 +1,61 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BeWo.SchulbegleitenderDienst
|
||||
{
|
||||
public class WochenAnsicht
|
||||
{
|
||||
//public long? VertretungsOid { get; set; }
|
||||
public string MaFrei { get; set; }
|
||||
public string MaKrank { get; set; }
|
||||
public string Kind { get; set; }
|
||||
|
||||
public bool IsMitarbeiterKrank { get; set; }
|
||||
|
||||
public bool isCustomerKrank { get; set; }
|
||||
|
||||
public string Bemerkung { get; set; }
|
||||
|
||||
public string WochenBeschreibung { get; set; }
|
||||
|
||||
|
||||
//Fürs WPF Klient Wochenanzeige
|
||||
public string VertretungMo { get; set; }
|
||||
public string VertretungDi { get; set; }
|
||||
public string VertretungMi { get; set; }
|
||||
public string VertretungDo { get; set; }
|
||||
public string VertretungFr { get; set; }
|
||||
public string VertretungSa { get; set; }
|
||||
|
||||
public string Mo { get; set; }
|
||||
public string Di { get; set; }
|
||||
public string Mi { get; set; }
|
||||
public string Do { get; set; }
|
||||
public string Fr { get; set; }
|
||||
public string Sa { get; set; }
|
||||
public string So { get; set; }
|
||||
|
||||
//KlientenView
|
||||
public Dictionary<String, Dictionary<DateTime, TagesAnsicht>> VertretungsWoche { get; set; }
|
||||
|
||||
|
||||
|
||||
//Fürs WPF Employee Wochenanzeige
|
||||
public string EingesetztBeiMo { get; set; }
|
||||
public string EingesetztBeiDi { get; set; }
|
||||
public string EingesetztBeiMi { get; set; }
|
||||
public string EingesetztBeiDo { get; set; }
|
||||
public string EingesetztBeiFr { get; set; }
|
||||
public string EingesetztBeiSa { get; set; }
|
||||
|
||||
//MitarbeiterView
|
||||
public Dictionary<String, Dictionary<DateTime, TagesAnsicht>> KlientvertretungsWoche { get; set; }
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
580
BeWo/SchulbegleitenderDienst/WochenVertretung.cs
Normal file
580
BeWo/SchulbegleitenderDienst/WochenVertretung.cs
Normal file
@@ -0,0 +1,580 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using BeWo.ServiceProxy;
|
||||
using BS.Shared;
|
||||
using BS.Shared.DataContracts;
|
||||
using BS.Shared.DataContracts.Compact;
|
||||
using BS.Shared.Extensions;
|
||||
using DevExpress.Xpf.Grid;
|
||||
|
||||
namespace BeWo.SchulbegleitenderDienst
|
||||
{
|
||||
class WochenVertretung
|
||||
{
|
||||
#region variablen
|
||||
|
||||
private SchulbegleitenderDienstBearbeitungsView _view;
|
||||
|
||||
private Dictionary<string, Dictionary<DateTime, TagesAnsicht>> a;
|
||||
|
||||
private Dictionary<String, Dictionary<DateTime, TagesAnsicht>> klientb;
|
||||
|
||||
#endregion
|
||||
|
||||
#region Lade Wochen Ansicht
|
||||
|
||||
public Dictionary<string, List<WochenAnsicht>> GetWochenAnsichtFromItems(DateTime time,List<TagesAnsicht> _items)
|
||||
{
|
||||
List<WochenAnsicht> _itemsWochen = new List<WochenAnsicht>();
|
||||
List<WochenAnsicht> _itemsWochenKrankerMitarbeiter = new List<WochenAnsicht>();
|
||||
|
||||
DateTime dt = time;
|
||||
|
||||
DateTime startdt = dt.FirstDateOfWeek(dt.GetIso8601WeekOfYear());
|
||||
|
||||
foreach (var item in _items)
|
||||
{
|
||||
a = new Dictionary<string, Dictionary<DateTime, TagesAnsicht>>();
|
||||
|
||||
klientb = new Dictionary<string, Dictionary<DateTime, TagesAnsicht>>();
|
||||
|
||||
DateTime anfangDt;
|
||||
DateTime endeDt;
|
||||
|
||||
anfangDt = item.StartD;
|
||||
endeDt = item.EndD;
|
||||
|
||||
DateTime montagDt = startdt.Date;
|
||||
DateTime dienstagDt = startdt.Date.AddDays(1);
|
||||
DateTime mittwochDt = startdt.Date.AddDays(2);
|
||||
DateTime donnerstagDt = startdt.Date.AddDays(3);
|
||||
DateTime freitagDt = startdt.Date.AddDays(4);
|
||||
DateTime samstagDt = startdt.Date.AddDays(5);
|
||||
|
||||
|
||||
WochenAnsicht wwk = new WochenAnsicht()
|
||||
{
|
||||
MaKrank = item.KrankerMitarbeiter,
|
||||
Kind = item.Kunde,
|
||||
MaFrei = item.Vertretung,
|
||||
WochenBeschreibung = item.WochenansichtBemerkung,
|
||||
//Bemerkung = item.Beschreibung
|
||||
|
||||
};
|
||||
|
||||
// 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;
|
||||
|
||||
wwk.KlientvertretungsWoche = klientb;
|
||||
|
||||
|
||||
|
||||
//Abfrage für Klienten Krank
|
||||
if (wwk.IsMitarbeiterKrank)
|
||||
{
|
||||
_itemsWochenKrankerMitarbeiter.Add(wwk);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemsWochen.Add(wwk);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Dictionary<string, List<WochenAnsicht>> dic = new Dictionary<string, List<WochenAnsicht>>();
|
||||
|
||||
dic.Add("_itemsWochenKrankerMitarbeiter", _itemsWochenKrankerMitarbeiter);
|
||||
dic.Add("_itemsWochen", _itemsWochen);
|
||||
|
||||
return dic;
|
||||
}
|
||||
|
||||
private WochenAnsicht WochentagVerarbeitung(DateTime anfangDt, DateTime endeDt, DateTime wochentagDt, TagesAnsicht item, string vertretungstag, string einsetzungstag, WochenAnsicht wwk, int i)
|
||||
{
|
||||
if (anfangDt.Date <= wochentagDt && wochentagDt <= endeDt.Date)
|
||||
{
|
||||
if (item.VertretungsDC != null)
|
||||
{
|
||||
if (item.VertretungsDC.VertretungsZeitraumVon.Date <= wochentagDt.Date &&
|
||||
item.VertretungsDC.VertretungsZeitraumBis.Date >= wochentagDt.Date)
|
||||
{
|
||||
Dictionary<DateTime, TagesAnsicht> sa = new Dictionary<DateTime, TagesAnsicht>();
|
||||
sa.Add(wochentagDt, item); // item.vertreteroid
|
||||
|
||||
a.Add(vertretungstag, sa);
|
||||
klientb.Add(einsetzungstag, sa);
|
||||
|
||||
switch (i)
|
||||
{
|
||||
case 0:
|
||||
if (item.IsCustomerKrank)
|
||||
{
|
||||
wwk.isCustomerKrank = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
wwk.VertretungMo = item.Vertretung;
|
||||
}
|
||||
// wwk.EingesetztBeiMo = item.Kunde;
|
||||
wwk.Mo = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
break;
|
||||
case 1:
|
||||
if (item.IsCustomerKrank)
|
||||
{
|
||||
wwk.isCustomerKrank = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
wwk.VertretungDi = item.Vertretung;
|
||||
}
|
||||
// wwk.EingesetztBeiDi = item.Kunde;
|
||||
wwk.Di = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
break;
|
||||
case 2:
|
||||
if (item.IsCustomerKrank)
|
||||
{
|
||||
wwk.isCustomerKrank = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
wwk.VertretungMi = item.Vertretung;
|
||||
}
|
||||
// wwk.EingesetztBeiMi = item.Kunde;
|
||||
wwk.Mi = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
break;
|
||||
case 3:
|
||||
if (item.IsCustomerKrank)
|
||||
{
|
||||
wwk.isCustomerKrank = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
wwk.VertretungDo = item.Vertretung;
|
||||
}
|
||||
// wwk.EingesetztBeiDo = item.Kunde;
|
||||
wwk.Do = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
break;
|
||||
case 4:
|
||||
if (item.IsCustomerKrank)
|
||||
{
|
||||
wwk.isCustomerKrank = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
wwk.VertretungFr = item.Vertretung;
|
||||
}
|
||||
// wwk.EingesetztBeiFr = item.Kunde;
|
||||
wwk.Fr = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
break;
|
||||
case 5:
|
||||
if (item.IsCustomerKrank)
|
||||
{
|
||||
wwk.isCustomerKrank = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
wwk.VertretungSa = item.Vertretung;
|
||||
}
|
||||
// wwk.EingesetztBeiSa = item.Kunde;
|
||||
wwk.Sa = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
switch (i)
|
||||
{
|
||||
case 0:
|
||||
if (item.IsMitarbeiterKrank)
|
||||
{
|
||||
wwk.VertretungMo = " ";
|
||||
//wwk.isCustomerKrank = true;
|
||||
wwk.IsMitarbeiterKrank = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
wwk.VertretungMo = "";
|
||||
}
|
||||
// wwk.EingesetztBeiMo = "";
|
||||
wwk.Mo = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
break;
|
||||
case 1:
|
||||
if (item.IsMitarbeiterKrank)
|
||||
{
|
||||
wwk.VertretungDi = " ";
|
||||
//wwk.isCustomerKrank = true;
|
||||
wwk.IsMitarbeiterKrank = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
wwk.VertretungDi = "";
|
||||
}
|
||||
wwk.Di = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
// wwk.EingesetztBeiDi = "";
|
||||
break;
|
||||
case 2:
|
||||
if (item.IsMitarbeiterKrank)
|
||||
{
|
||||
wwk.VertretungMi = " ";
|
||||
//wwk.isCustomerKrank = true;
|
||||
wwk.IsMitarbeiterKrank = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
wwk.VertretungMi = " ";
|
||||
}
|
||||
wwk.Mi = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
|
||||
// wwk.EingesetztBeiMi = "";
|
||||
break;
|
||||
case 3:
|
||||
if (item.IsMitarbeiterKrank)
|
||||
{
|
||||
wwk.VertretungDo = " ";
|
||||
//wwk.isCustomerKrank = true;
|
||||
wwk.IsMitarbeiterKrank = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
wwk.VertretungDo = "";
|
||||
}
|
||||
wwk.Do = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
//wwk.EingesetztBeiDo = "";
|
||||
break;
|
||||
case 4:
|
||||
if (item.IsMitarbeiterKrank)
|
||||
{
|
||||
wwk.VertretungFr = " ";
|
||||
//wwk.isCustomerKrank = true;
|
||||
wwk.IsMitarbeiterKrank = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
wwk.VertretungFr = "";
|
||||
}
|
||||
wwk.Fr = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
// wwk.EingesetztBeiFr = "";
|
||||
break;
|
||||
case 5:
|
||||
if (item.IsMitarbeiterKrank)
|
||||
{
|
||||
wwk.VertretungSa = " ";
|
||||
//wwk.isCustomerKrank = true;
|
||||
wwk.IsMitarbeiterKrank = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
wwk.VertretungSa = "";
|
||||
}
|
||||
wwk.Sa = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
// wwk.EingesetztBeiSa = "";
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Dictionary<DateTime, TagesAnsicht> sa = new Dictionary<DateTime, TagesAnsicht>();
|
||||
sa.Add(wochentagDt, item); // item.vertreteroid
|
||||
|
||||
a.Add(vertretungstag, sa);
|
||||
klientb.Add(einsetzungstag, sa);
|
||||
|
||||
switch (i)
|
||||
{
|
||||
case 0:
|
||||
if (item.IsMitarbeiterKrank)
|
||||
{
|
||||
wwk.VertretungMo = " ";
|
||||
//wwk.isCustomerKrank = true;
|
||||
wwk.IsMitarbeiterKrank = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
wwk.VertretungMo = item.Vertretung;
|
||||
}
|
||||
// wwk.EingesetztBeiMo = item.Kunde;
|
||||
wwk.Mo = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
break;
|
||||
case 1:
|
||||
if (item.IsMitarbeiterKrank)
|
||||
{
|
||||
wwk.VertretungDi = " ";
|
||||
//wwk.isCustomerKrank = true;
|
||||
wwk.IsMitarbeiterKrank = true;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
wwk.VertretungDi = item.Vertretung;
|
||||
}
|
||||
// wwk.EingesetztBeiDi = item.Kunde;
|
||||
wwk.Di = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
break;
|
||||
case 2:
|
||||
if (item.IsMitarbeiterKrank)
|
||||
{
|
||||
wwk.VertretungMi = " ";
|
||||
//wwk.isCustomerKrank = true;
|
||||
wwk.IsMitarbeiterKrank = true;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
wwk.VertretungMi = item.Vertretung;
|
||||
}
|
||||
// wwk.EingesetztBeiMi = item.Kunde;
|
||||
wwk.Mi = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
break;
|
||||
case 3:
|
||||
if (item.IsMitarbeiterKrank)
|
||||
{
|
||||
wwk.VertretungDo = " ";
|
||||
//wwk.isCustomerKrank = true;
|
||||
wwk.IsMitarbeiterKrank = true;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
wwk.VertretungDo = item.Vertretung;
|
||||
}
|
||||
// wwk.EingesetztBeiDo = item.Kunde;
|
||||
wwk.Do = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
break;
|
||||
case 4:
|
||||
if (item.IsMitarbeiterKrank)
|
||||
{
|
||||
wwk.VertretungFr = " ";
|
||||
//wwk.isCustomerKrank = true;
|
||||
wwk.IsMitarbeiterKrank = true;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
wwk.VertretungFr = item.Vertretung;
|
||||
}
|
||||
// wwk.EingesetztBeiFr = item.Kunde;
|
||||
wwk.Fr = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
break;
|
||||
case 5:
|
||||
if (item.IsMitarbeiterKrank)
|
||||
{
|
||||
wwk.VertretungSa = " ";
|
||||
//wwk.isCustomerKrank = true;
|
||||
wwk.IsMitarbeiterKrank = true;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
wwk.VertretungSa = item.Vertretung;
|
||||
}
|
||||
// wwk.EingesetztBeiSa = item.Kunde;
|
||||
wwk.Sa = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
switch (i)
|
||||
{
|
||||
case 0:
|
||||
wwk.VertretungMo = " ";
|
||||
wwk.Mo = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
// wwk.EingesetztBeiMo = " ";
|
||||
break;
|
||||
case 1:
|
||||
wwk.VertretungDi = " ";
|
||||
wwk.Di = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
// wwk.EingesetztBeiDi = " ";
|
||||
break;
|
||||
case 2:
|
||||
wwk.VertretungMi = " ";
|
||||
wwk.Mi = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
// wwk.EingesetztBeiMi = " ";
|
||||
break;
|
||||
case 3:
|
||||
wwk.VertretungDo = " ";
|
||||
wwk.Do = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
// wwk.EingesetztBeiDo = " ";
|
||||
break;
|
||||
case 4:
|
||||
wwk.VertretungFr = " ";
|
||||
wwk.Fr = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
// wwk.EingesetztBeiFr = " ";
|
||||
break;
|
||||
case 5:
|
||||
wwk.VertretungSa = " ";
|
||||
wwk.Sa = WochenanzeigeHinzufügen(wochentagDt, item.Wochentagsarbeitszeit);
|
||||
// wwk.EingesetztBeiSa = " ";
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return wwk;
|
||||
|
||||
|
||||
}
|
||||
|
||||
private string WochenanzeigeHinzufügen(DateTime dayOfWeekDateTime, Dictionary<AppointmentDayOfWeek, string> wochentagsarbeitszeit)
|
||||
{
|
||||
if (wochentagsarbeitszeit.Count != 0)
|
||||
{
|
||||
foreach (var wa in wochentagsarbeitszeit)
|
||||
{
|
||||
if ((int)wa.Key + 1 == (int)dayOfWeekDateTime.DayOfWeek)
|
||||
{
|
||||
return wa.Value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Adde der WochenAnsicht einen Vertreter
|
||||
|
||||
public void AddeNeueVertretungforWochenAnsicht(WochenAnsicht a,string tag, DateTime dateTime)
|
||||
{
|
||||
if (!a.IsMitarbeiterKrank)
|
||||
{
|
||||
VertretungDC vertretung = new VertretungDC();
|
||||
AbsenceTimeDC absenceTime = new AbsenceTimeDC();
|
||||
foreach (var vert in a.KlientvertretungsWoche)
|
||||
{
|
||||
if (vert.Key.Equals(tag))
|
||||
{
|
||||
foreach (var val in vert.Value)
|
||||
{
|
||||
vertretung = val.Value.VertretungsDC;
|
||||
absenceTime = val.Value.AbsenceTimeDC;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!a.MaKrank.Equals(""))
|
||||
{
|
||||
_view = new SchulbegleitenderDienstBearbeitungsView(1, absenceTime.Start, absenceTime.End,
|
||||
dateTime, vertretung.CustomerOid, null, a,tag);
|
||||
|
||||
_view.RaiseCustomEvent += new EventHandler<CustomEventArgs>(KlientenWochen_RaiseCustomEvent);
|
||||
_view.ShowDialog();
|
||||
}
|
||||
else
|
||||
{
|
||||
MessageBox.Show("Fehler");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
MessageBox.Show("Du kannst einem kranken Klienten keine Mitarbeiter hinzufügen.", "Info");
|
||||
}
|
||||
}
|
||||
|
||||
private void KlientenWochen_RaiseCustomEvent(object sender, CustomEventArgs e)
|
||||
{
|
||||
UpdateMitarbeiterToVertretungKlientenWochenansicht(e.Message, e.StartDate, e.EndDate,e.WochenItem,e.WochenTag);
|
||||
|
||||
_view.Close();
|
||||
}
|
||||
|
||||
private void UpdateMitarbeiterToVertretungKlientenWochenansicht(CompactEmployeeDC employee, DateTime? startDate, DateTime? endDate, WochenAnsicht a, string tag)
|
||||
{
|
||||
foreach (var woche in a.VertretungsWoche)
|
||||
{
|
||||
if (woche.Key.Equals(tag))
|
||||
{
|
||||
foreach (var item in woche.Value)
|
||||
{
|
||||
VertretungDC vert = new VertretungDC()
|
||||
{
|
||||
CustomerOid = item.Value.Klientoid,
|
||||
AbsenceTimeOid = item.Value.AbsenceTimeDC.AbsenceTimeOid.Value,
|
||||
VertretungsZeitraumVon = startDate.Value,
|
||||
VertretungsZeitraumBis = endDate.Value,
|
||||
VertretenderMitarbeiterOid = employee.EmployeeOid,
|
||||
EmployeeOid = item.Value.Mitarbeiteroid,
|
||||
Notice = item.Value.Beschreibung,
|
||||
};
|
||||
|
||||
|
||||
|
||||
if (item.Value.VertretungsDC != null)
|
||||
{
|
||||
//hier irgendwann ermöglichen dass eine bereits vorhandener vertretungszeitraum / also ein teil davon nochmals abgesplittet werden kann.
|
||||
|
||||
vert.VertretungOid = item.Value.VertretungsDC.VertretungOid;
|
||||
vert.VertretenderMitarbeiterOid = employee.EmployeeOid;
|
||||
vert.VertretungsZeitraumVon = item.Value.VertretungsDC.VertretungsZeitraumVon;
|
||||
vert.VertretungsZeitraumBis = item.Value.VertretungsDC.VertretungsZeitraumBis;
|
||||
|
||||
ServiceFacade.DoOperationsServiceSync(s => s.UpdateVertretung(vert));
|
||||
}
|
||||
else
|
||||
{
|
||||
//ggf. ermöglichen das nicht der ganze zeitraum gesetzt wird.
|
||||
//zur zeit wird hier die Gesamte Krankheitszeit übernommen
|
||||
ServiceFacade.DoOperationsServiceSync(s => s.CreateVertretung(vert));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Delete Vertretenden Mitarbeiter
|
||||
|
||||
public void DeletVertretendenMitarbeiter(WochenAnsicht a, string _deletVertretungsWeek)
|
||||
{
|
||||
foreach (var wochentag in a.VertretungsWoche)
|
||||
{
|
||||
if (wochentag.Key.Equals(_deletVertretungsWeek))
|
||||
{
|
||||
_deletVertretungsWeek = "";
|
||||
foreach (var item in wochentag.Value)
|
||||
{
|
||||
if (item.Key != null)
|
||||
{
|
||||
if (!item.Value.Vertretung.Equals(""))
|
||||
{
|
||||
ServiceFacade.DoOperationsServiceSync(s => s.DeleteVertretung(item.Value.VertretungsDC.VertretungOid.Value));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
}
|
||||
}
|
||||
@@ -30,6 +30,7 @@ using DevExpress.Xpf.Grid;
|
||||
|
||||
using System.Windows.Media.Imaging;
|
||||
using BeWo.ownChat;
|
||||
using BeWo.SchulbegleitenderDienst;
|
||||
using BS.Shared.Translation;
|
||||
using DevExpress.XtraGrid;
|
||||
using Binding = System.Windows.Data.Binding;
|
||||
@@ -1053,7 +1054,7 @@ namespace BeWo.View.Detail
|
||||
{
|
||||
if (tabitem_schuldienst.Content == null)
|
||||
{
|
||||
tabitem_schuldienst.Content = new SchulbegleitenderDienst(TableID.Customer, ViewModel.DataContract.CustomerOid.Value, SchulbegleitenderZugehoerigkeitsTyp.Klient);
|
||||
tabitem_schuldienst.Content = new SchulbegleitenderDienstView(TableID.Customer, ViewModel.DataContract.CustomerOid.Value, SchulbegleitenderZugehoerigkeitsTyp.Klient);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -13,6 +13,7 @@ using System.Windows.Media.Imaging;
|
||||
using BeWo.Core;
|
||||
using BeWo.Core.Service;
|
||||
using BeWo.ownChat;
|
||||
using BeWo.SchulbegleitenderDienst;
|
||||
using BeWo.ServiceProxy;
|
||||
using BeWo.Validation;
|
||||
using BeWo.ViewModel;
|
||||
@@ -469,7 +470,7 @@ namespace BeWo.View.Detail
|
||||
{
|
||||
if (tabitem_schuldienst.Content == null)
|
||||
{
|
||||
tabitem_schuldienst.Content = new SchulbegleitenderDienst(TableID.Customer, ViewModel.DataContract.EmployeeOid.Value, SchulbegleitenderZugehoerigkeitsTyp.Mitarbeiter);
|
||||
tabitem_schuldienst.Content = new SchulbegleitenderDienstView(TableID.Customer, ViewModel.DataContract.EmployeeOid.Value, SchulbegleitenderZugehoerigkeitsTyp.Mitarbeiter);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
Height="Auto" Width="Auto" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Focusable="True">
|
||||
<localView:BeWoView.Resources>
|
||||
<ResourceDictionary>
|
||||
<localSchedView:NewSchulbegleitenderDienstView x:Key="NewSchulbegleitenderDienstMain" Grid.Row="1"/>
|
||||
<localSchedView:SchulbegleitenderVertretungsDienstMainView x:Key="NewSchulbegleitenderDienstMain" Grid.Row="1"/>
|
||||
</ResourceDictionary>
|
||||
</localView:BeWoView.Resources>
|
||||
<Grid Width="Auto" Height="Auto">
|
||||
|
||||
@@ -9,7 +9,7 @@ namespace BeWo.View.Master
|
||||
{
|
||||
public partial class SchulbegleitenderDienstMasterView
|
||||
{
|
||||
public NewSchulbegleitenderDienstView NewSchulBeleitDienstView;
|
||||
public SchulbegleitenderVertretungsDienstMainView NewSchulBeleitDienstView;
|
||||
|
||||
public SchulbegleitenderDienstMasterView()
|
||||
{
|
||||
@@ -26,7 +26,7 @@ namespace BeWo.View.Master
|
||||
}
|
||||
|
||||
//Problem NachSchauen
|
||||
NewSchulBeleitDienstView = Resources["NewSchulbegleitenderDienstMain"] as NewSchulbegleitenderDienstView;
|
||||
NewSchulBeleitDienstView = Resources["NewSchulbegleitenderDienstMain"] as SchulbegleitenderVertretungsDienstMainView;
|
||||
|
||||
if (NewSchulBeleitDienstView == null)
|
||||
{
|
||||
|
||||
@@ -63,7 +63,7 @@ namespace BeWo.View.Navigation
|
||||
this.chkShowOnlyTeamSCs.Foreground = b;
|
||||
}
|
||||
|
||||
if (!BeWoApp.LoggedOnUser.HasRight(UserRightType.SupportConcept_ViewAllSupportConcepts) && !BeWoApp.LoggedOnUser.HasRight(UserRightType.ViewAll) && BeWoApp.LoggedOnUser.HasRight(UserRightType.SupportConcept_View MyTeams))
|
||||
if (!BeWoApp.LoggedOnUser.HasRight(UserRightType.SupportConcept_ViewAllSupportConcepts) && !BeWoApp.LoggedOnUser.HasRight(UserRightType.ViewAll) && BeWoApp.LoggedOnUser.HasRight(UserRightType.SupportConcept_ViewMyTeams))
|
||||
{
|
||||
this.chkShowOnlyMySCs.IsChecked = true;
|
||||
this.chkShowOnlyMySCs.IsEnabled = false;
|
||||
|
||||
@@ -349,7 +349,7 @@ namespace BeWo.ownChat
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region pdf // auf den server auslagern und als byte[] zurück geben
|
||||
#region pdf // auf den server auslagern und als byte[] zurück geben und hier verarbeiten
|
||||
private void ZeigeHandoutPDF_OnClick(object sender, RoutedEventArgs e)
|
||||
{
|
||||
StartWaiting();
|
||||
|
||||
Reference in New Issue
Block a user