This commit is contained in:
2026-08-17 19:52:08 +08:00
parent c6a1bcf611
commit 0f352bbdf9
14 changed files with 142 additions and 33 deletions
@@ -36,6 +36,10 @@ test('supports tenant profile updates and authenticated qualification downloads'
assert.doesNotMatch(source, /data\.append\('qualificationType'/)
assert.match(source, /'SUPERSEDED'/)
assert.match(storeSource, /normalizeQualificationStatus\(item\.status\)/)
assert.match(source, /validTo: string \| null/)
assert.match(storeSource, /expiresAt: item\.validTo \|\| '长期有效'/)
assert.match(source, /enterpriseType: string \| null/)
assert.match(storeSource, /enterpriseType: profile\.enterpriseType \?\? ''/)
})
test('uploads the three required qualification fields through one multipart package request', () => {
@@ -65,6 +69,13 @@ test('starts empty and only loads server role and member records', () => {
assert.match(storeSource, /await updateMerchantMember/)
assert.match(storeSource, /await changeMerchantMemberStatus/)
assert.match(storeSource, /await resetMerchantMemberPassword/)
assert.match(source, /username: string/)
assert.match(source, /lastLoginAt: string \| null/)
assert.match(source, /memberCount: number/)
assert.match(storeSource, /account: member\.username/)
assert.match(storeSource, /lastLoginAt: formatLastLoginAt\(member\.lastLoginAt\)/)
assert.match(storeSource, /roles\.value\.find\(\(role\) => role\.id === roleId\)\?\.memberCount \?\? 0/)
assert.doesNotMatch(storeSource, /lastLoginAt: '服务端未提供'/)
})
test('shares the merchant permission map and preserves resources not rendered by the role editor', () => {
@@ -14,6 +14,12 @@ export interface MerchantTenantProfile {
contactName: string
contactPhone: string
contactEmail: string | null
contactWechat: string | null
enterpriseType: string | null
establishedDate: string | null
registeredCapital: number | string | null
registeredCapitalCurrency: string | null
registeredAddress: string | null
}
export interface UpdateMerchantTenantProfileRequest {
@@ -31,6 +37,7 @@ export interface MerchantQualification {
qualificationType: MerchantQualificationType
certificateNo: string | null
documentUrl: string
validTo: string | null
status: QualificationStatus
reviewComment: string | null
}
@@ -73,6 +80,7 @@ export interface MerchantRole {
roleType: 'SYSTEM' | 'CUSTOM' | string
status: 'ACTIVE' | 'INACTIVE' | string
description: string | null
memberCount: number
permissionIds: Array<number | string>
}
@@ -91,12 +99,14 @@ export interface MerchantMember {
membershipId: number | string
userId: number | string
authUserId: number | string
username: string
displayName: string
phone: string | null
email: string | null
memberType: 'OWNER' | string
memberNo: string
status: 'ACTIVE' | 'INACTIVE' | string
lastLoginAt: string | null
roleIds: Array<number | string>
}