diff --git a/app/api/controller/CompanyController.php b/app/api/controller/CompanyController.php index 3499e2143..e7315250d 100644 --- a/app/api/controller/CompanyController.php +++ b/app/api/controller/CompanyController.php @@ -25,7 +25,7 @@ class CompanyController extends BaseApiController [$page, $limit] = $this->getPage(); $myCompany = Company::findOrEmpty($this->userInfo['company_id'])->toArray(); $companyIds = Contract::where('party_a', $myCompany['id'])->column('party_b'); - $query = Company::whereIn('id', $companyIds)->where('status', 1)->append(['province_name', 'city_name', 'area_name', 'street_name', 'village_name','brigade_name','area_manager_name']); + $query = Company::whereIn('id', $companyIds)->where('status', 1)->append(['province_name', 'city_name', 'area_name', 'street_name', 'village_name', 'brigade_name', 'area_manager_name']); $count = $query->count(); $companies = $query->page($page)->limit($limit)->select()->each(function ($company) { $company['other_contacts'] = json_decode($company['other_contacts'], true); @@ -41,7 +41,7 @@ class CompanyController extends BaseApiController public function unsigned() { $myCompany = Company::findOrEmpty($this->userInfo['company_id'])->toArray(); - $query = Company::where(['street' => $myCompany['street'], 'company_type' => [17, 18], 'is_contract' => 0])->where('id','<>',$this->userInfo['company_id']); + $query = Company::where(['street' => $myCompany['street'], 'company_type' => [17, 18], 'is_contract' => 0])->where('id', '<>', $this->userInfo['company_id']); $count = $query->count(); $companies = $query->field('*,street street_name,area area_name,city city_name,province province_name,village village_name,brigade brigade_name')->select()->toArray(); return $this->success('', ['count' => $count, 'data' => $companies]); @@ -58,13 +58,13 @@ class CompanyController extends BaseApiController if (!$query) { return $this->fail('公司不存在'); } - $company = $query->append(['province_name', 'city_name', 'area_name', 'street_name', 'area_manager_name','village_name','brigade_name'])->toArray(); + $company = $query->append(['province_name', 'city_name', 'area_name', 'street_name', 'area_manager_name', 'village_name', 'brigade_name'])->toArray(); $company['other_contacts'] = json_decode($company['other_contacts'], true); $company['qualification'] = $company['qualification'] != null ? json_decode($company['qualification'], true) : ''; - if($company['qualification'] && isset($company['qualification']['other_qualifications'])){ - $company['qualification']['other_qualifications']=json_decode($company['qualification']['other_qualifications'],true); + if ($company['qualification'] && isset($company['qualification']['other_qualifications'])) { + $company['qualification']['other_qualifications'] = json_decode($company['qualification']['other_qualifications'], true); } - $contract = Contract::where('party_b',$id)->find(); + $contract = Contract::where('party_b', $id)->find(); if (!empty($contract)) { if ($contract['type'] == 2) { $contract['party_b_name'] = User::where('id', $contract['party_b'])->value('nickname'); @@ -114,7 +114,7 @@ class CompanyController extends BaseApiController $count = $query->count(); $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','village_name','brigade_name']) + }])->append(['province_name', 'city_name', 'area_name', 'street_name', 'village_name', 'brigade_name']) ->field('id,avatar,real_name,account,mobile as phone,province,city,area,street,village,brigade,company_id,create_time,qualification,nickname,is_contract,is_captain') ->select()->each(function ($item, $key) { if ($item['qualification'] != '') { @@ -122,12 +122,12 @@ class CompanyController extends BaseApiController } if ($item['is_captain'] == 1) { $item['informationg_count'] = UserInformationg::where(['create_user_id' => $item['id'], 'status' => 1])->count(); - $item['informationg_update_count'] = UserInformationg::where(['create_user_id' => $item['id'], 'status' => 1,'is_update'=>1])->count(); - $time=UserInformationgDemand::order('update_time','desc')->value('update_time'); - if($time){ - $item['informationg_update_time']=date('Y-m-d H:i:s', $time); - }else{ - $item['informationg_update_time']=''; + $item['informationg_update_count'] = UserInformationg::where(['create_user_id' => $item['id'], 'status' => 1, 'is_update' => 1])->count(); + $time = UserInformationgDemand::order('update_time', 'desc')->value('update_time'); + if ($time) { + $item['informationg_update_time'] = date('Y-m-d H:i:s', $time); + } else { + $item['informationg_update_time'] = ''; } } }); @@ -140,8 +140,8 @@ class CompanyController extends BaseApiController $user = $query->with(['company' => function ($query) { $query->field('id,company_name'); }])->field('id,sex,avatar,nickname name,account,mobile phone,id_card,qualification,province,province province_name,city,city city_name,area,area area_name,street,street street_name,village,village village_name,brigade,brigade brigade_name, is_contract,company_id,is_captain')->find()->toArray(); - - $contract = Contract::where("type",2)->where('party_b',$id)->append(['contract_type_name'])->find(); + + $contract = Contract::where("type", 2)->where('party_b', $id)->append(['contract_type_name'])->find(); $user['contract'] = $contract; // $roleIds = AdminRole::where('admin_id', $user['id'])->column('role_id'); // $user['roles'] = SystemRole::whereIn('id', $roleIds)->column('name'); @@ -168,7 +168,7 @@ class CompanyController extends BaseApiController public function Draftingcontracts() { $params = $this->request->param(); - $result = ContractLogic::Draftingcontracts($params,1); + $result = ContractLogic::Draftingcontracts($params, 1); if ($result == true) { return $this->success('生成合同成功'); } @@ -179,8 +179,8 @@ class CompanyController extends BaseApiController public function postsms() { $params = $this->request->param(); - $id=Contract::where('party_b', $params['id'])->value('id'); - $res = ContractLogic::postsms(['id'=>$id]); + $id = Contract::where('party_b', $params['id'])->value('id'); + $res = ContractLogic::postsms(['id' => $id]); if ($res == true) { return $this->success('发送成功', [], 1, 1); } else { @@ -191,39 +191,62 @@ class CompanyController extends BaseApiController /** * 股金管理 */ - public function shareholder_info(){ + public function shareholder_info() + { // $params = $this->request->param(); - $find=Company::where('id',$this->userInfo['company_id'])->field('shareholder_money,village')->find()->toArray(); - $find['is_contract']=0; - $find['check_status']=0; - if($find){ - $contract=Contract::where('party_b',$this->userInfo['company_id'])->where('contract_type',40)->field('contract_url,create_time,check_status,status')->find(); - if($contract){ - $find['contract_url']='https://worker-task.lihaink.cn'.$contract['contract_url']; - $find['contract_time']=$contract['create_time']; - $find['check_status']=$contract['check_status']; - if($contract['status']==1){ - $find['is_contract']=1; + $find = Company::where('id', $this->userInfo['company_id'])->field('shareholder_money,village')->find()->toArray(); + $find['is_contract'] = 0; + $find['check_status'] = 0; + if ($find) { + $contract = Contract::where('party_b', $this->userInfo['company_id'])->where('contract_type', 40)->field('contract_url,create_time,check_status,status')->find(); + if ($contract) { + $find['contract_url'] = 'https://worker-task.lihaink.cn' . $contract['contract_url']; + $find['contract_time'] = $contract['create_time']; + $find['check_status'] = $contract['check_status']; + if ($contract['status'] == 1) { + $find['is_contract'] = 1; } } - $village_info=Company::where('village',$find['village'])->where('company_type',17)->find(); - if($village_info){ - $find['is_amount_turned']=1; - }else{ - $find['is_amount_turned']=0; + $village_info = Company::where('village', $find['village'])->where('company_type', 17)->find(); + if ($village_info) { + $find['is_amount_turned'] = 1; + } else { + $find['is_amount_turned'] = 0; } - }else{ - $find['contract_url']=''; - $find['contract_time']=''; - $find['is_amount_turned']=0; - + } else { + $find['contract_url'] = ''; + $find['contract_time'] = ''; + $find['is_amount_turned'] = 0; } - return $this->success('ok',$find); + return $this->success('ok', $find); } - public function pay_share_capital(){ + //**发起股金合同 */ + public function initiate_shareholder_contract() + { + $params = $this->request->param(); + $params['party_b'] = $this->userInfo['company_id']; + if(!$params['party_b']){ + return $this->fail('请先绑定公司'); + } + $Company = Company::where('id', $this->userInfo['company_id'])->field('shareholder_money,village')->find(); + if($Company){ + $params['party_a'] = Company::where('village', $Company['village'])->where('company_type', 17)->value('id'); + } + if(!isset($params['party_a'])||$params['party_a']==0){ + return $this->fail('甲方公司不存在'); + } + $area_manager = Company::where('id', $params['party_b'])->value('area_manager'); + $params['area_manager'] = $area_manager; + $params['type'] = 1; + $result = ContractLogic::initiate_contract($params); + if ($result == true) { + return $this->success('发起成功,等待平台风控部上传合同'); + } + return $this->fail(ContractLogic::getError()); + } + public function pay_share_capital() + { // return } - - } diff --git a/app/common/logic/contract/ContractLogic.php b/app/common/logic/contract/ContractLogic.php index 73fe44549..2f498488e 100644 --- a/app/common/logic/contract/ContractLogic.php +++ b/app/common/logic/contract/ContractLogic.php @@ -183,7 +183,7 @@ class ContractLogic extends BaseLogic //生成合同 public static function Initiate_contract($data) { - $model = Contract::where(['party_b' => $data['party_b']])->find(); + $model = Contract::where(['party_b' => $data['party_b'],'contract_type'=>$data['contract_type']])->find(); if (empty($model)) { $model = new Contract(); $model->contract_no = time(); @@ -205,15 +205,6 @@ class ContractLogic extends BaseLogic $model->update_time = time(); $model->setAttrs($data); $res = $model->save($data); - //如果是租赁合同,调用接口通知物流系统 -// if($data['contract_type'] == 29){ -// curl_post('http://logistics.lihaink.cn/api/setContract',[],[ -// 'party_a' => $data['party_a'], -// 'party_b' => $data['party_b'], -// 'num' => $data['num'], -// 'rent_type' => 1 -// ]); -// } if($res){ return ['code'=>1,'msg'=>'发起成功,等待平台风控部上传合同','data'=>['id'=>$model->id]]; }else{