2016-11-15 172 views
0

我有意外和考勤表。意外有accident_date,driver_id。出勤率有working_date和driver_id。Laravel 5.3 Querybuilder

我想要的流程是一旦我添加意外,並填寫accident_date字段,它需要檢查考勤working_date,以及有多少驅動程序在該日期工作,它會顯示驅動程序名稱通過篩選器只工作。

例如:出勤率11/13/2016只有2名司機工作,一旦我加上意外相同的日期與出席11/13/2016只有那些2名司機的名字將被顯示/可用。

這裏是我的控制器至今:

public function render(View $view, $route = null, $obj = null, $method = 'POST') { 
    $claimTypeList = ClaimType::getArray(); 
    $accidentStatusList = AccidentStatus::getArray(); 
    $driver = Driver::pluck('first_name', 'id'); 
    $view->with(compact('claimTypeList', 'accidentStatusList', 'driver')); 
    return parent::render($view, $route, $obj, $method); 
} 

回答

0

使用join$driver查詢與考勤表

$driver = Driver::select('first_name', 'drivers.id') 
    ->join('attendances', 'attendances.driver_id', '=', 'drivers.id') 
    ->where('working_date', date('Y-m-d', strtotime('11/13/2016')) 
    ->get(); 

Source

+0

如何,如果日期是不是11/13? –

+0

這只是你的代碼中的一個例子。你可以在那裏傳遞一個字符串date的變量。也許可以在用戶選擇日期時使用來自GET參數的'Request' https://laravel.com/docs/5.3/requests#retrieving-input – xmhafiz