107 lines
3.2 KiB
C#
107 lines
3.2 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 SHKService
|
|
{
|
|
public class CustomCustomerService : CustomerService
|
|
{
|
|
|
|
public override long InsertNewCustomer(CustomerDC pCustomerDc)
|
|
{
|
|
var cOid = base.InsertNewCustomer(pCustomerDc);
|
|
|
|
ErstelleOrdnerStruktur(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)
|
|
{
|
|
ErstelleOrdnerStruktur(pCustomerOid);
|
|
}
|
|
|
|
return dc;
|
|
|
|
}
|
|
|
|
private void ErstelleOrdnerStruktur(long cOid)
|
|
{
|
|
// HIERACHIE LEVEL - 1 -
|
|
var folder01 = CreateBeWoFolder("Stammdaten", cOid, null);
|
|
var folder02 = CreateBeWoFolder("LWV-Hessen", cOid, null);
|
|
var folder03 = CreateBeWoFolder("Einkommen", cOid, null);
|
|
var folder04 = CreateBeWoFolder("Medizinisches", cOid, null);
|
|
var folder05 = CreateBeWoFolder("Versorgungsamt", cOid, null);
|
|
var folder06 = CreateBeWoFolder("Wohnen", cOid, null);
|
|
var folder07 = CreateBeWoFolder("gesetzl. Betreuung", cOid, null);
|
|
var folder08 = CreateBeWoFolder("sonstiges", cOid, null);
|
|
|
|
// HIERACHIE LEVEL - 2 -
|
|
var folder04_01 = CreateBeWoFolder("Krankenversicherung", cOid, folder04.Oid);
|
|
var folder04_02 = CreateBeWoFolder("Pflegeversicherung", cOid, folder04.Oid);
|
|
var folder04_03 = CreateBeWoFolder("Medizinische Unterlagen", cOid, folder04.Oid);
|
|
|
|
var folder06_01 = CreateBeWoFolder("Mietvertrag", cOid, folder06.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; }
|
|
}
|
|
}
|