eOSP2/app/Http/Controllers/operationsController.php

120 lines
4.6 KiB
PHP
Raw Normal View History

2019-11-23 15:01:59 +01:00
<?php
namespace App\Http\Controllers;
use App\User;
use App\operations;
use App\operationsMembers;
use App\vehicle;
2019-11-23 15:01:59 +01:00
use App\operationsDrivers;
use App\operationsTrucks;
2019-11-23 15:01:59 +01:00
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
class operationsController extends Controller
{
//
public function create(){
if(auth()->user() != null && auth()->user()->fireStationID != null ){
$operations = DB::table('operations')->where('operations.fireStationID', "=", auth()->user()->fireStationID)
->leftJoin('users', 'operations.commanderID', '=', 'users.id')
->select('operations.operationDate', 'operations.location', 'operations.target', 'operations.dangerType', 'operations.description', 'operations.commanderID', 'operations.fireStationID', 'users.id', 'users.name', 'users.surname')
->get();
2019-11-23 15:01:59 +01:00
return view('operation', ["operations" => $operations]);
2019-11-23 15:01:59 +01:00
} else{
return view('operation');
}
}
public function addForm(){
if(auth()->user() != null && auth()->user()->fireStationID != null ){
//$fireStationID = auth()->user()->fireStationID;
// $fireFighters = User::pluck('fireStationID', $fireStationID);
$fireFighters = DB::table('users')->where("fireStationID", "=", auth()->user()->fireStationID )->get();
$vehicles = DB::table('vehicles')->where("fireStationID", '=', auth()->user()->fireStationID)
->get();
return view("operationAdd", ["fireFighters" => $fireFighters], ["vehicles" => $vehicles]);
2019-11-23 15:01:59 +01:00
} else return view("unit");
}
public function editForm($id){
if(auth()->user() != null && auth()->user()->fireStationID != null ){
2019-11-23 15:01:59 +01:00
$operation = DB::table('operations')->where('operations.id', '=', $id)->first();
// $operation = DB::table('operations')->where('operations.id', '=', $id)
// ->leftJoin('users', 'operations.commanderID', '=', 'users.id')
// ->select('operations.id', 'operations.operationDate', 'operations.location', 'operations.target', 'operations.dangerType', 'operations.description', 'operations.commanderID', 'operations.fireStationID', 'users.id', 'users.name', 'users.surname')
// ->get();
// if($userFireStation == $fireFighterFireStation && auth()->user()->id == $fireStationCreatorId) {
return view('operationEdit', ["operation" => $operation]);
// } else{
// return "Brak dostepu";
// }
} else{
return view('unit');
}
2019-11-23 15:01:59 +01:00
}
public function store(){
$this->validate(request(),[
'operationDate' => 'required',
'operationLocation' => 'required',
'operationTarget' => 'required',
'operationDangerType' => 'required',
'operationDescription' => 'required',
'operationLeader' => 'required',
'operationDriver.*' => 'required',
'operationVehicle.*' => 'required',
'attendance.*' => 'required',
'transport.*' => 'required',
2019-11-23 15:01:59 +01:00
],
[
'required' => ':attribute jest wymagany(e)'
]);
$request = request();
$operations = operations::create([
'operationDate' => $request-> operationDate,
'location' => $request-> operationLocation,
'target' => $request-> operationTarget,
'dangerType' => $request-> operationDangerType,
'description' => $request-> operationDescription,
'commanderID' => $request-> operationLeader,
'fireStationID' => auth()->user()->fireStationID,
2019-11-23 15:01:59 +01:00
]);
$operationDriver = $request ->operationDriver;
$operationVehicle = $request -> operationVehicle;
for($count = 0; $count < count($operationDriver); $count++){
$operationsTrucks = operationsTrucks::create([
'operationID' => $operations->id,
'truckID' => $operationDriver[$count],
'driverID' => $operationVehicle[$count]
]);
}
$attendance = $request-> attendance;
for($count = 0; $count < count($attendance); $count++){
if($attendance[$count] != 'false'){
$operationsMembers = operationsMembers::create([
'operationID' => $operations->id,
'memberID' => $attendance[$count],
'privateTransport' => $request->transport[$count],
]);
};
}
2019-11-23 15:01:59 +01:00
return operationsController::create();
}
public function update(){
}
}