348 lines
20 KiB
C#
348 lines
20 KiB
C#
using BeWo.Data.Access;
|
|
using BeWo.Data.Entities;
|
|
using BeWo.Service.DCEntityMapper;
|
|
using BS.Shared;
|
|
using BS.Shared.DataContracts;
|
|
using DevExpress.XtraRichEdit;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.IO;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows;
|
|
using System.Windows.Media.Imaging;
|
|
|
|
namespace BeWo.Service.Dokumentverwaltung
|
|
{
|
|
public class CustomerPlaceholderManager : PlaceholderManager
|
|
{
|
|
|
|
public override List<PlatzhalterDC> GetPlatzhalter()
|
|
{
|
|
List<PlatzhalterDC> liste = new List<PlatzhalterDC>();
|
|
|
|
|
|
PlatzhalterDC personendaten = new PlatzhalterDC()
|
|
{
|
|
Bezeichnung = "Klient/in",
|
|
Children = new List<PlatzhalterDC>(),
|
|
IconType = "BoyAndGirl"
|
|
};
|
|
|
|
personendaten.Children.Add(new PlatzhalterDC { Bezeichnung = "Anrede", Platzhalter = "KlAnrede", IconType = "AB" });
|
|
personendaten.Children.Add(new PlatzhalterDC { Bezeichnung = "Briefanrede", Platzhalter = "KlBriefanrede", IconType = "AB" });
|
|
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Vorname", Platzhalter = "KlVorname", FieldName = "Person.FirstName", IconType = "AB" });
|
|
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Nachname", Platzhalter = "KlNachname", FieldName = "Person.LastName", IconType = "AB" });
|
|
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Alias", Platzhalter = "KlAlias", FieldName = "CustomerAlias", IconType = "AB" });
|
|
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Geburtsdatum", Platzhalter = "KlGeburtsdatum", FieldName = "Person.DateOfBirth", IconType = "AB" });
|
|
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Geburtsort", Platzhalter = "KlGeburtsort", FieldName = "Person.PlaceOfBirth", IconType = "AB" });
|
|
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Staatsangehörigkeit", Platzhalter = "KlStaatsangehoerigkeit", FieldName = "Person.Nationalitaet", IconType = "AB" });
|
|
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Telefon", Platzhalter = "KlTelefon", FieldName = "Person.Contacts", IconType = "AB" });
|
|
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Handy", Platzhalter = "KlHandy", FieldName = "Person.Contacts", IconType = "AB" });
|
|
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "E-Mail", Platzhalter = "KlEmail", FieldName = "Person.Contacts", IconType = "AB" });
|
|
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "KlFax", Platzhalter = "KlFax", FieldName = "Person.Contacts", IconType = "AB" });
|
|
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Beruf", Platzhalter = "KlBeruf", FieldName = "Person.Profession", IconType = "AB" });
|
|
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Debitorennumer", Platzhalter = "KlDebitorennumer", FieldName = "DebitorNumber", IconType = "AB" });
|
|
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Kostenstelle", Platzhalter = "KlKostenstelle", FieldName = "CostCenter", IconType = "AB" });
|
|
|
|
|
|
|
|
PlatzhalterDC adressdatenKlient = new PlatzhalterDC()
|
|
{
|
|
Bezeichnung = "Adressdaten",
|
|
Children = new List<PlatzhalterDC>(),
|
|
IconType = "Home"
|
|
};
|
|
|
|
PlatzhalterDC strasse = new PlatzhalterDC() { Bezeichnung = "Straße", Platzhalter = "KlStrasse", IconType = "AB", FieldName = "Person.Address.Street" };
|
|
adressdatenKlient.Children.Add(strasse);
|
|
PlatzhalterDC plz = new PlatzhalterDC() { Bezeichnung = "PLZ", Platzhalter = "KlPLZ", IconType = "AB", FieldName = "Person.Address.PostalCode" };
|
|
adressdatenKlient.Children.Add(plz);
|
|
PlatzhalterDC ort = new PlatzhalterDC() { Bezeichnung = "Ort", Platzhalter = "KlOrt", IconType = "AB", FieldName = "Person.Address.Town" };
|
|
adressdatenKlient.Children.Add(ort);
|
|
|
|
personendaten.Children.Add(adressdatenKlient);
|
|
|
|
PlatzhalterDC vga = new PlatzhalterDC()
|
|
{
|
|
Bezeichnung = "Vermittlung gemeinnütziger Arbeit",
|
|
Children = new List<PlatzhalterDC>(),
|
|
IconType = "BoyAndGirl"
|
|
};
|
|
|
|
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "AZ der Staatsanwaltschaft/des Gerichts", Platzhalter = "AktenzeichenGericht", FieldName = "Person.CustomerVermittlungArbeit.AktenzeichenGericht", IconType = "AB"});
|
|
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Eigenes Aktenzeichen", Platzhalter = "EigenesAktenzeichen", FieldName = "Person.CustomerVermittlungArbeit.EigenesAktenzeichen", IconType = "AB" });
|
|
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Auftragseingang", Platzhalter = "Auftragseingang", FieldName = "Person.CustomerVermittlungArbeit.Auftragseingang", IconType = "AB" });
|
|
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Auftragsherkunft", Platzhalter = "Auftragsherkunft", FieldName = "Person.CustomerVermittlungArbeit.Auftragsherkunft", IconType = "AB" });
|
|
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Vermittlungsgrundlage", Platzhalter = "Vermittlungsgrundlage", FieldName = "Person.CustomerVermittlungArbeit.Vermittlungsgrundlage", IconType = "AB" });
|
|
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Tagessätze", Platzhalter = "Tagessatze", FieldName = "Person.CustomerVermittlungArbeit.Tagessatze", IconType = "AB" });
|
|
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Tagessatzhöhe", Platzhalter = "Tagessatzhohe", FieldName = "Person.CustomerVermittlungArbeit.Tagessatzhohe", IconType = "AB" });
|
|
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Höhe der Geldstrafe", Platzhalter = "HoheDerGeldstrafe", FieldName = "Person.CustomerVermittlungArbeit.HoheDerGeldstrafe", IconType = "AB" });
|
|
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Zu leistende Arbeitsstunden", Platzhalter = "ZuLeistendeArbeitsstunden", FieldName = "Person.CustomerVermittlungArbeit.ZuLeistendeArbeitsstunden", IconType = "AB" });
|
|
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Hinweis", Platzhalter = "Hinweis", FieldName = "Person.CustomerVermittlungArbeit.Hinweis", IconType = "AB" });
|
|
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Termin", Platzhalter = "Termin", FieldName = "Person.CustomerVermittlungArbeit.Termin", IconType = "AB" });
|
|
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Bearbeitungsstatus", Platzhalter = "CustomerVermittlungBearbeitungsstatus", FieldName = "Person.CustomerVermittlungArbeit.CustomerVermittlungBearbeitungsstatus", IconType = "AB" });
|
|
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Auftragsrückgabe", Platzhalter = "Auftragsruckgabe", FieldName = "Person.CustomerVermittlungArbeit.Auftragsruckgabe", IconType = "AB" });
|
|
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Verlauf", Platzhalter = "Verlauf", FieldName = "Person.CustomerVermittlungArbeit.Verlauf", IconType = "AB" });
|
|
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Abgeleistete Stunden", Platzhalter = "AbgeleisteteStunden", FieldName = "Person.CustomerVermittlungArbeit.AbgeleisteteStunden", IconType = "AB" });
|
|
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Ersparte Hafttage", Platzhalter = "ErsparteHafttage", FieldName = "Person.CustomerVermittlungArbeit.ErsparteHafttage", IconType = "AB" });
|
|
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Geleistete Ratenzahlung", Platzhalter = "GeleisteteRatenzahlung", FieldName = "Person.CustomerVermittlungArbeit.GeleisteteRatenzahlung", IconType = "AB" });
|
|
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Geleistete Einmalzahlung", Platzhalter = "GeleisteteEinmalzahlung", FieldName = "Person.CustomerVermittlungArbeit.GeleisteteEinmalzahlung", IconType = "AB" });
|
|
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Bemerkung", Platzhalter = "Bemerkung", FieldName = "Person.CustomerVermittlungArbeit.Bemerkung", IconType = "AB" });
|
|
|
|
personendaten.Children.Add(vga);
|
|
|
|
|
|
PlatzhalterDC betreuung = new PlatzhalterDC()
|
|
{
|
|
Bezeichnung = "Betreuung",
|
|
Children = new List<PlatzhalterDC>(),
|
|
IconType = "Paste"
|
|
};
|
|
|
|
PlatzhalterDC betreuungsbeginn = new PlatzhalterDC() { Bezeichnung = "Betreuungsbeginn", Platzhalter = "KlBetreuungsbeginn", FieldName = "AssistanceBegin", IconType = "AB" };
|
|
betreuung.Children.Add(betreuungsbeginn);
|
|
PlatzhalterDC betreuungsende = new PlatzhalterDC() { Bezeichnung = "Betreuungsende", Platzhalter = "KlBetreuungsende", FieldName = "TerminationDate", IconType = "AB" };
|
|
betreuung.Children.Add(betreuungsende);
|
|
PlatzhalterDC grundBetreuungsende = new PlatzhalterDC() { Bezeichnung = "Grund Betreuungsbeendung", Platzhalter = "KlGrundBetreuungsbeendung", FieldName = "TerminationReason", IconType = "AB" };
|
|
betreuung.Children.Add(grundBetreuungsende);
|
|
|
|
personendaten.Children.Add(betreuung);
|
|
|
|
PlatzhalterDC behindertenausweis = new PlatzhalterDC()
|
|
{
|
|
Bezeichnung = "Schwerbehindertenausweis",
|
|
Children = new List<PlatzhalterDC>(),
|
|
IconType = "ContactCardWebDisabled"
|
|
};
|
|
|
|
PlatzhalterDC amt = new PlatzhalterDC() { Bezeichnung = "Ausstellendes Amt", Platzhalter = "AusweisAmt", FieldName = "AusstVersAmt", IconType = "AB" };
|
|
behindertenausweis.Children.Add(amt);
|
|
PlatzhalterDC gueltigVon = new PlatzhalterDC() { Bezeichnung = "Gültig von", Platzhalter = "AusweisGueltigVon", FieldName = "AusweisGueltigVon", IconType = "AB" };
|
|
behindertenausweis.Children.Add(gueltigVon);
|
|
PlatzhalterDC gueltigbis = new PlatzhalterDC() { Bezeichnung = "Gültig bis", Platzhalter = "AusweisGueltigBis", FieldName = "AusweisGueltigBis", IconType = "AB" };
|
|
behindertenausweis.Children.Add(gueltigbis);
|
|
PlatzhalterDC ausweisAktenzeichen = new PlatzhalterDC() { Bezeichnung = "Aktenzeichen", Platzhalter = "AusweisAktenzeichen", FieldName = "AusweisAktenzeichen", IconType = "AB" };
|
|
behindertenausweis.Children.Add(ausweisAktenzeichen);
|
|
PlatzhalterDC beiblatt = new PlatzhalterDC() { Bezeichnung = "Beiblattgültigkeit", Platzhalter = "AusweisBeiblatt", FieldName = "BeiblattGueltigBis", IconType = "AB" };
|
|
behindertenausweis.Children.Add(beiblatt);
|
|
PlatzhalterDC gradDerBehinderung = new PlatzhalterDC() { Bezeichnung = "Grad der Behinderung", Platzhalter = "AusweisGradDerBehinderung", FieldName = "GradDerBehinderung", IconType = "AB" };
|
|
behindertenausweis.Children.Add(gradDerBehinderung);
|
|
|
|
betreuung.Children.Add(behindertenausweis);
|
|
|
|
|
|
PlatzhalterDC pflegegrad = new PlatzhalterDC() { Bezeichnung = "Pflegegrad", Platzhalter = "KlPflegegrad", FieldName = "Pflegegrad", IconType = "AB" };
|
|
betreuung.Children.Add(pflegegrad);
|
|
|
|
PlatzhalterDC versicherung = new PlatzhalterDC()
|
|
{
|
|
Bezeichnung = "Versicherungsdaten",
|
|
Children = new List<PlatzhalterDC>(),
|
|
IconType = "OfficeBulidingBlackDisabled"
|
|
};
|
|
|
|
|
|
|
|
PlatzhalterDC krankenkasse = new PlatzhalterDC() { Bezeichnung = "Krankenkasse", Platzhalter = "KlKrankenkasse", IconType = "AB" };
|
|
versicherung.Children.Add(krankenkasse);
|
|
PlatzhalterDC versnummer = new PlatzhalterDC() { Bezeichnung = "Versichertennummer", Platzhalter = "KlVersNummer", IconType = "AB" };
|
|
versicherung.Children.Add(krankenkasse);
|
|
PlatzhalterDC versStatus = new PlatzhalterDC() { Bezeichnung = "Versicherungsstatus", Platzhalter = "KlVersicherungsstatus", IconType = "AB" };
|
|
versicherung.Children.Add(krankenkasse);
|
|
|
|
personendaten.Children.Add(versicherung);
|
|
|
|
PlatzhalterDC wohnung = new PlatzhalterDC()
|
|
{
|
|
Bezeichnung = "Wohnung",
|
|
Children = new List<PlatzhalterDC>(),
|
|
IconType = "OfficeBulidingBlackDisabled"
|
|
};
|
|
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Einzugsdatum", Platzhalter = "WVEinzugsdatum", FieldName = "Person.WohneinheitBelegung.StartDate", IconType = "AB" });
|
|
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Auszugsdatum", Platzhalter = "WVAuszugsdatum", FieldName = "Person.WohneinheitBelegung.EndDate", IconType = "AB" });
|
|
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Einheit", Platzhalter = "WVEinheit", FieldName = "Person.Wohneinheit.Zimmername", IconType = "AB" });
|
|
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Straße", Platzhalter = "WVStrasse", FieldName = "Person.Wohneinheit.Address.Street", IconType = "AB" });
|
|
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "PLZ", Platzhalter = "WVPLZ", FieldName = "Person.Wohneinheit.Address.PostalCode", IconType = "AB" });
|
|
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Ort", Platzhalter = "WVOrt", FieldName = "Person.Wohneinheit.Address.Town", IconType = "AB" });
|
|
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Stockwerk", Platzhalter = "WVStock", FieldName = "Person.Wohneinheit.Stock", IconType = "AB" });
|
|
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Miete", Platzhalter = "WVMiete", FieldName = "Person.Wohneinheit.Miete", IconType = "AB" });
|
|
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Heizung", Platzhalter = "WVHeizung", FieldName = "Person.Wohneinheit.Heizung", IconType = "AB" });
|
|
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Strom", Platzhalter = "WVStrom", FieldName = "Person.Wohneinheit.Strom", IconType = "AB" });
|
|
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Betriebskosten", Platzhalter = "WVBetriebskosten", FieldName = "Person.Wohneinheit.Betriebskosten", IconType = "AB" });
|
|
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Sonstige Kosten", Platzhalter = "WVSonstigeKosten", FieldName = "Person.Wohneinheit.SonstigeKosten", IconType = "AB" });
|
|
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Kaution", Platzhalter = "WVKaution", FieldName = "Person.Wohneinheit.Kaution", IconType = "AB" });
|
|
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Zusatz", Platzhalter = "WVZusatz", FieldName = "Person.Wohneinheit.Zusatznotiz", IconType = "AB" });
|
|
|
|
personendaten.Children.Add(wohnung);
|
|
|
|
PlatzhalterDC sonstiges = new PlatzhalterDC()
|
|
{
|
|
Bezeichnung = "Sonstiges",
|
|
Children = new List<PlatzhalterDC>(),
|
|
IconType = "Add24"
|
|
};
|
|
#region Children Sonstiges
|
|
PlatzhalterDC datum = new PlatzhalterDC() { Bezeichnung = "Tagesdatum", Platzhalter = "Tagesdatum", IconType = "AB" };
|
|
sonstiges.Children.Add(datum);
|
|
#endregion
|
|
|
|
|
|
var em = new EmployeePlaceholderManager();
|
|
liste.AddRange(em.GetPlatzhalter());
|
|
|
|
liste.Add(personendaten);
|
|
//liste.Add(adressdatenOrganisation);
|
|
|
|
liste.Add(sonstiges);
|
|
|
|
return liste;
|
|
}
|
|
|
|
public override Object GetEntityObject(long oid)
|
|
{
|
|
return DAOFactory.GenericDAO.GetByID<Customer>(oid);
|
|
}
|
|
|
|
public override String GetPlaceholderValue(PlatzhalterDC ph, Object obj)
|
|
{
|
|
return GetPlaceholderValueForCustomer(ph, obj as Customer);
|
|
}
|
|
|
|
public String GetPlaceholderValueForCustomer(PlatzhalterDC ph, Customer customer)
|
|
{
|
|
if (customer == null)
|
|
{
|
|
return String.Empty;
|
|
}
|
|
|
|
if (ph.Platzhalter == "MaVorname" ||
|
|
ph.Platzhalter == "MaNachname" ||
|
|
ph.Platzhalter == "MaTelefon" ||
|
|
ph.Platzhalter == "MaFax" ||
|
|
ph.Platzhalter == "MaEmail" ||
|
|
ph.Platzhalter == "MaHandy")
|
|
{
|
|
var em = new EmployeePlaceholderManager();
|
|
return em.GetPlaceholderValueForEmployee(ph, Data.Security.UserRightHelper.GetLoggedInUser().Employee);
|
|
}
|
|
|
|
if (ph.Platzhalter == "KlBriefanrede")
|
|
{
|
|
if (customer.Person.Sex == Sex.Male)
|
|
return "Sehr geehrter Herr";
|
|
else if (customer.Person.Sex == Sex.Female)
|
|
return "Sehr geehrte Frau";
|
|
}
|
|
|
|
if (ph.Platzhalter == "KlAnrede")
|
|
{
|
|
if (customer.Person.Sex == Sex.Male)
|
|
return "Herr";
|
|
else if (customer.Person.Sex == Sex.Female)
|
|
return "Frau";
|
|
}
|
|
|
|
if (ph.Platzhalter == "KlVorname")
|
|
{
|
|
return base.GetPlaceholderValue(ph, customer);
|
|
//return customer.Person.FirstName;
|
|
}
|
|
if (ph.Platzhalter == "KlNachname")
|
|
{
|
|
return customer.Person.LastName;
|
|
}
|
|
|
|
if (ph.Platzhalter == "KlGeburtsdatum")
|
|
{
|
|
return String.Format("{0:dd.MM.yyyy}", customer.Person.DateOfBirth);
|
|
}
|
|
|
|
if (ph.Platzhalter == "KlTelefon")
|
|
{
|
|
foreach (Contact c in customer.Person.Contacts)
|
|
{
|
|
if (c.Type == ContactType.business_Phone)
|
|
{
|
|
return c.Value;
|
|
}
|
|
}
|
|
}
|
|
if (ph.Platzhalter == "KlHandy")
|
|
{
|
|
foreach (Contact c in customer.Person.Contacts)
|
|
{
|
|
if (c.Type == ContactType.business_MobilePhone)
|
|
{
|
|
return c.Value;
|
|
}
|
|
}
|
|
}
|
|
if (ph.Platzhalter == "KlEmail")
|
|
{
|
|
foreach (Contact c in customer.Person.Contacts)
|
|
{
|
|
if (c.Type == ContactType.business_Mail)
|
|
{
|
|
return c.Value;
|
|
}
|
|
}
|
|
}
|
|
if (ph.Platzhalter == "KlFax")
|
|
{
|
|
foreach (Contact c in customer.Person.Contacts)
|
|
{
|
|
if (c.Type == ContactType.business_Fax)
|
|
{
|
|
return c.Value;
|
|
}
|
|
}
|
|
}
|
|
if (ph.Platzhalter == "KlBeruf")
|
|
{
|
|
return customer.Person.Profession;
|
|
}
|
|
|
|
//Adressdaten
|
|
if (customer.Person.Address != null)
|
|
{
|
|
if (ph.Platzhalter == "KlStrasse")
|
|
{
|
|
return customer.Person.Address.Street;
|
|
}
|
|
if (ph.Platzhalter == "KlPLZ")
|
|
{
|
|
return customer.Person.Address.PostalCode;
|
|
}
|
|
if (ph.Platzhalter == "KlOrt")
|
|
{
|
|
return customer.Person.Address.Town;
|
|
}
|
|
}
|
|
|
|
|
|
//Betreuung
|
|
if (ph.Platzhalter == "KlAnsprechpartner")
|
|
{
|
|
|
|
string anrede = (customer.Ansprechpartner.Sex == 0) ? "Herr " : "Frau ";
|
|
return anrede + customer.Ansprechpartner.FirstNameLastName;
|
|
}
|
|
if (ph.Platzhalter == "Kostenstelle")
|
|
{
|
|
return customer.CostCenter;
|
|
}
|
|
|
|
//Sonstiges
|
|
if (ph.Platzhalter == "Tagesdatum")
|
|
{
|
|
return String.Format("{0:dd.MM.yyyy}", DateTime.Now);
|
|
}
|
|
|
|
return String.Empty;
|
|
}
|
|
|
|
}
|
|
}
|