Browse Source

Merge branch 'master' of http://git.jhcs888.com/ph/esign_serve

# Conflicts:
#	app/Http/Controllers/AdminApi/MemberController.php
lihang 2 tuần trước cách đây
mục cha
commit
e123bc2a1d

+ 20 - 0
.idea/claudeCodeTabState.xml

@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="ClaudeCodeTabState">
+    <option name="tabSessions">
+      <map>
+        <entry key="0">
+          <value>
+            <TabSessionState>
+              <option name="provider" value="claude" />
+              <option name="sessionId" value="cca3df8c-36b5-4f84-a5c8-aac4e4a1b97e" />
+              <option name="cwd" value="$PROJECT_DIR$" />
+              <option name="model" value="claude-sonnet-4-7[1m]" />
+              <option name="permissionMode" value="bypassPermissions" />
+            </TabSessionState>
+          </value>
+        </entry>
+      </map>
+    </option>
+  </component>
+</project>

+ 65 - 0
app/Console/Commands/MemberRealnameCommand.php

@@ -0,0 +1,65 @@
+<?php
+
+namespace App\Console\Commands;
+
+use App\Models\Member;
+use App\Servers\ESign\ESignServer;
+use Illuminate\Console\Command;
+
+/**
+ * 用户实名认证任务
+ * Class MemberRealnameCommand
+ * @package App\Console\Commands
+ */
+class MemberRealnameCommand extends Command
+{
+    /**
+     * The name and signature of the console command.
+     *
+     * @var string
+     */
+    protected $signature = 'member:realname';
+
+    /**
+     * The console command description.
+     *
+     * @var string
+     */
+    protected $description = '查找最后一条未实名用户并执行实名认证流程';
+
+    /**
+     * Create a new command instance.
+     *
+     * @return void
+     */
+    public function __construct()
+    {
+        parent::__construct();
+    }
+
+    /**
+     * Execute the console command.
+     *
+     * @return mixed
+     */
+    public function handle()
+    {
+        //查找最后一条未实名的用户
+        $member = Member::where('realnameStatus',0)->where('is_del',0)->where('authType','PSN')->orderBy('id','desc')->first();
+        if (empty($member)){
+            $this->info('没有未实名的用户');
+            return;
+        }
+
+        $this->info('处理用户:id='.$member->{'id'}.',姓名='.$member->{'name'}.',手机号='.$member->{'phone'});
+        //调用接口查询用户是否已经完成实名认证
+        $realnameStatus = ESignServer::creatServer()->personsidentityinfo($member->{'id'},$member->{'phone'},$member->{'name'},$member->{'id_number'});
+        if ($realnameStatus == 1){
+            $this->info('用户已完成实名认证,无需处理');
+            return;
+        }
+        //未实名认证,执行实名认证授权流程
+        ESignServer::creatServer()->psnauthurl($member->{'id'},$member->{'phone'},$member->{'name'},$member->{'id_number'},$member->{'psnId'});
+        $this->info('实名认证流程执行完成');
+    }
+}

+ 3 - 5
app/Http/Controllers/AdminApi/MemberController.php

@@ -69,6 +69,7 @@ class MemberController extends AdminController
 
         $authType = 'PSN';
         $data = compact('name','phone','id_number','authType');
+
         if(empty($id)){//不存在id就创建
             //检查该身份证号是否存在
             $member = Member::where('id_number',$id_number)->where('is_del',0)->select(['id'])->first();
@@ -77,6 +78,7 @@ class MemberController extends AdminController
             }
 
             $res = Member::create($data);
+            $m_id = $res->{'id'};
         }else{//存在就更新
             $info = Member::where('id',$id)->select(['id'])->first();
             if (empty($info)) {
@@ -88,12 +90,8 @@ class MemberController extends AdminController
                 return $this->apiResponseError('身份证号已存在');
             }
             $res = $info->update($data);
-            if(empty($res)){
-                return  $this->apiResponseError('保存失败');
-            }
-            $res=$info;
+            $m_id = $id;
         }
-        $m_id = $res->{'id'};
         //查询个人认证信息
         ESignServer::creatServer()->personsidentityinfo($m_id,$phone,$name,$id_number);
 

+ 4 - 2
app/Http/Controllers/AdminApi/SignContractController.php

@@ -110,28 +110,30 @@ class SignContractController extends AdminController
             $psnInfo = SignRecord::where('sign_id',$value->{'id'})->where('authType','PSN')->select(['status','sign_url','id_no'])->first();
             if (!empty($psnInfo)){
                 $psnInfo->{'name'} = Member::where('psnId',$psnInfo->{'id_no'})->value('name');
+                $psnInfo->initializeModel();
             }else{
                 $psnInfo = [
                     'status' => 1,
+                    'status_str' => '待签署',
                     'sign_url' => '',
                     'id_no' => '',
                     'name' => '',
                 ];
             }
-            $psnInfo->initializeModel();
             //获取企业签署链接
             $orgInfo = SignRecord::where('sign_id',$value->{'id'})->where('authType','ORG')->select(['status','sign_url','id_no'])->first();
             if (!empty($orgInfo)){
                 $orgInfo->{'name'} = Firm::where('orgId',$orgInfo->{'id_no'})->value('firm_name');
+                $orgInfo->initializeModel();
             }else{
                 $orgInfo = [
                     'status' => 1,
+                    'status_str' => '待签署',
                     'sign_url' => '',
                     'id_no' => '',
                     'name' => '',
                 ];
             }
-            $orgInfo->initializeModel();
             $value->{'psnInfo'} = $psnInfo;
             $value->{'orgInfo'} = $orgInfo;
             $value->initializeModel();