From d70d2732bd35c092d87590f309bc3202b265e46e Mon Sep 17 00:00:00 2001 From: kindlm Date: Tue, 8 Mar 2016 10:16:54 +0100 Subject: [PATCH] =?UTF-8?q?Datum=20der=20Einzahlung=20auf=20Zahlungsbest?= =?UTF-8?q?=C3=A4tigung?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In der Übersichtsliste im CIS wird nun das Zahlungsdatum anstatt des Belastungsdatums angezeigt und auf der Zahlungsbestätigung (welche Studierende drucken können) werden alle Auszahlungen zu einer Belastung angedruckt --- cis/private/profile/zahlungen.php | 89 ++++++++++++++++++++----------- include/konto.class.php | 8 ++- 2 files changed, 63 insertions(+), 34 deletions(-) diff --git a/cis/private/profile/zahlungen.php b/cis/private/profile/zahlungen.php index 6a1dc46b0..c1ab84f38 100644 --- a/cis/private/profile/zahlungen.php +++ b/cis/private/profile/zahlungen.php @@ -45,8 +45,13 @@ if($rechte->isBerechtigt('admin')) { $uid = $_GET['uid']; + $getParam = "&uid=" . $uid; } + else + $getParam = ""; } + else + $getParam=''; $datum_obj = new datum(); @@ -56,7 +61,25 @@ '.$p->t('tools/zahlungen').' + + + + '; $studiengang = new studiengang(); @@ -83,22 +106,23 @@ $konto->getBuchungen($benutzer->person_id); if(count($konto->result)>0) { - echo '

'; - echo ''; + echo '

'; + echo ''; echo ' - - - - - - - '; - echo ''; - $i=0; + + + + + + + '; + echo ''; + foreach ($konto->result as $row) { - $i++; - + $i=0; //Zaehler fuer Anzahl Gegenbuchungen + $buchungsnummern=''; + if(!isset($row['parent'])) continue; $betrag = $row['parent']->betrag; @@ -106,49 +130,50 @@ if(isset($row['childs'])) { - foreach ($row['childs'] as $row_child) + foreach ($row['childs'] as $key => $row_child) { $betrag += $row_child->betrag; - $betrag = round($betrag, 2); + $betrag = round($betrag, 2); + $buchungsnummern .= ';'.$row['childs'][$key]->buchungsnr; + $i = $key; //Zaehler auf letzten Gegenbuchungseintrag setzen } } + else + $buchungsnummern = $row['parent']->buchungsnr; if($betrag<0) $style='style="background-color: #FF8888;"'; elseif($betrag>0) $style='style="background-color: #88DD88;"'; else - { - $style='class="liste'.($i%2).'"'; - } + $style=''; + + echo ""; + echo ''; + echo ''; + echo ''; + echo ''; - echo ""; - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; + echo ''; + echo ''; } echo ''; } - echo '
'.$p->t('global/datum').''.$p->t('tools/zahlungstyp').''.$p->t('lvplan/stg').''.$p->t('global/studiensemester').''.$p->t('tools/buchungstext').''.$p->t('tools/betrag').''.$p->t('tools/zahlungsbestaetigung').'
'.$p->t('global/datum').''.$p->t('tools/zahlungstyp').''.$p->t('lvplan/stg').''.$p->t('global/studiensemester').''.$p->t('tools/buchungstext').''.$p->t('tools/betrag').''.$p->t('tools/zahlungsbestaetigung').'
'.date('d.m.Y',$datum_obj->mktime_fromdate(isset($row['childs'][$i])?$row['childs'][$i]->buchungsdatum:$row['parent']->buchungsdatum)).''.$buchungstyp[$row['parent']->buchungstyp_kurzbz].''.$stg_arr[$row['parent']->studiengang_kz].''.$row['parent']->studiensemester_kurzbz.'
'.date('d.m.Y',$datum_obj->mktime_fromdate($row['parent']->buchungsdatum)).''.$buchungstyp[$row['parent']->buchungstyp_kurzbz].''.$stg_arr[$row['parent']->studiengang_kz].''.$row['parent']->studiensemester_kurzbz.''.$row['parent']->buchungstext.''.($betrag<0?'-':($betrag>0?'+':'')).sprintf('%.2f',abs($row['parent']->betrag)).' €'; + echo ''.$row['parent']->buchungstext.''.($betrag<0?'-':($betrag>0?'+':'')).sprintf('%.2f',abs($row['parent']->betrag)).' €'; if($betrag==0 && $row['parent']->betrag<=0) - echo ''.$p->t('tools/bestaetigungDrucken').''; + echo ''.$p->t('tools/bestaetigungDrucken').''; elseif($row['parent']->betrag>0) { //Auszahlung } else - { { echo ''.$p->t('tools/offen').' ('.sprintf('%.2f',$betrag*-1).' €)'; - } + echo '
'; + echo ''; } else { diff --git a/include/konto.class.php b/include/konto.class.php index 26cae748b..396b7aa31 100644 --- a/include/konto.class.php +++ b/include/konto.class.php @@ -453,8 +453,12 @@ class konto extends basis_db */ public function getDifferenz($buchungsnr) { - $qry = "SELECT sum(betrag) as differenz FROM public.tbl_konto - WHERE buchungsnr=".$this->db_add_param($buchungsnr, FHC_INTEGER)." OR buchungsnr_verweis=".$this->db_add_param($buchungsnr, FHC_INTEGER); + $qry = "SELECT + sum(betrag) as differenz FROM public.tbl_konto + WHERE + (buchungsnr=".$this->db_add_param($buchungsnr, FHC_INTEGER)." OR buchungsnr_verweis=".$this->db_add_param($buchungsnr, FHC_INTEGER).") + OR + (buchungsnr=(SELECT buchungsnr_verweis FROM public.tbl_konto WHERE buchungsnr=".$this->db_add_param($buchungsnr, FHC_INTEGER).") OR buchungsnr_verweis=(SELECT buchungsnr_verweis FROM public.tbl_konto WHERE buchungsnr=".$this->db_add_param($buchungsnr, FHC_INTEGER)."))"; if($this->db_query($qry)) {