MH: Haus Dülken Stammblatt

This commit is contained in:
2023-09-20 13:53:28 +02:00
parent 546c505845
commit 34042cd8ef

View File

@@ -55,6 +55,7 @@ namespace BeWo.HPHBersenbrueck
{
if (pRO.EnvironmentPersons != null && pRO.EnvironmentPersons.Count > 0)
{
var hauptbetreuer = pRO.EnvironmentPersons.FirstOrDefault(p => p.RelationRole.TypeDescription.Trim() == "Gesetzlicher Vertreter");
if (hauptbetreuer != null)
{
@@ -65,64 +66,85 @@ namespace BeWo.HPHBersenbrueck
lblBetreuerRolle.Text = hauptbetreuer.RelationRole.DisplayName;
lblBetreuerName.Text = hauptbetreuer.Person.FullName;
lblBetreuerStraße.Text = person.Address.Street;
lblBetreuerPlzOrt.Text = person.Address.PostalCode + " " + person.Address.Town;
lblBetreuerStraße.Text = person.Address != null && person.Address.Street != null ? person.Address.Street : "-";
lblBetreuerPlzOrt.Text = person.Address != null && person.Address.PostalCode != null && person.Address.Town != null ? person.Address.PostalCode + " " + person.Address.Town : "-";
lblBetreuerTelefon.Text = phone != null ? phone.Value : "-";
lblBetreuerHandy.Text = mobile != null ? mobile.Value : "-";
}
// Hier zwei Angehörige holen, die NICHT Gesetzlicher Vertreter, Allgemeinmediziner und Arzt sind. 2. Angehöriger zustätzl. != erster AngehörigerB
// Hier zwei Angehörige holen, die NICHT Gesetzlicher Vertreter und Arzt sind. 2. Angehöriger zustätzl. != erster Angehöriger
List<string> arztrollen = HoleListeMitSpeziellenArztrollen();
var angehoeriger1 = pRO.EnvironmentPersons.FirstOrDefault(p => !p.RelationRole.TypeDescription.ToLower().Contains("gesetzlicher vertreter")
&& !p.RelationRole.DisplayName.ToLower().Contains("allgemeinmediziner") && !p.RelationRole.DisplayName.ToLower().Contains("arzt"));
&& !p.RelationRole.DisplayName.ToLower().Contains("allgemeinmediziner") && !p.RelationRole.DisplayName.ToLower().Contains("hausarzt") && !arztrollen.Contains(p.RelationRole.DisplayName.ToLower()));
if (angehoeriger1 != null)
{
lblAngehoeriger1Verhaeltnis.Text = angehoeriger1.RelationRole.DisplayName;
lblAngehoeriger1Name.Text = angehoeriger1.Person.FullName;
lblAngehoeriger1Straße.Text = angehoeriger1.Person.Street;
lblAngehoeriger1PlzOrt.Text = angehoeriger1.Person.PostalCode + " " + angehoeriger1.Person.Town;
lblAngehoeriger1Straße.Text = !angehoeriger1.Person.Street.IsNullOrEmpty() ? angehoeriger1.Person.Street : "-";
lblAngehoeriger1PlzOrt.Text = !angehoeriger1.Person.PostalCode.IsNullOrEmpty() && !angehoeriger1.Person.Town.IsNullOrEmpty() ? angehoeriger1.Person.PostalCode + " " + angehoeriger1.Person.Town : "-";
lblAngehoeriger1Telefon.Text = !angehoeriger1.Person.Communication1.IsNullOrEmpty() ? angehoeriger1.Person.Communication1 : "-";
lblAngehoeriger1Handy.Text = !angehoeriger1.Person.Communication2.IsNullOrEmpty() ? angehoeriger1.Person.Communication2 : "-";
var angehoeriger2 = pRO.EnvironmentPersons.FirstOrDefault(p => !p.RelationRole.TypeDescription.ToLower().Contains("gesetzlicher vertreter")
&& !p.RelationRole.DisplayName.ToLower().Contains("allgemeinmediziner") && !p.RelationRole.DisplayName.ToLower().Contains("arzt") && p.Customer2PersonOid != angehoeriger1.Customer2PersonOid);
&& !p.RelationRole.DisplayName.ToLower().Contains("allgemeinmediziner") && !p.RelationRole.DisplayName.ToLower().Contains("hausarzt") && !arztrollen.Contains(p.RelationRole.DisplayName.ToLower()) && p.Customer2PersonOid != angehoeriger1.Customer2PersonOid);
if (angehoeriger2 != null)
{
var p2 = pRO.EnvironmentPersons[1];
lblAngehoeriger2Verhaeltnis.Text = p2.RelationRole.DisplayName;
lblAngehoeriger2Name.Text = p2.Person.FullName;
lblAngehoeriger2Straße.Text = p2.Person.Street;
lblAngehoeriger2PlzOrt.Text = p2.Person.PostalCode + " " + p2.Person.Town;
lblAngehoeriger2Telefon.Text = !p2.Person.Communication1.IsNullOrEmpty() ? p2.Person.Communication1 : "-";
lblAngehoeriger2Handy.Text = !p2.Person.Communication2.IsNullOrEmpty() ? p2.Person.Communication2 : "-";
lblAngehoeriger2Verhaeltnis.Text = angehoeriger2.RelationRole.DisplayName;
lblAngehoeriger2Name.Text = angehoeriger2.Person.FullName;
lblAngehoeriger2Straße.Text = !angehoeriger2.Person.Street.IsNullOrEmpty() ? angehoeriger2.Person.Street : "-";
lblAngehoeriger2PlzOrt.Text = !angehoeriger2.Person.PostalCode.IsNullOrEmpty() && !angehoeriger2.Person.Town.IsNullOrEmpty() ? angehoeriger2.Person.PostalCode + " " + angehoeriger2.Person.Town : "-";
lblAngehoeriger2Telefon.Text = !angehoeriger2.Person.Communication1.IsNullOrEmpty() ? angehoeriger2.Person.Communication1 : "-";
lblAngehoeriger2Handy.Text = !angehoeriger2.Person.Communication2.IsNullOrEmpty() ? angehoeriger2.Person.Communication2 : "-";
}
}
List<CustomerPersonRelationDC> c2pList = new List<CustomerPersonRelationDC>();
c2pList.AddRange(pRO.EnvironmentPersons.Where(p => p.RelationRole.DisplayName.ToLower() == "allgemeinmediziner" || p.RelationRole.DisplayName.ToLower().Contains("arzt")));
//var allgmemeinmediziner = pRO.EnvironmentPersons.FirstOrDefault(p => p.RelationRole.DisplayName.ToLower() == "allgemeinmediziner");
if (c2pList.Count >= 1)
// Das erste Arztfeld ist IMMER Allgemeinmediziner oder Hausarzt. Wenn es den nicht gibt, bleibt es leer
var allgmemeinmediziner = pRO.EnvironmentPersons.FirstOrDefault(p => p.RelationRole.DisplayName.ToLower().Contains("allgemeinmediziner") || p.RelationRole.DisplayName.ToLower().Contains("hausarzt"));
if (allgmemeinmediziner != null)
{
lblAerztlVersorgung1Verhaeltnis.Text = c2pList[0].RelationRole.DisplayName;
lblAerztlVersorgung1Name.Text = c2pList[0].Person.FullName;
lblAerztlVersorgung1Straße.Text = c2pList[0].Person.Street;
lblAerztlVersorgung1PlzOrt.Text = c2pList[0].Person.PostalCode + " " + c2pList[0].Person.Town;
lblAerztlVersorgung1Telefon.Text = c2pList[0].Person.Communication1 != null ? c2pList[0].Person.Communication1 : "-";
lblAerztlVersorgung1Verhaeltnis.Text = allgmemeinmediziner.RelationRole.DisplayName;
lblAerztlVersorgung1Name.Text = allgmemeinmediziner.Person.FullName;
lblAerztlVersorgung1Straße.Text = allgmemeinmediziner.Person.Street;
lblAerztlVersorgung1PlzOrt.Text = allgmemeinmediziner.Person.PostalCode + " " + allgmemeinmediziner.Person.Town;
lblAerztlVersorgung1Telefon.Text = allgmemeinmediziner.Person.Communication1 != null ? allgmemeinmediziner.Person.Communication1 : "-";
}
//var arzt = pRO.EnvironmentPersons.FirstOrDefault(p => p.RelationRole.DisplayName.ToLower().Contains("arzt"));
if (c2pList.Count >= 1)
// Das zweite Arztfeld soll ein Arzt sein, dessen Rolle einen Begriff aus der Liste "arztrollen" enthält und nicht Hausarzt ist
var arzt = pRO.EnvironmentPersons.FirstOrDefault(p => !p.RelationRole.DisplayName.ToLower().Contains("hausarzt") && arztrollen.Contains(p.RelationRole.DisplayName.ToLower()));
if (arzt != null)
{
lblAerztlVersorgung2Verhaeltnis.Text = c2pList[1].RelationRole.DisplayName;
lblAerztlVersorgung2Name.Text = c2pList[1].Person.FullName;
lblAerztlVersorgung2Straße.Text = c2pList[1].Person.Street;
lblAerztlVersorgung2PlzOrt.Text = c2pList[1].Person.PostalCode + " " + c2pList[1].Person.Town;
lblAerztlVersorgung2Telefon.Text = c2pList[1].Person.Communication1 != null ? c2pList[1].Person.Communication1 : "-";
lblAerztlVersorgung2Verhaeltnis.Text = arzt.RelationRole.DisplayName;
lblAerztlVersorgung2Name.Text = arzt.Person.FullName;
lblAerztlVersorgung2Straße.Text = arzt.Person.Street;
lblAerztlVersorgung2PlzOrt.Text = arzt.Person.PostalCode + " " + arzt.Person.Town;
lblAerztlVersorgung2Telefon.Text = arzt.Person.Communication1 != null ? arzt.Person.Communication1 : "-";
}
}
//if (pRO.Customer.AssistanceBegin.HasValue)
// lblAufnahmeAm.Text = pRO.Customer.AssistanceBegin.Value.Date.ToString();
}
// Allgemeinmediziner oder Hausarzt sind IMMER im ersten Arztfeld. Daher werden die nicht überprüft.
private List<string> HoleListeMitSpeziellenArztrollen()
{
List<string> rollen = new List<string>();
// alle lowercase zur einfacheren Überprüfung
rollen.Add("arzt");
rollen.Add("psychiater");
rollen.Add("drogen- und suchtberatung");
rollen.Add("internist");
rollen.Add("kardiologe");
rollen.Add("nephrologe");
rollen.Add("neurologe");
rollen.Add("orthopäde");
rollen.Add("psychotherapeut");
rollen.Add("sexualtherapeut");
rollen.Add("urologe");
return rollen;
}
private void SetSupportConceptValue(CustomerDataRO pRO)
{
var allSCs = MapperFactory.SupportConceptDC_SupportConcept.MapToNewDCs(DAOFactory.SearchDAO.FindSupportConcept(pRO.FirstName, pRO.LastName, pRO.ReferenceNumber,