Skip to content

Commit 365d0e4

Browse files
committed
Generiranje pdf prek konzole
1 parent 8aa716f commit 365d0e4

File tree

4 files changed

+60
-3
lines changed

4 files changed

+60
-3
lines changed

src/Command/IzracunProjekta.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,5 +22,6 @@ public function run($projectId = null)
2222
(new IzracunCone())->run($projectId);
2323
(new IzracunStavbe())->run($projectId);
2424
(new IzracunTSS())->run($projectId);
25+
(new PdfIzkaz())->run($projectId);
2526
}
2627
}

src/Command/PdfIzkaz.php

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
<?php
2+
declare(strict_types=1);
3+
4+
namespace App\Command;
5+
6+
use App\Core\App;
7+
use App\Core\Command;
8+
use App\Core\Configure;
9+
use App\Core\Pdf;
10+
use App\Core\View;
11+
12+
class PdfIzkaz extends Command
13+
{
14+
/**
15+
* Command run routine
16+
*
17+
* @param string|null $projectId Project id.
18+
* @return void
19+
*/
20+
public function run($projectId = null)
21+
{
22+
parent::run();
23+
24+
$view = new View([], ['layout' => 'pdf']);
25+
$view->set('splosniPodatki', App::loadProjectData($projectId, 'splosniPodatki'));
26+
$view->set('okolje', App::loadProjectCalculation($projectId, 'okolje'));
27+
$view->set('stavba', App::loadProjectCalculation($projectId, 'stavba'));
28+
$view->set('cone', App::loadProjectCalculation($projectId, 'cone'));
29+
$view->set('tKons', App::loadProjectCalculation($projectId, 'konstrukcije' . DS . 'transparentne'));
30+
$view->set('ntKons', App::loadProjectCalculation($projectId, 'konstrukcije' . DS . 'netransparentne'));
31+
$view->set('sistemiOgrevanja', App::loadProjectCalculation($projectId, 'TSS' . DS . 'ogrevanje'));
32+
$view->set('sistemiRazsvetljave', App::loadProjectCalculation($projectId, 'TSS' . DS . 'razsvetljava'));
33+
$view->set('sistemiPrezracevanja', App::loadProjectCalculation($projectId, 'TSS' . DS . 'prezracevanje'));
34+
35+
$tssFolder = App::getProjectFolder($projectId, 'izracuni') . 'TSS' . DS;
36+
$view->set('sistemi', array_filter((array)scandir($tssFolder), fn($d) => is_file($tssFolder . $d)));
37+
38+
$splosniPodatki = $view->render('Izkazi', 'splosniPodatki');
39+
$podrocjeGf = $view->render('Izkazi', 'podrocjeGf');
40+
$podrocjeSnes = $view->render('Izkazi', 'podrocjeSNES');
41+
42+
$pdf = new Pdf(Configure::read('Pdf', []));
43+
$pdf->newPage((string)$splosniPodatki);
44+
$pdf->newPage((string)$podrocjeGf);
45+
$pdf->newPage((string)$podrocjeSnes);
46+
47+
$pdfFolder = App::getProjectFolder($projectId, 'pdf');
48+
if (!is_dir($pdfFolder)) {
49+
mkdir($pdfFolder, 0777, true);
50+
}
51+
52+
$pdf->saveAs($pdfFolder . 'izkaz.pdf');
53+
}
54+
}

src/Controller/IzkaziController.php

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55

66
use App\Core\App;
77
use App\Core\Configure;
8+
use App\Core\Pdf;
9+
use App\Core\View;
810

911
class IzkaziController
1012
{
@@ -63,7 +65,7 @@ public function podrocjeSNES($projectId)
6365
*/
6466
public function pdf($projectId)
6567
{
66-
$view = new \App\Core\View([], ['layout' => 'pdf']);
68+
$view = new View([], ['layout' => 'pdf']);
6769
$view->set('splosniPodatki', App::loadProjectData($projectId, 'splosniPodatki'));
6870
$view->set('okolje', App::loadProjectCalculation($projectId, 'okolje'));
6971
$view->set('stavba', App::loadProjectCalculation($projectId, 'stavba'));
@@ -81,7 +83,7 @@ public function pdf($projectId)
8183
$podrocjeGf = $view->render('Izkazi', 'podrocjeGf');
8284
$podrocjeSnes = $view->render('Izkazi', 'podrocjeSNES');
8385

84-
$pdf = new \App\Core\TCPDFEngine(Configure::read('Pdf', []));
86+
$pdf = new Pdf(Configure::read('Pdf', []));
8587
$pdf->newPage((string)$splosniPodatki);
8688
$pdf->newPage((string)$podrocjeGf);
8789
$pdf->newPage((string)$podrocjeSnes);
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
namespace App\Core;
55

6-
class TCPDFEngine extends \TCPDF
6+
class Pdf extends \TCPDF
77
{
88
private array $_options = [];
99

0 commit comments

Comments
 (0)