В моем проекте Laravel -5.8 у меня есть эта модель:
class HrEmployee extends Model
{
protected $table = 'hr_employees';
protected $fillable = [
'id',
'employee_code',
'line_manager_id',
'employee_designation_id',
'employee_grade_level_id',
'first_name',
'last_name',
'nationality_id',
'other_name',
'is_hod',
'department_id',
];
public function linemanager()
{
return $this->belongsTo('App\Models\Hr\HrEmployee','line_manager_id');
}
public function designation()
{
return $this->belongsTo('App\Models\Hr\HrDesignation','employee_designation_id');
}
public function gradelevel()
{
return $this->belongsTo('App\Models\Hr\HrGradeLevel','employee_grade_level_id');
}
public function department()
{
return $this->belongsTo('App\Models\Hr\HrDepartment','department_id');
}
public function fullName()
{
return $this->first_name . ' ' . $this->other_name . ' ' . $this->last_name;
}
}
У каждого сотрудника есть менеджер линии (line_manager_id). В линейном руководителе много подчиненных, но у сотрудника не может быть более одного линейного руководителя. Линейный менеджер также является сотрудником
Контроллер
public function index()
{
$employees = HrEmployee::all();
return view('dashboard')
->with('employees', $employees);
}
view
@foreach($employees as $key => $employee)
<!-- Profile Image -->
<div class="card card-secondary card-outline">
<div class="card-body box-profile">
<h3 class="profile-username text-center">{{auth()->user()->first_name}} {{auth()->user()->last_name}}</h3>
<p class="text-muted text-center">Designation: {{isset($employee->designation) ? $employee->designation->designation_name : 'N/A'}}</p>
<ul class="list-group list-group-unbordered mb-3">
<li class="list-group-item">
<b>Staff ID:</b> <a class="float-right">{{isset($employee->employee_code) ? $employee->employee_code : 'N/A'}}</a>
</li>
<li class="list-group-item">
<b>Department:</b> <a class="float-right">{{isset($employee->department) ? $employee->department->dept_name : 'N/A'}}</a>
</li>
<li class="list-group-item">
<b>Grade Level:</b> <a class="float-right">{{isset($employee->gradelevel) ? $employee->gradelevel->grade_level_name : 'N/A'}}</a>
</li>
<li class="list-group-item">
<b>Line Manager:</b> <a class="float-right"></a>
</li>
</ul>
</div>
<!-- /.card-body -->
</div>
<!-- /.card -->
@endforeach
Таблица сотрудников имеет line_manager_id. Так что нужно принять это за ориентир. Как показано на приведенном выше бланке, как отобразить полное имя (имя, фамилия) линейного менеджера сотрудника?
Спасибо.