274 lines
18 KiB
C#
274 lines
18 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.Net;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
|
|
namespace AutismusKoelnBonn
|
|
{
|
|
public class CustomCustomerService : CustomerService
|
|
{
|
|
public override CustomerDC LoadCustomer(long pCustomerOid)
|
|
{
|
|
var dc = base.LoadCustomer(pCustomerOid);
|
|
|
|
var folder = DAOFactory.SearchDAO.FindBeWoFolders(TableID.Customer, pCustomerOid);
|
|
|
|
if (folder.Count == 0)
|
|
{
|
|
ErstelleOrdnerStruktur(pCustomerOid);
|
|
}
|
|
|
|
return dc;
|
|
|
|
}
|
|
|
|
public override long InsertNewCustomer(CustomerDC pCustomerDc)
|
|
{
|
|
var cOid = base.InsertNewCustomer(pCustomerDc);
|
|
|
|
ErstelleOrdnerStruktur(cOid);
|
|
|
|
|
|
|
|
return cOid;
|
|
}
|
|
|
|
private void ErstelleOrdnerStruktur(long cOid)
|
|
{
|
|
// Ordner 1
|
|
var folder_01 = CreateBeWoFolder("LE Stammdaten - moveAUT", cOid, null);
|
|
var folder_01_01 = CreateBeWoFolder("Stammdatenbogen", cOid, folder_01.Oid);
|
|
var folder_01_02 = CreateBeWoFolder("Notfalldaten", cOid, folder_01.Oid);
|
|
var folder_01_03 = CreateBeWoFolder("Anamnese", cOid, folder_01.Oid);
|
|
var folder_01_04 = CreateBeWoFolder("Biografie", cOid, folder_01.Oid);
|
|
var folder_01_05 = CreateBeWoFolder("Ausweise/Dokumente", cOid, folder_01.Oid);
|
|
var folder_01_06 = CreateBeWoFolder("Vollmachten", cOid, folder_01.Oid);
|
|
|
|
//Ordner 2
|
|
var folder_02 = CreateBeWoFolder("Verwaltungsdaten - moveAUT", cOid, null);
|
|
var folder_02_01 = CreateBeWoFolder("Erstkontakt bis Betreuungsbeginn", cOid, folder_02.Oid);
|
|
var folder_02_02 = CreateBeWoFolder("Verträge mit Leistungsanbieter", cOid, folder_02.Oid);
|
|
var folder_02_02_01 = CreateBeWoFolder("Betreuung", cOid, folder_02_02.Oid);
|
|
var folder_02_02_02 = CreateBeWoFolder("Therapie", cOid, folder_02_02.Oid);
|
|
var folder_02_02_03 = CreateBeWoFolder("Wohnen", cOid, folder_02_02.Oid);
|
|
var folder_02_02_04 = CreateBeWoFolder("Einverständniserklärung", cOid, folder_02_02.Oid);
|
|
var folder_02_03 = CreateBeWoFolder("Leistungsträger (LT) - chron. Aufzählung (Ablage nach Datum)", cOid, folder_02.Oid);
|
|
var folder_02_03_01 = CreateBeWoFolder("Selbstzahler", cOid, folder_02_03.Oid);
|
|
var folder_02_03_01_01 = CreateBeWoFolder("Hilfeplangespräche", cOid, folder_02_03_01.Oid);
|
|
var folder_02_03_01_02 = CreateBeWoFolder("Sachstandsbericht", cOid, folder_02_03_01.Oid);
|
|
var folder_02_03_01_03 = CreateBeWoFolder("Kostenübernahme / Bewilligungen", cOid, folder_02_03_01.Oid);
|
|
var folder_02_03_01_04 = CreateBeWoFolder("Rechnungswesen", cOid, folder_02_03_01.Oid);
|
|
var folder_02_03_01_04_01 = CreateBeWoFolder("Leistungsnachweise", cOid, folder_02_03_01_04.Oid);
|
|
var folder_02_03_01_04_02 = CreateBeWoFolder("Rechnungen", cOid, folder_02_03_01_04.Oid);
|
|
var folder_02_03_01_04_03 = CreateBeWoFolder("Monatsabrechnung", cOid, folder_02_03_01_04.Oid);
|
|
var folder_02_03_01_04_04 = CreateBeWoFolder("Eigenanteil", cOid, folder_02_03_01_04.Oid);
|
|
var folder_02_03_01_05 = CreateBeWoFolder("Kommunikation/Schriftverkehr mit LT", cOid, folder_02_03_01.Oid);
|
|
var folder_02_03_01_06 = CreateBeWoFolder("Abschlussbericht", cOid, folder_02_03_01.Oid);
|
|
|
|
var folder_02_03_02 = CreateBeWoFolder("Persönliches Budget (Case Management)", cOid, folder_02_03.Oid);
|
|
var folder_02_03_02_01 = CreateBeWoFolder("Hilfeplangespräche", cOid, folder_02_03_02.Oid);
|
|
var folder_02_03_02_02 = CreateBeWoFolder("Sachstandsbericht", cOid, folder_02_03_02.Oid);
|
|
var folder_02_03_02_03 = CreateBeWoFolder("Kostenübernahme / Bewilligungen", cOid, folder_02_03_02.Oid);
|
|
var folder_02_03_02_04 = CreateBeWoFolder("Rechnungswesen", cOid, folder_02_03_02.Oid);
|
|
var folder_02_03_02_04_01 = CreateBeWoFolder("Leistungsnachweise", cOid, folder_02_03_02_04.Oid);
|
|
var folder_02_03_02_04_02 = CreateBeWoFolder("Rechnungen", cOid, folder_02_03_02_04.Oid);
|
|
var folder_02_03_02_04_03 = CreateBeWoFolder("Monatsabrechnung", cOid, folder_02_03_02_04.Oid);
|
|
var folder_02_03_02_04_04 = CreateBeWoFolder("Eigenanteil", cOid, folder_02_03_02_04.Oid);
|
|
var folder_02_03_02_05 = CreateBeWoFolder("Kommunikation/Schriftverkehr mit LT", cOid, folder_02_03_02.Oid);
|
|
var folder_02_03_02_06 = CreateBeWoFolder("Abschlussbericht", cOid, folder_02_03_02.Oid);
|
|
|
|
var folder_02_03_03 = CreateBeWoFolder("LVR / LWL", cOid, folder_02_03.Oid);
|
|
var folder_02_03_03_01 = CreateBeWoFolder("Bedarfsanzeigen", cOid, folder_02_03_03.Oid);
|
|
var folder_02_03_03_02 = CreateBeWoFolder("Antrag BEI_NRW / IHP", cOid, folder_02_03_03.Oid);
|
|
var folder_02_03_03_03 = CreateBeWoFolder("Anlagen BEI_NRW", cOid, folder_02_03_03.Oid);
|
|
var folder_02_03_03_03_01 = CreateBeWoFolder("Vorlage Checkliste Blanko", cOid, folder_02_03_03_03.Oid);
|
|
var folder_02_03_03_03_02 = CreateBeWoFolder("Fachärztliche Stellungsnahme", cOid, folder_02_03_03_03.Oid);
|
|
var folder_02_03_03_03_03 = CreateBeWoFolder("Grundsicherung", cOid, folder_02_03_03_03.Oid);
|
|
var folder_02_03_03_03_04 = CreateBeWoFolder("Kontoauszüge", cOid, folder_02_03_03_03.Oid);
|
|
var folder_02_03_03_03_05 = CreateBeWoFolder("Vermögenserklärung / Vermögensnegativerklärung", cOid, folder_02_03_03_03.Oid);
|
|
var folder_02_03_03_04 = CreateBeWoFolder("Kostenübernahme / Bewilligungen", cOid, folder_02_03_03.Oid);
|
|
var folder_02_03_03_05 = CreateBeWoFolder("Rechnungswesen", cOid, folder_02_03_03.Oid);
|
|
var folder_02_03_03_05_01 = CreateBeWoFolder("Quittierungsbelege (LVR)", cOid, folder_02_03_03_05.Oid);
|
|
var folder_02_03_03_05_02 = CreateBeWoFolder("Budgetnachweis (LWL)", cOid, folder_02_03_03_05.Oid);
|
|
var folder_02_03_03_05_03 = CreateBeWoFolder("Leistungsnachweise", cOid, folder_02_03_03_05.Oid);
|
|
var folder_02_03_03_05_04 = CreateBeWoFolder("Rechnungen", cOid, folder_02_03_03_05.Oid);
|
|
var folder_02_03_03_05_05 = CreateBeWoFolder("Spitzabrechnung (LVR)", cOid, folder_02_03_03_05.Oid);
|
|
var folder_02_03_03_05_06 = CreateBeWoFolder("Monatsabrechnung", cOid, folder_02_03_03_05.Oid);
|
|
var folder_02_03_03_05_07 = CreateBeWoFolder("Eigenanteil", cOid, folder_02_03_03_05.Oid);
|
|
var folder_02_03_03_05_08 = CreateBeWoFolder("Fachabrechnungen (LVR)", cOid, folder_02_03_03_05.Oid);
|
|
var folder_02_03_03_06 = CreateBeWoFolder("Kommunikation / Schriftverkehr mit LT", cOid, folder_02_03_03.Oid);
|
|
var folder_02_03_03_07 = CreateBeWoFolder("Abschlussbericht", cOid, folder_02_03_03.Oid);
|
|
|
|
var folder_02_03_04 = CreateBeWoFolder("Jugendamt", cOid, folder_02_03.Oid);
|
|
var folder_02_03_04_01 = CreateBeWoFolder("Hilfeplangespräche", cOid, folder_02_03_04.Oid);
|
|
var folder_02_03_04_02 = CreateBeWoFolder("Sachstandsbericht", cOid, folder_02_03_04.Oid);
|
|
var folder_02_03_04_03 = CreateBeWoFolder("Kostenübernahme / Bewilligungen", cOid, folder_02_03_04.Oid);
|
|
var folder_02_03_04_04 = CreateBeWoFolder("Rechnungswesen", cOid, folder_02_03_04.Oid);
|
|
var folder_02_03_04_04_01 = CreateBeWoFolder("Leistungsnachweise", cOid, folder_02_03_04_04.Oid);
|
|
var folder_02_03_04_04_02 = CreateBeWoFolder("Rechnungen", cOid, folder_02_03_04_04.Oid);
|
|
var folder_02_03_04_04_03 = CreateBeWoFolder("Monatsabrechnung", cOid, folder_02_03_04_04.Oid);
|
|
var folder_02_03_04_04_04 = CreateBeWoFolder("Eigenanteil", cOid, folder_02_03_04_04.Oid);
|
|
var folder_02_03_04_05 = CreateBeWoFolder("Kommunikation / Schriftverkehr mit LT", cOid, folder_02_03_04.Oid);
|
|
var folder_02_03_04_06 = CreateBeWoFolder("Abschlussbericht", cOid, folder_02_03_04.Oid);
|
|
|
|
var folder_02_03_05 = CreateBeWoFolder("Sozialamt", cOid, folder_02_03.Oid);
|
|
var folder_02_03_05_01 = CreateBeWoFolder("Hilfeplangespräche", cOid, folder_02_03_05.Oid);
|
|
var folder_02_03_05_02 = CreateBeWoFolder("Sachstandsbericht", cOid, folder_02_03_05.Oid);
|
|
var folder_02_03_05_03 = CreateBeWoFolder("Kostenübernahme / Bewilligungen", cOid, folder_02_03_05.Oid);
|
|
var folder_02_03_05_04 = CreateBeWoFolder("Rechnungswesen", cOid, folder_02_03_05.Oid);
|
|
var folder_02_03_05_05_01 = CreateBeWoFolder("Leistungsnachweise", cOid, folder_02_03_05_04.Oid);
|
|
var folder_02_03_05_05_02 = CreateBeWoFolder("Rechnungen", cOid, folder_02_03_05_04.Oid);
|
|
var folder_02_03_05_05_03 = CreateBeWoFolder("Monatsabrechnung", cOid, folder_02_03_05_04.Oid);
|
|
var folder_02_03_05_05_04 = CreateBeWoFolder("Eigenanteil", cOid, folder_02_03_05_04.Oid);
|
|
var folder_02_03_05_05 = CreateBeWoFolder("Kommunikation / Schriftverkehr mit LT", cOid, folder_02_03_05.Oid);
|
|
var folder_02_03_05_06 = CreateBeWoFolder("Abschlussbericht", cOid, folder_02_03_05.Oid);
|
|
|
|
var folder_02_03_06 = CreateBeWoFolder("Krankenkasse", cOid, folder_02_03.Oid);
|
|
var folder_02_03_06_01 = CreateBeWoFolder("Hilfeplangespräche", cOid, folder_02_03_06.Oid);
|
|
var folder_02_03_06_02 = CreateBeWoFolder("Sachstandsbericht", cOid, folder_02_03_06.Oid);
|
|
var folder_02_03_06_03 = CreateBeWoFolder("Kostenübernahme / Bewilligungen", cOid, folder_02_03_06.Oid);
|
|
var folder_02_03_06_04 = CreateBeWoFolder("Rechnungswesen", cOid, folder_02_03_06.Oid);
|
|
var folder_02_03_06_04_01 = CreateBeWoFolder("Leistungsnachweise", cOid, folder_02_03_06_04.Oid);
|
|
var folder_02_03_06_04_02 = CreateBeWoFolder("Rechnungen", cOid, folder_02_03_06_04.Oid);
|
|
var folder_02_03_06_04_03 = CreateBeWoFolder("Monatsabrechnung", cOid, folder_02_03_06_04.Oid);
|
|
var folder_02_03_06_04_04 = CreateBeWoFolder("Eigenanteil", cOid, folder_02_03_06_04.Oid);
|
|
var folder_02_03_06_05 = CreateBeWoFolder("Kommunikation / Schriftverkehr mit LT", cOid, folder_02_03_06.Oid);
|
|
var folder_02_03_06_06 = CreateBeWoFolder("Abschlussbericht", cOid, folder_02_03_06.Oid);
|
|
|
|
var folder_02_04 = CreateBeWoFolder("Ämter und Behörden (intern)", cOid, folder_02.Oid);
|
|
var folder_02_05 = CreateBeWoFolder("Bescheinigungen", cOid, folder_02.Oid);
|
|
var folder_02_06 = CreateBeWoFolder("Kommunikation / Schriftverkehr", cOid, folder_02.Oid);
|
|
|
|
var folder_03 = CreateBeWoFolder("Assistenzleistungen - moveAUT", cOid, null);
|
|
var folder_03_01 = CreateBeWoFolder("Notfalldaten", cOid, folder_03.Oid);
|
|
var folder_03_02 = CreateBeWoFolder("ICF - Assessment", cOid, folder_03.Oid);
|
|
var folder_03_03 = CreateBeWoFolder("Psychiatrisches Assessment", cOid, folder_03.Oid);
|
|
var folder_03_04 = CreateBeWoFolder("Verlaufsdokumentationen", cOid, folder_03.Oid);
|
|
var folder_03_04_01 = CreateBeWoFolder("Jahr 2022", cOid, folder_03_04.Oid);
|
|
var folder_03_04_01_01 = CreateBeWoFolder("Monat Januar", cOid, folder_03_04_01.Oid);
|
|
var folder_03_04_01_02 = CreateBeWoFolder("Monat Februar", cOid, folder_03_04_01.Oid);
|
|
var folder_03_04_01_03 = CreateBeWoFolder("Monat März", cOid, folder_03_04_01.Oid);
|
|
var folder_03_04_01_04 = CreateBeWoFolder("Monat April", cOid, folder_03_04_01.Oid);
|
|
var folder_03_04_01_05 = CreateBeWoFolder("Monat Mai", cOid, folder_03_04_01.Oid);
|
|
var folder_03_04_01_06 = CreateBeWoFolder("Monat Juni", cOid, folder_03_04_01.Oid);
|
|
var folder_03_04_01_07 = CreateBeWoFolder("Monat Juli", cOid, folder_03_04_01.Oid);
|
|
var folder_03_04_01_08 = CreateBeWoFolder("Monat August", cOid, folder_03_04_01.Oid);
|
|
var folder_03_04_01_09 = CreateBeWoFolder("Monat September", cOid, folder_03_04_01.Oid);
|
|
var folder_03_04_01_010 = CreateBeWoFolder("Monat Oktober", cOid, folder_03_04_01.Oid);
|
|
var folder_03_04_01_011 = CreateBeWoFolder("Monat November", cOid, folder_03_04_01.Oid);
|
|
var folder_03_04_01_012 = CreateBeWoFolder("Monat Dezember", cOid, folder_03_04_01.Oid);
|
|
|
|
var folder_03_05 = CreateBeWoFolder("Handlungsleitende Angebote", cOid, folder_03.Oid);
|
|
var folder_03_05_01 = CreateBeWoFolder("Tagesstruktur", cOid, folder_03_05.Oid);
|
|
var folder_03_05_02 = CreateBeWoFolder("Wochenstruktur", cOid, folder_03_05.Oid);
|
|
var folder_03_05_03 = CreateBeWoFolder("Gruppenangbote", cOid, folder_03_05.Oid);
|
|
var folder_03_05_04 = CreateBeWoFolder("Andere", cOid, folder_03_05.Oid);
|
|
|
|
// Unklar ob Ordner 1st oder 2nd Level
|
|
var folder_035 = CreateBeWoFolder("Rechtliche Betreuung", cOid, null);
|
|
var folder_035_01 = CreateBeWoFolder("Bestellungsurkunde", cOid, folder_035.Oid);
|
|
var folder_035_02 = CreateBeWoFolder("Kommunikation / Schriftverkehr", cOid, folder_035.Oid);
|
|
var folder_035_03 = CreateBeWoFolder("Protokolle", cOid, folder_035.Oid);
|
|
var folder_035_04 = CreateBeWoFolder("Absprachen", cOid, folder_035.Oid);
|
|
|
|
//var folder_03_06 = CreateBeWoFolder("Rechtliche Betreuung", cOid, folder_03.Oid);
|
|
//var folder_03_06_01 = CreateBeWoFolder("Bestellungsurkunde", cOid, folder_03_06.Oid);
|
|
//var folder_03_06_02 = CreateBeWoFolder("Kommunikation / Schriftverkehr", cOid, folder_03_06.Oid);
|
|
//var folder_03_06_03 = CreateBeWoFolder("Protokolle", cOid, folder_03_06.Oid);
|
|
//var folder_03_06_04 = CreateBeWoFolder("Absprachen", cOid, folder_03_06.Oid);
|
|
|
|
var folder_04 = CreateBeWoFolder("Therapeutische Daten", cOid, null);
|
|
var folder_04_01 = CreateBeWoFolder("Anamnese, Assessments", cOid, folder_04.Oid);
|
|
var folder_04_02 = CreateBeWoFolder("Leistungsträger", cOid, folder_04.Oid);
|
|
var folder_04_02_01 = CreateBeWoFolder("Kassen", cOid, folder_04_02.Oid);
|
|
var folder_04_02_02 = CreateBeWoFolder("Anträge", cOid, folder_04_02.Oid);
|
|
var folder_04_02_03 = CreateBeWoFolder("Bewilligungen", cOid, folder_04_02.Oid);
|
|
var folder_04_03 = CreateBeWoFolder("Entwicklungsberichte", cOid, folder_04.Oid);
|
|
var folder_04_04 = CreateBeWoFolder("Stellungnahmen", cOid, folder_04.Oid);
|
|
var folder_04_05 = CreateBeWoFolder("Protokolle", cOid, folder_04.Oid);
|
|
var folder_04_06 = CreateBeWoFolder("Therapiematerialien", cOid, folder_04.Oid);
|
|
var folder_04_07 = CreateBeWoFolder("Kommunikation / Schriftverkehr", cOid, folder_04.Oid);
|
|
var folder_04_08 = CreateBeWoFolder("Sonstiges", cOid, folder_04.Oid);
|
|
|
|
var folder_05 = CreateBeWoFolder("Sozialarbeiterische Daten", cOid, null);
|
|
var folder_05_01 = CreateBeWoFolder("Berufliche Rehabilitation", cOid, folder_05.Oid);
|
|
var folder_05_02 = CreateBeWoFolder("Berichte", cOid, folder_05.Oid);
|
|
var folder_05_03 = CreateBeWoFolder("Urkunden", cOid, folder_05.Oid);
|
|
var folder_05_04 = CreateBeWoFolder("Gerichtsbeschlüsse", cOid, folder_05.Oid);
|
|
var folder_05_05 = CreateBeWoFolder("Urteile", cOid, folder_05.Oid);
|
|
var folder_05_06 = CreateBeWoFolder("Gutachten", cOid, folder_05.Oid);
|
|
var folder_05_07 = CreateBeWoFolder("Kommunikation / Schriftverkehr", cOid, folder_05.Oid);
|
|
var folder_05_08 = CreateBeWoFolder("Sonstiges", cOid, folder_05.Oid);
|
|
|
|
var folder_06 = CreateBeWoFolder("Medizinische Daten (SGB)", cOid, null);
|
|
var folder_06_01 = CreateBeWoFolder("Symptome", cOid, folder_06.Oid);
|
|
var folder_06_02 = CreateBeWoFolder("Diagnosen", cOid, folder_06.Oid);
|
|
var folder_06_03 = CreateBeWoFolder("Kopien von Verordnungen", cOid, folder_06.Oid);
|
|
var folder_06_04 = CreateBeWoFolder("Arztberichte", cOid, folder_06.Oid);
|
|
var folder_06_05 = CreateBeWoFolder("Klinikaufenthalte", cOid, folder_06.Oid);
|
|
var folder_06_06 = CreateBeWoFolder("Laborwerte", cOid, folder_06.Oid);
|
|
var folder_06_07 = CreateBeWoFolder("Behandlungspläne", cOid, folder_06.Oid);
|
|
var folder_06_08 = CreateBeWoFolder("Kommunikation / Schriftverkehr", cOid, folder_06.Oid);
|
|
var folder_06_09 = CreateBeWoFolder("Sonstiges", cOid, folder_06.Oid);
|
|
|
|
var folder_07 = CreateBeWoFolder("Pfleg. Daten (SGB)", cOid, null);
|
|
var folder_07_01 = CreateBeWoFolder("Informationssammlung", cOid, folder_07.Oid);
|
|
var folder_07_02 = CreateBeWoFolder("Pflegeberichte", cOid, folder_07.Oid);
|
|
var folder_07_03 = CreateBeWoFolder("Pflegeplanung", cOid, folder_07.Oid);
|
|
var folder_07_04 = CreateBeWoFolder("Medikamentenplan", cOid, folder_07.Oid);
|
|
var folder_07_05 = CreateBeWoFolder("Kommunikation / Schriftverkehr", cOid, folder_07.Oid);
|
|
var folder_07_06 = CreateBeWoFolder("Sonstiges", cOid, folder_07.Oid);
|
|
}
|
|
|
|
private BeWoFolder CreateBeWoFolder(string name, long? cOid, long? parentOid)
|
|
{
|
|
BeWoFolder f = new BeWoFolder();
|
|
f.Name = name;
|
|
f.ObjectOid = cOid;
|
|
f.ObjectTid = TableID.Customer;
|
|
f.ParentBeWoFolderOid = parentOid;
|
|
|
|
DAOFactory.GenericDAO.Insert(f);
|
|
|
|
return f;
|
|
}
|
|
private void CreateSubFolder(string[] vs, BeWoFolder folder)
|
|
{
|
|
foreach (var foldername in vs)
|
|
{
|
|
CreateBeWoFolder(foldername, folder.ObjectOid, folder.ParentBeWoFolderOid);
|
|
}
|
|
}
|
|
|
|
private void SaveHierarchie(List<Folder> folderList, long cOid, long? parentOid)
|
|
{
|
|
foreach (var item in folderList)
|
|
{
|
|
var f = CreateBeWoFolder(item.Name, cOid, parentOid);
|
|
|
|
SaveHierarchie(item.Subfolder, cOid, f.Oid);
|
|
}
|
|
}
|
|
}
|
|
|
|
public class Folder
|
|
{
|
|
public Folder(String name)
|
|
{
|
|
Name = name;
|
|
Subfolder = new List<Folder>();
|
|
}
|
|
public String Name { get; set; }
|
|
|
|
public List<Folder> Subfolder { get; set; }
|
|
}
|
|
}
|