From 0a11fef3d8e05c70a122d3d258688475bca50680 Mon Sep 17 00:00:00 2001 From: unknown <736250432@qq.com> Date: Thu, 7 Sep 2023 09:41:53 +0800 Subject: [PATCH 01/15] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=A7=9F=E8=B5=81?= =?UTF-8?q?=E8=BD=A6=E8=BE=86=E9=80=89=E6=8B=A9=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../contract/VehicleContractController.php | 44 ++++++++++++++----- app/api/controller/VehicleController.php | 8 ++++ 2 files changed, 40 insertions(+), 12 deletions(-) diff --git a/app/adminapi/controller/contract/VehicleContractController.php b/app/adminapi/controller/contract/VehicleContractController.php index 796cb08c9..1518c663b 100644 --- a/app/adminapi/controller/contract/VehicleContractController.php +++ b/app/adminapi/controller/contract/VehicleContractController.php @@ -12,15 +12,24 @@ class VehicleContractController extends BaseAdminController //风控中心上传合同 public function uploadContract() { //获取参数 - $params = $this->request->post(['id','file']); + $params = $this->request->post(['id','file','cars']); if(empty($params['id']) || empty($params['file'])){ return $this->fail('缺少必要参数'); } //获取合同信息 - $vehicle_contract = VehicleContract::where('id',$params['id'])->find(); - if(empty($vehicle_contract)){ + $vehicle_contract = VehicleContract::where('id',$params['id'])->findOrEmpty(); + if($vehicle_contract->isEmpty()){ return $this->fail('合同信息错误'); } + if($vehicle_contract['type']==0 && $vehicle_contract['contract_logistic_id'] != 0){ + if(empty($params['cars'])){ + return $this->fail('缺少必要参数cars'); + } + $cars = json_decode($params['cars'],true); + if(empty($cars)){ + return $this->fail('参数cars无效'); + } + } if($vehicle_contract['status'] != 0){ return $this->fail('合同状态错误'); } @@ -29,13 +38,14 @@ class VehicleContractController extends BaseAdminController //判断合同类型 if(!empty($vehicle_contract['contract_logistic_id'])){ //更新物流系统 - curl_post(env('project.logistic_domain').'/api/updateContract',[],[ + curl_post(env('project.logistic_domain').'/api/contractUpdate',[],[ 'id' => $vehicle_contract['contract_logistic_id'], 'file' => $params['file'], - 'status' => 1 + 'status' => 1, + 'cars_info' => $params['cars'] ]); } - VehicleContract::where('id', $params['id'])->update(['file' => $params['file'],'status'=>1]); + VehicleContract::where('id', $params['id'])->update(['file' => $params['file'],'cars_info' => $params['cars'],'status'=>1]); }catch (\Exception $e){ return $this->fail($e->getMessage()); } @@ -131,8 +141,8 @@ class VehicleContractController extends BaseAdminController return $this->fail('缺少必要参数'); } //获取数据 - $contract = VehicleContract::where('id',$params['id'])->find(); - if(empty($contract)){ + $contract = VehicleContract::where('id',$params['id'])->findOrEmpty(); + if($contract->isEmpty()){ return $this->fail('数据不存在'); } if($contract['status'] != 1){ @@ -162,8 +172,8 @@ class VehicleContractController extends BaseAdminController public function sendSms($id,$title) { //获取合同数据 - $contract = VehicleContract::where('id',$id)->find(); - if ($contract && !$contract->isEmpty() && $contract['file'] != '') { + $contract = VehicleContract::where('id',$id)->findOrEmpty(); + if (!$contract->isEmpty() && $contract['file'] != '') { //发送短信 $data = [ //甲方 @@ -227,8 +237,18 @@ class VehicleContractController extends BaseAdminController if(empty($id)){ $this->fail('参数错误'); } - $data = VehicleContract::where('id',$id)->find(); - $data['cars_info'] = json_decode($data['cars_info'],true); + $data = VehicleContract::where('id',$id)->findOrEmpty(); + if($data->isEmpty()){ + return $this->fail('未查找到数据'); + } + //判断合同类型 + if($data['type'] == 0 && $data['contract_logistic_id'] != 0){ + //获取平台车辆 + $carList = curl_get(env('project.logistic_domain').'/api/getAvailableVehicles'); + $data['car_list'] = $carList&&$carList['code']==1 ? $carList['data'] : []; + }else{ + $data['cars_info'] = json_decode($data['cars_info'],true); + } return $this->success('success',$data->toArray()); } } \ No newline at end of file diff --git a/app/api/controller/VehicleController.php b/app/api/controller/VehicleController.php index a94fd58a2..285d7548b 100644 --- a/app/api/controller/VehicleController.php +++ b/app/api/controller/VehicleController.php @@ -33,6 +33,14 @@ class VehicleController extends BaseApiController if($params['num'] > $doubleRentCar ){ return $this->fail('数量超过可再租车辆数'); } + //判断物流车辆 + $checkNum = curl_post(env('project.logistic_domain').'/api/checkCarNum',[],['num'=>$params['num']]); + if($checkNum == null){ + return $this->fail('检查车辆数量错误'); + } + if($checkNum['code'] == 0){ + return $this->fail($checkNum['msg']); + } //查找乙方公司信息 $party_b = Company::field('id,company_name,organization_code,master_name,master_phone,master_email,company_type')->where('id',$this->userInfo['company_id'])->find(); if(empty($party_b)) { From 77c8ed63dde393136939e54eceda2b29d834dca6 Mon Sep 17 00:00:00 2001 From: unknown <736250432@qq.com> Date: Thu, 7 Sep 2023 10:09:11 +0800 Subject: [PATCH 02/15] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=A7=9F=E8=B5=81?= =?UTF-8?q?=E8=BD=A6=E8=BE=86=E9=80=89=E6=8B=A9=E5=8A=9F=E8=83=BD2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/api/controller/VehicleController.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/api/controller/VehicleController.php b/app/api/controller/VehicleController.php index 285d7548b..a40b884b4 100644 --- a/app/api/controller/VehicleController.php +++ b/app/api/controller/VehicleController.php @@ -37,6 +37,10 @@ class VehicleController extends BaseApiController $checkNum = curl_post(env('project.logistic_domain').'/api/checkCarNum',[],['num'=>$params['num']]); if($checkNum == null){ return $this->fail('检查车辆数量错误'); + }else{ + if($checkNum['code'] == 0){ + return $this->fail($checkNum['msg']); + } } if($checkNum['code'] == 0){ return $this->fail($checkNum['msg']); From b1a3827ba842957510acbe618ee4ca461ec7e4fd Mon Sep 17 00:00:00 2001 From: unknown <736250432@qq.com> Date: Thu, 7 Sep 2023 10:24:13 +0800 Subject: [PATCH 03/15] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=A7=9F=E8=B5=81?= =?UTF-8?q?=E8=BD=A6=E8=BE=86=E9=80=89=E6=8B=A9=E5=8A=9F=E8=83=BD3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/api/controller/VehicleController.php | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/app/api/controller/VehicleController.php b/app/api/controller/VehicleController.php index a40b884b4..9f8dbc91d 100644 --- a/app/api/controller/VehicleController.php +++ b/app/api/controller/VehicleController.php @@ -37,14 +37,11 @@ class VehicleController extends BaseApiController $checkNum = curl_post(env('project.logistic_domain').'/api/checkCarNum',[],['num'=>$params['num']]); if($checkNum == null){ return $this->fail('检查车辆数量错误'); - }else{ - if($checkNum['code'] == 0){ - return $this->fail($checkNum['msg']); - } } if($checkNum['code'] == 0){ return $this->fail($checkNum['msg']); } + dump($checkNum);die; //查找乙方公司信息 $party_b = Company::field('id,company_name,organization_code,master_name,master_phone,master_email,company_type')->where('id',$this->userInfo['company_id'])->find(); if(empty($party_b)) { From 9ecbaf6339ca28cf5b78358ec9e91b1463994ed0 Mon Sep 17 00:00:00 2001 From: unknown <736250432@qq.com> Date: Thu, 7 Sep 2023 10:44:14 +0800 Subject: [PATCH 04/15] patch --- app/api/controller/VehicleController.php | 1 - 1 file changed, 1 deletion(-) diff --git a/app/api/controller/VehicleController.php b/app/api/controller/VehicleController.php index 9f8dbc91d..285d7548b 100644 --- a/app/api/controller/VehicleController.php +++ b/app/api/controller/VehicleController.php @@ -41,7 +41,6 @@ class VehicleController extends BaseApiController if($checkNum['code'] == 0){ return $this->fail($checkNum['msg']); } - dump($checkNum);die; //查找乙方公司信息 $party_b = Company::field('id,company_name,organization_code,master_name,master_phone,master_email,company_type')->where('id',$this->userInfo['company_id'])->find(); if(empty($party_b)) { From 50228d09682bd9ce3d50d3ebc66e3e8bf75e5e6f Mon Sep 17 00:00:00 2001 From: unknown <736250432@qq.com> Date: Thu, 7 Sep 2023 13:39:28 +0800 Subject: [PATCH 05/15] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E8=87=AA=E6=9C=89?= =?UTF-8?q?=E8=BD=A6=E8=BE=86=E5=9B=BE=E7=89=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/api/controller/IndexController.php | 1 + app/api/controller/VehicleController.php | 18 +++++++++++++++--- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/app/api/controller/IndexController.php b/app/api/controller/IndexController.php index 669cab796..c5ad73265 100755 --- a/app/api/controller/IndexController.php +++ b/app/api/controller/IndexController.php @@ -250,6 +250,7 @@ class IndexController extends BaseApiController $vehicle = json_decode($contract['cars_info'], true); $curl_res = curl_post(env('project.logistic_domain').'/api/addSelfCar', [], [ 'license' => $vehicle['license'], + 'pic' => $vehicle['pic'], 'company_id' => $contract['company_a_id'], 'company_name' => $contract['company_a_name'], 'company_user' => $contract['company_a_user'], diff --git a/app/api/controller/VehicleController.php b/app/api/controller/VehicleController.php index 285d7548b..10fa50f75 100644 --- a/app/api/controller/VehicleController.php +++ b/app/api/controller/VehicleController.php @@ -204,7 +204,12 @@ class VehicleController extends BaseApiController return $this->fail('请求类型错误'); } //获取参数 - $license = $this->request->post('license'); + $params = $this->request->post(['type','license','pic']); + if($params['type'] == 1){ + if(empty($params['license']) || empty($params['pic'])){ + return $this->fail('缺少必要参数'); + } + } //获取当前公司信息 $party_b = Company::field('id,company_name,master_name,master_phone,master_email,is_contract,organization_code,company_type')->where('id',$this->userInfo['company_id'])->find(); if(empty($party_b)){ @@ -233,6 +238,13 @@ class VehicleController extends BaseApiController if(!empty($vehicleContract)){ return $this->fail('请勿重复申请'); } + if($params['type'] == 1){ + $cars_info = json_encode(['license'=>$params['license'],'pic'=>$params['pic']]); + $car_type = 1; + }else{ + $cars_info = null; + $car_type = 0; + } //设置数据 $data = [ 'contract_logistic_id' => 0, @@ -249,9 +261,9 @@ class VehicleController extends BaseApiController 'company_b_user' => $party_b['master_name'], 'company_b_phone' => $party_b['master_phone'], 'company_b_email' => $party_b['master_email'], - 'cars_info' => isset($license) ? json_encode(['license'=>$license]) : null, + 'cars_info' => $cars_info, 'num' => 1, - 'type' => isset($license) ? 1 : 0, + 'type' => $car_type, 'status' => -1, 'create_time' => time(), 'update_time' => time() From 09a30c0b5fd5d45219e25a3b0642375bce0030cb Mon Sep 17 00:00:00 2001 From: unknown <736250432@qq.com> Date: Thu, 7 Sep 2023 14:06:42 +0800 Subject: [PATCH 06/15] patch --- app/api/controller/VehicleController.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/api/controller/VehicleController.php b/app/api/controller/VehicleController.php index 10fa50f75..165e2550a 100644 --- a/app/api/controller/VehicleController.php +++ b/app/api/controller/VehicleController.php @@ -205,6 +205,9 @@ class VehicleController extends BaseApiController } //获取参数 $params = $this->request->post(['type','license','pic']); + if(!isset($params['type'])){ + return $this->fail('缺少必要参数'); + } if($params['type'] == 1){ if(empty($params['license']) || empty($params['pic'])){ return $this->fail('缺少必要参数'); @@ -376,6 +379,7 @@ class VehicleController extends BaseApiController 'self_num' => $selfCar, 'apply_num' => $applyCar ]; + dump($data);die; //返回 return $this->success('请求成功',$data); } From 6c3915f6063e06c1764bc1b538d6acfe2ff8ea1e Mon Sep 17 00:00:00 2001 From: unknown <736250432@qq.com> Date: Thu, 7 Sep 2023 14:12:58 +0800 Subject: [PATCH 07/15] patch --- app/api/controller/VehicleController.php | 1 - 1 file changed, 1 deletion(-) diff --git a/app/api/controller/VehicleController.php b/app/api/controller/VehicleController.php index 165e2550a..df7f43db4 100644 --- a/app/api/controller/VehicleController.php +++ b/app/api/controller/VehicleController.php @@ -379,7 +379,6 @@ class VehicleController extends BaseApiController 'self_num' => $selfCar, 'apply_num' => $applyCar ]; - dump($data);die; //返回 return $this->success('请求成功',$data); } From 40121a460384b91a1ce5940413e1eb42ac26fd28 Mon Sep 17 00:00:00 2001 From: chenbo <709206448@qq.com> Date: Thu, 7 Sep 2023 15:18:57 +0800 Subject: [PATCH 08/15] =?UTF-8?q?add:1.=E4=BC=81=E4=B8=9A=E5=AE=9E?= =?UTF-8?q?=E5=90=8D=E8=AE=A4=E8=AF=81=E6=97=B6=E5=8A=A0=E4=B8=8A=E6=B3=95?= =?UTF-8?q?=E4=BA=BA=E8=BA=AB=E4=BB=BD=E8=AF=81=EF=BC=8C=E6=96=B9=E4=BE=BF?= =?UTF-8?q?=E5=90=8E=E7=BB=AD=E7=AD=BE=E7=BA=A6=E6=97=B6=E5=8F=AF=E7=94=A8?= =?UTF-8?q?=E4=BA=BA=E8=84=B8=E8=AF=86=E5=88=AB=EF=BC=8C=E9=A2=84=E7=95=99?= =?UTF-8?q?=E6=89=8B=E6=9C=BA=E5=8F=B7=E5=90=8E=E7=BB=AD=E5=8F=AF=E8=83=BD?= =?UTF-8?q?=E4=BD=BF=E7=94=A8=E7=9F=AD=E4=BF=A1=E9=AA=8C=E8=AF=81=E3=80=82?= =?UTF-8?q?2.=E5=85=AC=E5=8F=B8=E5=88=9B=E5=BB=BA=E6=97=B6=E5=8D=B3?= =?UTF-8?q?=E7=9F=AD=E4=BF=A1=E5=91=8A=E7=9F=A5=E5=85=AC=E5=8F=B8=E6=B3=95?= =?UTF-8?q?=E4=BA=BA=E4=BD=9C=E4=BA=BA=E8=84=B8=E8=AF=86=E5=88=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/adminapi/controller/CompanyController.php | 7 +- app/api/controller/HetongController.php | 18 ++++- app/api/controller/JunziqianController.php | 5 +- app/common/enum/notice/NoticeEnum.php | 4 ++ app/common/logic/CompanyLogic.php | 66 ++++++++++++++++++- 5 files changed, 92 insertions(+), 8 deletions(-) diff --git a/app/adminapi/controller/CompanyController.php b/app/adminapi/controller/CompanyController.php index cf526a44b..7b3afb172 100644 --- a/app/adminapi/controller/CompanyController.php +++ b/app/adminapi/controller/CompanyController.php @@ -193,6 +193,8 @@ class CompanyController extends BaseAdminController 'business_license' => 'https://lihai001.oss-cn-chengdu.aliyuncs.com/def/561f8202305171526091317.png', //$qualification['business_license'], 'master_name' => $company['master_name'], 'master_email' => $company['master_email'], + 'master_phone' => $company['master_phone'], + 'master_id_card' => $company['master_id_card'], 'id' => $company['id'], ]; $res = app(JunziqianController::class)->EnterpriseCertification($data); @@ -220,6 +222,8 @@ class CompanyController extends BaseAdminController 'business_license' => 'https://lihai001.oss-cn-chengdu.aliyuncs.com/def/561f8202305171526091317.png', //$qualification['business_license'], 'master_name' => $company['master_name'], 'master_email' => $company['master_email'], + 'master_phone' => $company['master_phone'], + 'master_id_card' => $company['master_id_card'], ]; $res = app(JunziqianController::class)->organizationReapply($data); if ($res->success == true) { @@ -260,9 +264,6 @@ class CompanyController extends BaseAdminController if (empty($company)) { return $this->fail("公司不存在"); } - if (empty($company['master_face'])) { - return $this->fail("未上传主联系人头像信息,无法上传企业人脸"); - } if(empty($company['master_id_card'])) { return $this->fail("主联系人证件号为空,无法上传企业人脸"); } diff --git a/app/api/controller/HetongController.php b/app/api/controller/HetongController.php index 2edb83109..15f4354a5 100644 --- a/app/api/controller/HetongController.php +++ b/app/api/controller/HetongController.php @@ -19,7 +19,7 @@ class HetongController extends BaseApiController { - public array $notNeedLogin = ['url','info']; + public array $notNeedLogin = ['url','info', 'toFaceCreate']; public function url() { @@ -55,4 +55,20 @@ class HetongController extends BaseApiController } return '

