Laravel 两个模型之间的规划

Laravel 两个模型之间的规划,laravel,laravel-5,Laravel,Laravel 5,我的计划还存在问题。我的第一个模型是修订版,包含以下信息: 日期从2019年9月12日开始至2019年9月14日,时间从07:00开始至09:00结束,自行车000001 下面,我没有问题 现在,在我的模型培训中,如果我想参加2019年9月14日10:00至12:00的自行车000001培训 我有一个错误消息??通常,录音是正确的 你有没有更好的办法来比较我的开始时间和结束时间 感谢您的帮助和时间。摩托车正在修订时出现冲突错误消息的原因是您在第一次$conflictRevision查询中仅比较

我的计划还存在问题。我的第一个模型是修订版,包含以下信息:

日期从2019年9月12日开始至2019年9月14日,时间从07:00开始至09:00结束,自行车000001

下面,我没有问题

现在,在我的模型培训中,如果我想参加2019年9月14日10:00至12:00的自行车000001培训

我有一个错误消息??通常,录音是正确的

你有没有更好的办法来比较我的开始时间和结束时间


感谢您的帮助和时间。

摩托车正在修订时出现冲突错误消息的原因是您在第一次$conflictRevision查询中仅比较天数。第一个查询中没有时间,因此它只在任何给定的小时内与当天匹配-因此一天中的所有小时都将失败/冲突

您有三个查询正在执行类似的操作:

$conflictRevision = Revision::where('fk_motorbike', $fk_motorbike)
        ->whereDate('date_revision_start', "<=" , $date_seance)
        ->whereDate('date_revision_end', ">=", $date_seance)
        ->first();

$conflictRevision1 = Revision::where('fk_motorbike', $fk_motorbike)
        ->whereDate('date_revision_start', "<=" , $date_seance)
        ->where('hour_start', "<=" , $request->get('hour_start'))  
        ->where('hour_end', ">=" , $request->get('hour_end'))
        ->first();

$conflictRevision2 = Revision::where('fk_motorbike', $fk_motorbike)
        ->whereDate('date_revision_end', "<=" , $date_seance) 
        ->where('hour_start', "<=" , $request->get('hour_start'))  
        ->where('hour_end', ">=" , $request->get('hour_end'))
        ->first();
而且。。。应该解决修订中的摩托车问题

$conflictRevision = Revision::where('fk_motorbike', $fk_motorbike)
        ->whereDate('date_revision_start', "<=" , $date_seance)
        ->whereDate('date_revision_end', ">=", $date_seance)
        ->first();

$conflictRevision1 = Revision::where('fk_motorbike', $fk_motorbike)
        ->whereDate('date_revision_start', "<=" , $date_seance)
        ->where('hour_start', "<=" , $request->get('hour_start'))  
        ->where('hour_end', ">=" , $request->get('hour_end'))
        ->first();

$conflictRevision2 = Revision::where('fk_motorbike', $fk_motorbike)
        ->whereDate('date_revision_end', "<=" , $date_seance) 
        ->where('hour_start', "<=" , $request->get('hour_start'))  
        ->where('hour_end', ">=" , $request->get('hour_end'))
        ->first();
$conflictRevision1 = Revision::where('fk_motorbike', $fk_motorbike)
    ->whereDate('date_revision_start', "<=" , $date_seance)
    ->whereDate('date_revision_end', ">=" , $date_seance) // <--Note I changed the operator
    ->where('hour_start', "<=" , $request->get('hour_start'))  
    ->where('hour_end', ">=" , $request->get('hour_end'))
    ->first();