From c76a004b0135786f2742283f8d5f917106f58bd8 Mon Sep 17 00:00:00 2001 From: M.Gergo Date: Fri, 8 Mar 2019 20:51:30 +0100 Subject: Rev: 4455 --- .../naplo/admin/kretaHianyzasImport-pre.php | 105 +++++++++++++++++++++ .../private/naplo/admin/kretaHianyzasImport.php | 9 ++ .../www/policy/private/naplo/hianyzas/diak-pre.php | 1 + .../www/policy/private/naplo/hianyzas/nap-pre.php | 1 + .../www/policy/private/naplo/hianyzas/ora-pre.php | 1 + .../policy/private/naplo/hianyzas/osztaly-pre.php | 12 +-- .../private/naplo/orarend/szabadTerem-pre.php | 10 +- 7 files changed, 130 insertions(+), 9 deletions(-) create mode 100644 mayor-orig/www/policy/private/naplo/admin/kretaHianyzasImport-pre.php create mode 100644 mayor-orig/www/policy/private/naplo/admin/kretaHianyzasImport.php (limited to 'mayor-orig/www/policy/private/naplo') diff --git a/mayor-orig/www/policy/private/naplo/admin/kretaHianyzasImport-pre.php b/mayor-orig/www/policy/private/naplo/admin/kretaHianyzasImport-pre.php new file mode 100644 index 00000000..8f4cb909 --- /dev/null +++ b/mayor-orig/www/policy/private/naplo/admin/kretaHianyzasImport-pre.php @@ -0,0 +1,105 @@ + 'helyettesítés', + 'Szakszerű felügyelet' => 'helyettesítés', + 'Óraösszevonás' => 'összevonás', + 'Nem szakszerű helyettesítés (felügyelet)' => 'felügyelet' + ); + +//$KRETA2MAYOR['tanar'] = reindex(getTanarok(array('összes'=>true,'extraAttrs'=>'kretaNev')),array('kretaNev')); +//dump($KRETA2MAYOR['tanar']); + + $lr_intezmeny = db_connect('naplo_intezmeny'); + $lr_naplo = db_connect('naplo'); + + $q = "select getNev(diakId,'diak') COLLATE utf8_hungarian_ci AS diakNev,diakId,statusz,oId from ".__INTEZMENYDBNEV.".diak WHERE statusz!='jogviszonya lezárva' ORDER BY diakNev"; + $v = array(); + $DIAKNEV2diakId = db_query($q, array('debug'=>false,'modul'=>'naplo','values'=>$v,'result'=>'multiassoc','keyfield'=>'diakNev'),$lr_naplo); + $file = fopen("/tmp/hianyzasKreta.tsv","r"); + if ($file!==false) { + $q = "TRUNCATE TABLE hianyzasKreta"; + db_query($q, array('fv'=>'kretaHianyzasImport'),$lr_naplo) or die(); + } + while(! feof($file)) { + $line = chop(trim(fgets($file))); + $record = explode("\t",$line); +// dump($record); +/* +kretaHianyzasImportarray (size=10) + 0 => string 'Bacsó Dániel József' (length=22) + 1 => string '72437828706' (length=11) + 2 => string '2018-12-17' (length=10) + 3 => string '2' (length=1) + 4 => string '08.A' (length=4) + 5 => string 'ének-zene' (length=10) + 6 => string 'Hiányzás' (length=10) + 7 => string '' (length=0) + 8 => string 'Igen' (length=4) + 9 => string 'Orvosi igazolás' (length=16) +*/ + $D = array(); + $D['diakNev'] = $record[0]; + if (count($DIAKNEV2diakId[$D['diakNev']])!=1) { + $_SESSION['alert'][] = 'info:dup'.serialize($D['diakNev']).':'.serialize($DIAKNEV2diakId[$D['diakNev']]); + $ADAT['hiba'][] = $D; + continue;; + } else { + $D['diakId'] = $DIAKNEV2diakId[$D['diakNev']][0]['diakId']; + $D['oId'] = $DIAKNEV2diakId[$D['diakNev']][0]['oId']; + } + $_tmp = explode('/',$record[1]); + $D['dt'] = $_tmp[2] .'-'. $_tmp[0] .'-'. $_tmp[1]; + $D['ora'] = intval($record[2]); + $D['kretaTankorNev'] = $record[3]; + $D['kretaTantargyNev'] = $record[4]; + $D['tipus'] = kisbetus($record[5]); + $D['perc'] = ($record[6]<=0) ? '':intval($record[6]); + $D['kretaStatusz'] = $record[7]=='Igen' ? 'igen':'nem'; + $D['status'] = $record[7]=='Igen' ? 'igazolt':'igazolatlan'; + $D['kretaIgazolas'] = $record[8]; +// Itt kitalálható lenne pár dolog, egyelőre hagyjuk + $D['oraAdat'] = getDiakOra($D['diakId'],$D['dt'],$D['ora'],$lr_intezmeny,$lr_naplo); + if ($D['oraAdat']['oraId']!='') { + // $ADAT['betoltendo'][] = ($D); +// $ADAT['KRETA2MAYOR']['targyNev'][$D['kretaTankorNev'].':'.$D['kretaTantargyNev']][] = $D['oraAdat']['tankorNev']; + $D['tankorId'] = $D['oraAdat']['tankorId']; + } else $ADAT['hibaCounter']++; + + $q = "INSERT INTO hianyzasKreta (diakId,tankorId,kretaDiakNev,oId,dt,ora,kretaTankorNev,kretaTantargyNev,tipus,perc,kretaStatusz,statusz,kretaIgazolas) + VALUES (%u, IF(%u=0,NULL,%u),'%s','%s','%s',%u,'%s','%s','%s',%u,'%s','%s','%s')"; + $v = array($D['diakId'], + $D['tankorId'], + $D['tankorId'], + $D['kretaDiakNev'], + $D['oId'], + $D['dt'], + $D['ora'], + $D['kretaTankorNev'], + $D['kretaTargyNev'], + $D['tipus'], + $D['perc'], + $D['kretaStatusz'], + $D['statusz'], + $D['kretaIgazolas']); + db_query($q, array('fv'=>'kretaHianyzasImport','values'=>$v),$lr_naplo); + } + + fclose($file); + db_close($lr); + +?> \ No newline at end of file diff --git a/mayor-orig/www/policy/private/naplo/admin/kretaHianyzasImport.php b/mayor-orig/www/policy/private/naplo/admin/kretaHianyzasImport.php new file mode 100644 index 00000000..9d55012d --- /dev/null +++ b/mayor-orig/www/policy/private/naplo/admin/kretaHianyzasImport.php @@ -0,0 +1,9 @@ + \ No newline at end of file diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/diak-pre.php b/mayor-orig/www/policy/private/naplo/hianyzas/diak-pre.php index ce3bec70..d131db63 100644 --- a/mayor-orig/www/policy/private/naplo/hianyzas/diak-pre.php +++ b/mayor-orig/www/policy/private/naplo/hianyzas/diak-pre.php @@ -183,6 +183,7 @@ if (isset($diakId) && $diakId != '') { $ADAT['hianyzasok'] = getHianyzasByDt(array($diakId),$_NAPOK); $ADAT['diak']['kepzes'] = getKepzesByDiakId($diakId, array('result'=>'assoc','dt'=>$_NAPOK[count($_NAPOK)-1])); // dátum nélkül ez a korábbi összes képzését adná. Vegyük a hónap utolsó napján... + $ADAT['hianyzasKreta'] = getDiakKretaHianyzas($diakId,array('preprocess'=>'naptar')); } // ha van nem üres diakId if (!__DIAK) { diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/nap-pre.php b/mayor-orig/www/policy/private/naplo/hianyzas/nap-pre.php index 7eb2592a..a1ea6261 100644 --- a/mayor-orig/www/policy/private/naplo/hianyzas/nap-pre.php +++ b/mayor-orig/www/policy/private/naplo/hianyzas/nap-pre.php @@ -143,6 +143,7 @@ } $_diakJogviszony=getDiakJogviszonyByDts( array($ADAT['diakId']), array($ADAT['dt']) ); $ADAT['diakJogviszony'] = $_diakJogviszony[$ADAT['diakId']][$ADAT['dt']]['statusz']; + $ADAT['hianyzasKreta'] = getDiakKretaHianyzas($ADAT['diakId'],array('preprocess'=>'naptar','tolDt'=>$ADAT['dt'],'igDt'=>$ADAT['dt'])); // tanarSelect tul képpen csak readnly $TOOL['datumSelect'] = array( 'tipus' => 'sor', 'post' => array('diakId'), diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/ora-pre.php b/mayor-orig/www/policy/private/naplo/hianyzas/ora-pre.php index 9a472287..3ef6a8ee 100644 --- a/mayor-orig/www/policy/private/naplo/hianyzas/ora-pre.php +++ b/mayor-orig/www/policy/private/naplo/hianyzas/ora-pre.php @@ -68,6 +68,7 @@ for ($i=0; $itrue,'tolDt'=>$tolDt, 'igDt'=>$igDt, 'nap'=>$nap, 'ora'=>$ora)); + $ADAT['hianyzasKreta'][$_diakId] = array_pop(getDiakKretaHianyzas($_diakId,array('preprocess'=>'naptar', 'tolDt'=>$tolDt, 'igDt'=>$igDt))); } $ADAT['diakJogviszony'] = getDiakJogviszonyByDts($ADAT['nevsor']['idk'], array($ORAADAT['dt'])); //dump($ADAT['nevsor']['idk']); diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/osztaly-pre.php b/mayor-orig/www/policy/private/naplo/hianyzas/osztaly-pre.php index 9e7e9418..d6230305 100644 --- a/mayor-orig/www/policy/private/naplo/hianyzas/osztaly-pre.php +++ b/mayor-orig/www/policy/private/naplo/hianyzas/osztaly-pre.php @@ -87,17 +87,16 @@ // -------------------------------- //$osztalyAdat = getOsztalyAdat($osztalyId); - if ($tolDt != $_TANEV['kezdesDt'] || $igDt != date('Y-m-d')) { - $OPT = array('hozott','lezárt','igazolható','összes'); + $OPT = array('hozott','lezárt','igazolható','kreta','összes'); $View = readVariable($_POST['View'], 'enum', array('összes'), $OPT); } else { - $OPT = array('hozott','lezárt','igazolható','összes','fegyelmi utáni','fegyelmi fokozatok'); + $OPT = array('hozott','lezárt','igazolható','kreta','összes','fegyelmi utáni','fegyelmi fokozatok'); $View = readVariable($_POST['View'], 'enum', ($skin != 'pda')?array('összes','fegyelmi fokozatok'):array('összes'), $OPT); } - -// elseif ($skin != 'pda') $View = array('összes','fegyelmi fokozatok'); -// else $View = array('összes'); + $q = "SELECT count(*) AS db FROM hianyzasKreta"; + $hkr = db_query($q, array('modul'=>'naplo','result'=>'value')); + if ($hkr>0) $View[] = 'kreta'; if ($nevsor=='aktualis') { $ADAT['stat'] = getHianyzok($ADAT,array('dt'=>date("Y-m-d"))); @@ -108,6 +107,7 @@ foreach($ADAT['stat']['névsor'] as $_diakId => $_D) { $ADAT['hozottHianyzas'][$_diakId] = getDiakHozottHianyzas($_diakId); + $ADAT['hianyzasKreta'][$_diakId] = getDiakKretaHianyzas($_diakId,array('preprocess'=>'stat','tolDt'=>$tolDt,'igDt'=>$igDt)); } } // isset(osztalyId) diff --git a/mayor-orig/www/policy/private/naplo/orarend/szabadTerem-pre.php b/mayor-orig/www/policy/private/naplo/orarend/szabadTerem-pre.php index a5b8b2b5..404c18b1 100644 --- a/mayor-orig/www/policy/private/naplo/orarend/szabadTerem-pre.php +++ b/mayor-orig/www/policy/private/naplo/orarend/szabadTerem-pre.php @@ -9,14 +9,17 @@ $tolDt = readVariable($_POST['tolDt'],'date',date('Y-m-d', strtotime('last Monday', strtotime('+1 days')))); $igDt = date('Y-m-d', strtotime('next Friday',strtotime($tolDt))); + $forras = readVariable($_POST['forras'],'enum','orarendiOra',array('orarendiOra','ora')); + $ADAT['telephelyek'] = getTelephelyek(); $telephelyIds = array(); + foreach ($ADAT['telephelyek'] as $tAdat) $telephelyIds[] = $tAdat['telephelyId']; - $telephelyId = readVariable($_POST['telephelyId'], 'id', null, $telephelyIds); + $telephelyId = readVariable($_POST['telephelyId'], 'id', (defined('__TELEPHELYID')===true?__TELEPHELYID:null), $telephelyIds); $ADAT['termek'] = getTermek(array('result' => 'assoc')); $ADAT['teremIdk'] = getTermek(array('result' => 'idonly', 'tipus' => array('tanterem','szaktanterem','osztályterem','labor','gépterem','tornaterem','tornaszoba','fejlesztőszoba','tanműhely','előadó','könyvtár','díszterem','templom','egyéb'), 'telephelyId' => $telephelyId)); - $ADAT['szabadTermek'] = getSzabadTermekByDtInterval($tolDt, $igDt, $ADAT['teremIdk']); - $ADAT['toPrint'] = 'Órarendi szabad termek'; + $ADAT['szabadTermek'] = getSzabadTermekByDtInterval($tolDt, $igDt, $ADAT['teremIdk'], $forras); + $ADAT['toPrint'] = 'Szabad termek ('.$forras.')'; $TOOL['datumSelect'] = array( 'tipus'=>'cella', 'post'=>array('tanarId','osztalyId','tankorId','mkId','diakId'), @@ -27,5 +30,6 @@ ); $TOOL['telephelySelect'] = array('tipus'=>'cella', 'paramName'=>'telephelyId', 'telephelyek'=>$ADAT['telephelyek'], 'post'=>array('tolDt')); + $TOOL['forrasSelect'] = array('tipus'=>'cella', 'paramName'=>'forras', 'paramValue'=>$forras, 'adatok'=>array('ora'=>'haladási napló','orarendiOra'=>'órarend'), 'post'=>array('tolDt','telephelyId')); ?> -- cgit v1.2.3