36 lines
1.2 KiB
C#
36 lines
1.2 KiB
C#
#nullable disable
|
|
namespace Marco.Pms.Model.Utilities
|
|
{
|
|
|
|
public class ApiResponse<T>
|
|
{
|
|
public bool Success { get; set; }
|
|
public string Message { get; set; }
|
|
public T Data { get; set; }
|
|
public object Errors { get; set; }
|
|
public int StatusCode { get; set; }
|
|
public DateTime Timestamp { get; set; } = DateTime.UtcNow;
|
|
|
|
public ApiResponse(bool success, string message, T data, object errors, int statusCode)
|
|
{
|
|
Success = success;
|
|
Message = message;
|
|
Data = data;
|
|
Errors = errors;
|
|
StatusCode = statusCode;
|
|
}
|
|
|
|
public static ApiResponse<T> SuccessResponse(T data, string message = "Request processed successfully.", int statusCode = 200)
|
|
{
|
|
return new ApiResponse<T>(true, message, data, null, statusCode);
|
|
}
|
|
|
|
public static ApiResponse<T> ErrorResponse(string message, object errors = null, int statusCode = 400)
|
|
{
|
|
return new ApiResponse<T>(false, message, default, errors, statusCode);
|
|
}
|
|
|
|
}
|
|
|
|
}
|