|
|
@ -35,8 +35,6 @@ class AppointmentTimeService implements AppointmentTimeServiceInterface |
|
|
$shopcartIds = explode(',',$shopcartIds); |
|
|
$shopcartIds = explode(',',$shopcartIds); |
|
|
$sotreIds = ShoppingCart::query()->whereIn('id',$shopcartIds)->pluck('store_id'); |
|
|
$sotreIds = ShoppingCart::query()->whereIn('id',$shopcartIds)->pluck('store_id'); |
|
|
$stores = Store::query()->whereIn('id',$sotreIds)->get()->toArray(); |
|
|
$stores = Store::query()->whereIn('id',$sotreIds)->get()->toArray(); |
|
|
$startTimeArr = []; |
|
|
|
|
|
$endTimeArr = []; |
|
|
|
|
|
$time1Arr = []; |
|
|
$time1Arr = []; |
|
|
$time2Arr = []; |
|
|
$time2Arr = []; |
|
|
$time3Arr = []; |
|
|
$time3Arr = []; |
|
|
@ -67,35 +65,27 @@ class AppointmentTimeService implements AppointmentTimeServiceInterface |
|
|
array_push($time2Arr,$time2); |
|
|
array_push($time2Arr,$time2); |
|
|
} |
|
|
} |
|
|
$time1Max = max($time1Arr); |
|
|
$time1Max = max($time1Arr); |
|
|
|
|
|
if($nowTime > $time1Max){ |
|
|
|
|
|
$time1Max = ceil($nowTime / 1800) * 1800; |
|
|
|
|
|
} |
|
|
$time2Min = min($time2Arr); |
|
|
$time2Min = min($time2Arr); |
|
|
$endTime = $time2Min; |
|
|
|
|
|
|
|
|
$length = ceil(($time2Min - $time1Max) / 1800); |
|
|
|
|
|
for ($i=0;$i<$length;$i++){ |
|
|
|
|
|
$addTime = $time1Max + (30*60*$i); |
|
|
|
|
|
$res[] = date('h:i',$addTime); |
|
|
|
|
|
} |
|
|
if(!empty($time3Arr) && !empty($time4Arr)){ |
|
|
if(!empty($time3Arr) && !empty($time4Arr)){ |
|
|
$time3Max = max($time3Arr); |
|
|
$time3Max = max($time3Arr); |
|
|
|
|
|
if($nowTime > $time3Max){ |
|
|
|
|
|
$time3Max = ceil($nowTime / 1800) * 1800; |
|
|
|
|
|
} |
|
|
$time4Min = min($time4Arr); |
|
|
$time4Min = min($time4Arr); |
|
|
$endTime = $time4Min; |
|
|
|
|
|
|
|
|
$length = ceil(($time4Min - $time3Max) / 1800); |
|
|
|
|
|
for ($i=0;$i<$length;$i++){ |
|
|
|
|
|
$addTime = $time3Max + (30*60*$i); |
|
|
|
|
|
$res[] = date('H:i',$addTime); |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
if($nowTime > $time1Max){ |
|
|
|
|
|
$time1Max = $nowTime; |
|
|
|
|
|
} |
|
|
|
|
|
$res = []; |
|
|
|
|
|
for($i = 1;$i<=10;$i++){ |
|
|
|
|
|
$time = time() + (30*60*$i); |
|
|
|
|
|
if($time < $time2Min){ |
|
|
|
|
|
$time5 = $time1Max + (30*60*$i); |
|
|
|
|
|
}else{ |
|
|
|
|
|
if(empty($time3Max)){ |
|
|
|
|
|
return $res; |
|
|
|
|
|
} |
|
|
|
|
|
$time5 = $time3Max + (30*60*$i); |
|
|
|
|
|
} |
|
|
|
|
|
if($time5 >= $endTime){ |
|
|
|
|
|
return $res; |
|
|
|
|
|
} |
|
|
|
|
|
$res[] = date('h:i',$time5); |
|
|
|
|
|
} |
|
|
|
|
|
// foreach ($stores as $store){
|
|
|
|
|
|
//
|
|
|
|
|
|
// }
|
|
|
|
|
|
return $res; |
|
|
return $res; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |