Files
happy-life-star/server/src/main/java/com/emotion/dto/request/AdminCreateRequest.java
T

94 lines
2.4 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package com.emotion.dto.request;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import javax.validation.constraints.Email;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size;
/**
* 管理员创建请求
*
* @author huazhongmin
* @date 2025-10-27
*/
@Data
public class AdminCreateRequest {
/**
* 管理员账号
*/
@NotBlank(message = "账号不能为空")
@Size(min = 3, max = 50, message = "账号长度必须在3-50个字符之间")
@Schema(description = "管理员账号")
private String account;
/**
* 密码
*/
@NotBlank(message = "密码不能为空")
@Size(min = 6, max = 20, message = "密码长度必须在6-20个字符之间")
@Schema(description = "初始密码")
private String password;
/**
* 管理员姓名
*/
@NotBlank(message = "姓名不能为空")
@Size(min = 2, max = 50, message = "姓名长度必须在2-50个字符之间")
@Schema(description = "管理员姓名")
private String username;
/**
* 邮箱
*/
@Email(message = "邮箱格式不正确")
@Size(max = 100, message = "邮箱长度不能超过100个字符")
@Schema(description = "邮箱")
private String email;
/**
* 手机号
*/
@Pattern(regexp = "^1[3-9]\\d{9}$", message = "手机号格式不正确")
@Schema(description = "手机号")
private String phone;
/**
* 头像URL
*/
@Size(max = 500, message = "头像URL长度不能超过500个字符")
@Schema(description = "头像URL")
private String avatar;
/**
* 角色
*/
@NotBlank(message = "角色不能为空")
@Pattern(regexp = "^(super_admin|admin|operator)$", message = "角色必须是super_admin、admin或operator")
@Schema(description = "角色(super_admin/admin/operator")
private String role;
/**
* 权限列表(JSON格式)
*/
@Schema(description = "权限列表(JSON格式)")
private String permissions;
/**
* 所属部门
*/
@Size(max = 50, message = "部门长度不能超过50个字符")
@Schema(description = "所属部门")
private String department;
/**
* 职位
*/
@Size(max = 50, message = "职位长度不能超过50个字符")
@Schema(description = "职位")
private String position;
}