FirmController.php 3.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. <?php
  2. namespace App\Http\Controllers\Api;
  3. use App\Http\Controllers\ApiController;
  4. use App\Models\Firm;
  5. use App\Servers\ESign\ESignFirmServer;
  6. use App\Servers\System\CommonServer;
  7. use App\Servers\System\JobServer;
  8. class FirmController extends ApiController
  9. {
  10. /**
  11. * 添加&编辑用户
  12. * @return \Illuminate\Http\JsonResponse
  13. * @throws \Throwable
  14. */
  15. function createFirm(){
  16. $firm_name=request()->input('firm_name','');//姓名
  17. $phone=request()->input('phone','');//电话
  18. $license_number=request()->input('license_number','');//统一社会信用代码
  19. $license_img=request()->input('license_img','');//营业执照
  20. $registered_address=request()->input('registered_address','');//注册地址
  21. $legal_identity_one=request()->input('legal_identity_one','');//法人身份证正明
  22. $legal_identity_two=request()->input('legal_identity_two','');//法人身份证背面
  23. $legal_id_number=request()->input('legal_id_number','');//身份证号
  24. $legal_name=request()->input('legal_name','');//法人姓名
  25. if (empty($firm_name)) return $this->apiResponseError('请填写姓名');
  26. if (empty($legal_name)) return $this->apiResponseError('请填写法人姓名');
  27. if (mb_strlen($firm_name) > 100) return $this->apiResponseError('姓名最大100');
  28. if (empty($phone)) return $this->apiResponseError('请填写手机号');
  29. if (!CommonServer::creatServer()->verifyPhoneNumber($phone)) return $this->apiResponseError('手机号错误');
  30. if (empty($license_number)) return $this->apiResponseError('请填写统一社会信用代码');
  31. if (empty($license_img)) return $this->apiResponseError('请上传营业执照');
  32. if (empty($registered_address)) return $this->apiResponseError('注册地址不能为空');
  33. if (empty($legal_identity_one)) return $this->apiResponseError('请传身份证正面');
  34. if (empty($legal_identity_two)) return $this->apiResponseError('请传身份证反面');
  35. if (empty($legal_id_number)) return $this->apiResponseError('请填身份证号码');
  36. //检查该统一社会信用代码是否存在
  37. $firm = Firm::where('license_number',$license_number)->where('is_del',0)->select(['id'])->first();
  38. if (!empty($firm)){
  39. return $this->apiResponseError('统一社会信用代码已存在');
  40. }
  41. $authType = 'ORG';
  42. $data = compact('firm_name','phone','legal_name','license_number','license_img','registered_address','authType','legal_identity_one','legal_identity_two','legal_id_number');
  43. $res = Firm::create($data);
  44. $firm_id = $res->{'id'};
  45. //查询个人认证信息
  46. ESignFirmServer::creatServer()->organizationsIdentityInfo($firm_id,$firm_name);
  47. if ($res) {
  48. return $this->apiResponseSuccess('操作成功');
  49. } else {
  50. return $this->apiResponseError('操作失败');
  51. }
  52. }
  53. /**
  54. * 获取详情
  55. * @return \Illuminate\Http\JsonResponse
  56. */
  57. function getFirmInfo()
  58. {
  59. $license_number = request()->input('license_number','');//营业执照编号
  60. if(empty($license_number)) return $this->apiResponseError('请输入营业执照编号');
  61. $info = Firm::where('license_number',$license_number)->select(['id','firm_name','license_number','realnameStatus','updated_at'])->first();
  62. if (empty($info)) {
  63. return $this->apiResponseError('该企业不存在');
  64. }
  65. $updated_time = strtotime($info->updated_at);
  66. if (bcsub(time(),$updated_time) > 3600){
  67. //查询个人认证信息
  68. ESignFirmServer::creatServer()->organizationsIdentityInfo($info->{'id'},$info->{'firm_name'});
  69. }
  70. return $this->apiResponseSuccess('成功',$info);
  71. }
  72. }