Files
BeWoPlaner/ReportImp/Inkomm/Service/CustomCustomerService.cs
2024-03-15 12:40:10 +01:00

128 lines
4.7 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 Inkomm
{
public class CustomCustomerService : CustomerService
{
public override long InsertNewCustomer(CustomerDC pCustomerDc)
{
var cOid = base.InsertNewCustomer(pCustomerDc);
ErstelleOrdnerStrukturKlienten(cOid);
return cOid;
}
public override CustomerDC LoadCustomer(long pCustomerOid)
{
var dc = base.LoadCustomer(pCustomerOid);
var folder = DAOFactory.SearchDAO.FindBeWoFolders(TableID.Customer, pCustomerOid);
if (folder.Count == 0)
{
ErstelleOrdnerStrukturKlienten(pCustomerOid);
}
return dc;
}
private void ErstelleOrdnerStrukturKlienten(long cOid)
{
// HIERACHIE LEVEL - 1 -
var folder01 = CreateBeWoFolderKlienten("01 BEI", cOid, null);
var folder02 = CreateBeWoFolderKlienten("02 Antrag auf Eingliederungshilfe/Anmeldung", cOid, null);
var folder03 = CreateBeWoFolderKlienten("03 Schweigepflichtentbindung", cOid, null);
var folder04 = CreateBeWoFolderKlienten("04 FAS", cOid, null);
var folder05 = CreateBeWoFolderKlienten("05 Gesundheit", cOid, null);
var folder06 = CreateBeWoFolderKlienten("06 Ausweisdokumente", cOid, null);
var folder07 = CreateBeWoFolderKlienten("07 Wohnungsangelegenheiten", cOid, null);
var folder08 = CreateBeWoFolderKlienten("08 Einkommensbescheid", cOid, null);
var folder09 = CreateBeWoFolderKlienten("09 Kontoauszüge", cOid, null);
var folder10 = CreateBeWoFolderKlienten("10 Antrag SGB IX", cOid, null);
var folder11 = CreateBeWoFolderKlienten("11 Bestellungsurkunde/Gutachten", cOid, null);
var folder12 = CreateBeWoFolderKlienten("12 Korrespondenz LVR", cOid, null);
var folder13 = CreateBeWoFolderKlienten("13 Bewilligung", cOid, null);
var folder14 = CreateBeWoFolderKlienten("14 Betreuungsvertrag", cOid, null);
var folder15 = CreateBeWoFolderKlienten("15 Sonstiges", cOid, null);
var folder16 = CreateBeWoFolderKlienten("16 Quittierungsbelege ", cOid, null);
var folder17 = CreateBeWoFolderKlienten("17 Zielüberprüfung ", cOid, null);
}
private void ErstelleOrdnerStrukturHilfepläne(long scOid)
{
// HIERACHIE LEVEL - 1 -
var folder01 = CreateBeWoFolderSupportConcept("BEI", scOid, null);
var folder02 = CreateBeWoFolderSupportConcept("Bewilligung", scOid, null);
var folder03 = CreateBeWoFolderSupportConcept("Abschlussbericht", scOid, null);
// HIERACHIE LEVEL - 2 -
var folder01_01 = CreateBeWoFolderSupportConcept("Unterschriftenseite BEI", scOid, folder01.Oid);
var folder01_02 = CreateBeWoFolderSupportConcept("Anschreiben Erst-BEI", scOid, folder01.Oid);
var folder01_03 = CreateBeWoFolderSupportConcept("Anschreiben Folge-BEI", scOid, folder01.Oid);
var folder01_04 = CreateBeWoFolderSupportConcept("Abschlussberichte", scOid, folder01.Oid);
}
private BeWoFolder CreateBeWoFolderKlienten(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 BeWoFolder CreateBeWoFolderSupportConcept(string name, long? scOid, long? parentOid)
{
BeWoFolder f = new BeWoFolder();
f.Name = name;
f.ObjectOid = scOid;
f.ObjectTid = TableID.SupportConcept;
f.ParentBeWoFolderOid = parentOid;
DAOFactory.GenericDAO.Insert(f);
return f;
}
private void SaveHierarchie(List<Folder> folderList, long cOid, long? parentOid)
{
foreach (var item in folderList)
{
var f = CreateBeWoFolderKlienten(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; }
}
}