diff --git a/app/Http/Controllers/EquipmentController.php b/app/Http/Controllers/EquipmentController.php index 69d5cb1..efce77d 100644 --- a/app/Http/Controllers/EquipmentController.php +++ b/app/Http/Controllers/EquipmentController.php @@ -104,4 +104,12 @@ class EquipmentController extends Controller 'success' => 'Record deleted successfully!' ]); } + + public function createAllEquipmentPDF(){ + if (auth()->user() != null && auth()->user()->fireStationID != null) { + $request = request(); + $test = new documentCreators(); + $test->createAllEquipmentPDF($request->fireStationID); + } + } } diff --git a/app/Http/Controllers/VehiclesController.php b/app/Http/Controllers/VehiclesController.php index fe6f52d..a80d159 100644 --- a/app/Http/Controllers/VehiclesController.php +++ b/app/Http/Controllers/VehiclesController.php @@ -70,14 +70,14 @@ class VehiclesController extends Controller 'fireEnginePumpDescription' => 'max:250', ], [ - + 'name' => 'nazwa', 'required' => ':attribute jest wymagany(e).', 'numeric' => ':attribute może zawierać tylko cyfry.', 'digits' => ':attribute musi składać się z :digits cyfr.', 'max' => ':attribute musi mieć nie więcej niż :max znaków.', 'digits_between' => ':attribute jest za duży(a)' - + ]); @@ -133,14 +133,14 @@ class VehiclesController extends Controller 'fireEnginePumpDescription' => 'max:250', ], [ - + 'name' => 'nazwa', 'required' => ':attribute jest wymagany(e).', 'numeric' => ':attribute może zawierać tylko cyfry.', 'digits' => ':attribute musi składać się z :digits cyfr.', 'max' => ':attribute musi mieć nie więcej niż :max znaków.', 'digits_between' => ':attribute jest za duży(a)' - + ]); @@ -197,4 +197,20 @@ class VehiclesController extends Controller $vehicle->save(); return redirect()->to('/pojazdy'); } + + public function createAllVehiclesPDF(){ + if (auth()->user() != null && auth()->user()->fireStationID != null) { + $request = request(); + $test = new documentCreators(); + $test->createAllVehiclesPDF($request->fireStationID); + } + } + + public function createSingleVehiclePDF(){ + if (auth()->user() != null && auth()->user()->fireStationID != null) { + $request = request(); + $test = new documentCreators(); + $test->createSingleVehiclePDF($request->vehicleID); + } + } } diff --git a/app/Http/Controllers/documentCreators.php b/app/Http/Controllers/documentCreators.php index 706f25d..e98f660 100644 --- a/app/Http/Controllers/documentCreators.php +++ b/app/Http/Controllers/documentCreators.php @@ -168,25 +168,26 @@ class documentCreators extends Fpdf $pdf->Ln(); $pdf->SetFont('arialpl','B',14); $pdf->SetFillColor(152,152,152); - $pdf->Cell(10,10, $this->textConvert("#"), 1, 0, 'C', true); - $pdf->Cell(50,10, $this->textConvert("Data"), 1, 0, 'C', true); - $pdf->Cell(50,10, $this->textConvert("Miejsce"), 1, 0, 'C', true); - $pdf->Cell(60,10, $this->textConvert("Cel"), 1, 0, 'C', true); - $pdf->Cell(40,10, $this->textConvert("Rodzaj zagrożenia"), 1, 0, 'C', true); - $pdf->Cell(60,10, $this->textConvert("Dowódca"), 1, 0, 'C', true); + $pdf->SetFont('arialpl','',14); - $fill = false; $pdf->SetFillColor(224,224,224); - $i=1; foreach( $operations as $operation){ - $pdf->Cell(10,10, $i, 1, 0, 'C', $fill); - $pdf->Cell(50,10,$this->textConvert($operation->operationDate), 1, 0, '', $fill); - $pdf->Cell(50,10,$this->textConvert($operation->location), 1, 0, '', $fill); - $pdf->Cell(50,10,$this->textConvert($operation->target), 1, 0, '', $fill); + $pdf->Cell(50,10, $this->textConvert("Dowódca: "), 1, 0, '', true); + $pdf->Cell(70,10, $this->textConvert($operation->name." ".$operation->surname), 1, 0, 'C' ); + $pdf->Cell(20,10, $this->textConvert("Data: "), 1, 0, 'C', true); + $pdf->Cell(50,10, $this->textConvert($operation->operationDate), 1, 0, ''); + $pdf->Ln(); + $pdf->Cell(50,10,$this->textConvert("Miejsce: "), 1, 0, '', true); + $pdf->Cell(140,10,$this->textConvert($operation->location), 1, 0, ''); + $pdf->Ln(); + $pdf->Cell(50,10,$this->textConvert("Cel: "), 1, 0, '', true); + $pdf->Cell(140,10,$this->textConvert($operation->target), 1, 0, ''); + $pdf->Ln(); + $pdf->Cell(50,10, $this->textConvert("Rodzaj zagrożenia: "), 1, 0, '', true); + $pdf->Cell(140,10, $this->textConvert($operation->dangerType), 1, 0, ''); + $pdf->Ln(); $pdf->Ln(); - $fill = !$fill; - $i++; } @@ -388,6 +389,13 @@ class documentCreators extends Fpdf } public function CreateAllFireFightersPDF($fireStationID){ + + $users = DB::table('users')->where("fireStationID", '=', $fireStationID) + ->leftJoin('ranks', 'users.degreeID', '=', 'ranks.id') + ->leftJoin('unitFunctions', 'users.functionID', '=', 'unitFunctions.id') + ->select('users.id','users.name', 'users.surname', 'users.phoneNumber', 'users.PESEL', 'users.email', 'users.statusID', 'ranks.rank', 'unitFunctions.unitFunction') + ->get(); + $pdf = new AlphaPDF(); $fill = false; $pdf->AddPage(); @@ -398,12 +406,290 @@ class documentCreators extends Fpdf $pdf->SetFont('arialpl','B',20); $pdf->Cell(190,10, $this->textConvert("Lista strażaków"),0,0,'C'); $pdf->Ln(); - $pdf->Ln(); + foreach( $users as $user) { + $pdf->Ln(); + $pdf->SetFont('arialpl', '', 14); + $pdf->SetFillColor(152, 152, 152); + $pdf->Cell(190, 10, $this->textConvert($user->name . ' ' . $user->surname), 1, 0, 'C', 'fill'); + $pdf->SetFillColor(224, 224, 224); + $pdf->Ln(); + $pdf->Cell(130, 10, $this->textConvert($user->email), 1, 0, 'C', 'fill'); + $pdf->Cell(60, 10, $this->textConvert('tel: '.$user->phoneNumber), 1, 0, 'C', 'fill'); + $pdf->Ln(); + $pdf->Cell(90, 10, $this->textConvert('Stopień: ' . $user->rank), 1, 0, 'C', 'fill'); + $pdf->Cell(100, 10, $this->textConvert('Funkcja:' . $user->unitFunction), 1, 0, 'C', 'fill'); + $pdf->Ln(); + } $pdf->Ln(); $pdf->Output(); exit; } + + public function createAllEquipmentPDF($fireStationID){ + + $equipment = DB::table('equipment')->where("fireStationID", '=', $fireStationID) + ->whereNull('deleted_at')->get(); + + $pdf = new AlphaPDF(); + $fill = false; + $pdf->AddPage(); + + $pdf->AddFont('arialpl', '', 'arialpl.php'); + $pdf->AddFont('arialpl', 'B', 'arialplb.php'); + + $pdf->SetFont('arialpl','B',20); + $pdf->Cell(190,10, $this->textConvert("Stan sprzętu"),0,0,'C'); + $pdf->Ln(); + $pdf->Ln(); + $pdf->SetFont('arialpl','B',14); + $pdf->SetFillColor(152,152,152); + $pdf->Cell(10,10, $this->textConvert("# "), 1, 0, 'C', true); + $pdf->Cell(85,10, $this->textConvert("Nazwa "), 1, 0, 'C', true); + $pdf->Cell(80,10, $this->textConvert("Param. char. "), 1, 0, 'C', true); + $pdf->Cell(15,10, $this->textConvert("Ilość"), 1, 0, 'C', true); + $pdf->Ln(); + + $pdf->SetFont('arialpl','',14); + $fill = false; + $pdf->SetFillColor(224,224,224); + $i=1; + foreach( $equipment as $item){ + $pdf->Cell(10,10, $i, 1, 0, 'C', $fill); + $pdf->Cell(85,10,$this->textConvert($item->name), 1, 0, '', $fill); + $pdf->Cell(80,10,$this->textConvert($item->parameter), 1, 0, '', $fill); + $pdf->Cell(15,10,$this->textConvert($item->amount), 1, 0, 'C', $fill); + $pdf->Ln(); + $fill = !$fill; + $i++; + } + + $pdf->Ln(); + $pdf->Output(); + exit; + } + + public function createAllTrainingsPDF($fireStationID){ + + $trainings = DB::table('trainings')->where("fireStationID", '=', $fireStationID) + ->whereNull('deleted_at') + ->paginate(10); + + $howMuch = array(); + foreach($trainings as $training) { + $id = $training->id; + $howMuch[$id] = DB::table('trainingsFirefighters')->where('trainingID', '=', $id)->count(); + + } + + $pdf = new AlphaPDF(); + $fill = false; + $pdf->AddPage(); + + $pdf->AddFont('arialpl', '', 'arialpl.php'); + $pdf->AddFont('arialpl', 'B', 'arialplb.php'); + + $pdf->SetFont('arialpl','B',20); + $pdf->Cell(190,10, $this->textConvert("Lista badań/szkoleń"),0,0,'C'); + $pdf->Ln(); + $pdf->Ln(); + $pdf->SetFont('arialpl','B',14); + $pdf->SetFillColor(152,152,152); + $pdf->Cell(10,10, $this->textConvert("# "), 1, 0, 'C', true); + $pdf->Cell(130,10, $this->textConvert("Nazwa "), 1, 0, 'C', true); + $pdf->Cell(50,10, $this->textConvert("Ilość z ukończonym"), 1, 0, 'C', true); + $pdf->Ln(); + + $pdf->SetFont('arialpl','',14); + $fill = false; + $pdf->SetFillColor(224,224,224); + $i=1; + foreach( $trainings as $training){ + $pdf->Cell(10,10, $i, 1, 0, 'C', $fill); + $pdf->Cell(130 ,10,$this->textConvert($training->trainingName), 1, 0, '', $fill); + $pdf->Cell(50,10,$this->textConvert($howMuch[$training->id]), 1, 0, 'C', $fill); + $pdf->Ln(); + $fill = !$fill; + $i++; + } + + $pdf->Ln(); + $pdf->Output(); + exit; + } + + + public function createSingleTrainingPDF($trainingID){ + $training = DB::table('trainings')->where("id", '=', $trainingID) + ->first(); + $fireFighters = DB::table('users')->where("fireStationID", "=", auth()->user()->fireStationID) + ->Join('trainingsFirefighters', function ($join) use ($trainingID) { + $join->on('users.id', '=', 'trainingsFirefighters.firefighterID'); + $join->where('trainingsFirefighters.trainingID', '=', $trainingID); + }) + ->select('trainingsFirefighters.*', 'users.name', 'users.surname', 'users.id as userID') + ->get(); + + $pdf = new AlphaPDF(); + $fill = false; + $pdf->AddPage(); + + $pdf->AddFont('arialpl', '', 'arialpl.php'); + $pdf->AddFont('arialpl', 'B', 'arialplb.php'); + + $pdf->SetFont('arialpl','B',20); + $pdf->Cell(190,10, $this->textConvert("Lista z ukończonym: ".$training->trainingName),0,0,'C'); + $pdf->Ln(); + $pdf->Ln(); + $pdf->SetFont('arialpl','B',14); + $pdf->SetFillColor(152,152,152); + $pdf->Cell(10,10, $this->textConvert("# "), 1, 0, 'C', true); + $pdf->Cell(100,10, $this->textConvert("Imię i Nazwisko "), 1, 0, 'C', true); + $pdf->Cell(45,10, $this->textConvert("Data ukończenia"), 1, 0, 'C', true); + $pdf->Cell(35,10, $this->textConvert("Ważne do"), 1, 0, 'C', true); + $pdf->Ln(); + + $pdf->SetFont('arialpl','',14); + $fill = false; + $pdf->SetFillColor(224,224,224); + $i=1; + foreach( $fireFighters as $fireFighter){ + $pdf->Cell(10,10, $i, 1, 0, 'C', $fill); + $pdf->Cell(100 ,10,$this->textConvert($fireFighter->name.' '.$fireFighter->surname), 1, 0, '', $fill); + $pdf->Cell(45 ,10,$this->textConvert($fireFighter->dateOfComplete), 1, 0, 'C', $fill); + $pdf->Cell(35 , 10,$this->textConvert($fireFighter->dateOfExpiry), 1, 0, 'C', $fill); + $pdf->Ln(); + $fill = !$fill; + $i++; + } + + $pdf->Ln(); + $pdf->Output(); + exit; + } + + public function createAllVehiclesPDF($fireStationID){ + $vehicles = DB::table('vehicles')->where("fireStationID", '=', auth()->user()->fireStationID) + ->whereNull('deleted_at')->paginate(10); + + $pdf = new AlphaPDF(); + $fill = false; + $pdf->AddPage(); + + $pdf->AddFont('arialpl', '', 'arialpl.php'); + $pdf->AddFont('arialpl', 'B', 'arialplb.php'); + + $pdf->SetFont('arialpl','B',20); + $pdf->Cell(190,10, $this->textConvert("Lista pojazdów:"),0,0,'C'); + $pdf->Ln(); + $pdf->Ln(); + $pdf->SetFont('arialpl','B',14); + $pdf->SetFillColor(152,152,152); + $pdf->Cell(70,10, $this->textConvert("Nazwa"), 1, 0, 'C', true); + $pdf->Cell(50,10, $this->textConvert("Marka"), 1, 0, 'C', true); + $pdf->Cell(35,10, $this->textConvert("Numer rej."), 1, 0, 'C', true); + $pdf->Cell(35,10, $this->textConvert("Rok prod."), 1, 0, 'C', true); + $pdf->Ln(); + + $pdf->SetFont('arialpl','',14); + $fill = false; + $pdf->SetFillColor(224,224,224); + foreach( $vehicles as $vehicle){ + $pdf->Cell(70 ,10,$this->textConvert($vehicle->name), 1, 0, '', $fill); + $pdf->Cell(50 ,10,$this->textConvert($vehicle->brand), 1, 0, 'C', $fill); + $pdf->Cell(35 , 10,$this->textConvert($vehicle->registrationNumber), 1, 0, 'C', $fill); + $pdf->Cell(35 , 10,$this->textConvert($vehicle->productionYear), 1, 0, 'C', $fill); + $pdf->Ln(); + $fill = !$fill; + } + + + $pdf->Ln(); + $pdf->Output(); + exit; + } + + public function createSingleVehiclePDF($vehicleID){ + $vehicle = DB::table('vehicles')->where("id", '=', $vehicleID) + ->first(); + + $pdf = new AlphaPDF(); + $fill = false; + $pdf->AddPage(); + + $pdf->AddFont('arialpl', '', 'arialpl.php'); + $pdf->AddFont('arialpl', 'B', 'arialplb.php'); + + $pdf->SetFont('arialpl','B',20); + $pdf->Cell(190,10, $this->textConvert($vehicle->name),0,0,'C'); + $pdf->Ln(); + $pdf->Ln(); + $pdf->SetFont('arialpl','',14); + $pdf->SetFillColor(224,224,224); + + $pdf->Cell(50 ,10,$this->textConvert("Kryptonim: "), 1, 0, '', true); + $pdf->Cell(140 , 10,$this->textConvert($vehicle->codename), 1, 0, 'C'); + $pdf->Ln(); + $pdf->Cell(50 ,10,$this->textConvert("Marka: "), 1, 0, '', true); + $pdf->Cell(140 , 10,$this->textConvert($vehicle->brand), 1, 0, 'C'); + $pdf->Ln(); + $pdf->Cell(50 ,10,$this->textConvert("Numer rej: "), 1, 0, '', true); + $pdf->Cell(140 , 10,$this->textConvert($vehicle->registrationNumber), 1, 0, 'C'); + $pdf->Ln(); + $pdf->Cell(50 ,10,$this->textConvert("Rok Produkcji: "), 1, 0, '', true); + $pdf->Cell(140 , 10,$this->textConvert($vehicle->productionYear), 1, 0, 'C'); + $pdf->Ln(); + $pdf->Cell(50 ,10,$this->textConvert("Ważność przeglądu: "), 1, 0, '', true); + $pdf->Cell(140 , 10,$this->textConvert($vehicle->examExpirationDate), 1, 0, 'C'); + $pdf->Ln(); + $pdf->Cell(50 ,10,$this->textConvert("Termin ważności OC: "), 1, 0, '', true); + $pdf->Cell(140 , 10,$this->textConvert($vehicle->insuranceExpirationDate), 1, 0, 'C'); + $pdf->Ln(); + $pdf->Cell(50 ,10,$this->textConvert("Układ napędowy: "), 1, 0, '', true); + $pdf->Cell(140 , 10,$this->textConvert($vehicle->driveType), 1, 0, 'C'); + $pdf->Ln(); + $pdf->Cell(50 ,10,$this->textConvert("Typ podwozia: "), 1, 0, '', true); + $pdf->Cell(140 , 10,$this->textConvert($vehicle->chassisType), 1, 0, 'C'); + $pdf->Ln(); + $pdf->Cell(50 ,10,$this->textConvert("Producent nadwozia: "), 1, 0, '', true); + $pdf->Cell(140 , 10,$this->textConvert($vehicle->bodyProducer), 1, 0, 'C'); + $pdf->Ln(); + $pdf->Cell(50 ,10,$this->textConvert("Ilość osób w załodze: "), 1, 0, '', true); + $pdf->Cell(140 , 10,$this->textConvert($vehicle->crewNumber), 1, 0, 'C'); + $pdf->Ln(); + $pdf->Cell(50 ,10,$this->textConvert("Ilość piany w L: "), 1, 0, '', true); + $pdf->Cell(140 , 10,$this->textConvert($vehicle->foamAgent), 1, 0, 'C'); + $pdf->Ln(); + $pdf->Cell(50 ,10,$this->textConvert("Moc silnika w kW: "), 1, 0, '', true); + $pdf->Cell(140 , 10,$this->textConvert($vehicle->enginePower), 1, 0, 'C'); + $pdf->Ln(); + $pdf->Cell(50 ,10,$this->textConvert("Masa pojazdu: "), 1, 0, '', true); + $pdf->Cell(140 , 10,$this->textConvert($vehicle->mass), 1, 0, 'C'); + $pdf->Ln(); + $pdf->Cell(50 ,10,$this->textConvert("Numer podwozia: "), 1, 0, '', true); + $pdf->Cell(140 , 10,$this->textConvert($vehicle->chassisNumber), 1, 0, 'C'); + $pdf->Ln(); + $pdf->Cell(50 ,10,$this->textConvert("Numer Silnika: "), 1, 0, '', true); + $pdf->Cell(140 , 10,$this->textConvert($vehicle->engineNumber), 1, 0, 'C'); + $pdf->Ln(); + $pdf->Cell(50 ,10,$this->textConvert("Rodzaj paliwa: "), 1, 0, '', true); + $pdf->Cell(140 , 10,$this->textConvert($vehicle->fuelType), 1, 0, 'C'); + $pdf->Ln(); + $pdf->Cell(50 ,10,$this->textConvert("Rok prod. podwozia: "), 1, 0, '', true); + $pdf->Cell(140 , 10,$this->textConvert($vehicle->chassisPoductionYear), 1, 0, 'C'); + $pdf->Ln(); + $pdf->Cell(50 ,10,$this->textConvert("Data wprowadzenia: "), 1, 0, '', true); + $pdf->Cell(140 , 10,$this->textConvert($vehicle->entryIntoServiceDate), 1, 0, 'C'); + $pdf->Ln(); + $pdf->Cell(50 ,10,$this->textConvert("Opis Autopompy: "), 1, 0, '', true); + $pdf->Cell(140 , 10,$this->textConvert($vehicle->fireEnginePumpDescription), 1, 0, 'C'); + $pdf->Ln(); + + + $pdf->Ln(); + $pdf->Output(); + exit; + } } diff --git a/app/Http/Controllers/trainingsController.php b/app/Http/Controllers/trainingsController.php index 5f7ccbd..d68a6a5 100644 --- a/app/Http/Controllers/trainingsController.php +++ b/app/Http/Controllers/trainingsController.php @@ -19,9 +19,13 @@ class trainingsController extends Controller ->whereNull('deleted_at') ->paginate(10); + + $fireFighters = array(); + $howMuch = array(); foreach($trainings as $training) { $id = $training->id; + $howMuch[$id] = DB::table('trainingsFirefighters')->where('trainingID', '=', $id)->count(); $fireFighters[$id] = DB::table('users')->where("fireStationID", "=", auth()->user()->fireStationID) ->leftJoin('trainingsFirefighters', function ($join) use ($id) { $join->on('users.id', '=', 'trainingsFirefighters.firefighterID'); @@ -30,7 +34,7 @@ class trainingsController extends Controller ->select('trainingsFirefighters.*', 'users.name', 'users.surname', 'users.id as userID') ->get(); } - return View::make("trainings")->with(compact( "trainings", "fireFighters")); + return View::make("trainings")->with(compact( "trainings", "fireFighters", "howMuch")); } else{ return redirect()->to('/strazacy'); } @@ -176,4 +180,20 @@ class trainingsController extends Controller trainings::where('id', '=', $request->trainingID) ->update(['trainingName' => $request->trainingName]); } + + public function createAllTrainingsPDF(){ + if (auth()->user() != null && auth()->user()->fireStationID != null) { + $request = request(); + $test = new documentCreators(); + $test->createAllTrainingsPDF($request->fireStationID); + } + } + + public function createSingleTrainingPDF(){ + if (auth()->user() != null && auth()->user()->fireStationID != null) { + $request = request(); + $test = new documentCreators(); + $test->createSingleTrainingPDF($request->trainingID); + } + } } diff --git a/public/css/theme.css b/public/css/theme.css index acf03df..e2e77aa 100644 --- a/public/css/theme.css +++ b/public/css/theme.css @@ -106,7 +106,7 @@ body { } #left-menu ul li { - width: 170px; + width: 198px; height: 50px; border-radius: 5px; background: linear-gradient(white, #d6d6dd, white); diff --git a/resources/views/equipment.blade.php b/resources/views/equipment.blade.php index 0f18619..a6596ac 100644 --- a/resources/views/equipment.blade.php +++ b/resources/views/equipment.blade.php @@ -9,6 +9,13 @@ @if(auth()->user()->accessLevel() == 50)
Operacja | Szczegóły | @endif -Szczegóły | - -{{$i}} | {{ $training->trainingName }} | -5 | +{{$howMuch[$training->id]}} | Zarządzaj + |
diff --git a/resources/views/unit.blade.php b/resources/views/unit.blade.php
index fb891cf..c9d421f 100644
--- a/resources/views/unit.blade.php
+++ b/resources/views/unit.blade.php
@@ -7,6 +7,12 @@
@if(auth()->user()->accessLevel() == 50)
-
|
---|