using Admin.NET.Plugin.ApprovalFlow.Service; using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Http; namespace Admin.NET.Plugin.ApprovalFlow; public static class ApprovalFlowMiddlewareExtensions { public static IApplicationBuilder UseApprovalFlow(this IApplicationBuilder builder) { return builder.UseMiddleware(); } } /// /// 审批流中间件 — 可选审计模式(B8 fix: 改用 InvokeAsync 参数注入) /// public class ApprovalFlowMiddleware { private readonly RequestDelegate _next; public ApprovalFlowMiddleware(RequestDelegate next) { _next = next; } public async Task InvokeAsync(HttpContext context, SysApprovalService sysApprovalService) { var enabled = App.GetConfig("ApprovalFlow:AuditEnabled", false); if (enabled) { await sysApprovalService.MatchApproval(context); } await _next(context); } }