第一个方法具有查询条件,它返回指定查询的计数。第二个方法调用第一个方法。第一个问题,如何从方法userSummary将参数 $ compid 传递给方法countEmployee?第二个问题,在方法userSummary中调用方法countEmployee是正确的事情吗?
第一种方法
public function countEmployee($compid){
$query = User::query();
$company = $query;
// $thgarments = $query;
$company->whereHas('company', function ($q) {
$q->where('company_id','=', $compid);
});
$company->where('emp_status','=', 'Regular');
$totalemployee = $company->count();
return $totalemployee;
}
第二种方法
public function userSummary()
{
$tenghwa = countEmployee(2);
}
答案 0 :(得分:1)
尝试此更正的代码
public function countEmployee($compid)
{
$query = User::query();
$totalemployee = $query->whereHas('company', function ($q) use ($compid) {
$q->where('company_id','=', $compid);
})->where('emp_status','=', 'Regular')
->count();
return $totalemployee;
}
答案 1 :(得分:0)
public function countEmployee($compid){
$query = User::query();
$company = $query;
// $thgarments = $query;
$company->whereHas('company', function ($q) use($compid) {
$q->where('company_id','=', $compid);
});
$company->where('emp_status','=', 'Regular');
$totalemployee = $company->count();
return $totalemployee;
}
public function userSummary()
{
$tenghwa = $this->countEmployee(2);
}
我意识到自己的错误。我应该在第一种方法中“使用” $ compid,在第二种方法中,我应该将$ this放在调用countEmployee方法中。