:)

'; } + + // 用户做人脸识别时,作跳板的短信链接 + public function toFaceCreate() + { + $id = Request()->get('id'); + $msg='地址不存在'; + if ($id) { + $find = Db::name('company')->where('id', $id)->find(); + if ($find && $find['face_create_url']) { + return redirect($find['face_create_url']); + } else { + $msg='参数错误'; + } + } + return '

:)

'.$msg.'

'; + } } diff --git a/app/api/controller/JunziqianController.php b/app/api/controller/JunziqianController.php index f913747a2..e8f4a3fcc 100644 --- a/app/api/controller/JunziqianController.php +++ b/app/api/controller/JunziqianController.php @@ -77,6 +77,8 @@ class JunziqianController extends BaseApiController $request->organizationRegNo = $data['organization_code']; $request->organizationRegImg = $data['business_license']; //new CURLFile('D:/tmp/test.png',null,"test.png"); $request->legalName = $data["master_name"]; //法人 + $request->legalIdentityCard = $data["master_id_card"]; // 法人身份证 签约时人脸识别需要 + $request->legalMobile = $data["master_phone"]; // 法人手机号 预留 签约时短信验证需要 if (isset($data['master_email'])) { $request->emailOrMobile = $data['master_email']; //邮箱 } @@ -99,6 +101,8 @@ class JunziqianController extends BaseApiController $request->organizationRegNo = $data['organization_code']; $request->organizationRegImg = $data['business_license']; //new CURLFile('D:/tmp/test.png',null,"test.png"); $request->legalName = $data["master_name"]; //法人 + $request->legalIdentityCard = $data["master_id_card"]; // 法人身份证 签约时人脸识别需要 + $request->legalMobile = $data["master_phone"]; // 法人手机号 预留 短信验证需要 $request->emailOrMobile = $data['master_email']; //邮箱 //发起创建企业请求 $response = $requestUtils->doPost("/v2/user/organizationReapply", $request); @@ -167,7 +171,6 @@ class JunziqianController extends BaseApiController $request-> legalPersonName = $data['master_name']; $request-> legalIdentityCard = $data['master_id_card'];//法人证件号 $request-> legalMobile = $data['master_phone']; - $request-> facePerType = 1; // 1代理人 $request-> faceAgantIdenName = $data['master_name']; $request-> faceAgantIdenCard = $data['master_id_card']; $request-> backUrl = env('url.url_prefix').'/mobile'; // 做完人脸识别后,指定跳转到供销系统mobile首页 diff --git a/app/common/enum/notice/NoticeEnum.php b/app/common/enum/notice/NoticeEnum.php index 646d37451..7f8069370 100755 --- a/app/common/enum/notice/NoticeEnum.php +++ b/app/common/enum/notice/NoticeEnum.php @@ -40,6 +40,8 @@ class NoticeEnum const FCHT = 106; const WQTZ = 107; + const FACE_CREATE = 108; + /** * 验证码场景 @@ -95,6 +97,7 @@ class NoticeEnum self::WQ => '网签短信', self::FCHT => '废除合同', self::WQTZ => '网签通知', + self::FACE_CREATE => '人脸识别上传通知', ]; if ($flag) { @@ -129,6 +132,7 @@ class NoticeEnum 'FCHT'=>self::FCHT, 'WQTZ'=>self::WQTZ, + 'FACE_CREATE'=>self::FACE_CREATE, ]; return $scene[$tag] ?? ''; } diff --git a/app/common/logic/CompanyLogic.php b/app/common/logic/CompanyLogic.php index 3904e3691..c204eedc3 100644 --- a/app/common/logic/CompanyLogic.php +++ b/app/common/logic/CompanyLogic.php @@ -59,7 +59,6 @@ class CompanyLogic extends BaseLogic // 手机号不能重复 $companyInfo = Company::where(['master_phone'=>$params['master_phone']])->find(); if (!empty($companyInfo)) { - Db::rollback(); throw new Exception('手机号已存在'); } $arr=[ @@ -74,7 +73,7 @@ class CompanyLogic extends BaseLogic 'address' => $params['address'], 'company_type' => $params['company_type'], 'master_name' => $params['master_name'], - 'master_id_card' => $params['id_card'], // 主联系人证件号 + 'master_id_card' => $params['id_card'], // 主联系人证件号 todo DDL 新增字段 'master_position' => $params['master_position'], 'master_phone' => $params['master_phone'], 'master_email' => $params['master_email'], @@ -132,6 +131,9 @@ class CompanyLogic extends BaseLogic 'company_type'=>$params['company_type'], ]; TaskScheduling::create($scheduling); + + // 企业人脸校验上传 + self::originationFaceCreate($data); Db::commit(); return true; } catch (\Exception $e) { @@ -141,6 +143,64 @@ class CompanyLogic extends BaseLogic } } + public static function originationFaceCreate($data) + { + // 人脸识别校验上传 + $organizationFaceCreateData = [ + 'company_name' => $data['company_name'], + 'organization_code' => $data['organization_code'], + 'master_name' => $data['master_name'], + 'master_id_card' => $data['master_id_card'], + 'master_email' => $data['master_email'], + 'master_phone' => $data['master_phone'], + 'id' => $data['id'], + ]; + $sms = [ + 'mobile' => $data['master_phone'], + 'name' => $data['master_name'], + 'code' => 'api/Hetong/toFaceCreate?id=' . $data['id'], + 'scene' => 'FACE_CREATE', + 'type' => '' + ]; + $smsRes = SmsLogic::contractUrl($sms); + // 公司数据合法性校验 + $checkCompany = self::companyCheck($organizationFaceCreateData); + if ($checkCompany !== true){ + throw new Exception($checkCompany); + } + + $res = app(JunziqianController::class)->organizationFaceCreate($data); + if ($res->success == true && !empty($res->data)) { + // 保存人脸识别地址 todo 新增字段的DDL + Company::where('id',$data['id'])->update(['face_create_url'=>$res->data]); + // 发送短信给法人 + $sms = [ + 'mobile' => $data['master_phone'], + 'name' => $data['master_name'], + 'code' => 'api/Hetong/toFaceCreate?id=' . $data['id'], + 'scene' => 'FACE_CREATE', + 'type' => '' + ]; + $smsRes = SmsLogic::contractUrl($sms); + if ($smsRes != true) { + throw new Exception(SmsLogic::getError()); + } + } else { + throw new Exception($res->msg); + } + } + private static function companyCheck($company) { + if (empty($company)) { + return self::setError("公司不存在"); + } + if(empty($company['master_id_card'])) { + return self::setError("主联系人身份证为空,无法进行人脸识别"); + } + if(empty($company['master_email'])) { + return self::setError("主联系人邮箱为空,无法进行人脸识别"); + } + return true; + } /** * @notes 编辑 @@ -154,7 +214,7 @@ class CompanyLogic extends BaseLogic Db::startTrans(); try { // 手机号不能重复 - $companyInfo = Company::where(['master_phone'=>$params['master_phone']])->find(); + $companyInfo = Company::where(['master_phone'=>$params['master_phone']])->where('id','<>',$params['id'])->find(); if (!empty($companyInfo)) { Db::rollback(); throw new Exception('手机号已存在'); From 676f479b744a1fb4b5af5528a4426b3d4d740f62 Mon Sep 17 00:00:00 2001 From: unknown <736250432@qq.com> Date: Thu, 7 Sep 2023 15:44:38 +0800 Subject: [PATCH 09/15] patch --- .../controller/contract/VehicleContractController.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/app/adminapi/controller/contract/VehicleContractController.php b/app/adminapi/controller/contract/VehicleContractController.php index 1518c663b..92cf31c9e 100644 --- a/app/adminapi/controller/contract/VehicleContractController.php +++ b/app/adminapi/controller/contract/VehicleContractController.php @@ -44,8 +44,17 @@ class VehicleContractController extends BaseAdminController 'status' => 1, 'cars_info' => $params['cars'] ]); + VehicleContract::where('id', $params['id'])->update(['file' => $params['file'],'cars_info' => $params['cars'],'status'=>1]); + }else{ + //更新物流系统 + curl_post(env('project.logistic_domain').'/api/contractUpdate',[],[ + 'id' => $vehicle_contract['contract_logistic_id'], + 'file' => $params['file'], + 'status' => 1, + ]); + VehicleContract::where('id', $params['id'])->update(['file' => $params['file'],'status'=>1]); } - VehicleContract::where('id', $params['id'])->update(['file' => $params['file'],'cars_info' => $params['cars'],'status'=>1]); + }catch (\Exception $e){ return $this->fail($e->getMessage()); } From b31b69a4d0ff44020f81b6b26c4b3a25d1d758e9 Mon Sep 17 00:00:00 2001 From: chenbo <709206448@qq.com> Date: Thu, 7 Sep 2023 16:20:26 +0800 Subject: [PATCH 10/15] =?UTF-8?q?add:1.=E4=BC=81=E4=B8=9A=E5=AE=9E?= =?UTF-8?q?=E5=90=8D=E8=AE=A4=E8=AF=81=E6=97=B6=E5=8D=B3=E5=81=9A=E4=BA=BA?= =?UTF-8?q?=E8=84=B8=E8=AF=86=E5=88=AB=E4=B8=8A=E4=BC=A0=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=EF=BC=8C=E8=BF=94=E5=9B=9E=E4=BA=BA=E8=84=B8=E8=AF=86=E5=88=AB?= =?UTF-8?q?=E5=9C=B0=E5=9D=80=E5=90=8E=E5=8F=91=E7=9F=AD=E4=BF=A1=E9=80=9A?= =?UTF-8?q?=E7=9F=A5=E5=85=AC=E5=8F=B8=E6=B3=95=E4=BA=BA=E5=81=9A=E4=BA=BA?= =?UTF-8?q?=E8=84=B8=E8=AF=86=E5=88=AB=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/adminapi/controller/CompanyController.php | 6 ++++++ app/common/logic/CompanyLogic.php | 18 ++++++------------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/app/adminapi/controller/CompanyController.php b/app/adminapi/controller/CompanyController.php index 7b3afb172..0c371d074 100644 --- a/app/adminapi/controller/CompanyController.php +++ b/app/adminapi/controller/CompanyController.php @@ -200,6 +200,12 @@ class CompanyController extends BaseAdminController $res = app(JunziqianController::class)->EnterpriseCertification($data); if ($res->success == true) { Db::name('company')->where('id', $params['id'])->update(['master_email' => $res->data,'is_authentication'=>1]); + // 企业人脸上传 + $company['master_email'] = $res->data; // 法人邮箱 + $faceCreateRe = CompanyLogic::originationFaceCreate($company); + if ($faceCreateRe !== true) { + return $this->fail($faceCreateRe); + } return $this->success('认证成功',[],1, 1); // return $this->success('系统认证中,请稍后刷新页面查看', ['email' => $res->data], 1, 1); } else { diff --git a/app/common/logic/CompanyLogic.php b/app/common/logic/CompanyLogic.php index c204eedc3..00680cd6e 100644 --- a/app/common/logic/CompanyLogic.php +++ b/app/common/logic/CompanyLogic.php @@ -133,7 +133,7 @@ class CompanyLogic extends BaseLogic TaskScheduling::create($scheduling); // 企业人脸校验上传 - self::originationFaceCreate($data); +// self::originationFaceCreate($data); Db::commit(); return true; } catch (\Exception $e) { @@ -155,18 +155,11 @@ class CompanyLogic extends BaseLogic 'master_phone' => $data['master_phone'], 'id' => $data['id'], ]; - $sms = [ - 'mobile' => $data['master_phone'], - 'name' => $data['master_name'], - 'code' => 'api/Hetong/toFaceCreate?id=' . $data['id'], - 'scene' => 'FACE_CREATE', - 'type' => '' - ]; - $smsRes = SmsLogic::contractUrl($sms); + // 公司数据合法性校验 $checkCompany = self::companyCheck($organizationFaceCreateData); if ($checkCompany !== true){ - throw new Exception($checkCompany); + return $checkCompany; } $res = app(JunziqianController::class)->organizationFaceCreate($data); @@ -183,11 +176,12 @@ class CompanyLogic extends BaseLogic ]; $smsRes = SmsLogic::contractUrl($sms); if ($smsRes != true) { - throw new Exception(SmsLogic::getError()); + return SmsLogic::getError(); } } else { - throw new Exception($res->msg); + return $res->msg; } + return true; } private static function companyCheck($company) { if (empty($company)) { From 20abbed20875aafb0d587fc86b5b81cc533ee957 Mon Sep 17 00:00:00 2001 From: chenbo <709206448@qq.com> Date: Thu, 7 Sep 2023 16:42:35 +0800 Subject: [PATCH 11/15] =?UTF-8?q?add:1.=E4=BC=81=E4=B8=9A=E5=AE=9E?= =?UTF-8?q?=E5=90=8D=E8=AE=A4=E8=AF=81=E6=97=B6=E5=8D=B3=E5=81=9A=E4=BA=BA?= =?UTF-8?q?=E8=84=B8=E8=AF=86=E5=88=AB=E4=B8=8A=E4=BC=A0=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=EF=BC=8C=E8=BF=94=E5=9B=9E=E4=BA=BA=E8=84=B8=E8=AF=86=E5=88=AB?= =?UTF-8?q?=E5=9C=B0=E5=9D=80=E5=90=8E=E5=8F=91=E7=9F=AD=E4=BF=A1=E9=80=9A?= =?UTF-8?q?=E7=9F=A5=E5=85=AC=E5=8F=B8=E6=B3=95=E4=BA=BA=E5=81=9A=E4=BA=BA?= =?UTF-8?q?=E8=84=B8=E8=AF=86=E5=88=AB=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/adminapi/controller/CompanyController.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/adminapi/controller/CompanyController.php b/app/adminapi/controller/CompanyController.php index 0c371d074..b33b10fcf 100644 --- a/app/adminapi/controller/CompanyController.php +++ b/app/adminapi/controller/CompanyController.php @@ -199,13 +199,15 @@ class CompanyController extends BaseAdminController ]; $res = app(JunziqianController::class)->EnterpriseCertification($data); if ($res->success == true) { - Db::name('company')->where('id', $params['id'])->update(['master_email' => $res->data,'is_authentication'=>1]); + $email = substr(uniqid(),2,5).$res->data; // 企业人脸上传 - $company['master_email'] = $res->data; // 法人邮箱 + $company['master_email'] = $email; // 法人邮箱 $faceCreateRe = CompanyLogic::originationFaceCreate($company); if ($faceCreateRe !== true) { return $this->fail($faceCreateRe); } + // 修改法人邮箱和公司认证状态 + Db::name('company')->where('id', $params['id'])->update(['master_email' => $email,'is_authentication'=>1]); return $this->success('认证成功',[],1, 1); // return $this->success('系统认证中,请稍后刷新页面查看', ['email' => $res->data], 1, 1); } else { From d0dcded2f96b87e5ac8469adb1b1921b62962e56 Mon Sep 17 00:00:00 2001 From: chenbo <709206448@qq.com> Date: Thu, 7 Sep 2023 19:06:35 +0800 Subject: [PATCH 12/15] =?UTF-8?q?add:1.=E4=BC=81=E4=B8=9A=E5=AE=9E?= =?UTF-8?q?=E5=90=8D=E8=AE=A4=E8=AF=81=E6=94=B9=E4=B8=BA=E6=A0=B9=E6=8D=AE?= =?UTF-8?q?=E5=BC=82=E6=AD=A5=E5=9B=9E=E8=B0=83=E8=AE=A4=E8=AF=81=EF=BC=8C?= =?UTF-8?q?=E5=A6=82=E6=9E=9C=E5=A4=B1=E8=B4=A5=E8=AE=B0=E5=BD=95=E8=AE=A4?= =?UTF-8?q?=E8=AF=81=E5=A4=B1=E8=B4=A5=E5=8E=9F=E5=9B=A0=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/adminapi/controller/CompanyController.php | 39 +++++++------------ app/api/controller/IndexController.php | 6 ++- 2 files changed, 18 insertions(+), 27 deletions(-) diff --git a/app/adminapi/controller/CompanyController.php b/app/adminapi/controller/CompanyController.php index b33b10fcf..390009a4d 100644 --- a/app/adminapi/controller/CompanyController.php +++ b/app/adminapi/controller/CompanyController.php @@ -201,15 +201,15 @@ class CompanyController extends BaseAdminController if ($res->success == true) { $email = substr(uniqid(),2,5).$res->data; // 企业人脸上传 - $company['master_email'] = $email; // 法人邮箱 - $faceCreateRe = CompanyLogic::originationFaceCreate($company); - if ($faceCreateRe !== true) { - return $this->fail($faceCreateRe); - } - // 修改法人邮箱和公司认证状态 - Db::name('company')->where('id', $params['id'])->update(['master_email' => $email,'is_authentication'=>1]); - return $this->success('认证成功',[],1, 1); - // return $this->success('系统认证中,请稍后刷新页面查看', ['email' => $res->data], 1, 1); +// $company['master_email'] = $email; // 法人邮箱 +// $faceCreateRe = CompanyLogic::originationFaceCreate($company); +// if ($faceCreateRe !== true) { +// return $this->fail($faceCreateRe); +// } + // 修改法人邮箱 + Db::name('company')->where('id', $params['id'])->update(['master_email' => $email]); +// return $this->success('认证成功',[],1, 1); + return $this->success('系统认证中,请稍后刷新页面查看', ['email' => $res->data], 1, 1); } else { return $this->fail($res->msg); } @@ -248,25 +248,12 @@ class CompanyController extends BaseAdminController { $params = (new CompanyValidate())->goCheck('detail'); $company = Db::name('company')->where('id', $params['id'])->find(); - // 公司数据合法性校验 - $this->companyCheck($company); - - $data = [ - 'company_name' => $company['company_name'], - 'organization_code' => $company['organization_code'], - 'master_name' => $company['master_name'], - 'master_id_card' => $company['master_id_card'], - 'master_email' => $company['master_email'], - 'master_phone' => $company['master_phone'], - 'id' => $company['id'], - ]; - $res = app(JunziqianController::class)->organizationFaceCreate($data); - if ($res->success == true && !empty($res->data)) { - return $this->success('成功',["faceCreateUrl"=>$res->data],1, 1); + $re = CompanyLogic::originationFaceCreate($company); + if ($re === true) { + return $this->success('成功',[],1, 1); } else { - return $this->fail($res->msg); + return $this->fail($re); } - } private function companyCheck($company) { if (empty($company)) { diff --git a/app/api/controller/IndexController.php b/app/api/controller/IndexController.php index 239a45eac..175601280 100755 --- a/app/api/controller/IndexController.php +++ b/app/api/controller/IndexController.php @@ -429,8 +429,12 @@ class IndexController extends BaseApiController try { if ($parmas) { $data=json_decode($parmas['data'],true); + if($data['status']==1){ + Company::where('id', $parmas['id'])->update(['is_authentication' => 1]); + } if($data['status']==2){ - Company::where('id', $parmas['id'])->update(['is_authentication' => 2]); + // 记录认证失败原因 + Db::name('company_authentication_fail_log')->insert(['company_id'=>$parmas['id'],'fail_reason'=>$data['msg']]); } return json(['success' => true, 'msg' => '成功']); } From 01d0fcacbf31830685a998db89d978b11b61da07 Mon Sep 17 00:00:00 2001 From: mkm <727897186@qq.com> Date: Thu, 7 Sep 2023 20:52:28 +0800 Subject: [PATCH 13/15] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20app/common/logic/tas?= =?UTF-8?q?k/TaskLogic.php?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修复错误 --- app/common/logic/task/TaskLogic.php | 2 -- 1 file changed, 2 deletions(-) diff --git a/app/common/logic/task/TaskLogic.php b/app/common/logic/task/TaskLogic.php index eaa9ab81c..0f7d93376 100644 --- a/app/common/logic/task/TaskLogic.php +++ b/app/common/logic/task/TaskLogic.php @@ -74,8 +74,6 @@ class TaskLogic extends BaseLogic public static function CronAdd(array $v, $datas): bool { try { - TaskTemplate::where('id', $v['id'])->inc('information_day_count', 5)->update(); - return true; if ($v['types'] == 3) { return true; // $task = Task::where('template_id', $v['id'])->find(); From 89e789ca19037215f7a9a222522a43e955e3abe6 Mon Sep 17 00:00:00 2001 From: mkm <727897186@qq.com> Date: Thu, 7 Sep 2023 21:12:15 +0800 Subject: [PATCH 14/15] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20app/common/logic/tas?= =?UTF-8?q?k/TaskLogic.php?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修复判断错误 --- app/common/logic/task/TaskLogic.php | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/app/common/logic/task/TaskLogic.php b/app/common/logic/task/TaskLogic.php index 0f7d93376..c9e10c474 100644 --- a/app/common/logic/task/TaskLogic.php +++ b/app/common/logic/task/TaskLogic.php @@ -75,13 +75,12 @@ class TaskLogic extends BaseLogic { try { if ($v['types'] == 3) { - return true; - // $task = Task::where('template_id', $v['id'])->find(); - // if ($task) { - // Task::where('template_id', $v['id'])->update(['start_time' => strtotime($task['start_time']) + 86400, 'end_time' => strtotime($task['end_time']) + 86400]); - // TaskTemplate::where('id', $v['id'])->inc('day_count')->update(); - // return true; - // } + $task = Task::where('template_id', $v['id'])->find(); + if ($task) { + // Task::where('template_id', $v['id'])->update(['start_time' => strtotime($task['start_time']) + 86400, 'end_time' => strtotime($task['end_time']) + 86400]); + // TaskTemplate::where('id', $v['id'])->inc('day_count')->update(); + return true; + } } $time = strtotime(date('Y-m-d')); $TaskSchedulingPlan_data = [ From 15e4f8f6fa223325c45ba871e41bcc4dc18315a4 Mon Sep 17 00:00:00 2001 From: mkm <727897186@qq.com> Date: Thu, 7 Sep 2023 21:14:35 +0800 Subject: [PATCH 15/15] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20app/common/logic/tas?= =?UTF-8?q?k/TaskLogic.php?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 更新日期 --- app/common/logic/task/TaskLogic.php | 1 + 1 file changed, 1 insertion(+) diff --git a/app/common/logic/task/TaskLogic.php b/app/common/logic/task/TaskLogic.php index c9e10c474..5edb7cf13 100644 --- a/app/common/logic/task/TaskLogic.php +++ b/app/common/logic/task/TaskLogic.php @@ -82,6 +82,7 @@ class TaskLogic extends BaseLogic return true; } } + $v['day_count']=$v['day_count']+1; $time = strtotime(date('Y-m-d')); $TaskSchedulingPlan_data = [ 'create_user_id' => 0,