diff --git a/app/api/controller/IndexController.php b/app/api/controller/IndexController.php index b7889139..7acd2960 100755 --- a/app/api/controller/IndexController.php +++ b/app/api/controller/IndexController.php @@ -123,8 +123,17 @@ class IndexController extends BaseApiController //获取签约后的合同 $signContractFile = app(JunziqianController::class)->download_file($contract['contract_no']); $signContractFile = $signContractFile ?? ''; + //获取签约后的证据 + $signContractEvidenceToPartyA = app(JunziqianController::class)->downloadVehicleContractEvidence($contract['contract_no'],$contract['company_a_name'],$contract['company_a_code']); + $signContractEvidenceToPartyA = $signContractEvidenceToPartyA ?? ''; + $signContractEvidenceToPartyB = app(JunziqianController::class)->downloadVehicleContractEvidence($contract['contract_no'],$contract['company_b_name'],$contract['company_b_code']); + $signContractEvidenceToPartyB = $signContractEvidenceToPartyB ?? ''; + $contractEvidence = json_encode([ + 'party_a' => $signContractEvidenceToPartyA, + 'party_b' => $signContractEvidenceToPartyB + ]); //更新本地合同状态 - Contract::where('id',$params['id'])->update(['signing_timer'=>2,'status'=>3,'contract_url'=>$signContractFile]); + Contract::where('id',$params['id'])->update(['signing_timer'=>2,'status'=>3,'contract_url'=>$signContractFile,'contract_evidence'=>$contractEvidence]); //更新本地车辆状态 Vehicle::where('id','in',array_column($vehicle,'id'))->update(['status'=>2]); //添加车辆到租赁列表 @@ -151,7 +160,8 @@ class IndexController extends BaseApiController 'contract_logistic_id' => $contract['id'], 'signing_timer' => 2, 'status' => 3, - 'contract_url'=>$signContractFile + 'contract_url'=>$signContractFile, + 'contract_evidence'=>$contractEvidence ]); } return json(['success' => true, 'msg' => '成功']); diff --git a/app/api/controller/JunziqianController.php b/app/api/controller/JunziqianController.php index 4b98ca5f..084f746b 100644 --- a/app/api/controller/JunziqianController.php +++ b/app/api/controller/JunziqianController.php @@ -209,6 +209,31 @@ class JunziqianController extends BaseApiController } } + public function downloadVehicleContractEvidence($applyNo,$companyName,$companyCode) { + //构建请求工具 + $requestUtils=new RequestUtils($this->serviceUrl, $this->appkey, $this->appSecret); + //初始化合同参数 + $request=array( + "applyNo" => $applyNo, + "fullName" => $companyName, //签约人名称(合同发起接口中传入的签署人姓名) + "identityCard" => $companyCode, //统一社会信用代码 + "identityType" => 12, //证件类型 1身份证, 2护照, 3台胞证, 4港澳居民来往内地通行证, 11营业执照, 12统一社会信用代码, 20子账号, 99其他 + "evidenceType" => 1 //证据类型,0图片,1视频,2人脸证据 + ); + $response = $requestUtils->doPost("/v2/sign/evidenceLinkFile",$request); + if ($response->success) { + $resData = (array)$response->data; + $resArr = []; + foreach($resData['links'] as $k=>$v){ + $this->getDownload($v,root_path() . 'public/uploads/vehicle_contract_evidence/' . $applyNo.'_'.$companyCode.'_'.$k. '.mp4'); + $resArr[] = env('project.website_domain').'/uploads/vehicle_contract_evidence/' . $applyNo.'_'.$companyCode.'_'.$k . '.mp4'; + } + return $resArr; + } else { + return false; + } + } + public function getDownload($url, $publicDir = '', $fileName = '', $type = 0) { //获取文件路径