diff --git a/backend-single/src/main/java/com/emotion/dto/request/AdminCreateRequest.java b/backend-single/src/main/java/com/emotion/dto/request/AdminCreateRequest.java index b7070c2..03eb256 100644 --- a/backend-single/src/main/java/com/emotion/dto/request/AdminCreateRequest.java +++ b/backend-single/src/main/java/com/emotion/dto/request/AdminCreateRequest.java @@ -1,5 +1,6 @@ package com.emotion.dto.request; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import javax.validation.constraints.Email; @@ -21,39 +22,45 @@ 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; /** @@ -61,22 +68,26 @@ public class AdminCreateRequest { */ @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; } diff --git a/backend-single/src/main/java/com/emotion/dto/request/AdminLoginRequest.java b/backend-single/src/main/java/com/emotion/dto/request/AdminLoginRequest.java index 00b0a9f..b50dd91 100644 --- a/backend-single/src/main/java/com/emotion/dto/request/AdminLoginRequest.java +++ b/backend-single/src/main/java/com/emotion/dto/request/AdminLoginRequest.java @@ -1,5 +1,6 @@ package com.emotion.dto.request; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import javax.validation.constraints.NotBlank; @@ -19,12 +20,14 @@ public class AdminLoginRequest { */ @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; } diff --git a/backend-single/src/main/java/com/emotion/dto/request/AdminPageRequest.java b/backend-single/src/main/java/com/emotion/dto/request/AdminPageRequest.java index 3cb84fb..8e66b28 100644 --- a/backend-single/src/main/java/com/emotion/dto/request/AdminPageRequest.java +++ b/backend-single/src/main/java/com/emotion/dto/request/AdminPageRequest.java @@ -1,5 +1,6 @@ package com.emotion.dto.request; +import io.swagger.v3.oas.annotations.media.Schema; import com.emotion.common.BasePageRequest; import lombok.Data; import lombok.EqualsAndHashCode; @@ -20,40 +21,47 @@ public class AdminPageRequest extends BasePageRequest { * 账号 */ @Size(max = 50, message = "账号长度不能超过50个字符") + @Schema(description = "账号(模糊搜索)") private String account; /** * 姓名 */ @Size(max = 50, message = "姓名长度不能超过50个字符") + @Schema(description = "姓名(模糊搜索)") private String username; /** * 邮箱 */ @Size(max = 100, message = "邮箱长度不能超过100个字符") + @Schema(description = "邮箱(模糊搜索)") private String email; /** * 手机号 */ @Size(max = 20, message = "手机号长度不能超过20个字符") + @Schema(description = "手机号(模糊搜索)") private String phone; /** * 角色 */ @Size(max = 20, message = "角色长度不能超过20个字符") + @Schema(description = "角色") private String role; /** * 状态: 0-禁用, 1-正常 */ + @Schema(description = "状态(0-禁用,1-正常)") private Integer status; /** * 部门 */ @Size(max = 50, message = "部门长度不能超过50个字符") + @Schema(description = "部门(模糊搜索)") private String department; } diff --git a/backend-single/src/main/java/com/emotion/dto/request/AdminUpdateRequest.java b/backend-single/src/main/java/com/emotion/dto/request/AdminUpdateRequest.java index 587ccd2..2403e1d 100644 --- a/backend-single/src/main/java/com/emotion/dto/request/AdminUpdateRequest.java +++ b/backend-single/src/main/java/com/emotion/dto/request/AdminUpdateRequest.java @@ -1,5 +1,6 @@ package com.emotion.dto.request; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import javax.validation.constraints.Email; @@ -20,12 +21,14 @@ public class AdminUpdateRequest { * ID */ @NotBlank(message = "ID不能为空") + @Schema(description = "管理员ID") private String id; /** * 管理员姓名 */ @Size(min = 2, max = 50, message = "姓名长度必须在2-50个字符之间") + @Schema(description = "管理员姓名") private String username; /** @@ -33,45 +36,53 @@ public class AdminUpdateRequest { */ @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; /** * 角色 */ @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; /** * 状态: 0-禁用, 1-正常 */ + @Schema(description = "状态(0-禁用,1-正常)") private Integer status; /** * 所属部门 */ @Size(max = 50, message = "部门长度不能超过50个字符") + @Schema(description = "所属部门") private String department; /** * 职位 */ @Size(max = 50, message = "职位长度不能超过50个字符") + @Schema(description = "职位") private String position; } diff --git a/backend-single/src/main/java/com/emotion/dto/request/LoginRequest.java b/backend-single/src/main/java/com/emotion/dto/request/LoginRequest.java index 4ac88b1..2c2a08b 100644 --- a/backend-single/src/main/java/com/emotion/dto/request/LoginRequest.java +++ b/backend-single/src/main/java/com/emotion/dto/request/LoginRequest.java @@ -1,5 +1,6 @@ package com.emotion.dto.request; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; @@ -23,6 +24,7 @@ public class LoginRequest extends BaseRequest { */ @NotBlank(message = "手机号不能为空") @Pattern(regexp = "^1[3-9]\\d{9}$", message = "手机号格式不正确") + @Schema(description = "手机号") private String phone; /** @@ -30,5 +32,6 @@ public class LoginRequest extends BaseRequest { */ @NotBlank(message = "验证码不能为空") @Size(min = 6, max = 6, message = "验证码必须为6位") + @Schema(description = "短信验证码") private String smsCode; } diff --git a/backend-single/src/main/java/com/emotion/dto/request/RefreshTokenRequest.java b/backend-single/src/main/java/com/emotion/dto/request/RefreshTokenRequest.java index 0bf93fa..197bc40 100644 --- a/backend-single/src/main/java/com/emotion/dto/request/RefreshTokenRequest.java +++ b/backend-single/src/main/java/com/emotion/dto/request/RefreshTokenRequest.java @@ -1,5 +1,6 @@ package com.emotion.dto.request; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; @@ -19,5 +20,6 @@ public class RefreshTokenRequest extends BaseRequest { * 刷新令牌 */ @NotBlank(message = "刷新令牌不能为空") + @Schema(description = "刷新令牌") private String refreshToken; } \ No newline at end of file diff --git a/backend-single/src/main/java/com/emotion/dto/request/RegisterRequest.java b/backend-single/src/main/java/com/emotion/dto/request/RegisterRequest.java index 47a06d8..cfb982f 100644 --- a/backend-single/src/main/java/com/emotion/dto/request/RegisterRequest.java +++ b/backend-single/src/main/java/com/emotion/dto/request/RegisterRequest.java @@ -1,5 +1,6 @@ package com.emotion.dto.request; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; @@ -23,6 +24,7 @@ public class RegisterRequest extends BaseRequest { */ @NotBlank(message = "手机号不能为空") @Pattern(regexp = "^1[3-9]\\d{9}$", message = "手机号格式不正确") + @Schema(description = "手机号(作为账号)") private String phone; /** @@ -30,6 +32,7 @@ public class RegisterRequest extends BaseRequest { */ @NotBlank(message = "密码不能为空") @Size(min = 6, max = 20, message = "密码长度必须在6-20个字符之间") + @Schema(description = "密码") private String password; /** @@ -37,5 +40,6 @@ public class RegisterRequest extends BaseRequest { */ @NotBlank(message = "验证码不能为空") @Size(min = 6, max = 6, message = "验证码必须为6位") + @Schema(description = "短信验证码") private String smsCode; } diff --git a/backend-single/src/main/java/com/emotion/dto/request/ResetPasswordRequest.java b/backend-single/src/main/java/com/emotion/dto/request/ResetPasswordRequest.java index 0aa6ebd..c7861dd 100644 --- a/backend-single/src/main/java/com/emotion/dto/request/ResetPasswordRequest.java +++ b/backend-single/src/main/java/com/emotion/dto/request/ResetPasswordRequest.java @@ -1,5 +1,6 @@ package com.emotion.dto.request; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; @@ -24,6 +25,7 @@ public class ResetPasswordRequest extends BaseRequest { */ @NotBlank(message = "手机号不能为空") @Pattern(regexp = "^1[3-9]\\d{9}$", message = "手机号格式不正确") + @Schema(description = "手机号") private String phone; /** @@ -31,12 +33,14 @@ public class ResetPasswordRequest extends BaseRequest { */ @NotBlank(message = "新密码不能为空") @Size(min = 6, max = 20, message = "新密码长度必须在6-20个字符之间") + @Schema(description = "新密码") private String newPassword; /** * 验证码(本期固定为 123456) */ @NotBlank(message = "验证码不能为空") + @Schema(description = "验证码") private String captcha; } diff --git a/backend-single/src/main/java/com/emotion/dto/request/UserCreateRequest.java b/backend-single/src/main/java/com/emotion/dto/request/UserCreateRequest.java index 941eef2..82cd53c 100644 --- a/backend-single/src/main/java/com/emotion/dto/request/UserCreateRequest.java +++ b/backend-single/src/main/java/com/emotion/dto/request/UserCreateRequest.java @@ -1,5 +1,6 @@ package com.emotion.dto.request; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; @@ -23,31 +24,36 @@ public class UserCreateRequest extends BaseRequest { */ @NotBlank(message = "账号不能为空") @Size(min = 3, max = 20, message = "账号长度必须在3-20个字符之间") + @Schema(description = "用户账号") private String account; - + /** * 用户名 */ @NotBlank(message = "用户名不能为空") @Size(min = 2, max = 20, message = "用户名长度必须在2-20个字符之间") + @Schema(description = "用户名") private String username; - + /** * 密码 */ @NotBlank(message = "密码不能为空") @Size(min = 6, max = 20, message = "密码长度必须在6-20个字符之间") + @Schema(description = "初始密码") private String password; - + /** * 邮箱 */ @Email(message = "邮箱格式不正确") + @Schema(description = "邮箱") private String email; - + /** * 手机号 */ @Pattern(regexp = "^1[3-9]\\d{9}$", message = "手机号格式不正确") + @Schema(description = "手机号") private String phone; } diff --git a/backend-single/src/main/java/com/emotion/dto/request/UserPageRequest.java b/backend-single/src/main/java/com/emotion/dto/request/UserPageRequest.java index c9c5e7b..9a23fae 100644 --- a/backend-single/src/main/java/com/emotion/dto/request/UserPageRequest.java +++ b/backend-single/src/main/java/com/emotion/dto/request/UserPageRequest.java @@ -1,5 +1,6 @@ package com.emotion.dto.request; +import io.swagger.v3.oas.annotations.media.Schema; import com.emotion.common.BasePageRequest; import lombok.Data; import lombok.EqualsAndHashCode; @@ -20,34 +21,40 @@ public class UserPageRequest extends BasePageRequest { * 账号 */ @Size(max = 20, message = "账号长度不能超过20个字符") + @Schema(description = "账号(模糊搜索)") private String account; /** * 用户名 */ @Size(max = 20, message = "用户名长度不能超过20个字符") + @Schema(description = "用户名(模糊搜索)") private String username; /** * 邮箱 */ @Size(max = 100, message = "邮箱长度不能超过100个字符") + @Schema(description = "邮箱(模糊搜索)") private String email; /** * 手机号 */ @Size(max = 20, message = "手机号长度不能超过20个字符") + @Schema(description = "手机号(模糊搜索)") private String phone; /** * 状态 */ + @Schema(description = "状态") private Integer status; /** * 会员等级 */ @Size(max = 20, message = "会员等级长度不能超过20个字符") + @Schema(description = "会员等级") private String memberLevel; } \ No newline at end of file diff --git a/backend-single/src/main/java/com/emotion/dto/request/UserProfileUpdateRequest.java b/backend-single/src/main/java/com/emotion/dto/request/UserProfileUpdateRequest.java index 29a71f7..2f79131 100644 --- a/backend-single/src/main/java/com/emotion/dto/request/UserProfileUpdateRequest.java +++ b/backend-single/src/main/java/com/emotion/dto/request/UserProfileUpdateRequest.java @@ -1,5 +1,6 @@ package com.emotion.dto.request; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import javax.validation.constraints.Email; @@ -20,6 +21,7 @@ public class UserProfileUpdateRequest { * 昵称 */ @Size(max = 50, message = "昵称长度不能超过50个字符") + @Schema(description = "昵称") private String nickname; /** @@ -27,34 +29,40 @@ public class UserProfileUpdateRequest { */ @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; - + /** * 生日 */ + @Schema(description = "生日") private LocalDate birthDate; - + /** * 所在地 */ @Size(max = 100, message = "所在地长度不能超过100个字符") + @Schema(description = "所在地") private String location; - + /** * 个人简介 */ @Size(max = 500, message = "个人简介长度不能超过500个字符") + @Schema(description = "个人简介") private String bio; } diff --git a/backend-single/src/main/java/com/emotion/dto/request/UserUpdateRequest.java b/backend-single/src/main/java/com/emotion/dto/request/UserUpdateRequest.java index 6b12ef5..f98fb05 100644 --- a/backend-single/src/main/java/com/emotion/dto/request/UserUpdateRequest.java +++ b/backend-single/src/main/java/com/emotion/dto/request/UserUpdateRequest.java @@ -1,5 +1,6 @@ package com.emotion.dto.request; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import javax.validation.constraints.Email; @@ -21,18 +22,21 @@ public class UserUpdateRequest { * ID */ @NotBlank(message = "ID不能为空") + @Schema(description = "用户ID") private String id; /** * 用户名 */ @Size(max = 50, message = "用户名长度不能超过50个字符") + @Schema(description = "用户名") private String username; /** * 昵称 */ @Size(max = 50, message = "昵称长度不能超过50个字符") + @Schema(description = "昵称") private String nickname; /** @@ -40,45 +44,53 @@ public class UserUpdateRequest { */ @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; /** * 生日 */ + @Schema(description = "生日") private LocalDate birthDate; /** * 所在地 */ @Size(max = 100, message = "所在地长度不能超过100个字符") + @Schema(description = "所在地") private String location; /** * 个人简介 */ @Size(max = 500, message = "个人简介长度不能超过500个字符") + @Schema(description = "个人简介") private String bio; /** * 状态 */ + @Schema(description = "状态") private Integer status; /** * 会员等级 */ @Size(max = 20, message = "会员等级长度不能超过20个字符") + @Schema(description = "会员等级") private String memberLevel; } \ No newline at end of file diff --git a/backend-single/src/main/java/com/emotion/dto/request/analytics/AnalyticsQueryRequest.java b/backend-single/src/main/java/com/emotion/dto/request/analytics/AnalyticsQueryRequest.java index cd7bdf0..82a9999 100644 --- a/backend-single/src/main/java/com/emotion/dto/request/analytics/AnalyticsQueryRequest.java +++ b/backend-single/src/main/java/com/emotion/dto/request/analytics/AnalyticsQueryRequest.java @@ -1,5 +1,6 @@ package com.emotion.dto.request.analytics; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; @@ -10,16 +11,22 @@ import java.util.List; public class AnalyticsQueryRequest { @DateTimeFormat(pattern = "yyyy-MM-dd") + @Schema(description = "开始日期") private LocalDate startDate; @DateTimeFormat(pattern = "yyyy-MM-dd") + @Schema(description = "结束日期") private LocalDate endDate; + @Schema(description = "时间粒度(day/week/month)") private String granularity; + @Schema(description = "事件名称列表(过滤条件)") private List eventNames; + @Schema(description = "事件类型(过滤条件)") private String eventType; + @Schema(description = "返回结果数量限制") private Integer limit; }