Procházet zdrojové kódy

feat(merchant): 增加用户年龄计算并传递至实名认证接口

- 引入 Nette\Utils\DateTime 类用于日期处理- 在认证逻辑中增加用户年龄的计算
- 将年龄参数添加到 certification 方法的调用和定义中
- 实名认证请求体中新增 age 字段并确保类型转换为整数
- 对原有字段进行字符串类型强制转换以确保数据一致性
shichen před 10 měsíci
rodič
revize
7062c16786

+ 5 - 4
app/common/repositories/merchant/order/OrderGzcRepository.php

@@ -357,7 +357,7 @@ class OrderGzcRepository extends BaseRepository
357 357
 
358 358
 
359 359
 
360
-    public function certification($uid, $mobile, $user_name, $user_card, $card_positive, $card_reverse,$cardType,$birthday,$gender)
360
+    public function certification($uid, $mobile, $user_name, $user_card, $card_positive, $card_reverse,$cardType,$birthday,$gender,$age)
361 361
     {
362 362
         $thirdKey = "xingfubao";
363 363
         $thirdsignKey = "xfb@86868.";
@@ -387,9 +387,10 @@ class OrderGzcRepository extends BaseRepository
387 387
                 'user_card' => $user_card,
388 388
                 'card_positive'=> $card_positive,
389 389
                 'card_reverse'=> $card_reverse,
390
-                'concertType' => $concertType,
391
-                'birthday' => $birthday,
392
-                'conSex' => $gender
390
+                'concertType' => strval($concertType),
391
+                'birthday' => strval($birthday),
392
+                'conSex' => strval($gender),
393
+                'age' => intval($age)
393 394
             ];
394 395
         }
395 396
 

+ 5 - 1
app/controller/admin/system/merchant/GzcLogs.php

@@ -14,6 +14,7 @@ use app\common\repositories\merchant\order\OrderGzcRepository;
14 14
 use app\common\repositories\merchant\order\OrderMerchantRepository;
15 15
 use crmeb\basic\BaseController;
16 16
 use app\common\repositories\store\ExcelRepository;
17
+use Nette\Utils\DateTime;
17 18
 use think\App;
18 19
 use think\facade\Db;
19 20
 use think\facade\Log;
@@ -102,7 +103,10 @@ class GzcLogs extends BaseController
102 103
         $uid = $register['data']['uid'] ?? 0;
103 104
         if(!$uid) return app('json')->fail('创建或获取用户失败');
104 105
         // 兼容港澳台用户认证
105
-        $certification = $OrderGzcRepository->certification($uid, $mobile, $user_name, $user_card, $card_positive, $card_reverse,$cardType,$birthday,$gender);
106
+        $age = (new DateTime())->diff(
107
+            DateTime::createFromFormat('Ymd', $birthday)
108
+        )->y;
109
+        $certification = $OrderGzcRepository->certification($uid, $mobile, $user_name, $user_card, $card_positive, $card_reverse,$cardType,$birthday,$gender,$age);
106 110
         Log::info('pcpc认证结果' . json_encode($certification));
107 111
         if($certification['status'] != 200) return app('json')->fail('实名认证失败:'.$certification['message']);
108 112
         $gzc = $OrderGzcRepository->gzc($uid,$log['pension']);