From c0a4b045720e83f8e52ffc110b773aeece590b55 Mon Sep 17 00:00:00 2001
From: sunpengfei <i@angelzzz.com>
Date: 星期四, 07 八月 2025 18:26:29 +0800
Subject: [PATCH] Merge branch 'master' of http://120.26.58.240:8888/r/ApiFlexJob

---
 FlexJobApi.Core/FlexJobApiCoreStartup.cs |   40 +++++++++++++++++++++++++++++++++-------
 1 files changed, 33 insertions(+), 7 deletions(-)

diff --git a/FlexJobApi.Core/FlexJobApiCoreStartup.cs b/FlexJobApi.Core/FlexJobApiCoreStartup.cs
index e665ae2..a63fda8 100644
--- a/FlexJobApi.Core/FlexJobApiCoreStartup.cs
+++ b/FlexJobApi.Core/FlexJobApiCoreStartup.cs
@@ -1,4 +1,5 @@
-锘縰sing Furion;
+锘縰sing Consul;
+using Furion;
 using Furion.EventBus;
 using MediatR;
 using Microsoft.AspNetCore.Builder;
@@ -19,16 +20,16 @@
     {
         public void ConfigureServices(IServiceCollection services)
         {
+            services.AddHealthChecks();
+
             services.AddConsoleFormatter(options =>
             {
                 options.WithTraceId = true;
-                options.WithStackFrame = true;
             });
 
             services.AddFileLogging(options =>
             {
                 options.WithTraceId = true;
-                options.WithStackFrame = true;
                 options.FileNameRule = fileName =>
                 {
                     return string.Format(fileName, DateTime.UtcNow);    // 濡傛灉鏄湰鍦版椂闂翠娇鐢� DateTime.Now
@@ -38,8 +39,13 @@
             services.AddDatabaseLogging<DatabaseLoggingWriter>(options =>
             {
                 options.WithTraceId = true;
-                options.WithStackFrame = true;
             });
+
+            services.AddConfigurableOptions<AliyunOptions>();
+
+            services.AddHttpRemote();
+
+            services.AddComponent<ConsulServiceComponent>();
 
             services.AddComponent<EventBusServiceComponent>();
 
@@ -53,17 +59,27 @@
 
             services.AddCorsAccessor();
 
+            services.AddHostedService<BuildDynamicControllersHostedService>();
+
+            services.AddSpecificationDocuments(options =>
+            {
+                options.OperationFilter<CustomOperationIdFilter>();
+                options.SchemaFilter<EnumSchemaFilter>();
+            });
+
             services.AddControllers()
                     .AddNewtonsoftJson(options =>
                     {
-                        options.SerializerSettings.Converters.Add(new StringEnumConverter());
+                        //options.SerializerSettings.Converters.Add(new StringEnumConverter());
                     })
                     .AddFriendlyException()
                     .AddDataValidation()
                     .AddInjectWithUnifyResult<FriendlyResultProvider>();
+
+            services.AddMvcFilter<ResourceActionFilter>();
         }
 
-        public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
+        public void Configure(IApplicationBuilder app, IWebHostEnvironment env, IHostApplicationLifetime lifetime)
         {
             // 瑙f瀽浜嬩欢鎬荤嚎鍙戝竷鏈嶅姟
             var eventPublisher = app.ApplicationServices.GetRequiredService<IEventPublisher>();
@@ -81,7 +97,7 @@
 
             app.UseUnifyResultStatusCodes();
 
-            app.UseHttpsRedirection();
+            //app.UseHttpsRedirection();
 
             app.UseRouting();
 
@@ -92,10 +108,20 @@
 
             app.UseInject(string.Empty);
 
+            app.UseSpecificationDocuments();
+
             app.UseEndpoints(endpoints =>
             {
                 endpoints.MapControllers();
+                endpoints.MapHealthChecks("/healthz");
             });
+
+            app.UseComponent<ConsulApplicationComponent>(env);
+
+            //lifetime.ApplicationStarted.Register(async () =>
+            //{
+            //    await ResourceUtils.BuildDynamicControllersAsync();
+            //});
         }
     }
 }

--
Gitblit v1.9.1