144 lines
8.9 KiB
C#
144 lines
8.9 KiB
C#
using BeWo.Data.Access;
|
|
using BeWo.Data.Entities;
|
|
using BeWo.Service.Plugins;
|
|
using BS.Shared;
|
|
using BS.Shared.DataContracts;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace AutismusKoelnBonn
|
|
{
|
|
public class CustomEmployeeService : EmployeeService
|
|
{
|
|
public override EmployeeDC LoadEmployee(long eOid)
|
|
{
|
|
var dc = base.LoadEmployee(eOid);
|
|
|
|
var folder = DAOFactory.SearchDAO.FindBeWoFolders(TableID.Employee, eOid);
|
|
|
|
if (folder.Count == 0)
|
|
{
|
|
ErstelleOrdnerStruktur(eOid);
|
|
}
|
|
|
|
return dc;
|
|
|
|
}
|
|
|
|
|
|
public override long InsertNewEmployee(EmployeeDC pEmployeeDC)
|
|
{
|
|
var eOid = base.InsertNewEmployee(pEmployeeDC);
|
|
|
|
ErstelleOrdnerStruktur(eOid);
|
|
|
|
return eOid;
|
|
}
|
|
|
|
private void ErstelleOrdnerStruktur(long eOid)
|
|
{
|
|
var folder01 = CreateBeWoFolder("Teil 1: Personalführung", eOid, null);
|
|
var folder01_01 = CreateBeWoFolder("Personaldaten", eOid, folder01.Oid);
|
|
var folder01_02 = CreateBeWoFolder("Vertragsdaten", eOid, folder01.Oid);
|
|
var folder01_02_01 = CreateBeWoFolder("Arbeitsvertrag und Anlagen", eOid, folder01_02.Oid);
|
|
var folder01_02_02 = CreateBeWoFolder("Arbeitsmaterialien", eOid, folder01_02.Oid);
|
|
var folder01_02_03 = CreateBeWoFolder("Anstellungsschreiben", eOid, folder01_02.Oid);
|
|
var folder01_02_04 = CreateBeWoFolder("sämtliche Vertragsänderungen der Folgezeit", eOid, folder01_02.Oid);
|
|
var folder01_02_05 = CreateBeWoFolder("Vollmachten", eOid, folder01_02.Oid);
|
|
var folder01_02_06 = CreateBeWoFolder("Verschwiegenheitsverpflichtungen", eOid, folder01_02.Oid);
|
|
var folder01_02_07 = CreateBeWoFolder("Zurverfügungsstellung eines Dienstwagens", eOid, folder01_02.Oid);
|
|
var folder01_02_08 = CreateBeWoFolder("Kündigung, Aufhebungsvereinbarung", eOid, folder01_02.Oid);
|
|
|
|
var folder01_03 = CreateBeWoFolder("Entwicklungsdaten", eOid, folder01.Oid);
|
|
var folder01_03_01 = CreateBeWoFolder("Seminarbesuche", eOid, folder01_03.Oid);
|
|
var folder01_03_02 = CreateBeWoFolder("Aus- und Weiterbildungsmaßnahmen", eOid, folder01_03.Oid);
|
|
var folder01_03_03 = CreateBeWoFolder("Mitarbeitergespräche", eOid, folder01_03.Oid);
|
|
var folder01_03_04 = CreateBeWoFolder("Beurteilungen", eOid, folder01_03.Oid);
|
|
var folder01_03_05 = CreateBeWoFolder("Zwischenzeugnisse", eOid, folder01_03.Oid);
|
|
var folder01_03_06 = CreateBeWoFolder("Endzeugnis", eOid, folder01_03.Oid);
|
|
var folder01_03_07 = CreateBeWoFolder("Disziplinarmaßnahmen", eOid, folder01_03.Oid);
|
|
var folder01_03_08 = CreateBeWoFolder("Abmahnungen", eOid, folder01_03.Oid);
|
|
var folder01_03_09 = CreateBeWoFolder("Beförderungsvorschläge", eOid, folder01_03.Oid);
|
|
|
|
var folder01_04 = CreateBeWoFolder("Allgemeindaten", eOid, folder01.Oid);
|
|
var folder01_04_01 = CreateBeWoFolder("Bescheinigungen", eOid, folder01_04.Oid);
|
|
var folder01_04_02 = CreateBeWoFolder("Arbeits-/Aufenthaltserlaubnisse", eOid, folder01_04.Oid);
|
|
var folder01_04_03 = CreateBeWoFolder("Pfändungen, Vorschüsse", eOid, folder01_04.Oid);
|
|
var folder01_04_04 = CreateBeWoFolder("Personalmeldungen", eOid, folder01_04.Oid);
|
|
var folder01_04_05 = CreateBeWoFolder("Vermerke über Fehlzeiten, wie Arbeitsunfähigkeit und Urlaub", eOid, folder01_04.Oid);
|
|
var folder01_04_06 = CreateBeWoFolder("Urlaubsanträge", eOid, folder01_04.Oid);
|
|
var folder01_04_07 = CreateBeWoFolder("Unfallanzeigen und Untersuchungsbefunde", eOid, folder01_04.Oid);
|
|
var folder01_04_08 = CreateBeWoFolder("Werkwohnung", eOid, folder01_04.Oid);
|
|
var folder01_04_09 = CreateBeWoFolder("Jubiläen", eOid, folder01_04.Oid);
|
|
var folder01_04_010 = CreateBeWoFolder("Beihilfen und Darlehen", eOid, folder01_04.Oid);
|
|
var folder01_04_011 = CreateBeWoFolder("Schriftverkehr mit den Mitarbeitern", eOid, folder01_04.Oid);
|
|
var folder01_04_012 = CreateBeWoFolder("Schriftverkehr mit Dritten bezüglich des Arbeitnehmers", eOid, folder01_04.Oid);
|
|
var folder01_04_013 = CreateBeWoFolder("Durchschriften über Betriebsratsanhörungen und Betriebsratsinformation", eOid, folder01_04.Oid);
|
|
|
|
var folder01_05 = CreateBeWoFolder("Vorvertragsdaten", eOid, folder01.Oid);
|
|
var folder01_05_01 = CreateBeWoFolder("Bewerbungsunterlagen (Bewerbungsschreiben, Zeugnisse, Referenzen, Lebenslauf, Lichtbild)", eOid, folder01_05.Oid);
|
|
var folder01_05_02 = CreateBeWoFolder("Interviewbogen mit Stellungnahmen beteiligter Gesprächspartner", eOid, folder01_05.Oid);
|
|
var folder01_05_03 = CreateBeWoFolder("Personalfragebogen", eOid, folder01_05.Oid);
|
|
var folder01_05_04 = CreateBeWoFolder("Eignungstest", eOid, folder01_05.Oid);
|
|
var folder01_05_05 = CreateBeWoFolder("ärztliche Tauglichkeitsfeststellungen, Gutachten und Befunde", eOid, folder01_05.Oid);
|
|
var folder01_05_06 = CreateBeWoFolder("Auskünfte Dritter", eOid, folder01_05.Oid);
|
|
var folder01_05_07 = CreateBeWoFolder("allgemeine Bewerbungskorrespondenz und Regulierung der Vorstellungskosten", eOid, folder01_05.Oid);
|
|
|
|
|
|
var folder02 = CreateBeWoFolder("Teil 2: Abrechnung", eOid, null);
|
|
var folder02_01 = CreateBeWoFolder("Stammdaten", eOid, folder02.Oid);
|
|
var folder02_01_01 = CreateBeWoFolder("Lohn-/Gehaltsvereinbarungen", eOid, folder02_01.Oid);
|
|
var folder02_01_02 = CreateBeWoFolder("Entgeltänderungen", eOid, folder02_01.Oid);
|
|
var folder02_01_03 = CreateBeWoFolder("Versetzungsmeldung", eOid, folder02_01.Oid);
|
|
|
|
var folder02_02 = CreateBeWoFolder("Variable Daten", eOid, folder02.Oid);
|
|
var folder02_02_01 = CreateBeWoFolder("vorübergehende Gehaltskürzung", eOid, folder02_02.Oid);
|
|
var folder02_02_02 = CreateBeWoFolder("Prämien", eOid, folder02_02.Oid);
|
|
var folder02_02_03 = CreateBeWoFolder("Sonderzahlungen", eOid, folder02_02.Oid);
|
|
var folder02_02_04 = CreateBeWoFolder("Fahrgelderstattung", eOid, folder02_02.Oid);
|
|
var folder02_02_05 = CreateBeWoFolder("sonstige Aufwandserstattung", eOid, folder02_02.Oid);
|
|
var folder02_02_06 = CreateBeWoFolder("Lohnzettel", eOid, folder02_02.Oid);
|
|
|
|
var folder02_03 = CreateBeWoFolder("Überweisungsdaten", eOid, folder02.Oid);
|
|
var folder02_03_01 = CreateBeWoFolder("Vermögensbildung", eOid, folder02_03.Oid);
|
|
var folder02_03_02 = CreateBeWoFolder("Sozialversicherung", eOid, folder02_03.Oid);
|
|
var folder02_03_03 = CreateBeWoFolder("sonstige Versicherungen", eOid, folder02_03.Oid);
|
|
var folder02_03_04 = CreateBeWoFolder("Mieten", eOid, folder02_03.Oid);
|
|
var folder02_03_05 = CreateBeWoFolder("Pfändungen", eOid, folder02_03.Oid);
|
|
var folder02_03_06 = CreateBeWoFolder("Darlehensrückzahlung", eOid, folder02_03.Oid);
|
|
|
|
var folder02_04 = CreateBeWoFolder("Lohnsteuer (ELStAM-Verfahren)", eOid, folder02.Oid);
|
|
var folder02_04_01 = CreateBeWoFolder("Identifikationsnummer des Arbeitsnehmers", eOid, folder02_04.Oid);
|
|
var folder02_04_02 = CreateBeWoFolder("melderechtliches Geburtsdatum", eOid, folder02_04.Oid);
|
|
var folder02_04_03 = CreateBeWoFolder("Tag des Beginns des Dienstverhältnisses", eOid, folder02_04.Oid);
|
|
var folder02_04_04 = CreateBeWoFolder("Angabe, ob es sich um ein erstes oder weiteres Dienstverhältnis handelt", eOid, folder02_04.Oid);
|
|
var folder02_04_05 = CreateBeWoFolder("Angabe, ob und in welcher Höhe ein Freibetrag bzw. Hinzurechnungsbetrag abgerufen werden soll", eOid, folder02_04.Oid);
|
|
|
|
var folder02_05 = CreateBeWoFolder("Kranken- und Sozialversicherung", eOid, folder02.Oid);
|
|
var folder02_05_01 = CreateBeWoFolder("Mitgliedschaftsbescheinigung der privaten oder gesetzlichen Krankenkasse", eOid, folder02_05.Oid);
|
|
var folder02_05_02 = CreateBeWoFolder("Kopie Sozialversicherungsausweis", eOid, folder02_05.Oid);
|
|
|
|
var folder02_06 = CreateBeWoFolder("Allgemeindaten", eOid, folder02.Oid);
|
|
var folder02_06_01 = CreateBeWoFolder("Bescheinigungen", eOid, folder02_06.Oid);
|
|
var folder02_06_02 = CreateBeWoFolder("Schriftverkehr", eOid, folder02_06.Oid);
|
|
|
|
}
|
|
|
|
private BeWoFolder CreateBeWoFolder(string name, long? eOid, long? parentOid)
|
|
{
|
|
BeWoFolder f = new BeWoFolder();
|
|
f.Name = name;
|
|
f.ObjectOid = eOid;
|
|
f.ObjectTid = TableID.Employee;
|
|
f.ParentBeWoFolderOid = parentOid;
|
|
|
|
DAOFactory.GenericDAO.Insert(f);
|
|
|
|
return f;
|
|
}
|
|
}
|
|
}
|