From 2a8b8a6d6f9f6610f9de2287bccd3506298ef6cf Mon Sep 17 00:00:00 2001 From: Krzysztof Strzelecki Date: Sun, 17 Nov 2019 17:08:02 +0100 Subject: [PATCH] dodanie widoku Pojazdy --- app/Http/Controllers/VehiclesController.php | 149 ++++++++++++++++++ app/vehicle.php | 16 ++ ...019_11_07_230105_create_vehicles_table.php | 8 +- resources/views/vehicles.blade.php | 78 ++++----- resources/views/vehiclesAdd.blade.php | 122 ++++++++++++++ resources/views/vehiclesEdit.blade.php | 124 +++++++++++++++ routes/web.php | 6 + 7 files changed, 464 insertions(+), 39 deletions(-) create mode 100644 app/Http/Controllers/VehiclesController.php create mode 100644 app/vehicle.php create mode 100644 resources/views/vehiclesAdd.blade.php create mode 100644 resources/views/vehiclesEdit.blade.php diff --git a/app/Http/Controllers/VehiclesController.php b/app/Http/Controllers/VehiclesController.php new file mode 100644 index 0000000..f845266 --- /dev/null +++ b/app/Http/Controllers/VehiclesController.php @@ -0,0 +1,149 @@ +user() != null && auth()->user()->fireStationID != null ){ + $vehicles = DB::table('vehicles')->where("fireStationID", '=', auth()->user()->fireStationID) + ->get(); + return view("vehicles", ["vehicles" => $vehicles]); + } else{ + return view('vehicles'); + } + + } + + public function addForm(){ + if(auth()->user() != null && auth()->user()->fireStationID != null ){ + return view('vehiclesAdd'); + + } else return view("login"); + } + + public function editForm($id) + { + if(auth()->user() != null && auth()->user()->fireStationID != null ) + { + //$userFireStation = auth()->user()->fireStationID; + //$fireFighterFireStation = DB::table('users')->where("id", $id)->value('fireStationID'); + //$fireStationCreatorId = DB::table('fireStations')->where("id", $userFireStation)->value('creatorID'); + + $vehicle = DB::table('vehicles')->where("id", $id)->first(); + + return view('vehiclesEdit', ["vehicle" => $vehicle]); + } + else + return "Brak dostepu"; + + } + + + + public function store(){ + $this->validate(request(), [ + + 'name' => 'required', + 'productionYear' => 'digits:4', + 'foamAgent' => 'numeric', + 'enginePower' => 'numeric', + 'crewNumber' => 'numeric', + 'mass' => 'numeric', + 'chassisPoductionYear' => 'numeric', + //dokończyć! Wypytać Adriana które mają być required + ], + [ + 'required' => ':attribute jest wymagany(e).', + 'numeric' => ':attribute zawiera tylko cyfry.', + 'digits' => ':attribute musi składać się z :digits cyfr.', + ]); + + + $request = request(); + $vehicle = vehicle::create([ + 'fireStationID' => auth()->user()->fireStationID, + 'name' => $request-> name, + 'codename' => $request-> codename, + 'brand' => $request-> brand, + 'registrationNumber' => $request-> registrationNumber, + 'productionYear' => $request-> productionYear, + 'examExpirationDate' => formatDate($request-> examExpirationDate), + 'insuranceExpirationDate' => formatDate($request-> insuranceExpirationDate), + 'driveType' => $request-> driveType, + 'chassisType' => $request-> chassisType, + 'bodyProducer' => $request-> bodyProducer, + 'crewNumber' => $request-> crewNumber, + 'foamAgent' => $request-> foamAgent, + 'enginePower' => $request-> enginePower, + 'mass' => $request-> mass, + 'chassisNumber' => $request-> chassisNumber, + 'engineNumber' => $request-> engineNumber, + 'fuelType' => $request-> fuelType, + 'chassisPoductionYear' => $request-> chassisPoductionYear, + 'entryIntoServiceDate' => formatDate($request-> entryIntoServiceDate), + 'fireEnginePumpDescription' => $request-> fireEnginePumpDescription, + ]); + + return redirect()->to('/pojazdy'); + } + + + public function update(){ + $this->validate(request(), [ + + 'name' => 'required', + 'productionYear' => 'digits:4', + 'foamAgent' => 'numeric', + 'enginePower' => 'numeric', + 'crewNumber' => 'numeric', + 'mass' => 'numeric', + 'chassisPoductionYear' => 'numeric', + //dokończyć! Wypytać Adriana które mają być required + ], + [ + 'required' => ':attribute jest wymagany(e).', + 'numeric' => ':attribute zawiera tylko cyfry.', + 'digits' => ':attribute musi składać się z :digits cyfr.', + ]); + + + $request = request(); + $vehicle = vehicle::find( $request->vehicleID); + $vehicle-> name = $request-> name; + $vehicle-> codename = $request-> codename; + $vehicle-> brand = $request-> brand; + $vehicle-> registrationNumber = $request-> registrationNumber; + $vehicle-> productionYear = $request-> productionYear; + $vehicle-> examExpirationDate = formatDate($request-> examExpirationDate); + $vehicle-> insuranceExpirationDate = formatDate($request-> insuranceExpirationDate); + $vehicle-> driveType = $request-> driveType; + $vehicle-> chassisType = $request-> chassisType; + $vehicle-> bodyProducer = $request-> bodyProducer; + $vehicle-> crewNumber = $request-> crewNumber; + $vehicle-> foamAgent = $request-> foamAgent; + $vehicle-> enginePower = $request-> enginePower; + $vehicle-> mass = $request-> mass; + $vehicle-> chassisNumber = $request-> chassisNumber; + $vehicle-> engineNumber = $request-> engineNumber; + $vehicle-> fuelType = $request-> fuelType; + $vehicle-> chassisPoductionYear = $request-> chassisPoductionYear; + $vehicle-> entryIntoServiceDate = formatDate($request-> entryIntoServiceDate); + $vehicle-> fireEnginePumpDescription = $request-> fireEnginePumpDescription; + $vehicle->save(); + + return VehiclesController::create(); + } +} diff --git a/app/vehicle.php b/app/vehicle.php new file mode 100644 index 0000000..0976e71 --- /dev/null +++ b/app/vehicle.php @@ -0,0 +1,16 @@ +increments('id'); + $table->integer('fireStationID'); $table->string('name', 45); $table->string('codename', 45); $table->string('brand',45); $table->string('registrationNumber', 15); $table->integer('productionYear'); - $table->date('ExaminationExpirationDate'); + $table->date('examExpirationDate'); //Data ważności przegladu $table->date('insuranceExpirationDate'); $table->string('driveType',45); //układ napędowy $table->string('chassisType',45); //typ podwozia @@ -29,12 +30,13 @@ class CreateVehiclesTable extends Migration $table->integer('foamAgent'); //Ilość środka pianotwórczego w litrach $table->integer('enginePower'); //Moc silnika w kW $table->integer('mass'); //Masa całkowita pojazdu - $table->integer('chassisNumber'); - $table->integer('engineNumber'); + $table->string('chassisNumber'); + $table->string('engineNumber'); $table->string('fuelType',45); $table->integer('chassisPoductionYear'); $table->date('entryIntoServiceDate'); $table->string('fireEnginePumpDescription');// Opis autopompy + $table->timestamps(); }); } diff --git a/resources/views/vehicles.blade.php b/resources/views/vehicles.blade.php index 5698b83..ca4d1c8 100644 --- a/resources/views/vehicles.blade.php +++ b/resources/views/vehicles.blade.php @@ -3,7 +3,7 @@ @section('left-menu') @parent