feat(common): 添加统一响应格式 Result/ResultCode/PageResult (T006)
This commit is contained in:
22
src/main/java/com/label/common/result/PageResult.java
Normal file
22
src/main/java/com/label/common/result/PageResult.java
Normal file
@@ -0,0 +1,22 @@
|
||||
package com.label.common.result;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class PageResult<T> {
|
||||
private List<T> items;
|
||||
private long total;
|
||||
private int page;
|
||||
private int pageSize;
|
||||
|
||||
public static <T> PageResult<T> of(List<T> items, long total, int page, int pageSize) {
|
||||
PageResult<T> pageResult = new PageResult<>();
|
||||
pageResult.setItems(items);
|
||||
pageResult.setTotal(total);
|
||||
pageResult.setPage(page);
|
||||
pageResult.setPageSize(pageSize);
|
||||
return pageResult;
|
||||
}
|
||||
}
|
||||
37
src/main/java/com/label/common/result/Result.java
Normal file
37
src/main/java/com/label/common/result/Result.java
Normal file
@@ -0,0 +1,37 @@
|
||||
package com.label.common.result;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class Result<T> {
|
||||
private String code;
|
||||
private T data;
|
||||
private String message;
|
||||
|
||||
public static <T> Result<T> success(T data) {
|
||||
Result<T> result = new Result<>();
|
||||
result.setCode(ResultCode.SUCCESS.name());
|
||||
result.setData(data);
|
||||
return result;
|
||||
}
|
||||
|
||||
public static <T> Result<T> success() {
|
||||
Result<T> result = new Result<>();
|
||||
result.setCode(ResultCode.SUCCESS.name());
|
||||
return result;
|
||||
}
|
||||
|
||||
public static <T> Result<T> failure(ResultCode code, String message) {
|
||||
Result<T> result = new Result<>();
|
||||
result.setCode(code.name());
|
||||
result.setMessage(message);
|
||||
return result;
|
||||
}
|
||||
|
||||
public static <T> Result<T> failure(String code, String message) {
|
||||
Result<T> result = new Result<>();
|
||||
result.setCode(code);
|
||||
result.setMessage(message);
|
||||
return result;
|
||||
}
|
||||
}
|
||||
19
src/main/java/com/label/common/result/ResultCode.java
Normal file
19
src/main/java/com/label/common/result/ResultCode.java
Normal file
@@ -0,0 +1,19 @@
|
||||
package com.label.common.result;
|
||||
|
||||
public enum ResultCode {
|
||||
SUCCESS,
|
||||
FAILURE,
|
||||
UNAUTHORIZED, // 401 - no valid token
|
||||
FORBIDDEN, // 403 - insufficient role
|
||||
NOT_FOUND, // 404
|
||||
CONFLICT, // 409
|
||||
INVALID_STATE, // 409 state machine violation
|
||||
TASK_CLAIMED, // 409 task already claimed
|
||||
SELF_REVIEW_FORBIDDEN, // 403 self-review prevention
|
||||
UNKNOWN_CONFIG_KEY, // 400 unknown config key
|
||||
INVALID_SAMPLES, // 400 invalid export samples
|
||||
EMPTY_SAMPLES, // 400 empty sample list
|
||||
FINETUNE_ALREADY_STARTED, // 409 fine-tune already started
|
||||
INVALID_STATE_TRANSITION, // 409 invalid state machine transition
|
||||
INTERNAL_ERROR // 500
|
||||
}
|
||||
Reference in New Issue
Block a user