- Bun workspaces:apps/web(Vue 3.5 + Vite 8 + naive-ui)· apps/server(Hono 4.13 + Drizzle)· packages/shared(契约类型) - 代码骨架:四表 Drizzle schema · 11 个端点占位(501)· 管理面口令中间件 · 同步引擎占位(5 分钟 tick + 防重入) - 命令链:dev / build / test / lint / type-check / db:*(见 AGENTS.md)
46 lines
1.3 KiB
TypeScript
46 lines
1.3 KiB
TypeScript
/**
|
|
* 契约常量 —— 与 `docs/design/API契约.md` 保持同步。
|
|
*/
|
|
|
|
/** 明细分页:默认每页条数(契约 §2.1 请求参数) */
|
|
export const LOGS_DEFAULT_LIMIT = 50
|
|
|
|
/** 明细分页:每页条数上限 */
|
|
export const LOGS_MAX_LIMIT = 200
|
|
|
|
/** 每页条数选择器的可选值 */
|
|
export const LOGS_LIMIT_OPTIONS = [20, 50, 100, 200] as const
|
|
|
|
/** 单次查询的 key 集合上限(初值,技术稿可调) */
|
|
export const KEYS_MAX = 20
|
|
|
|
/** 日志类型(上游 model/log.go;常量注释明确「刻意不用 iota」,枚举值永不改变) */
|
|
export const LOG_TYPE = {
|
|
Unknown: 0,
|
|
Topup: 1,
|
|
Consume: 2,
|
|
Manage: 3,
|
|
System: 4,
|
|
Error: 5,
|
|
Refund: 6,
|
|
Login: 7,
|
|
} as const
|
|
|
|
/** 日志类型的中文标签(展示层用;未知值原样显示数字) */
|
|
export const LOG_TYPE_LABEL: Record<number, string> = {
|
|
[LOG_TYPE.Unknown]: '未知',
|
|
[LOG_TYPE.Topup]: '充值',
|
|
[LOG_TYPE.Consume]: '消费',
|
|
[LOG_TYPE.Manage]: '管理',
|
|
[LOG_TYPE.System]: '系统',
|
|
[LOG_TYPE.Error]: '错误',
|
|
[LOG_TYPE.Refund]: '退款',
|
|
[LOG_TYPE.Login]: '登录',
|
|
}
|
|
|
|
/** 额度美元换算的出厂默认(仅兜底展示;实际取值一律从 qpu_history 时间线来) */
|
|
export const DEFAULT_QUOTA_PER_UNIT = 500000
|
|
|
|
/** 管理面请求头(契约 约定 6) */
|
|
export const MANAGE_TOKEN_HEADER = 'x-manage-token'
|