post()->goCheck('add'); $uid = $this->request->userInfo['user_id']; $merchant = Merchant::where('uid',$uid)->findOrEmpty(); $supplier = Supplier::where('uid',$uid)->findOrEmpty(); if($merchant->isEmpty() && $supplier->isEmpty()){ return $this->fail('当前用户非商户或供应商'); } //判断是否已绑定 if(!$merchant->isEmpty()){ $has = MerchantBank::where('mer_id',$merchant['mer_id'])->where('is_own',$params['is_own'])->where('is_check','<>',2)->findOrEmpty(); if(!$has->isEmpty()){ return $this->fail('已提交审核请勿重复提交1'); } if($params['is_own'] == 0){ $info = [ 'name'=>$params['name'], 'idNum'=>$params['id_card'], 'cardNo'=>$params['bank_code'], 'mobile'=>$params['phone'], ]; $thinkApi = new ThinkApi(); $result = $thinkApi->request('bankcard/auth',$info); if($result['code'] != 0 || empty($result['data'])){ return $this->fail($result['message']); } //认证结果。01:一致 02:不一致 03:认证不确定 04:认证失败。01、02收费 if($result['data']['result'] == 4 || $result['data']['result'] == 2){ return $this->fail('认证失败,请检查姓名,身份证,银行卡,银行预留手机号码是否正确'); } } $save_data = [ 'mer_id' => $merchant['mer_id'], 'name' => $params['name'], 'bank_id' => $params['bank_id'], 'bank_code' => $params['bank_code'], 'bank_branch' => $params['bank_branch'], 'phone' => $params['phone'] ?? '', 'id_card' => $params['id_card'] ?? '', 'financial_img' => $params['financial_img'] ?? '', 'is_own' => $params['is_own'], 'is_check' => 0, 'create_time' => time() ]; //写入数据 (new MerchantBank)->save($save_data); return $this->success('添加成功'); }elseif (!$supplier->isEmpty()){ $has = MerchantBank::where('supplier_id',$supplier['id'])->where('is_own',$params['is_own'])->where('is_check','<>',2)->findOrEmpty(); if(!$has->isEmpty()){ return $this->fail('已提交审核请勿重复提交2'); } if($params['is_own'] == 0){ $info = [ 'name'=>$params['name'], 'idNum'=>$params['id_card'], 'cardNo'=>$params['bank_code'], 'mobile'=>$params['phone'], ]; $thinkApi = new ThinkApi(); $result = $thinkApi->request('bankcard/auth',$info); if($result['code'] != 0 || empty($result['data'])){ return $this->fail($result['message']); } //认证结果。01:一致 02:不一致 03:认证不确定 04:认证失败。01、02收费 if($result['data']['result'] == 4 || $result['data']['result'] == 2){ return $this->fail('认证失败,请检查姓名,身份证,银行卡,银行预留手机号码是否正确'); } } $save_data = [ 'supplier_id' => $supplier['id'], 'name' => $params['name'], 'bank_id' => $params['bank_id'], 'bank_code' => $params['bank_code'], 'bank_branch' => $params['bank_branch'], 'phone' => $params['phone'] ?? '', 'id_card' => $params['id_card'] ?? '', 'financial_img' => $params['financial_img'] ?? '', 'is_own' => $params['is_own'], 'is_check' => 0, 'create_time' => time() ]; //写入数据 (new MerchantBank)->save($save_data); return $this->success('添加成功'); }else{ return $this->fail('未找到商户或供应商信息'); } } }