gpt4 book ai didi

php - 从租赁表中租用可用的汽车

转载 作者:行者123 更新时间:2023-11-29 17:56:15 24 4
gpt4 key购买 nike

我的 table 上有租金

id| user_id| car_id | starting_date | ending_date

这是汽车表

id | name

我不知道如何处理这种情况。我有 N 辆车,我只想返回特定日期可用的车辆。

例如我想在这个时期租车:2018年2月20日 - 2018年2月23日

但我不知道如何使用 Laravel 检查每个案例以查看该时段内是否有可用的汽车。

最佳答案

使用whereDoesntHave()方法。我假设您已经定义了租赁关系:

$date1 = Carbon::parse('20.02.2018')->startOfDay();
$date2 = Carbon::parse('23.02.2018')->endOfDay();
$available = Car::whereDoesntHave('rentals', function($q) use($date1, $date2) {
$q->whereBetween('starting_date', [$date1, $date2])
->orWhereBetween('ending_date', [$date1, $date2])
->orWhere(function($q) use($date1, $date2) {
$q->where('starting_date', '<', $date1)
->where('ending_date', '>', $date2);
});
})
->get();

如果没有这种关系,请在 Car 模型中定义它:

public function rentals()
{
return $this->hasMany(Rental::class);
}

关于php - 从租赁表中租用可用的汽车,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48794200/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com