aboutsummaryrefslogtreecommitdiffstats
path: root/mayor-orig/www/include/modules/naplo
diff options
context:
space:
mode:
Diffstat (limited to 'mayor-orig/www/include/modules/naplo')
-rw-r--r--mayor-orig/www/include/modules/naplo/base/tool.php1
-rw-r--r--mayor-orig/www/include/modules/naplo/share/hianyzas.php63
-rw-r--r--mayor-orig/www/include/modules/naplo/share/ora.php15
3 files changed, 79 insertions, 0 deletions
diff --git a/mayor-orig/www/include/modules/naplo/base/tool.php b/mayor-orig/www/include/modules/naplo/base/tool.php
index 39923b9f..8fb6e9e9 100644
--- a/mayor-orig/www/include/modules/naplo/base/tool.php
+++ b/mayor-orig/www/include/modules/naplo/base/tool.php
@@ -553,6 +553,7 @@ function getIgazolasOsszegzo() {
$TOOL['igazolasOsszegzo']['igazolasok'] = getIgazolasSzam($diakId);
$_T = getDiakHianyzasOsszesites(array($diakId),$_TANEV);
$TOOL['igazolasOsszegzo']['hianyzasok'] = $_T[$diakId];
+ $TOOL['kretaIgazolasOsszegzo'] = getKretaIgazolasOsszegzo($diakId);
}
}
diff --git a/mayor-orig/www/include/modules/naplo/share/hianyzas.php b/mayor-orig/www/include/modules/naplo/share/hianyzas.php
index 0ee41fa0..4b3787fa 100644
--- a/mayor-orig/www/include/modules/naplo/share/hianyzas.php
+++ b/mayor-orig/www/include/modules/naplo/share/hianyzas.php
@@ -475,4 +475,67 @@
return $RESULT;
}
+ function getDiakKretaHianyzas($diakId, $SET = array('preprocess'=>'stat','tanev'=>__TANEV, 'igDt'=>null, 'tolDt'=>null)) {
+ $RESULT = false;
+ if (isset($diakId) && is_numeric($diakId))
+ {
+ $tanev = (isset($SET['tanev']) && $SET['tanev']!=__TANEV) ? $SET['tanev'] : __TANEV;
+ $tanevDbNev = tanevDbNev(__INTEZMENY, $tanev);
+
+ $v = array($diakId);
+ $W = '';
+ if (isset($SET['tolDt'])) {
+ $W .= " AND dt>='%s'";
+ $v[] = $SET['tolDt'];
+ }
+ if (isset($SET['igDt'])) {
+ $W .= " AND dt<='%s'";
+ $v[] = $SET['igDt'];
+ }
+
+ $q = "SELECT * FROM `$tanevDbNev`.`hianyzasKreta` WHERE diakId=%u".$W."";
+ $R = db_query($q, array('debug'=>false,'fv'=>'getDiakKretaHianyzas','modul'=>'naplo','result'=>'indexed','values'=>$v));
+ /* ReIndex */
+ if ($SET['preprocess'] == 'stat') {
+ for ($i=0; $i<count($R); $i++) {
+ //if ($R[$i]['dbHianyzas']>0) { // igen, SQL - ben is lehetne összeadni, a továbbfejlesztés miatt van így.
+ $_igazoltStr = $R[$i]['kretaStatusz'] == 'igen' ? 'igazolt':'igazolatlan';
+ $RESULT[$R[$i]['tipus']][$_igazoltStr]['db']++;
+ if ($R[$i]['tipus']=='késés') $RESULT[$R[$i]['tipus']][$_igazoltStr]['perc']+=$R[$i]['perc'];
+ //}
+ }
+ } elseif ($SET['preprocess']=='naptar') {
+ for ($i=0; $i<count($R); $i++) {
+ $RESULT[$R[$i]['diakId']][$R[$i]['dt']][$R[$i]['ora']][] = $R[$i];
+ }
+ } else {
+ $RESULT = $R;
+ }
+ }
+ return $RESULT;
+
+ }
+
+ function kretaIgazolas2mayor($key) { // -- TODO
+ $KRETA2MAYOR= array(
+ 'Szülői igazolás'=>'szülői',
+ 'Orvosi igazolás'=>'orvosi',
+ 'Egyéb'=>'egyéb',
+ 'Iskolai engedély'=>'igazgatói',
+ 'Iskolaérdekű távollét'=>'igazgatói',
+ 'Kikérő' => 'igazgatói',
+ 'Pályaválasztási célú igazolás'=>'pályaválasztás',
+ 'Szolgáltatói igazolás' => 'hatósági',
+ 'Hivatalos távollét' => 'egyéb',
+ 'Táppénz' => 'egyéb');
+ return $KRETA2MAYOR[$key]!='' ? $KRETA2MAYOR[$key] : 'egyéb';
+ }
+
+ function getKretaIgazolasOsszegzo($diakId) { // -- TODO
+ $q = "SELECT tipus, kretaIgazolas, count(distinct dt) AS db, count(*) AS dbBejegyzes FROM hianyzasKreta WHERE diakId=%u AND kretaStatusz='igen' GROUP BY tipus,kretaIgazolas ORDER BY tipus, kretaIgazolas";
+ $v = array($diakId);
+ $R = db_query($q, array('fv'=>'getKretaIgazolasOsszegzo','modul'=>'naplo','result'=>'indexed','values'=>$v));
+ return reindex($R,array(kretaIgazolas,tipus));
+ }
+
?>
diff --git a/mayor-orig/www/include/modules/naplo/share/ora.php b/mayor-orig/www/include/modules/naplo/share/ora.php
index b41bc7b8..cdadeb00 100644
--- a/mayor-orig/www/include/modules/naplo/share/ora.php
+++ b/mayor-orig/www/include/modules/naplo/share/ora.php
@@ -607,4 +607,19 @@
return $R;
}
+ function getDiakOra($diakId,$dt,$ora,$olr_intezmeny = '',$olr_naplo) { // jelenlét mezőt nem vesszük figyelembe!!!
+
+ // diakId->tankor->ora
+
+ $TANKOR = getTankorByDiakId($diakId, __TANEV, array('csakId' => true, 'tolDt' => $dt, 'igDt' => $dt, 'override' => false, 'result'=>'indexed'),$olr_intezmeny); // jelenlét!!!
+ // --TODO!!! minden jelenlét számít, még az is ami nem kötelező :(
+ if (count($TANKOR)>0 ) {
+ $q = "SELECT *,getNev(tankorId,'tankor') AS tankorNev FROM ora WHERE dt='%s' AND ora=%u AND tankorId IN (".implode(',',$TANKOR).")";
+ $v = array($dt,$ora);
+ $R = db_query($q,array('debug'=>false,'fv'=>'getDiakOra','modul'=>'naplo','values'=>$v,'result'=>'indexed'),$olr_naplo);
+ if (count($R)==1) return $R[0];
+ }
+ return false;
+ }
+
?>