两种通道都增加身份证号必填

This commit is contained in:
2026-09-10 22:03:07 +08:00
parent caeb4d6760
commit 864187e105
24 changed files with 39 additions and 62 deletions
@@ -110,19 +110,18 @@ class PartnersQueue extends Command
$waybillNoCode = $order['waybill_no_code'] ?: $qyt->no('C', $seed);
$name = trim((string) $order['driver_name']);
$idCard = trim((string) $order['id_card']);
if ($name === '' || $order['mobile'] === '') {
$failed = Db::name('partners_order')->where('order_id', $orderId)->where('oil_status_zsy', 0)
->update(['oil_status_zsy' => 3, 'oil_text' => '缺司机姓名/手机号,无法发放', 'update_time' => time()]);
$failed && $this->refundBalance($order);
return;
}
// 通道切换后,下单时不需要身份证的老单可能落到实名通道上:
// 直接判失败退款,不做无意义重试(重试也永远补不到身份证号)
if ($qyt->requireIdCard() && $idCard === '') {
// 两个通道都要求实名,姓名/手机号/身份证号缺一不可。
// 这类单直接判失败退款,不做无意义重试(重试也永远补不齐这些字段),
// 典型来源是改造前建的历史单,它们没有 id_card。
$missing = [];
$name === '' && $missing[] = '司机姓名';
$order['mobile'] === '' && $missing[] = '手机号';
$idCard === '' && $missing[] = '身份证号';
if ($missing) {
$failed = Db::name('partners_order')->where('order_id', $orderId)->where('oil_status_zsy', 0)
->update([
'oil_status_zsy' => 3,
'oil_text' => '当前通道(' . $qyt->channelName() . ')要求实名,该单缺司机身份证号',
'oil_text' => '缺' . implode('/', $missing) . ',无法发放',
'update_time' => time(),
]);
$failed && $this->refundBalance($order);