From 805e15b9ff694d7157662e9dabd8704f37292f84 Mon Sep 17 00:00:00 2001 From: limeng <1131177064@qq.com> Date: Sat, 10 Oct 2026 13:27:43 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=B7=B2=E6=B3=A8=E9=94=80=E4=B8=BB?= =?UTF-8?q?=E4=BD=93=E5=8F=98=E6=9B=B4=E4=BF=9D=E7=95=99=E7=8E=B0=E5=85=AC?= =?UTF-8?q?=E5=8F=B8=E4=BC=81=E4=B8=9A=E7=AD=BE=E7=BD=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Business/CourierAgreementSignatures.php | 15 +-- .../CourierAgreementSignatureService.php | 17 ++-- .../agreement-signing.blade.php | 11 ++- .../business/pdf/courier-agreement.blade.php | 14 ++- .../Business/AgreementSigningPageTest.php | 2 + .../CourierAgreementSignatureWorkflowTest.php | 99 +++++++++++++++---- 6 files changed, 110 insertions(+), 48 deletions(-) diff --git a/app/Http/Controllers/Business/CourierAgreementSignatures.php b/app/Http/Controllers/Business/CourierAgreementSignatures.php index 6b994ce1..d4abc707 100644 --- a/app/Http/Controllers/Business/CourierAgreementSignatures.php +++ b/app/Http/Controllers/Business/CourierAgreementSignatures.php @@ -121,16 +121,11 @@ class CourierAgreementSignatures extends Controller ? '请填写原公司法人的 E 签宝实名认证姓名。' : '请填写变更前主体签署人的 E 签宝实名认证姓名。']); } - if ($formerCompanyDeregistered) { - $data['secondary_esign_account'] = null; - $data['secondary_operator_name'] = null; - } else { - if (blank($data['secondary_esign_account'] ?? null)) { - throw ValidationException::withMessages(['secondary_esign_account' => '普通主体变更需要填写变更后主体的 E 签宝账号。']); - } - if (blank($data['secondary_operator_name'] ?? null)) { - throw ValidationException::withMessages(['secondary_operator_name' => '请填写变更后主体签署人的 E 签宝实名认证姓名。']); - } + if (blank($data['secondary_esign_account'] ?? null)) { + throw ValidationException::withMessages(['secondary_esign_account' => '请填写变更后主体的 E 签宝账号。']); + } + if (blank($data['secondary_operator_name'] ?? null)) { + throw ValidationException::withMessages(['secondary_operator_name' => '请填写变更后主体签署人的 E 签宝实名认证姓名。']); } } if ($type === 'cooperation-contract') { diff --git a/app/Support/CourierAgreementSignatureService.php b/app/Support/CourierAgreementSignatureService.php index 0f30160f..d6bb27e8 100644 --- a/app/Support/CourierAgreementSignatureService.php +++ b/app/Support/CourierAgreementSignatureService.php @@ -342,22 +342,25 @@ final class CourierAgreementSignatureService $payload['entity_change_old_company_deregistered'] ?? false, FILTER_VALIDATE_BOOLEAN, ); - if ($formerCompanyDeregistered || ($payload['counterparty_signer_type'] ?? 'organization') === 'person') { - return [[ + if (blank($payload['secondary_esign_account'] ?? null) || blank($payload['secondary_operator_name'] ?? null)) { + throw new RuntimeException('请填写变更后主体的 E 签宝账号和实名认证姓名。'); + } + $formerSigner = $formerCompanyDeregistered || ($payload['counterparty_signer_type'] ?? 'organization') === 'person' + ? [ 'signer_type' => 0, 'organization_name' => null, 'operator_name' => $signature->operator_name, 'operator_account' => $signature->operator_account, - ]]; - } + ] + : array_merge($primary, ['organization_name' => $payload['former_company_name'] ?? $signature->organization_name]); return [ - array_merge($primary, ['organization_name' => $payload['former_company_name'] ?? $signature->organization_name]), + $formerSigner, [ 'signer_type' => 1, 'organization_name' => $payload['changed_company_name'] ?? $signature->organization_name, - 'operator_name' => $payload['secondary_operator_name'] ?? $signature->operator_name, - 'operator_account' => $payload['secondary_esign_account'] ?? $signature->operator_account, + 'operator_name' => $payload['secondary_operator_name'], + 'operator_account' => $payload['secondary_esign_account'], ], ]; } diff --git a/resources/views/business/pages/courier-payables/agreement-signing.blade.php b/resources/views/business/pages/courier-payables/agreement-signing.blade.php index e2336d00..97b0a171 100644 --- a/resources/views/business/pages/courier-payables/agreement-signing.blade.php +++ b/resources/views/business/pages/courier-payables/agreement-signing.blade.php @@ -1597,7 +1597,7 @@