有两个表出勤和休息时间。在出勤表中有两列start_time
和end_time
,这两列start_break_time
和end_break_time
在中断表中。管理员也可以从出勤/休息时间更改/修改任何时间,我在编辑之前将以前的记录克隆到Attendance_Log和Break_Log表中。
我正在使用AttendanceModel中的左联接,当查看来自Attendance和Break表的当前出勤记录时,它工作得很好,而且我还为Current / Log Attendance添加了以下条件
if($url_seg_four =='log'){
$attendance_table = 'Attendance_Log';
$break_table = 'Break_Log';
} else {
$attendance_table = 'Attendance';
$break_table = 'Break';
}
$attendance_query = DB::table($attendance_table)->select('attendance.*',
DB::raw('GROUP_CONCAT(CONCAT(start_break_time,'"-"',end_break_time)) as break_punch_records') ,
)
if($url_seg_four =='log'){
$attendance_query = $attendance_query->leftJoin($break_table,function ($breakleftJoin){
$breakleftJoin->on('attendance.id','=','break.attendance_id');
$breakleftJoin->where('break.log_id','=',$url_log_id);
})
} else {
$attendance_query = $attendance_query->leftJoin($break_table,'attendance.id','=','break.attendance_id')
}
$attendance_query->get();
但是问题是当我查看相同出勤率的Log时,break_punch_records列为null,令人惊讶的是,当我获得Log Attendance的最后一个查询并在mysql工具break_punch_records
上运行时,它显示的是记录值。 / p>
注意:如果日志查询中有错误,如何用break_punch_records
正确显示记录,以及如果是laravel / php导致错误,那么如何在当前出勤视图中正确显示记录,我也感到困惑