diff --git a/be/Hosts/Auth.Host/src/Win_in.Sfs.Auth.Web/Win_in.Sfs.Auth.Web.csproj b/be/Hosts/Auth.Host/src/Win_in.Sfs.Auth.Web/Win_in.Sfs.Auth.Web.csproj index e34e27aae..cd991573e 100644 --- a/be/Hosts/Auth.Host/src/Win_in.Sfs.Auth.Web/Win_in.Sfs.Auth.Web.csproj +++ b/be/Hosts/Auth.Host/src/Win_in.Sfs.Auth.Web/Win_in.Sfs.Auth.Web.csproj @@ -13,8 +13,6 @@ false true Win_in.Sfs.Auth-4681b4fd-151f-4221-84a4-929d86723e4c - 1.yyyy.Mdd.Hmm - 1.2023.407.1105 True diff --git a/be/Hosts/Win_in.Sfs.Wms.Dashboard.Host/DashboardHttpApiHostModule.cs b/be/Hosts/Win_in.Sfs.Wms.Dashboard.Host/DashboardHttpApiHostModule.cs index bcd7b88cc..720e00dcf 100644 --- a/be/Hosts/Win_in.Sfs.Wms.Dashboard.Host/DashboardHttpApiHostModule.cs +++ b/be/Hosts/Win_in.Sfs.Wms.Dashboard.Host/DashboardHttpApiHostModule.cs @@ -1,17 +1,8 @@ using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; using System.Net.Http.Headers; -using Microsoft.AspNetCore.Authentication.JwtBearer; -using Microsoft.AspNetCore.Builder; -using Microsoft.AspNetCore.Cors; -using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; using Polly; -using Volo.Abp; -using Volo.Abp.AspNetCore.Mvc.AntiForgery; using Volo.Abp.AspNetCore.Mvc.Client; using Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy; using Volo.Abp.AspNetCore.Serilog; @@ -22,9 +13,8 @@ using Volo.Abp.Http.Client; using Volo.Abp.Http.Client.Authentication; using Volo.Abp.Http.Client.IdentityModel.Web; using Volo.Abp.Identity; -using Volo.Abp.Localization; using Volo.Abp.Modularity; -using Volo.Abp.MultiTenancy; +using Volo.Abp.SettingManagement.EntityFrameworkCore; using Volo.Abp.Swashbuckle; using Volo.Abp.Users; using Win_in.Sfs.Auth; @@ -42,7 +32,9 @@ namespace Win_in.Sfs.Wms.Dashboard.Host; typeof(AbpIdentityHttpApiClientModule), typeof(AbpAspNetCoreMvcClientModule), typeof(AbpHttpClientIdentityModelWebModule), - typeof(SharedHostModule) + typeof(SharedHostModule), + typeof(AbpSettingManagementEntityFrameworkCoreModule) + )] /// @@ -65,10 +57,8 @@ namespace Win_in.Sfs.Wms.Dashboard.Host; typeof(MessageApplicationContractsModule), typeof(AuthApplicationContractsModule) )] -public class DashboardHttpApiHostModule : AbpModule +public class DashboardHttpApiHostModule : ModuleBase { - private bool _isMultiTenancy = true; - /// /// 预配置服务 /// @@ -120,55 +110,9 @@ public class DashboardHttpApiHostModule : AbpModule context.Services.Replace(ServiceDescriptor.Transient()); } - /// - /// 配置服务 - /// - /// - public override void ConfigureServices(ServiceConfigurationContext context) - { - _ = context.Services.GetHostingEnvironment(); - var configuration = context.Services.GetConfiguration(); - - context.SetConsoleTitleOfWebApp("Dashboard.Host"); - - _isMultiTenancy = Convert.ToBoolean(configuration["IsMultiTenancy"]); - - context.Services.Configure(configuration.GetSection("Authentication")); - - ConfigureHttpClientProxies(context); - - ConfigureMultiTenancy(); - - ConfigureSwaggerServices(context, configuration); - - ConfigureLocalization(); - - ConfigureAuthentication(context, configuration); - - ConfigureCors(context, configuration); - - ConfigureAntiForgery(); - - var testConfig = configuration["TestConfig"]; - Console.WriteLine("----------------------------"); - Console.WriteLine(testConfig); - Console.WriteLine("----------------------------"); - } - - private void ConfigureAntiForgery() - { - Configure(options => - { - options.TokenCookie.SameSite = Microsoft.AspNetCore.Http.SameSiteMode.Lax; - options.TokenCookie.Expiration = TimeSpan.FromDays(365); - options.AutoValidateIgnoredHttpMethods.Add("POST"); - }); - } - - private static void ConfigureHttpClientProxies(ServiceConfigurationContext context) + protected override void ConfigureHttpClientProxies() { - _ = context.Services.GetConfiguration(); - + var context = this.ServiceConfigurationContext; context.Services.AddHttpClientProxies( typeof(AuthApplicationContractsModule).Assembly, "Auth" @@ -202,145 +146,4 @@ public class DashboardHttpApiHostModule : AbpModule "FileStorage" ); } - - private void ConfigureMultiTenancy() - { - Configure(options => { options.IsEnabled = _isMultiTenancy; }); - } - - private static void ConfigureCors(ServiceConfigurationContext context, IConfiguration configuration) - { - var origins = configuration.GetSection("App:CorsOrigins").Get(); - - context.Services.AddCors(options => - { - options.AddDefaultPolicy(builder => - { - builder - .WithOrigins( - origins.Select(o => o.RemovePostFix("/")) - .ToArray() - ) - .WithAbpExposedHeaders() - .SetIsOriginAllowedToAllowWildcardSubdomains() - .AllowAnyHeader() - .AllowAnyMethod() - .AllowCredentials(); - }); - }); - } - - private static void ConfigureAuthentication(ServiceConfigurationContext context, IConfiguration configuration) - { - //var isAlwaysAllowAuthorization = configuration.GetValue("AuthServer:AlwaysAllowAuthorization"); - //if (isAlwaysAllowAuthorization) - //{ - // //绕过授权服务,用于测试 - // context.Services.AddAlwaysAllowAuthorization(); - //} - //else - //{ - // context.Services.AddAuthentication() - // .AddJwtBearer(options => - // { - // options.Authority = configuration["AuthServer:Authority"]; - // options.RequireHttpsMetadata = Convert.ToBoolean(configuration["AuthServer:RequireHttpsMetadata"]); - // options.Audience = "DataExchange"; - // options.BackchannelHttpHandler = new HttpClientHandler - // { - // ServerCertificateCustomValidationCallback = - // HttpClientHandler.DangerousAcceptAnyServerCertificateValidator - // }; - // }); - //} - - context.Services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme) - .AddJwtBearer(options => - { - options.Authority = configuration["IdentityClients:Default:Authority"]; - options.RequireHttpsMetadata = Convert.ToBoolean(configuration["IdentityClients:Default:RequireHttps"]); - options.Audience = configuration["IdentityClients:Default:Scope"]; - }); - } - - private void ConfigureLocalization() - { - Configure(options => - { - options.Languages.Add(new LanguageInfo("en", "en", "English")); - options.Languages.Add(new LanguageInfo("zh-Hans", "zh-Hans", "简体中文")); - }); - } - - /// - /// 应用初始化 - /// - /// - public override void OnApplicationInitialization(ApplicationInitializationContext context) - { - var app = context.GetApplicationBuilder(); - var env = context.GetEnvironment(); - var configuration = context.GetConfiguration(); - - app.UseDeveloperExceptionPage(); - //if (env.IsDevelopment()) - //{ - // app.UseDeveloperExceptionPage(); - //} - //else - //{ - // //app.UseErrorPage(); - // app.UseHsts(); - //} - - app.UseHttpsRedirection(); - app.UseCorrelationId(); - app.UseStaticFiles(); - app.UseRouting(); - app.UseCors(); - app.UseAuthentication(); - if (_isMultiTenancy) - { - app.UseMultiTenancy(); - } - app.UseAbpRequestLocalization(); - app.UseAuthorization(); - app.UseSwagger(); - app.UseAbpSwaggerUI(options => - { - options.SwaggerEndpoint("/swagger/v1/swagger.json", "Dashboard API"); - - //options.OAuthClientId(configuration["AuthServer:SwaggerClientId"]); - //options.OAuthClientSecret(configuration["AuthServer:SwaggerClientSecret"]); - //options.OAuthScopes("Dashboard"); - - options.OAuthClientId(configuration["IdentityClients:Default:ClientId"]); - options.OAuthClientSecret(configuration["IdentityClients:Default:ClientSecret"]); - options.OAuthScopes(configuration["IdentityClients:Default:Scope"]); - }); - app.UseAuditing(); - app.UseAbpSerilogEnrichers(); - app.UseConfiguredEndpoints(); - } - - private static void ConfigureSwaggerServices(ServiceConfigurationContext context, IConfiguration configuration) - { - //context.Services.AddAbpSwaggerGenWithOAuth( - // configuration["IdentityClients:Default:Authority"], - // new Dictionary - // { - // {"Dashboard", "Dashboard API"} - // }, - // options => - // { - // options.SwaggerDoc("v1", new OpenApiInfo { Title = "Dashboard API", Version = "v1" }); - // options.DocInclusionPredicate((docName, description) => true); - // options.CustomSchemaIds(type => type.FullName); - - // GetXmlFiles().ForEach(file => - // { - // options.IncludeXmlComments(file); - // }); - // }); - } } diff --git a/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Win_in.Sfs.Wms.Pda.Host.csproj b/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Win_in.Sfs.Wms.Pda.Host.csproj index a771e7bc7..3e550397b 100644 --- a/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Win_in.Sfs.Wms.Pda.Host.csproj +++ b/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Win_in.Sfs.Wms.Pda.Host.csproj @@ -28,7 +28,6 @@ - diff --git a/be/Modules/Shared/src/Win_in.Sfs.Shared.Host/ModuleBase.cs b/be/Modules/Shared/src/Win_in.Sfs.Shared.Host/ModuleBase.cs index 0b7689bb8..34c89f1ab 100644 --- a/be/Modules/Shared/src/Win_in.Sfs.Shared.Host/ModuleBase.cs +++ b/be/Modules/Shared/src/Win_in.Sfs.Shared.Host/ModuleBase.cs @@ -146,6 +146,7 @@ public abstract class ModuleBase : AbpModule where T : AbpModule using var sw = File.CreateText(Path.Combine(path, $"db.{dbContext.Database.ProviderName}.{contextName}.sql")); sw.Write(sql); Console.WriteLine($"{contextName} 初始化开始"); + Console.WriteLine($"ConnectionString:{dbContext.Database.GetConnectionString()}"); //创建数据库 if (!dbCreator.Exists()) { diff --git a/be/Modules/Shared/src/Win_in.Sfs.Shared.Host/Win_in.Sfs.Shared.Host.csproj b/be/Modules/Shared/src/Win_in.Sfs.Shared.Host/Win_in.Sfs.Shared.Host.csproj index e07d9d878..f2cc7176c 100644 --- a/be/Modules/Shared/src/Win_in.Sfs.Shared.Host/Win_in.Sfs.Shared.Host.csproj +++ b/be/Modules/Shared/src/Win_in.Sfs.Shared.Host/Win_in.Sfs.Shared.Host.csproj @@ -30,6 +30,7 @@ +