初始化
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
/**
|
||||
* 统一API响应格式工具类
|
||||
*/
|
||||
class ResponseUtil {
|
||||
/**
|
||||
* 成功响应
|
||||
*/
|
||||
static success(data = null, message = 'Success') {
|
||||
return {
|
||||
success: true,
|
||||
message,
|
||||
data,
|
||||
timestamp: new Date().toISOString()
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* 错误响应
|
||||
*/
|
||||
static error(message = 'Error', code = null, details = null) {
|
||||
return {
|
||||
success: false,
|
||||
message,
|
||||
code,
|
||||
details,
|
||||
timestamp: new Date().toISOString()
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页响应
|
||||
*/
|
||||
static paginated(data, page, limit, total) {
|
||||
return {
|
||||
success: true,
|
||||
data,
|
||||
pagination: {
|
||||
page: parseInt(page),
|
||||
limit: parseInt(limit),
|
||||
total,
|
||||
pages: Math.ceil(total / limit)
|
||||
},
|
||||
timestamp: new Date().toISOString()
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表响应
|
||||
*/
|
||||
static list(data, total = null) {
|
||||
return {
|
||||
success: true,
|
||||
data,
|
||||
total: total || (Array.isArray(data) ? data.length : 0),
|
||||
timestamp: new Date().toISOString()
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = ResponseUtil;
|
||||
Reference in New Issue
Block a user