Files
dukang/apps/h5-partner/src/lib/storeStatus.ts
T
jacy 92cf51ba3d
CI / verify (pull_request) Has been cancelled
feat(store): dual business hours, avg price, and status lock
Support 1-2 hour segments and optional avgPrice; show bank settlement on HQ store detail; enforce pickup min 2 bottles; Chinese order statuses; block shop reopen after permanent close.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-26 10:16:22 +08:00

38 lines
1.4 KiB
TypeScript

export type PartnerStoreAuditStatus = 'PENDING' | 'APPROVED' | 'REJECTED' | string;
export function storeAuditLabel(auditStatus?: string | null): string {
const s = String(auditStatus || 'APPROVED').toUpperCase();
if (s === 'PENDING') return '待总部审核';
if (s === 'REJECTED') return '审核驳回';
if (s === 'APPROVED') return '审核通过';
return auditStatus || '—';
}
export function storeAuditPillClass(auditStatus?: string | null): string {
const s = String(auditStatus || 'APPROVED').toUpperCase();
if (s === 'PENDING') return 'partner-status-pill--paused';
if (s === 'REJECTED') return 'partner-status-pill--closed';
return 'partner-status-pill--open';
}
export type StoreStatusValue = 'OPEN' | 'PAUSED' | 'CLOSED';
export function storeStatusLabel(status: string): string {
const s = String(status).toUpperCase();
if (s === 'OPEN') return '营业中';
if (s === 'PAUSED') return '临时闭店';
if (s === 'CLOSED') return '永久关闭';
return status;
}
export function storeStatusPillClass(status: string): string {
const s = String(status).toUpperCase();
if (s === 'OPEN') return 'partner-status-pill--open';
if (s === 'PAUSED') return 'partner-status-pill--paused';
return 'partner-status-pill--closed';
}
export function canPartnerOpenStore(auditStatus?: string | null): boolean {
return String(auditStatus || '').toUpperCase() === 'APPROVED';
}