Files
accounts-manager/src/lib/apiResponse.ts
Your Name 891ae27689 feat: initial commit with accounts manager project structure
- TypeScript项目基础架构
- API路由和账户管理服务
- 数据库模式和迁移
- 基础配置文件和文档

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-23 01:42:50 +08:00

40 lines
1.2 KiB
TypeScript

import { ApiResponse, BusinessCode } from '../types/api';
export function createSuccessResponse<T>(data: T, message = 'Success'): ApiResponse<T> {
return {
code: BusinessCode.Success,
message,
data,
};
}
export function createErrorResponse(
code: BusinessCode,
message: string
): ApiResponse<null> {
return {
code,
message,
data: null,
};
}
export function createNoResourceResponse(message = 'No resource found'): ApiResponse<null> {
return createErrorResponse(BusinessCode.NoResource, message);
}
export function createInvalidParamsResponse(message = 'Invalid parameters'): ApiResponse<null> {
return createErrorResponse(BusinessCode.InvalidParams, message);
}
export function createResourceConflictResponse(message = 'Resource conflict'): ApiResponse<null> {
return createErrorResponse(BusinessCode.ResourceConflict, message);
}
export function createPermissionDeniedResponse(message = 'Permission denied'): ApiResponse<null> {
return createErrorResponse(BusinessCode.PermissionDenied, message);
}
export function createBusinessErrorResponse(message = 'Business error'): ApiResponse<null> {
return createErrorResponse(BusinessCode.BusinessError, message);
}