Schulsicht

This commit is contained in:
2018-04-04 17:35:13 +02:00
parent 1e9a4e65c5
commit 4c83767fe7
11 changed files with 266 additions and 21 deletions

View File

@@ -12,6 +12,126 @@ use App\Controller\AppController;
*/
class SchoolsController extends AppController
{
public function showajax($snr = null) {
$session = $this->request->session();
$schooltype = $session->read('SchoolType');
$this->autoRender = false;
$myfile = fopen(WWW_ROOT . DS . 'files' . DS . 'debug-single.txt', "w");
$data = $this->request->input('json_decode');
$this->loadModel('Budget');
$this->loadModel('wl_Budgets');
fwrite($myfile,$schooltype . PHP_EOL);
fwrite($myfile,$snr . PHP_EOL);
foreach($data as $line) {
fwrite($myfile,'Size: ' . strlen($line[0]) . PHP_EOL);
if(strlen($line[0]) > 0) {
fwrite($myfile,'Budget: ' . $line[0] . PHP_EOL);
$query = $this->wl_Budgets->find('all', [
'conditions' => array('wl_kurz_bezeichnung' => $line[0])
]);
$wl_budget = $query->first();
fwrite($myfile,json_encode($wl_budget). PHP_EOL);
$query = $this->Budget->find('all', [
'conditions' => array('snr' => $snr, 'wl_budget_id' => $wl_budget['id'])
]);
fwrite($myfile,$wl_budget['id'] . PHP_EOL);
if(!($query->isEmpty())) {
$budget = $query->first();
fwrite($myfile,json_encode($budget). PHP_EOL);
if($budget['wl_budget_id'] != $wl_budget['id'] ) {
$budget['wl_budget_id'] = $wl_budget['id'];
$this->Budget->save($budget);
}
elseif($budget['count'] != $line[1] ) {
$budget['count'] = $line[1];
$this->Budget->save($budget);
}
elseif($budget['comment'] != $line[2] ) {
$budget['comment'] = $line[2];
$this->Budget->save($budget);
}
fwrite($myfile,'full' . PHP_EOL);
}
else {
fwrite($myfile,'empty' . PHP_EOL);
$new = $this->Budget->newEntity();
$new_budget['wl_schooltype_id'] = $schooltype;
$new_budget['snr'] = $snr;
$new_budget['wl_budget_id'] = $wl_budget['id'];
$new_budget['count'] = $line[1];
$new_budget['comment'] = $line[2];
$new_budget['year'] = '2018';
fwrite($myfile,'New: ' . json_encode($new_budget). PHP_EOL);
$new = $this->Budget->patchEntity($new, $new_budget);
$this->Budget->save($new);
}
//fwrite($myfile,serialize($budget). PHP_EOL);
//fwrite($myfile,$line[0] . ' ' .($i+$wl_offset) . ' ' . $line[$i]. PHP_EOL);
}
}
fclose($myfile);
}
public function showbudgets($snr = null) {
$session = $this->request->session();
//debug($session->read('SchoolType'));die;
$schooltype = $session->read('SchoolType');
if ($schooltype == '02') {
$schulart = 'RS';
}
else {
$schulart = 'GY';
}
$query = $this->Schools->find('all', [
'conditions' => array('dst_schluessel' => $snr)
]);
$school = $query->first();
$this->loadModel('Budget');
$budgets = $this->Budget->find('all', [
'conditions' => ['snr' => $snr]
]);
$this->loadModel('wl_Budgets');
$data = array();
foreach($budgets as $budget) {
$line = array();
//debug($budget);
$wl_budget = $this->wl_Budgets->get($budget['wl_budget_id']);
//debug($wl_budget);
array_push($line,$wl_budget['wl_kurz_bezeichnung']);
array_push($line,$budget['count']);
array_push($line,$budget['comment']);
array_push($data,$line);
}
for($i=0;$i<5;$i++) {
$line = array();
array_push($line,'');
array_push($line,'');
array_push($line,'');
array_push($data,$line);
}
$query = $this->wl_Budgets->find('list', [
'conditions' => array('schulart' => $schulart),
'valueField' => 'wl_kurz_bezeichnung'
]);
$wl_budgets = $query->toArray();
$budgets_arr = array();
foreach ($wl_budgets as $wl_budget) {
array_push($budgets_arr,$wl_budget);
}
//debug(json_encode($budgets_arr));die;
$this->set('budgets_arr',$budgets_arr);
$this->set('school',$school);
$this->set('data',$data);
}
public function show() {
$results = $this->Schools->find('all');