Мы пытаемся построить и API с нашим проектом. Моя проблема в том, что когда мне нужно получить конкретное событие, которое имеет столбцы date_from
и date_to
, оно всегда получает данные, даже если событие было завершено. Я хочу получить конкретное событие, которое было для оставшихся двух дат. Моя вещь, когда date_from
и date_to
равны или больше, чем сегодняшняя дата, Это покажет, а после того, как дата закончится, не будет. Вот некоторые из моих кодов.
Индекс
public function index(Request $request)
{
$person = User::find(Auth::user()->id);
$now = Carbon::now()->toDateString();
if(empty($person))
return response()->json([
'code' => '03',
'status' => 'Invalid User'
], 403);
$role = $person->role;
if ($role == 2 || $role == 3) {
$level = Event::active()->with(['groups'])
->where('school_id', '=', $person->school_id)
->where('group_id', '=', $role)
->orWhere('group_id', '=', $person)
->where('status', '=', 1)
->where('active', '=', 1)
->whereRaw("date_from <= date('$now')")
->whereRaw("date_to >= date('$now')")
->get();
return response()->json($level);
}
Результат в почтальоне
{
"id": 1,
"name": "Final",
"content": "<p>Sample</p>",
"group_id": 2,
"event_date": "2019-09-01",
"date_from": "2019-09-20", //sept 20, 2019. The event started
"date_to": "2019-10-03",//oct, 3 2019. The event end date. still gets the data even the date was not today.
"time_from": "16:15:00",
"time_to": "22:15:00",
"event_place": "Room",
"image": "",
"school_id": 1,
"smsnotify": 0,
"appnotify": 1,
"status": 1,
"active": 1,
"updated_by": null,
"created_at": "2019-09-27 08:29:13",
"updated_at": "2019-10-04 06:18:43",
"users_id": 2,
"groups": {
"id": 2,
"name": "Teachers",
"description": "Teachers",
"updated_by": null,
"created_at": null,
"updated_at": null
}
}