forked from s421507/eOSP2
116 lines
3.6 KiB
PHP
116 lines
3.6 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use Illuminate\Http\Request;
|
|
use App\equipment;
|
|
use DB;
|
|
|
|
class EquipmentController extends Controller
|
|
{
|
|
public function create(){
|
|
|
|
if(auth()->user() != null && auth()->user()->fireStationID != null ){
|
|
$equipment = DB::table('equipment')->where("fireStationID", '=', auth()->user()->fireStationID)
|
|
->whereNull('deleted_at')->paginate(10);
|
|
return view("equipment", ["equipment" => $equipment]);
|
|
} else{
|
|
return view('equipment');
|
|
}
|
|
|
|
}
|
|
|
|
public function addForm(){
|
|
if(auth()->user() != null && auth()->user()->accessLevel() == 50 ){ //prezes,naczelnik
|
|
return view('equipmentAdd');
|
|
|
|
} else return redirect()->to('/sprzet');
|
|
}
|
|
|
|
public function editForm($id)
|
|
{
|
|
if(auth()->user() != null && auth()->user()->accessLevel() == 50 ) //prezes,naczelnik
|
|
{
|
|
|
|
$equipment = DB::table('equipment')->where("id", $id)->first();
|
|
|
|
return view('equipmentEdit', ["equipment" => $equipment]);
|
|
}
|
|
else
|
|
return redirect()->to('/sprzet');
|
|
|
|
}
|
|
|
|
public function store(){
|
|
$this->validate(request(), [
|
|
|
|
'name' => 'required|max:45',
|
|
'amount' => 'required|numeric|digits_between:1,10',
|
|
'parameter' => 'max:45|nullable',
|
|
],
|
|
[
|
|
'required' => ':attribute jest wymagany(a).',
|
|
'name.required' => 'nazwa jest wymagany(a).',
|
|
'name.max' => 'nazwa musi mieć nie więcej niż :max znaków.',
|
|
'max' => ':attribute musi mieć nie więcej niż :max znaków.',
|
|
'numeric' => ':attribute powinna zawierać tylko cyfry.',
|
|
'digits_between' => ':attribute jest za duży(a)'
|
|
]);
|
|
|
|
|
|
$request = request();
|
|
$equipment = equipment::create([
|
|
'fireStationID' => auth()->user()->fireStationID,
|
|
'name' => $request-> name,
|
|
'amount' => $request-> amount,
|
|
'parameter' => $request-> parameter,
|
|
]);
|
|
|
|
return redirect()->to('/sprzet');
|
|
}
|
|
|
|
public function update(){
|
|
$this->validate(request(), [
|
|
|
|
'name' => 'required|max:45',
|
|
'amount' => 'required|numeric|digits_between:1,10',
|
|
'parameter' => 'max:45|nullable',
|
|
],
|
|
[
|
|
'required' => ':attribute jest wymagany(a).',
|
|
'name.required' => 'nazwa jest wymagany(a).',
|
|
'name.max' => 'nazwa musi mieć nie więcej niż :max znaków.',
|
|
'max' => ':attribute musi mieć nie więcej niż :max znaków.',
|
|
'numeric' => ':attribute powinna zawierać tylko cyfry.',
|
|
'digits_between' => ':attribute jest za duży(a)'
|
|
]);
|
|
|
|
|
|
$request = request();
|
|
$equipment = equipment::find( $request->equipmentID);
|
|
$equipment-> name = $request-> name;
|
|
$equipment-> amount = $request-> amount;
|
|
$equipment-> parameter = $request-> parameter;
|
|
$equipment->save();
|
|
|
|
return redirect()->to('/sprzet');
|
|
}
|
|
|
|
public function destroy($id)
|
|
{
|
|
equipment::where('id',$id)->delete();
|
|
|
|
return response()->json([
|
|
'success' => 'Record deleted successfully!'
|
|
]);
|
|
}
|
|
|
|
public function createAllEquipmentPDF(){
|
|
if (auth()->user() != null && auth()->user()->fireStationID != null) {
|
|
$request = request();
|
|
$test = new documentCreators();
|
|
$test->createAllEquipmentPDF($request->fireStationID);
|
|
}
|
|
}
|
|
}
|