Laravel:在时间范围内禁用“预订”时间

时间:2018-07-22 00:39:17

标签: php mysql laravel laravel-blade

我正试图在一整天的时间内禁用一个盒子。

这一天从雇员的设定日期/时间范围开始,因此,例如,如果该雇员在星期二9-5上班并且服务时间为1小时,则他们的最后预订时间为下午4点,因为这是最后一次工作预订小时。这种逻辑效果很好,但是它会在我努力工作的那一天插入“预定”时段。

@php
$employee_booking = $bookings->where('employee_id',$employeedetails->id)->where('start_date', date('Y-m-d', strtotime($_GET['booking_date'])))->all();
@endphp

@for ($i=$start_time;$i<=$end_time;$i = $i + 30*60)
    @foreach($employee_booking as $booking)
        @if($i >= strtotime($booking->start_time) && $i <= strtotime($booking->end_time))
            Booking [unavailable] {{ $booking->start_time }} - {{ $booking->end_time }} ({{$booking->title}}) <br>
        @else
            {{ date('H:i a', $i) }} [available] <br>
        @endif
    @endforeach
@endfor

在上面的示例中,它基于员工的工作时间,该工作时间是从指定为8am-4pm的数据库中提取的。请查看此屏幕截图(很长才能添加到线程中):http://prntscr.com/k9e9b2

从输出的数据中可以看到,它们重复了一次,因为它处于foreach循环中,但是我不确定是否有其他方法可以使这些数据正常工作。

此数据的目的是将其格式化为更可表示的形式,例如:http://prntscr.com/k9e9pp-从此示例中可以看到,不可用的预订已被阻止,这需要向所有人重复当天的其他预订,而不仅仅是该例中的预订。

我假设它必须进入一个数组,然后以某种方式进行处理,但这是我真正努力的一步。

我希望这对某人有足够的帮助我的信息。

谢谢!

马特

0 个答案:

没有答案