This commit is contained in:
rnchg
2026-07-14 21:29:27 +08:00
commit f7ad7e20aa
1773 changed files with 514155 additions and 0 deletions
@@ -0,0 +1,46 @@
using Common.NETCore.Models;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.Filters;
using System.Net;
namespace FASS.Scheduler.Attributes
{
public class ResultAttribute : ActionFilterAttribute
{
public override void OnResultExecuting(ResultExecutingContext context)
{
if (context.Result is StatusCodeResult statusCodeResult)
{
var responseResult = new ResponseResult();
responseResult.Code = statusCodeResult.StatusCode.ToString();
if (statusCodeResult is OkResult)
{
responseResult.Success = true;
responseResult.Data = Enum.GetName(typeof(HttpStatusCode), (HttpStatusCode)statusCodeResult.StatusCode);
}
else
{
responseResult.Success = false;
responseResult.Message = Enum.GetName(typeof(HttpStatusCode), (HttpStatusCode)statusCodeResult.StatusCode);
}
context.Result = new OkObjectResult(responseResult);
}
else if (context.Result is ObjectResult objectResult)
{
var responseResult = new ResponseResult();
responseResult.Code = (objectResult?.StatusCode ?? 0).ToString();
if (objectResult is OkObjectResult)
{
responseResult.Success = true;
responseResult.Data = objectResult.Value;
}
else
{
responseResult.Success = false;
responseResult.Message = objectResult?.Value;
}
context.Result = new OkObjectResult(responseResult);
}
}
}
}