diff --git a/src/modules/auth/views/AuthViews.test.mjs b/src/modules/auth/views/AuthViews.test.mjs index c1ea512..1a455dd 100644 --- a/src/modules/auth/views/AuthViews.test.mjs +++ b/src/modules/auth/views/AuthViews.test.mjs @@ -41,7 +41,9 @@ test('implements every backend registration field and real submission', () => { test('shows immediate login after registration and separates company review from account activation', () => { assert.match(registerSource, /企业账号注册成功/) assert.match(registerSource, /无需等待注册审核/) - assert.match(registerSource, /提交订单前还需完成一步/) + assert.match(registerSource, /提交订单前还需完成企业审核/) + assert.match(registerSource, /营业执照、法人身份证、货代资质证书和银行开户许可证/) + assert.match(registerSource, /一次补齐四类必填资质并提交审核/) assert.match(registerSource, /立即登录/) }) diff --git a/src/modules/auth/views/RegisterView.vue b/src/modules/auth/views/RegisterView.vue index c0f0e89..94d68bb 100644 --- a/src/modules/auth/views/RegisterView.vue +++ b/src/modules/auth/views/RegisterView.vue @@ -116,7 +116,7 @@ async function submit() { 《用户服务协议》 和 《隐私政策》 -

注册成功后账号可立即登录;首次登录需上传营业执照并等待平台审核,审核通过后才能提交订单。

+

注册成功后账号可立即登录;首次登录需补齐营业执照、法人身份证、货代资质证书和银行开户许可证,提交平台审核通过后才能提交订单。

取消注册企业账号
@@ -126,7 +126,7 @@ async function submit() {

企业账号注册成功

{{ form.username }} 现在可以直接登录客户工作台,无需等待注册审核。

企业名称
{{ form.companyName }}
登录账号
{{ form.username }}
注册时间
{{ submittedAt }}
账号状态
可登录
-
提交订单前还需完成一步登录后请在“企业资料”补充公司和资质信息,等待平台人工审核通过。审核期间仍可维护资料、成员和订单草稿。
+
提交订单前还需完成企业审核登录后请在“企业资料”一次补齐四类必填资质并提交审核。审核期间仍可维护资料、成员和订单草稿。
立即登录
diff --git a/src/modules/tenant-management/api/merchantIam.test.mjs b/src/modules/tenant-management/api/merchantIam.test.mjs index 32d843c..b19a43e 100644 --- a/src/modules/tenant-management/api/merchantIam.test.mjs +++ b/src/modules/tenant-management/api/merchantIam.test.mjs @@ -27,7 +27,8 @@ test('supports tenant profile updates and authenticated qualification downloads' assert.match(source, /url\.startsWith\('\/merchant\/v1\/files\/qualifications\/'\)/) assert.match(storeSource, /await updateTenantProfile/) assert.match(source, /url: '\/merchant\/v1\/iam\/tenant\/qualifications\/submit-review'/) - assert.match(source, /data\.append\('qualificationType', qualificationType\)/) + assert.match(source, /params: \{ qualificationType, certificateNo, replace \}/) + assert.doesNotMatch(source, /data\.append\('qualificationType'/) assert.match(source, /'SUPERSEDED'/) assert.match(storeSource, /normalizeQualificationStatus\(item\.status\)/) }) diff --git a/src/modules/tenant-management/api/merchantIam.ts b/src/modules/tenant-management/api/merchantIam.ts index 8287f4c..63d9c29 100644 --- a/src/modules/tenant-management/api/merchantIam.ts +++ b/src/modules/tenant-management/api/merchantIam.ts @@ -9,6 +9,7 @@ export interface MerchantTenantProfile { tenantName: string status: MerchantTenantStatus legalName: string + legalRepresentative: string unifiedSocialCreditCode: string | null contactName: string contactPhone: string @@ -18,6 +19,7 @@ export interface MerchantTenantProfile { export interface UpdateMerchantTenantProfileRequest { tenantName: string legalName: string + legalRepresentative: string contactName: string contactPhone: string contactEmail: string @@ -151,10 +153,12 @@ export function uploadMerchantQualification( ) { const data = new FormData() data.append('file', file) - data.append('qualificationType', qualificationType) - if (certificateNo) data.append('certificateNo', certificateNo) - data.append('replace', String(replace)) - return apiRequest({ method: 'POST', url: '/merchant/v1/files/qualifications', data }) + return apiRequest({ + method: 'POST', + url: '/merchant/v1/files/qualifications', + params: { qualificationType, certificateNo, replace }, + data, + }) } export function submitTenantQualificationReview() { diff --git a/src/modules/tenant-management/store/tenantAdministration.ts b/src/modules/tenant-management/store/tenantAdministration.ts index 282e7e5..b1afec3 100644 --- a/src/modules/tenant-management/store/tenantAdministration.ts +++ b/src/modules/tenant-management/store/tenantAdministration.ts @@ -101,7 +101,7 @@ export const useTenantAdministrationStore = defineStore('tenant-administration', company.value = { companyName: profile.tenantName, creditCode: profile.unifiedSocialCreditCode ?? '', - legalRepresentative: profile.legalName, + legalRepresentative: profile.legalRepresentative, contactName: profile.contactName, contactPhone: profile.contactPhone, contactEmail: profile.contactEmail ?? '', @@ -173,7 +173,8 @@ export const useTenantAdministrationStore = defineStore('tenant-administration', async function updateCompany(payload: TenantCompanyProfile) { const updated = await updateTenantProfile({ tenantName: payload.companyName.trim(), - legalName: payload.legalRepresentative.trim(), + legalName: payload.companyName.trim(), + legalRepresentative: payload.legalRepresentative.trim(), contactName: payload.contactName.trim(), contactPhone: payload.contactPhone.trim(), contactEmail: payload.contactEmail.trim(), @@ -181,7 +182,7 @@ export const useTenantAdministrationStore = defineStore('tenant-administration', company.value = { companyName: updated.tenantName, creditCode: updated.unifiedSocialCreditCode ?? '', - legalRepresentative: updated.legalName, + legalRepresentative: updated.legalRepresentative, contactName: updated.contactName, contactPhone: updated.contactPhone, contactEmail: updated.contactEmail ?? '', diff --git a/src/modules/tenant-management/views/CompanyProfileView.vue b/src/modules/tenant-management/views/CompanyProfileView.vue index 0e4e4c9..356f498 100644 --- a/src/modules/tenant-management/views/CompanyProfileView.vue +++ b/src/modules/tenant-management/views/CompanyProfileView.vue @@ -1,7 +1,7 @@