From cdea8caa5617f0cb77bcbc9803759abd2df50644 Mon Sep 17 00:00:00 2001 From: Niklas Olmes Date: Fri, 24 Apr 2026 19:30:00 +0200 Subject: stipcrm --- donation.php | 206 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 206 insertions(+) create mode 100644 donation.php (limited to 'donation.php') diff --git a/donation.php b/donation.php new file mode 100644 index 0000000..dd5a29e --- /dev/null +++ b/donation.php @@ -0,0 +1,206 @@ + + 0, FPerson.Anrede, Personen.Anrede) AS Anrede, + IF(Förderer.zuwendungen > 0, FPerson.Ansprache, Personen.Ansprache) AS Ansprache, + IF(Förderer.zuwendungen > 0, FPerson.Vorname, Personen.Vorname) AS Vorname, + IF(Förderer.zuwendungen > 0, FPerson.Nachname, Personen.Nachname) AS Nachname, + IF(Förderer.zuwendungen > 0, FPerson.Email, Personen.Email) AS Email, + Förderer.zahlungsanmerkung AS Zahlungsanmerkung, + + SuperSpende.Betrag AS SupBetrag, + DATE(SuperSpende.Geldeingang) AS SupGeldeingang, + + SuperSpende.Person AS SupPerson, + CONCAT(SuperSpendePerson.Nachname, ', ', SuperSpendePerson.Vorname) AS SupPersonName, + + SuperSpende.Organisation AS SupOrga, + SuperSpendeOrga.Name AS SupOrgaName, + + (SuperSpende.Betrag - (SELECT SUM(SumSpende.Betrag) AS BetrUsed FROM Spenden AS SumSpende WHERE SumSpende.SuperID = Spenden.SuperID)) AS SupUnused + +FROM Spenden + +LEFT JOIN Personen ON Spenden.Person = Personen.ID +LEFT JOIN Organisationen ON Spenden.Organisation = Organisationen.ID +LEFT JOIN Förderer ON Förderer.Organisation = Organisationen.ID +LEFT JOIN Spendenarten ON Spenden.Förderart = Spendenarten.ID +LEFT JOIN Personen AS APerson ON Spenden.`Spendenquittung Person` = APerson.ID +LEFT JOIN Personen AS FPerson ON Förderer.zuwendungen = FPerson.ID + +LEFT JOIN Spenden AS SuperSpende ON Spenden.SuperID = SuperSpende.ID +LEFT JOIN Personen AS SuperSpendePerson ON SuperSpende.Person = SuperSpendePerson.ID +LEFT JOIN Organisationen AS SuperSpendeOrga ON SuperSpende.Organisation = SuperSpendeOrga.ID +"; + + $email_sql = $sql . " WHERE Spenden.ID IN "; + $sql .= "WHERE Spenden.ID=?"; + $stmt = $mysqli->prepare($sql); + $stmt->bind_param('i', $donationID); + $stmt->execute(); + $r = $stmt->get_result(); + $l = $r->fetch_object(); + $persID = $l->PersID; + $orgaID = $l->OrgaID; + + $_title = 'Spende (ID ' . $donationID . ')'; + include_once __DIR__ . "/header.php"; + + $pdf_sql = " +SELECT + Spenden.ID AS SpendenID, + Person AS PersID, + CONCAT ( + IF(Spenden.Organisation > 0, CONCAT(Organisationen.ID, 'orga', '-'), ''), + IF(Förderer.zuwendungen > 0, CONCAT(FPerson.ID, 'person', '-'), ''), + IF(Spenden.Person > 0, CONCAT(Spenden.Person, 'person', '-'), ''), + Spenden.ID, 'donation' + ) AS uid, + CONCAT(Personen.Nachname, ', ', Personen.Vorname) AS Name, + Spenden.Organisation AS OrgaID, + Organisationen.Name AS Organisation, + Kommentar, + Betrag, + DATE(Geldeingang) AS Geldeingang, + Förderjahr, + Spendenarten.Name AS Spendenart, + `Spendenquittung Person` AS QuittPersID, + CONCAT(APerson.Nachname, ', ', APerson.Vorname) AS `Spendenquittung Person`, + IF(Förderer.zuwendungen > 0, FPerson.Anrede, Personen.Anrede) AS Anrede, + IF(Förderer.zuwendungen > 0, FPerson.Ansprache, Personen.Ansprache) AS Ansprache, + IF(Förderer.zuwendungen > 0, FPerson.Vorname, Personen.Vorname) AS Vorname, + IF(Förderer.zuwendungen > 0, FPerson.Nachname, Personen.Nachname) AS Nachname, + IF(Förderer.zuwendungen > 0, FPerson.Email, Personen.Email) AS Email, + IF(Spenden.Organisation > 0, Organisationen.strasse, Personen.Straße) AS Strasse, + IF(Spenden.Organisation > 0, Organisationen.plz, Personen.PLZ) AS PLZ, + IF(Spenden.Organisation > 0, Organisationen.ort, Personen.Ort) AS Ort, + Förderer.zahlungsanmerkung AS Zahlungsanmerkung + +FROM Spenden + +LEFT JOIN Personen ON Spenden.Person = Personen.ID +LEFT JOIN Organisationen ON Spenden.Organisation = Organisationen.ID +LEFT JOIN Förderer ON Förderer.Organisation = Organisationen.ID +LEFT JOIN Spendenarten ON Spenden.Förderart = Spendenarten.ID +LEFT JOIN Personen AS APerson ON Spenden.`Spendenquittung Person` = APerson.ID +LEFT JOIN Personen AS FPerson ON Förderer.zuwendungen = FPerson.ID +"; + $pdf_sql .= " WHERE Spenden.ID IN "; + + $id = "donview"; + include __DIR__ . '/autoemail.php'; + include __DIR__ . '/autopdf.php'; +?> + +

