using Microsoft.AspNetCore.Mvc; namespace SiteManagementSystem_SoftwareEngineering_.Model { public class ApiResponse : OkObjectResult { private ApiResponse(int code, string message, object? data) : base(new ResponseModel(code, message, data)) { } public static ApiResponse Success(string message = "", object? data = null) => new ApiResponse(200, message, data); public static ApiResponse Forbidden(string message = "", object? data = null) => new ApiResponse(403, message, data); public static ApiResponse Fail(string message = "", object? data = null) => new ApiResponse(500, message, data); } file class ResponseModel { public int Code { get; set; } public string Message { get; set; } public object? Data { get; set; } public ResponseModel(int code, string message, object? data) { Code = code; Message = message; Data = data; } } }