In my model Training
I have a recording.
date training : 15/09/2019 | hour_start : 18:00 | hour_end : 20:00 | motorbike : 000001
Then, if I have the motorbike 000001
in Revision
, on 01/09/2019 to 15/09/2019 from 14:00 to 16:00.
Now, If I want to add a recording in my form Training
for example :
date training : 15/09/2019 | hour_start : 08:00 | hour_end : 10:00 | motorbike : 000001
Normally, the motorbike is in revision, but here I can the add ??? How to create a blocking?
<?php
namespace App\Http\Controllers;
use App\Motorbike;
use App\Former;
use App\Training;
use App\Revision;
use App\Student;
use App\Payment;
use App\Typeseance;
use Carbon\Carbon;
use Illuminate\Http\Request;
class TrainingController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$trainings = Training::oldest()->paginate(5);
return view('admin.trainings.index', compact('trainings'));
with('i', (request()->input('page', 1) -1) *5);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
$motorbikes = Motorbike::all();
$formers = Former::all();
$students = Student::all();
$typeseances = Typeseance::all();
return view('admin.trainings.create', compact('motorbikes','formers', 'students', 'typeseances', 'trainings'));
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
$request->validate([
'date_seance' => 'required',
'hour_start' => 'required',
'hour_end' => 'required',
'fk_motorbike' => 'required',
'fk_former' => 'required',
'fk_student' => 'required',
'fk_typeseance' => 'required'
]);
$date_seance = Carbon::parse($request->get('date_seance'))->format('Y-m-d');
$hour_start = $request->get('hour_start');
$hour_end = $request->get('hour_end');
$fk_motorbike = $request->get('fk_motorbike');
$fk_student = $request->get('fk_student');
$fk_former = $request->get('fk_former');
$fk_typeseance = $request->get('fk_typeseance');
$conflictTraining = Training::where('fk_motorbike', $request->get('fk_motorbike'))
->whereDate('date_seance', "=" , Carbon::parse($date_seance))
->where('hour_start', "<=" , $request->get('hour_start'))
->where('hour_end', ">=" , $request->get('hour_end'))
->where('fk_former', $request->get('fk_former'))
->first();
$conflictRevision = Revision::where('fk_motorbike', $fk_motorbike)
->whereDate('date_revision_start', "<=" , Carbon::parse($date_seance))
->where('hour_start', "<=" , $request->get('hour_start'))
->where('hour_end', ">=" , $request->get('hour_end'))
->whereDate('date_revision_end', "<=" , Carbon::parse($date_seance))
->first();
if(isset($conflictRevision)) {
return redirect()->route('trainings.index')
->with('error', 'revision');
}
if(isset($conflictTraining)){
return redirect()->route('trainings.index')
->with('error', 'training');
}
else{
Training::create($request->all());
return redirect()->route('trainings.index')
->with('success', 'Add');
}
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
//
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
//
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id)
{
//
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
//
}
}
I think my problem is here with the hours ?
$conflictRevision = Revision::where('fk_motorbike', $fk_motorbike)
->whereDate('date_revision_start', "<=" , Carbon::parse($date_seance))
->where('hour_start', "<=" , $request->get('hour_start'))
->where('hour_end', ">=" , $request->get('hour_end'))
->whereDate('date_revision_end', "<=" , Carbon::parse($date_seance))
->first();
I think you in advance.
from Newest questions tagged laravel-5 - Stack Overflow https://ift.tt/32diVMQ
via IFTTT
Aucun commentaire:
Enregistrer un commentaire