+ +  +SuperID) { ?> +  + + +prepare($sql); + $stmt->bind_param('i', $orgaID); + $stmt->bind_result($id, $nachname, $vorname); + $stmt->execute(); + $persXorga = []; + while ($stmt->fetch()) { + $persXorga[$id] = $nachname . ", " . $vorname; + } + $stmt->reset(); + + if ($l->SuperID) { + $id = "subdonation"; + $entrytable = "Spenden"; + $def = [ + "Aufteilung der zugrundeliegenden Super-Spende", + [6, 'Betrag', '_VertrID', '=4contract|contractsall~an Vertrag'], + [1, 'Kommentar'], + "Zugrundliegende Super-Spende", + [5, '_SuperID~SuperSpendenID', '_SupBetrag~Betrag', '_SupGeldeingang#isodate~Geldeingang', '_=2SupUnused~nicht aufgeteilter Betrag'], + "Spender", + [10, '_SupPerson~PersID', '_=9SupPersonName~Name'], + [10, '_SupOrga~OrgaID', '_=9SupOrgaName~Organisation'], + ]; + } else { + $id = "donation"; + $entrytable = "Spenden"; + $def = [ + "Allgemein", + [5, 'Betrag', 'Geldeingang#isodate', 'Förderjahr', '_Spendenart'], + [1, 'Kommentar'], + [5, '_VertrID', '=4contract|contractsall~Vertrag'], + "Spender", + [10, '_PersID', '=2Person#search_pers_id~Person setzen', '_=5Name'], + [10, '_OrgaID', '=5Organisation|organisationen', '_=4Zahlungsanmerkung'], + ]; + $links = [ + 'QuittPersID' => '/db/person', + ]; + } + + include __DIR__ . '/autoform.php'; + $stmt->reset(); +})(); + +(function () use ($donationID) { + $globstring = "{*-" . $donationID . "donation*," . $donationID . "donation*}_"; + require_once __DIR__ . "/doc.php"; + })(); + +include_once __DIR__ . '/donationsXdonation.php'; + +include_once __DIR__ . '/persXorga.php'; + +include_once __DIR__ . '/footer.php'; -- cgit v1.3.1