select('msg','data','user_id','user_operation_time','type') ->orderBy('id','desc'); if(! empty($data['user_id'])) $model->where('user_id', $data['user_id']); if(! empty($data['user_operation_time'][0]) && ! empty($data['user_operation_time'][1])) $model->whereBetween('user_operation_time',[$data['user_operation_time'][0],$data['user_operation_time'][1]]); if(! empty($data['type'])) $model->where('type',$data['type']); $list = $this->limit($model,'',$data); $list = $this->fillData($list); return [true,$list]; } public function fillData($data){ if(empty($data['data'])) return $data; $emp_map = Employee::whereIn('id',array_column($data['data'],'user_id')) ->pluck('emp_name','id') ->toArray(); foreach ($data['data'] as $key => $value){ $data['data'][$key]['user_name'] = $emp_map[$value['user_id']] ?? ''; $data['data'][$key]['user_operation_time'] = $value['user_operation_time'] ? date('Y-m-d H:i:s',$value['user_operation_time']) : ''; $data['data'][$key]['type_name'] = ErrorTable::$type[$value['type']] ?? ''; } return $data; } }