103 lines
3.1 KiB
C#
103 lines
3.1 KiB
C#
using BeWo.Data.Access;
|
|
using BeWo.Data.Entities;
|
|
using BeWo.Service.Plugins;
|
|
using BS.Shared;
|
|
using BS.Shared.DataContracts;
|
|
using BS.Shared.DataContracts.Compact;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace KundeXyz.Service
|
|
{
|
|
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)
|
|
{
|
|
var aktuellesJahr = DateTime.Now.Year.ToString();
|
|
// Ordner 1
|
|
var folder_01 = CreateBeWoFolder(aktuellesJahr, cOid, null);
|
|
var folder_02 = CreateBeWoFolder("Archiv", cOid, null);
|
|
var folder_03 = CreateBeWoFolder("wichtige Unterlagen u. Dokumente", cOid, null);
|
|
|
|
//Ordner 2
|
|
var folder_01_01 = CreateBeWoFolder("01_Betreuungskosten", cOid, folder_01.Oid);
|
|
var folder_01_02 = CreateBeWoFolder("02_Einkommen", cOid, folder_01.Oid);
|
|
var folder_01_03 = CreateBeWoFolder("03_Gesundheit + Krankenkasse", cOid, folder_01.Oid);
|
|
var folder_01_04 = CreateBeWoFolder("04_Wohnung", cOid, folder_01.Oid);
|
|
var folder_01_05 = CreateBeWoFolder("05_ Arbeit_Ausbildung", cOid, folder_01.Oid);
|
|
var folder_01_06 = CreateBeWoFolder("06_Individuell", cOid, folder_01.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;
|
|
}
|
|
|
|
public override List<CompactSupportConceptDC> GetAllSupportConceptsCompact(long currentEmployeeOid)
|
|
{
|
|
var result = base.GetAllSupportConceptsCompact(currentEmployeeOid);
|
|
|
|
foreach (var sc in result)
|
|
{
|
|
bool expires = false;
|
|
|
|
DateTime? date = sc.EndDate;
|
|
|
|
if (sc.Customer.TerminationDate.HasValue)
|
|
{
|
|
if (sc.Customer.TerminationDate < date)
|
|
{
|
|
date = sc.Customer.TerminationDate;
|
|
}
|
|
}
|
|
|
|
if (date != null)
|
|
{
|
|
expires = date < DateTime.Now.AddMonths(2);
|
|
}
|
|
|
|
|
|
//sc.IsAboutToExpire = expires; // schreibgeschützt
|
|
|
|
}
|
|
|
|
return result;
|
|
}
|
|
}
|
|
}
|