给用户增加“备注”列
CI / verify (pull_request) Waiting to run

This commit is contained in:
2026-08-25 10:09:05 +08:00
parent 5935024ea8
commit 282da24bc4
13 changed files with 66 additions and 44 deletions
@@ -0,0 +1,3 @@
-- v3.5.9 补丁:HQ 管理员对用户的备注(不改 nickname)
ALTER TABLE `user_user`
ADD COLUMN `hq_remark` VARCHAR(128) NULL AFTER `nickname`;
+2
View File
@@ -1309,6 +1309,8 @@ model User {
wxOpenId String? @map("wx_open_id") @db.VarChar(64)
wxUnionId String? @map("wx_union_id") @db.VarChar(64)
nickname String? @db.VarChar(64)
/// HQ 管理员备注(C 端不展示、不可改)
hqRemark String? @map("hq_remark") @db.VarChar(128)
avatarResourceId BigInt? @map("avatar_resource_id") @db.UnsignedBigInt
status Int @default(1) @db.TinyInt
/// 测试账号:命中全局测试白名单手机号
@@ -142,7 +142,7 @@ export const HQ_OPERATION_ACTION_LABELS: Record<string, string> = {
[HqOperationAction.HQ_ACCOUNT_CREATE]: '新增 HQ 管理员',
[HqOperationAction.HQ_ACCOUNT_UPDATE]: '编辑 HQ 管理员',
[HqOperationAction.HQ_PERMISSION_UPDATE]: '配置 HQ 权限',
[HqOperationAction.USER_UPDATE]: '修改用户昵称',
[HqOperationAction.USER_UPDATE]: '修改用户备注',
[HqOperationAction.USER_DELETE]: '删除用户',
[HqOperationAction.USER_BATCH_DELETE]: '批量删除用户',
[HqOperationAction.ORDER_SHIP]: '订单发货',
@@ -37,6 +37,7 @@ function mapAdminUserRow(u: {
mergedIntoUserId: bigint | null;
wxOpenId: string | null;
nickname: string | null;
hqRemark: string | null;
status: number;
sourceType: string;
sourceRefId: bigint | null;
@@ -56,6 +57,7 @@ function mapAdminUserRow(u: {
wxOpenId: u.wxOpenId,
wechatVerified: !!u.wxOpenId,
nickname: u.nickname,
hqRemark: u.hqRemark,
status: u.status,
sourceType: u.sourceType,
sourceRefId: u.sourceRefId,
@@ -100,6 +102,7 @@ export class AdminUsersService {
mergedIntoUserId: true,
wxOpenId: true,
nickname: true,
hqRemark: true,
status: true,
sourceType: true,
sourceRefId: true,
@@ -188,14 +191,14 @@ export class AdminUsersService {
});
}
async updateUser(id: bigint, dto: { nickname: string }) {
async updateUser(id: bigint, dto: { hqRemark: string }) {
const user = await this.prisma.user.findUnique({ where: { id }, select: { id: true } });
if (!user) throw new NotFoundException('用户不存在');
const nickname = dto.nickname.trim() || null;
const hqRemark = dto.hqRemark.trim() || null;
const updated = await this.prisma.user.update({
where: { id },
data: { nickname },
select: { id: true, userNo: true, nickname: true },
data: { hqRemark },
select: { id: true, userNo: true, hqRemark: true },
});
return serializeBigInt(updated);
}
@@ -951,8 +951,8 @@ export class BatchDeleteUsersConfirmDto extends BatchDeleteUsersDto {
export class UpdateAdminUserDto {
@IsString()
@MaxLength(64)
nickname: string;
@MaxLength(128)
hqRemark: string;
}
/** HQ 订单发货(目前仅小飞侠 XFX) */