From 474f1858c1d7ff0af60f0fa4d55a9d3fe54a959a Mon Sep 17 00:00:00 2001 From: mkm <727897186@qq.com> Date: Mon, 7 Aug 2023 11:28:56 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8C=BA=E5=9F=9F=20=20=E5=90=88=E5=90=8C=20?= =?UTF-8?q?=20=E5=92=8C=E5=85=B6=E4=BB=96=E6=8E=92=E5=BA=8F=E6=9B=B4?= =?UTF-8?q?=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/auth/AdminController.php | 5 +++- .../controller/user/UserController.php | 5 +++- app/adminapi/logic/auth/AdminLogic.php | 4 +-- app/adminapi/logic/contract/ContractLogic.php | 28 +++++++++---------- app/adminapi/logic/user/UserLogic.php | 2 +- app/api/controller/CompanyController.php | 2 +- app/common/logic/CompanyLogic.php | 9 ++++-- app/common/logic/UserLogic.php | 7 +++-- app/common/model/Company.php | 8 +++--- app/common/model/contract/Contract.php | 4 +++ .../model/informationg/UserInformationg.php | 1 + 11 files changed, 46 insertions(+), 29 deletions(-) diff --git a/app/adminapi/controller/auth/AdminController.php b/app/adminapi/controller/auth/AdminController.php index 30e8e570c..1166b624c 100755 --- a/app/adminapi/controller/auth/AdminController.php +++ b/app/adminapi/controller/auth/AdminController.php @@ -166,7 +166,10 @@ class AdminController extends BaseAdminController if ($result && $result['contract'] && $result['contract']['file'] != '') { $data = [ 'name' => $result['name'] . '合同', - 'signatories' => [['fullName' => $result['name'], 'identityType' => 1, 'identityCard' => $result['id_card'], 'mobile' => $result['account'], 'noNeedVerify' => 1, 'signLevel' => 1]], + 'signatories' => [ + ['fullName' => $result['name'], 'identityType' => 1, 'identityCard' => $result['id_card'], 'mobile' => $result['account'], 'noNeedVerify' => 1, 'signLevel' => 1], + ['fullName' => $result['contract']['party_a_info']['company_name'], 'identityType' => 12, 'identityCard' => $result['contract']['party_a_info']['organization_code'], 'email' => $result['contract']['party_a_info']['master_email'], 'noNeedVerify' => 1, 'signLevel' => 1] + ], 'url' => $result['contract']['file'] ]; $res = app(JunziqianController::class)->Signing($data,$result['contract']['id']); diff --git a/app/adminapi/controller/user/UserController.php b/app/adminapi/controller/user/UserController.php index c6b06583c..6a0051a02 100755 --- a/app/adminapi/controller/user/UserController.php +++ b/app/adminapi/controller/user/UserController.php @@ -112,7 +112,10 @@ class UserController extends BaseAdminController } $data = [ 'name' => $result['nickname'] . '的合同', - 'signatories' => [['fullName' => $result['nickname'], 'identityType' => 1, 'identityCard' => $result['id_card'], 'mobile' => $result['mobile'], 'noNeedVerify' => 1, 'signLevel' => 1]], + 'signatories' => [ + ['fullName' => $result['nickname'], 'identityType' => 1, 'identityCard' => $result['id_card'], 'mobile' => $result['mobile'], 'noNeedVerify' => 1, 'signLevel' => 1], + ['fullName' => $result['contract']['party_a_info']['company_name'], 'identityType' => 12, 'identityCard' => $result['contract']['party_a_info']['organization_code'], 'email' => $result['contract']['party_a_info']['master_email'], 'noNeedVerify' => 1, 'signLevel' => 1] + ], 'url' => $result['contract']['file'] ]; $res = app(JunziqianController::class)->Signing($data,$result['contract']['id']); diff --git a/app/adminapi/logic/auth/AdminLogic.php b/app/adminapi/logic/auth/AdminLogic.php index 34992a2eb..89cd31af0 100755 --- a/app/adminapi/logic/auth/AdminLogic.php +++ b/app/adminapi/logic/auth/AdminLogic.php @@ -250,9 +250,9 @@ class AdminLogic extends BaseLogic }) ->find(); if (empty($admin['contract']['party_a'])) { - $admin['contract']['party_a_name'] = ''; + $admin['contract']['party_a_info'] = ''; } else { - $admin['contract']['party_a_name'] = Company::where(['id' => $admin['contract']['party_a']])->value('company_name'); + $admin['contract']['party_a_info'] = Company::where(['id' => $admin['contract']['party_a']])->field('id,company_name,organization_code,master_name,master_phone,master_email')->find(); } if ($action == 'detail') { return $admin; diff --git a/app/adminapi/logic/contract/ContractLogic.php b/app/adminapi/logic/contract/ContractLogic.php index b18062c17..3f8bf98eb 100644 --- a/app/adminapi/logic/contract/ContractLogic.php +++ b/app/adminapi/logic/contract/ContractLogic.php @@ -17,6 +17,8 @@ namespace app\adminapi\logic\contract; use app\common\model\contract\Contract; use app\common\logic\BaseLogic; +use app\common\model\Company; +use app\common\model\user\User; use think\facade\Db; @@ -118,28 +120,26 @@ class ContractLogic extends BaseLogic $data = Db::name('contract')->where('id', $params['id']) ->withAttr('party_b_info', function ($value, $data) { if ($data['type'] == 1) { - $filed=['id,company_name,company_type,organization_code,province,city,area,street,address,qualification']; - $company=Db::name('company')->where('id', $data['party_b'])->field($filed) - ->withAttr('company_type_name', function ($value, $data) { - return Db::name('dict_data')->where('id', $data['company_type'])->value('name'); - }) - ->find(); + $field=['id,company_name,company_type,company_type company_type_name,organization_code, + province,city,area,street,village,brigade,address,province province_name,city city_name,area area_name,street street_name,village village_name,brigade brigade_name, + qualification']; + $company=Company::where(['id'=> $data['party_b']])->field($field)->find(); $company['qualification']=json_decode($company['qualification'],true); return $company; } else { - $filed=['id,avatar,nickname,sex,mobile,province,city,area,street,village,brigade,address,qualification']; - $user= Db::name('user')->where('id', $data['party_b'])->field($filed)->find(); + $filed=['id,avatar,nickname,sex,mobile, + province,city,area,street,village,brigade,address,province province_name,city city_name,area area_name,street street_name,village village_name,brigade brigade_name, + qualification']; + $user= User::where('id', $data['party_b'])->field($filed)->find(); $user['qualification']=json_decode($user['qualification'],true); return $user; } }) ->withAttr('party_a_info', function ($value, $data) { - $filed=['id,company_name,company_type,organization_code,province,city,area,street,address,qualification']; - $company=Db::name('company')->where('id', $data['party_a']) - ->withAttr('company_type_name', function ($value, $data) { - return Db::name('dict_data')->where('id', $data['company_type'])->value('name'); - }) - ->field($filed)->find(); + $field=['id,company_name,company_type,company_type company_type_name,organization_code, + province,city,area,street,village,brigade,address,province province_name,city city_name,area area_name,street street_name,village village_name,brigade brigade_name, + qualification']; + $company=Company::where(['id'=> $data['party_a']])->field($field)->find(); $company['qualification']=json_decode($company['qualification'],true); return $company; diff --git a/app/adminapi/logic/user/UserLogic.php b/app/adminapi/logic/user/UserLogic.php index d50d8ad24..ee8fd7d65 100755 --- a/app/adminapi/logic/user/UserLogic.php +++ b/app/adminapi/logic/user/UserLogic.php @@ -52,7 +52,7 @@ class UserLogic extends BaseLogic // $user->sex = $user->getData('sex'); $user['qualification']=json_decode($user->qualification,true); if($user->is_contract==1){ - $user['contract']=Contract::where(['type'=>2,'party_b'=>$userId])->with(['partyA','contractType'])->find(); + $user['contract']=Contract::where(['type'=>2,'party_b'=>$userId])->with(['partyAInfo','contractType'])->find(); } return $user->toArray(); } diff --git a/app/api/controller/CompanyController.php b/app/api/controller/CompanyController.php index 1c9d0f406..643e643e7 100644 --- a/app/api/controller/CompanyController.php +++ b/app/api/controller/CompanyController.php @@ -110,7 +110,7 @@ class CompanyController extends BaseApiController } $query = User::where($wehre); $count = $query->count(); - $users = $query->page($page)->limit($limit)->with(['company' => function ($query) { + $users = $query->order('id', 'desc')->page($page)->limit($limit)->with(['company' => function ($query) { $query->field('id,company_name'); }])->append(['province_name', 'city_name', 'area_name', 'street_name']) ->field('id,avatar,real_name,account,mobile as phone,province,city,area,street,company_id,qualification,nickname,is_contract,is_captain') diff --git a/app/common/logic/CompanyLogic.php b/app/common/logic/CompanyLogic.php index 7ab7e9f03..70b31f1aa 100644 --- a/app/common/logic/CompanyLogic.php +++ b/app/common/logic/CompanyLogic.php @@ -181,8 +181,8 @@ class CompanyLogic extends BaseLogic $data['admin_name'] = Db::name('admin')->where('id', $data['admin_id'])->value('name'); $data['area_manager_name'] = Db::name('admin')->where('id', $data['area_manager'])->value('name'); $data['contract'] = Db::name('contract')->where('party_b', $data['id']) - ->withAttr('party_a_name', function ($value, $data) { - return Db::name('company')->where('id', $data['party_a'])->value('company_name'); + ->withAttr('party_a_info', function ($value, $data) { + return Db::name('company')->where('id', $data['party_a'])->field('id,company_name,organization_code,master_name,master_email,master_phone')->find(); }) ->find(); } @@ -240,7 +240,10 @@ class CompanyLogic extends BaseLogic if ($result && $result['contract'] && $result['contract']['file'] != '') { $data = [ 'name' => $result['company_name'] . '合同', - 'signatories' => [['fullName' => $result['company_name'], 'identityType' => 12, 'identityCard' => $result['organization_code'], 'email' => $result['master_email'], 'noNeedVerify' => 1, 'signLevel' => 1]], + 'signatories' => [ + ['fullName' => $result['company_name'], 'identityType' => 12, 'identityCard' => $result['organization_code'], 'email' => $result['master_email'], 'noNeedVerify' => 1, 'signLevel' => 1], + ['fullName' => $result['contract']['party_a_info']['company_name'], 'identityType' => 12, 'identityCard' => $result['contract']['party_a_info']['organization_code'], 'email' => $result['contract']['party_a_info']['master_email'], 'noNeedVerify' => 1, 'signLevel' => 1] + ], 'url' => $result['contract']['file'] ]; $res = app(JunziqianController::class)->Signing($data, $result['contract']['id']); diff --git a/app/common/logic/UserLogic.php b/app/common/logic/UserLogic.php index a194d2438..ddf2d0d18 100755 --- a/app/common/logic/UserLogic.php +++ b/app/common/logic/UserLogic.php @@ -54,7 +54,7 @@ class UserLogic extends BaseLogic // $user->sex = $user->getData('sex'); $user['qualification'] = json_decode($user->qualification, true); // if ($user->is_contract == 1) { - $user['contract'] = Contract::where(['type' => 2, 'party_b' => $userId])->with(['partyA', 'contractType'])->find(); + $user['contract'] = Contract::where(['type' => 2, 'party_b' => $userId])->with(['partyAInfo', 'contractType'])->find(); // } return $user->toArray(); } @@ -148,7 +148,10 @@ class UserLogic extends BaseLogic } $data = [ 'name' => $result['nickname'] . '的合同', - 'signatories' => [['fullName' => $result['nickname'], 'identityType' => 1, 'identityCard' => $result['id_card'], 'mobile' => $result['mobile'], 'noNeedVerify' => 1, 'signLevel' => 1]], + 'signatories' => [ + ['fullName' => $result['nickname'], 'identityType' => 1, 'identityCard' => $result['id_card'], 'mobile' => $result['mobile'], 'noNeedVerify' => 1, 'signLevel' => 1], + ['fullName' => $result['contract']['party_a_info']['company_name'], 'identityType' => 12, 'identityCard' => $result['contract']['party_a_info']['organization_code'], 'email' => $result['contract']['party_a_info']['master_email'], 'noNeedVerify' => 1, 'signLevel' => 1] + ], 'url' => $result['contract']['file'] ]; $res = app(JunziqianController::class)->Signing($data, $result['contract']['id']); diff --git a/app/common/model/Company.php b/app/common/model/Company.php index 30e2c313d..2c6c3221d 100644 --- a/app/common/model/Company.php +++ b/app/common/model/Company.php @@ -27,10 +27,10 @@ class Company extends BaseModel protected $name = 'company'; - // public function getCompanyTypeAttr($value) - // { - // return DictData::where('id', $value)->value('name'); - // } + public function getCompanyTypeNameAttr($value) + { + return DictData::where('id', $value)->value('name'); + } public function getProvinceNameAttr($value) { diff --git a/app/common/model/contract/Contract.php b/app/common/model/contract/Contract.php index 1a44c8637..0b6bd0613 100644 --- a/app/common/model/contract/Contract.php +++ b/app/common/model/contract/Contract.php @@ -44,6 +44,10 @@ class Contract extends BaseModel { return $this->hasOne(Company::class, 'id', 'company_id'); } + public function partyAInfo() + { + return $this->hasOne(Company::class, 'id', 'party_a')->filed('id,company_name,organization_code,master_name,master_phone,master_email'); + } public function partyA() { return $this->hasOne(Company::class, 'id', 'party_a')->bind(['party_a_name'=>'company_name']); diff --git a/app/common/model/informationg/UserInformationg.php b/app/common/model/informationg/UserInformationg.php index 0c1a02e00..b584a1318 100644 --- a/app/common/model/informationg/UserInformationg.php +++ b/app/common/model/informationg/UserInformationg.php @@ -107,6 +107,7 @@ class UserInformationg extends BaseModel $a = json_decode($v['data'], true); $arr = [ 'id' => $v['category_child'], + 'update_time'=>$v['update_time'], 'datas' => $a ]; if ($a) {