request->get('page', 1); $limit = $this->request->get('limit', 15); $admin = Admin::findOrEmpty($this->userInfo['admin_id']); $myCompany = Company::findOrEmpty($admin['company_id'])->toArray(); $companyIds = Contract::where('party_a', $myCompany['id'])->column('party_b'); $query = Company::whereIn('id', $companyIds); $count = $query->count(); $companies = $query->page($page)->limit($limit)->select()->each(function ($company) { $company['other_contacts'] = json_decode($company['other_contacts'], true); $company['qualification'] = $company['qualification']!=null?json_decode($company['qualification'], true):''; })->toArray(); return $this->success('', ['count' => $count, 'data' => $companies]); } public function view($id) { $company = Company::findOrEmpty($id)->toArray(); $company['other_contacts'] = json_decode($company['other_contacts'], true); $company['qualification'] = $company['qualification']!=null?json_decode($company['qualification'], true):''; return $this->success('', $company); } public function mine() { $admin = Admin::findOrEmpty($this->userInfo['admin_id']); $company = Company::findOrEmpty($admin['company_id'])->toArray(); $company['other_contacts'] = json_decode($company['other_contacts'], true); $company['qualification'] = $company['qualification']!=null?json_decode($company['qualification'], true):''; return $this->success('', $company); } }