feat(member): 档案修改与空壳删除
可改 name/remark;key_count=0 时硬删,名下有 key 仅可停用。PATCH 扩档案字段并落审计。
This commit is contained in:
@@ -36,6 +36,10 @@ export const ERR = {
|
||||
errorBody("key_already_registered", "这枚 key 已经登记过", { key_id }),
|
||||
member_name_taken: () =>
|
||||
errorBody("member_name_taken", "成员名称已被占用"),
|
||||
member_has_keys: (key_count: number) =>
|
||||
errorBody("member_has_keys", `名下仍有 ${key_count} 枚 key,只能停用`, {
|
||||
fields: { key_count: String(key_count) },
|
||||
}),
|
||||
upstream_unreachable: () =>
|
||||
errorBody("upstream_unreachable", "上游站点暂时不可达,请稍后重试"),
|
||||
not_found: () => errorBody("not_found", "请求的资源不存在"),
|
||||
|
||||
@@ -115,7 +115,9 @@ export const createMemberBody = z.object({
|
||||
});
|
||||
|
||||
export const patchMemberBody = z.object({
|
||||
status: z.enum(["active", "disabled"]),
|
||||
name: z.string().min(1).max(64).optional(),
|
||||
remark: z.string().optional(),
|
||||
status: z.enum(["active", "disabled"]).optional(),
|
||||
});
|
||||
|
||||
export const memberWithToken = z.object({
|
||||
|
||||
@@ -138,10 +138,12 @@ export type AuditAction =
|
||||
| "payment.update"
|
||||
| "payment.delete"
|
||||
| "member.create"
|
||||
| "member.update"
|
||||
| "member.enable"
|
||||
| "member.disable"
|
||||
| "member.token_issue"
|
||||
| "member.token_reissue"
|
||||
| "member.delete"
|
||||
| "account.password_change"
|
||||
| "account.init";
|
||||
|
||||
|
||||
Reference in New Issue
Block a user