调用未定义的方法 Illuminate\Database\Query\JoinClause::whereRaw()

Call to undefined method Illuminate\Database\Query\JoinClause::whereRaw()

我正在使用旧的 Laravel 版本 5.2,我不想更新它。 whereRaw() 在联合案例中不起作用。 Laravel 5.2 的 whereRaw() 方法是否有任何修复?

DB::table('employee AS emp')
->rightJoin('attendance AS att','att.employee_id','=','emp.id')
        ->leftJoin('break_punch as bp',function ($bpLeftJoin) use ($prefix){
            $bpLeftJoin->on('bp.attendance_id','=','att.id');
//            $bpLeftJoin->whereNotNull('bp.end');
            $bpLeftJoin->whereRaw('( bp.end AND '.$prefix.'att.start_time >='.$today_startdate_unix.' )');
        });

使用 DB::raw() 方法如下所示 see

DB::table('employee AS emp')
->rightJoin('attendance AS att','att.employee_id','=','emp.id')
        ->leftJoin('break_punch as bp',function ($bpLeftJoin) use ($prefix){
            $bpLeftJoin->on('bp.attendance_id','=','att.id');
//            $bpLeftJoin->whereNotNull('bp.end');
            $bpLeftJoin->where(DB::raw('( bp.end AND '.$prefix.'att.start_time >='.$today_startdate_unix.' )'));
        });