diff --git a/server/skillhub-app/src/main/java/com/iflytek/skillhub/dto/BatchMemberRequest.java b/server/skillhub-app/src/main/java/com/iflytek/skillhub/dto/BatchMemberRequest.java new file mode 100644 index 00000000..a2ce9a63 --- /dev/null +++ b/server/skillhub-app/src/main/java/com/iflytek/skillhub/dto/BatchMemberRequest.java @@ -0,0 +1,10 @@ +package com.iflytek.skillhub.dto; + +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotEmpty; +import java.util.List; + +public record BatchMemberRequest( + @NotEmpty(message = "{validation.batch.members.notEmpty}") + List<@Valid MemberRequest> members +) {} diff --git a/server/skillhub-app/src/main/java/com/iflytek/skillhub/dto/BatchMemberResponse.java b/server/skillhub-app/src/main/java/com/iflytek/skillhub/dto/BatchMemberResponse.java new file mode 100644 index 00000000..739fdf69 --- /dev/null +++ b/server/skillhub-app/src/main/java/com/iflytek/skillhub/dto/BatchMemberResponse.java @@ -0,0 +1,10 @@ +package com.iflytek.skillhub.dto; + +import java.util.List; + +public record BatchMemberResponse( + int totalCount, + int successCount, + int failureCount, + List results +) {} diff --git a/server/skillhub-app/src/main/java/com/iflytek/skillhub/dto/BatchMemberResult.java b/server/skillhub-app/src/main/java/com/iflytek/skillhub/dto/BatchMemberResult.java new file mode 100644 index 00000000..1801cb2b --- /dev/null +++ b/server/skillhub-app/src/main/java/com/iflytek/skillhub/dto/BatchMemberResult.java @@ -0,0 +1,16 @@ +package com.iflytek.skillhub.dto; + +public record BatchMemberResult( + String userId, + String role, + boolean success, + String error +) { + public static BatchMemberResult success(String userId, String role) { + return new BatchMemberResult(userId, role, true, null); + } + + public static BatchMemberResult failure(String userId, String role, String error) { + return new BatchMemberResult(userId, role, false, error); + } +}