TaskSystem/app/api/controller/ContractController.php
2023-07-20 15:10:52 +08:00

50 lines
1.8 KiB
PHP

<?php
namespace app\api\controller;
use app\common\model\auth\Admin;
use app\common\model\Company;
use app\common\model\contract\Contract;
/**
* 搜索
* Class ContractController
* @package app\api\controller
*/
class ContractController extends BaseApiController
{
public function index()
{
$page = $this->request->get('page', 1);
$limit = $this->request->get('limit', 15);
$admin = Admin::where('id', $this->userInfo['admin_id'])->find();
if (empty($admin)) {
return $this->success();
}
$where = empty($admin['company_id']) ? ['admin_id' => $admin['id']] : ['company_id' => $admin['company_id']];
$query = Contract::where($where);
$count = $query->count();
$contract = $query->page($page)->limit($limit)->select();
return $this->success('success', ['count' => $count, 'data' => $contract], 1, 1);
}
public function view($id)
{
$contract = Contract::find($id);
if (empty($contract)) {
return $this->fail('合同不存在');
}
$company = Company::where('id', $contract['company_id'])->find();
$company['other_contacts'] = json_decode($company['other_contacts'], true);
$company['qualification'] = json_decode($company['qualification'], true);
$users = Admin::where('company_id', $company['id'])->field('id,name,account,phone,qualification')->select()->toArray();
foreach ($users as &$user) {
$user['is_main'] = $user['id'] == $company['admin_id'] ? 1 : 0;
$user['qualification'] = json_decode($user['qualification'], true);
unset($user['role_id'], $user['dept_id'], $user['jobs_id'], $user['id']);
}
return $this->success('success', ['contract' => $contract, 'company' => $company, 'users' => $users], 1, 1);
}
}