【发布时间】:2020-10-24 22:23:02
【问题描述】:
我正在使用 Laravel-5.8 开发一个项目
class Employee extends Model
{
protected $table = 'employees';
protected $primaryKey = 'id';
protected $fillable = [
'id',
'fist_name',
'last_name',
'supervisor_id',
];
public function assessment()
{
return $this->hasMany('App\Models\EmployeeAssessment', 'id', 'employee_id');
}
public function supervisor()
{
return $this->hasOne('App\Models\Employee', 'id', 'supervisor_id');
}
}
class Assessment extends Model
{
protected $table = 'employee_assessments';
protected $fillable = [
'id',
'employee_id',
'is_submitted',
'is_approved',
];
public function employee()
{
return $this->belongsTo('App\Models\Employee','employee_id');
}
}
每个员工都有一个主管,主管会有多个员工向他汇报。 员工应提交评估,并由主管批准。如果员工提交了他的评估,那么 is_submitted 为 1,否则为 0。 主管只能批准提交的 (is_submitted = 1) 评估。当他批准时 is_approved 为 1。
$employees_that_submitted_assessment = Assessment::where('is_submitted', 1)->get(); //Note:If the submitted assessment approved, is_approved = 1 else 0
$supervisor_completed_approvals = Employee::get();
如何完成上面的查询来选择已批准所有提交评估的主管?
注意:All is:approved 必须为 1,其中 is_submitted 为 1 的员工附属于主管。
【问题讨论】:
-
在员工模型检查 supervisor() 函数中.. 可以@mikefolu 吗?
-
@AbdullahAlNoor - 是的,检查 supervisor() 函数。每个员工都有一个主管
标签: laravel