From 650b02986b10d7efe6f8cb3352badc10854603fe Mon Sep 17 00:00:00 2001 From: Alexandra Date: Thu, 26 Mar 2026 11:05:07 +0100 Subject: [PATCH] =?UTF-8?q?Queries/Klienten=20mit=20Team,=20Pflegegrad=20u?= =?UTF-8?q?nd=20Leistungskategorie=20der=20Bewilligung.txt=20Queries/Mitar?= =?UTF-8?q?beiter=20mit=20regelm=C3=A4=C3=9Figer=20Wochenarbeitszeit=20und?= =?UTF-8?q?=20Qualifikation.txt=20158500=20-=20f=C3=BCr=20Arche=20Tecklenb?= =?UTF-8?q?urg?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...und Leistungskategorie der Bewilligung.txt | 23 +++++++++++++++++++ ...iger Wochenarbeitszeit und Qualifikation.txt | 18 +++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 Queries/Klienten mit Team, Pflegegrad und Leistungskategorie der Bewilligung.txt create mode 100644 Queries/Mitarbeiter mit regelmäßiger Wochenarbeitszeit und Qualifikation.txt diff --git a/Queries/Klienten mit Team, Pflegegrad und Leistungskategorie der Bewilligung.txt b/Queries/Klienten mit Team, Pflegegrad und Leistungskategorie der Bewilligung.txt new file mode 100644 index 000000000..b8930d2b9 --- /dev/null +++ b/Queries/Klienten mit Team, Pflegegrad und Leistungskategorie der Bewilligung.txt @@ -0,0 +1,23 @@ +-- Bei Arche Tecklenburg 7060431533 (APP3) +-- Teamnamen werden in schön übersetzt +-- und Leistungskategorien, wenn mehrere vorhanden sind werden in eine Spalte geschrieben + +SELECT + p.LastName AS Nachname, + p.FirstName AS Vorname, + p.DateOfBirth AS Geburtsdatum, + GROUP_CONCAT(DISTINCT CASE WHEN t.Name = 'Apfels' THEN 'Apfelbaumallee' WHEN t.Name = 'Camper' THEN 'Hofbauers Kamp' ELSE t.Name END ORDER BY t.Name SEPARATOR ', ') AS Haus, + c.Pflegegrad, + GROUP_CONCAT(CASE WHEN cat.Name LIKE '%LT%' OR cat.Name LIKE '%HBG%' THEN cat.Name END SEPARATOR ', ') AS 'LT/HBG' + -- GROUP_CONCAT(CASE WHEN cat.Name LIKE '%HBG%' THEN cat.Name END SEPARATOR ', ') AS HBG +FROM `person` p +INNER JOIN `customer` c ON p.Oid = c.PersonOid +LEFT JOIN team2customer t2c ON c.Oid = t2c.CustomerOid +LEFT JOIN team t ON t2c.TeamOid = t.Oid +INNER JOIN `supportconcept` sc ON c.Oid = sc.CustomerOid +INNER JOIN `costbearer2supportconcept` cb2sc ON sc.Oid = cb2sc.SupportConceptOid +JOIN `supportconceptapprovalperiod` scap ON cb2sc.Oid = scap.CostBearer2SupportConceptOid +INNER JOIN servicecategory cat ON scap.ServiceCategoryOid = cat.Oid +WHERE c.IsActive = 1 and sc.IsActive = 1 AND scap.Start <= CURDATE() AND (scap.EndDate IS NULL OR scap.EndDate >= CURDATE()) +GROUP BY p.Oid, p.LastName, p.FirstName +ORDER BY t.Name, p.LastName; \ No newline at end of file diff --git a/Queries/Mitarbeiter mit regelmäßiger Wochenarbeitszeit und Qualifikation.txt b/Queries/Mitarbeiter mit regelmäßiger Wochenarbeitszeit und Qualifikation.txt new file mode 100644 index 000000000..bbd5b0ee9 --- /dev/null +++ b/Queries/Mitarbeiter mit regelmäßiger Wochenarbeitszeit und Qualifikation.txt @@ -0,0 +1,18 @@ +-- Bei Arche Tecklenburg 7060431533 (APP3) +-- Qualifikationen, wenn mehrere vorhanden werden die in eine Spalte geschrieben + +SELECT + emp.PersonnelNumber AS Personalnummer, + CONCAT(p.`FirstName`, ' ', p.`LastName`) as Name, + COALESCE(ROUND(con.WeeklyTotalhours, 2), ROUND(con.MonthlyTotalHours * 12 / 52, 2)) as `regelmäßige wö. Arbeitszeit`, + GROUP_CONCAT(vle.Value SEPARATOR ', ') as Qualifikation +FROM `person` p +INNER JOIN `employee` emp ON p.`Oid` = emp.`PersonOid` +LEFT JOIN contract con ON con.Oid = (SELECT c2.Oid FROM contract c2 WHERE c2.EmployeeOid = emp.Oid AND c2.IsActive = 1 + AND c2.EntryDate <= CURDATE() AND (c2.ContractEndDate IS NULL OR c2.ContractEndDate >= CURDATE()) + ORDER BY c2.EntryDate DESC LIMIT 1) +LEFT JOIN valuelistentry2object v2o ON v2o.ObjectOid = emp.Oid AND v2o.ObjectTid = 2 AND v2o.IsActive = 1 +LEFT JOIN valuelistentry vle ON vle.Oid = v2o.ValuelistEntryOid AND vle.Type = 5 AND vle.IsActive = 1 +WHERE emp.IsActive = 1 +GROUP BY emp.Oid, emp.PersonnelNumber, p.FirstName, p.LastName, con.WeeklyTotalhours, con.MonthlyTotalHours +ORDER BY p.Lastname; \ No newline at end of file