合伙人端登录验证调整还有日志落地

This commit is contained in:
2026-07-07 14:34:02 +08:00
parent af989c9d33
commit 2e61caa49c
23 changed files with 1018 additions and 47 deletions
+1
View File
@@ -11,4 +11,5 @@ export * from './ops';
export * from './ticket';
export * from './user-log';
export * from './store-log';
export * from './partner-log';
export * from './promo';
+62
View File
@@ -0,0 +1,62 @@
export type PartnerLogCategory =
| 'login'
| 'wechat_auth'
| 'store_ops'
| 'shipping'
| 'settlement';
export const PARTNER_LOG_EVENT_CATEGORIES: Record<PartnerLogCategory, readonly string[]> = {
login: ['partner_sms_send', 'partner_sms_login', 'partner_sms_verify_fail', 'partner_login_success'],
wechat_auth: ['partner_wechat_login', 'partner_wechat_bind'],
store_ops: ['partner_store_create', 'partner_store_status_change'],
shipping: ['partner_order_ship', 'partner_delivery_advance'],
settlement: ['partner_bill_view', 'partner_bill_detail_view'],
};
export const PARTNER_LOG_CATEGORY_OPTIONS: Array<{ value: PartnerLogCategory | ''; label: string }> = [
{ value: '', label: '全部' },
{ value: 'login', label: '登录' },
{ value: 'wechat_auth', label: '微信授权' },
{ value: 'store_ops', label: '门店操作' },
{ value: 'shipping', label: '发货/配送' },
{ value: 'settlement', label: '结算' },
];
export const PARTNER_LOG_CATEGORY_LABELS: Record<PartnerLogCategory | '', string> = {
'': '全部',
login: '登录',
wechat_auth: '微信授权',
store_ops: '门店操作',
shipping: '发货/配送',
settlement: '结算',
};
export function resolvePartnerLogCategory(eventName: string): PartnerLogCategory | null {
for (const [category, events] of Object.entries(PARTNER_LOG_EVENT_CATEGORIES) as Array<
[PartnerLogCategory, readonly string[]]
>) {
if (events.includes(eventName)) return category;
}
return null;
}
export function eventNamesForPartnerLogCategory(category: string): string[] | undefined {
if (!category) return undefined;
return [...(PARTNER_LOG_EVENT_CATEGORIES[category as PartnerLogCategory] ?? [])];
}
export interface PartnerLogRowDto {
id: string;
partnerId: string;
partnerAccountId: string | null;
accountName: string | null;
accountPhone: string | null;
companyName: string | null;
category: PartnerLogCategory | null;
eventName: string;
clientApp: string | null;
refType: string | null;
refId: string | null;
extraJson: Record<string, unknown> | null;
createdAt: string;
}