diff --git a/docs/esign-agreement-integration.md b/docs/esign-agreement-integration.md index 598d3c8e..f045a1a4 100644 --- a/docs/esign-agreement-integration.md +++ b/docs/esign-agreement-integration.md @@ -6,6 +6,7 @@ - 每次发起先在 `business_courier_agreement_signatures` 落库,生成唯一 `business_no` 和 `idempotency_key`,再生成 PDF、上传文件并创建签署流程。 - 保存 `fileId`、`signFlowId`、模板版本、原文哈希、签署文件哈希和完成证书哈希。 - 回调复用现有 E签宝验签入口,校验原始 Body、时间戳、AppId 和 HmacSHA256;协议回调按流程 ID 幂等更新并排队归档。 +- 收款账户证明及账户变更中的开户名称按实际银行卡私户持卡人姓名填写,不要求与营业执照或公司全称一致;签署主体和公司全称仍单独维护。 - 签署完成后只归档文件,不自动启用收款账户;账户、生效日期和收款人仍须财务复核。 ## 配置步骤 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 6fcbf6b4..610e526f 100644 --- a/resources/views/business/pages/courier-payables/agreement-signing.blade.php +++ b/resources/views/business/pages/courier-payables/agreement-signing.blade.php @@ -1300,8 +1300,9 @@
- - + + +

填写实际收款银行卡对应的私户持卡人姓名,无需与营业执照或公司全称一致。

@@ -1319,8 +1320,9 @@
- - + + +

填写原收款银行卡对应的私户持卡人姓名,无需与营业执照或公司全称一致。

@@ -1335,8 +1337,9 @@
- - + + +

填写新收款银行卡对应的私户持卡人姓名,无需与营业执照或公司全称一致。

diff --git a/tests/Feature/Business/AgreementSigningPageTest.php b/tests/Feature/Business/AgreementSigningPageTest.php index 92da62aa..a83b9998 100644 --- a/tests/Feature/Business/AgreementSigningPageTest.php +++ b/tests/Feature/Business/AgreementSigningPageTest.php @@ -87,6 +87,8 @@ class AgreementSigningPageTest extends FeatureTestCase ->assertSee('data-template-preview="account-proof"', false) ->assertSeeText('生效日期') ->assertSeeText('银行帐户') + ->assertSeeText('开户名称(私户持卡人姓名)') + ->assertSeeText('填写实际收款银行卡对应的私户持卡人姓名,无需与营业执照或公司全称一致。') ->assertSeeText('我司同意自') ->assertSee('data-template-fields="account-change"', false) ->assertSee('data-template-preview="account-change"', false) diff --git a/tests/Feature/Business/CourierAgreementSignatureWorkflowTest.php b/tests/Feature/Business/CourierAgreementSignatureWorkflowTest.php index 5f577373..6de69877 100644 --- a/tests/Feature/Business/CourierAgreementSignatureWorkflowTest.php +++ b/tests/Feature/Business/CourierAgreementSignatureWorkflowTest.php @@ -53,6 +53,21 @@ class CourierAgreementSignatureWorkflowTest extends FeatureTestCase $this->assertSame(1, CourierAgreementSignature::query()->count()); } + public function test_account_proof_accepts_private_account_holder_name_different_from_company_name(): void + { + $this->fakeEsign(); + $payload = $this->accountProofPayload('request-private-holder'); + $payload['account_proof_account_name'] = '李四'; + + $this->loginAs() + ->post(route('business.courier-agreement-signatures.store'), $payload) + ->assertRedirect(); + + $signature = CourierAgreementSignature::query()->firstOrFail(); + $this->assertSame('李四', $signature->payload['account_proof_account_name']); + $this->assertNotSame($this->company->name, $signature->payload['account_proof_account_name']); + } + public function test_cooperation_contract_maps_party_variables_and_creates_two_signers(): void { $this->fakeEsign();