From edbcabace604430f079621e6a4d708e7b1857109 Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Tue, 5 Dec 2023 17:48:38 +0800 Subject: [PATCH] =?UTF-8?q?Program=E4=BF=AE=E6=94=B9=E4=B8=BA=E6=96=B0?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E5=86=99=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- IRaCIS.Core.API/{Program.cs => 1Program.cs} | 0 IRaCIS.Core.API/{Startup.cs => 1Startup.cs} | 0 IRaCIS.Core.API/{Test.cs => 1Test.cs} | 0 IRaCIS.Core.API/2Program.cs | 231 --------------- IRaCIS.Core.API/IRC系统更新日志.docx | Bin 18441 -> 0 bytes IRaCIS.Core.API/IRaCIS.Core.API.xml | 56 ++-- IRaCIS.Core.API/Progranm.cs | 265 ++++++++++++++++++ .../Service/Management/UserService.cs | 7 +- .../ReadingImageTaskService.cs | 7 +- 9 files changed, 298 insertions(+), 268 deletions(-) rename IRaCIS.Core.API/{Program.cs => 1Program.cs} (100%) rename IRaCIS.Core.API/{Startup.cs => 1Startup.cs} (100%) rename IRaCIS.Core.API/{Test.cs => 1Test.cs} (100%) delete mode 100644 IRaCIS.Core.API/2Program.cs delete mode 100644 IRaCIS.Core.API/IRC系统更新日志.docx create mode 100644 IRaCIS.Core.API/Progranm.cs diff --git a/IRaCIS.Core.API/Program.cs b/IRaCIS.Core.API/1Program.cs similarity index 100% rename from IRaCIS.Core.API/Program.cs rename to IRaCIS.Core.API/1Program.cs diff --git a/IRaCIS.Core.API/Startup.cs b/IRaCIS.Core.API/1Startup.cs similarity index 100% rename from IRaCIS.Core.API/Startup.cs rename to IRaCIS.Core.API/1Startup.cs diff --git a/IRaCIS.Core.API/Test.cs b/IRaCIS.Core.API/1Test.cs similarity index 100% rename from IRaCIS.Core.API/Test.cs rename to IRaCIS.Core.API/1Test.cs diff --git a/IRaCIS.Core.API/2Program.cs b/IRaCIS.Core.API/2Program.cs deleted file mode 100644 index e7649cb42..000000000 --- a/IRaCIS.Core.API/2Program.cs +++ /dev/null @@ -1,231 +0,0 @@ -//using Autofac; -//using Autofac.Extensions.DependencyInjection; -//using IRaCIS.Core.API; -//using IRaCIS.Core.Application.Filter; -//using IRaCIS.Core.Application.MediatR.Handlers; -//using LogDashboard; -//using MassTransit; -//using MassTransit.NewIdProviders; -//using MediatR; -//using Microsoft.AspNetCore.Builder; -//using Microsoft.AspNetCore.Http.Features; -//using Microsoft.AspNetCore.HttpOverrides; -//using Microsoft.AspNetCore.SignalR; -//using Microsoft.Extensions.Configuration; -//using Microsoft.Extensions.DependencyInjection; -//using Microsoft.Extensions.Hosting; -//using Serilog; -//using System; - -//var builder = WebApplication.CreateBuilder(args); - - -// //ļΪ׼ urlȡֵ(дݲļ˾ͲҪݻ) -// var config = new ConfigurationBuilder() -// .AddEnvironmentVariables() -// .Build(); - -// var enviromentName = config["ASPNETCORE_ENVIRONMENT"]; - -// if (string.IsNullOrWhiteSpace(enviromentName)) -// { - -// var index = Array.IndexOf(args, "--env"); -// enviromentName = index > -1 -// ? args[index + 1] -// : "Development"; -// } - - -// NewId.SetProcessIdProvider(new CurrentProcessIdProvider()); - - - - -//builder.Host.UseServiceProviderFactory(new AutofacServiceProviderFactory()) -// .ConfigureContainer(containerBuilder => -// { -// containerBuilder.RegisterModule(); -// }) -// .UseWindowsService().UseSerilog(); - - - -//// Add services to the container. - -////ػ -//builder.Services.AddJsonLocalization(options => options.ResourcesPath = "Resources"); - -//// 쳣ͳһ֤JsonлáַͳһTrim() -//builder.Services.AddControllers(options => -//{ -// //options.Filters.Add(); -// options.Filters.Add(); -// options.Filters.Add(); -// //options.Filters.Add(); - -// //if (_configuration.GetSection("BasicSystemConfig").GetValue("OpenLoginLimit")) -// //{ -// // options.Filters.Add(); - -// //} - - -//}).AddNewtonsoftJsonSetup(); // NewtonsoftJson л - -////̬WebApi + UnifiedApiResultFilter ʡ -//builder.Services.AddDynamicWebApiSetup(); -////AutoMapper -//builder.Services.AddAutoMapperSetup(); -////EF ORM QueryWithNoLock -//builder.Services.AddEFSetup(builder.Configuration); -////Http Ӧѹ -//builder.Services.AddResponseCompressionSetup(); -////Swagger Api ĵ -//builder.Services.AddSwaggerSetup(); -////JWT Token ֤ -//builder.Services.AddJWTAuthSetup(builder.Configuration); -//// MediatR Ϣ ¼ ӳ עhandlerӦϵ -//builder.Services.AddMediatR(typeof(ConsistencyVerificationHandler).Assembly); -//// EasyCaching -//builder.Services.AddEasyCachingSetup(); - -////services.AddDistributedMemoryCache(); - -////// hangfire ʱ н棬Ѻ~ -//builder.Services.AddhangfireSetup(builder.Configuration); -////// QuartZ ʱ ʹhangfire ʱãҪԴ򿪣Ѿ -////builder.Services.AddQuartZSetup(_configuration); - -//// ϴļ -////services.AddStaticFileAuthorizationSetup(); - - -//////HttpReports ʱ -////services.AddHttpReports().AddHttpTransport(); -////Serilog ־ӻ LogDashboard־ -//builder.Services.AddLogDashboardSetup(); -////ϴ -//builder.Services.Configure(options => -//{ -// options.MultipartBodyLengthLimit = int.MaxValue; -// options.ValueCountLimit = int.MaxValue; -// options.ValueLengthLimit = int.MaxValue; -//}); -////IP ð ߺ -////services.AddIpPolicyRateLimitSetup(_configuration); -////û Ȩ -//builder.Services.AddAuthorizationPolicySetup(builder.Configuration); - -//builder.Services.AddJsonConfigSetup(builder.Configuration); - -////תͷ ȡʵIP -//builder.Services.Configure(options => -//{ -// options.ForwardedHeaders = -// ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto; -//}); -////DicomӰȾͼƬ ƽ̨ -//builder.Services.AddDicomSetup(); - -//// ʵʱӦ -//builder.Services.AddSignalR(); - - -//builder.Services.AddSingleton(); - -//builder.Services.AddControllers(); -//// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle -////builder.Services.AddEndpointsApiExplorer(); -////builder.Services.AddSwaggerGen(); - -////SerilogExtension.AddSerilogSetup(enviromentName, builder.Host.confi); - - -//var app = builder.Build(); - -//// Configure the HTTP request pipeline. - -////ػ -//app.UseLocalization(); - -//app.UseForwardedHeaders(); - - -////Ҫ token ʵľ̬ļ wwwroot css, JavaScript, and images don't require authentication. -//app.UseStaticFiles(); - -//app.UseIRacisHostStaticFileStore(app.Environment); - -////LogDashboard -//app.UseLogDashboard("/LogDashboard"); - -////hangfire -////app.UseHangfireConfig(app.Environment); - -//////ʱ -////app.UseHttpReports(); - -////// м -////app.UseIpRateLimiting(); - -////Ӧѹ -//app.UseResponseCompression(); - -//if (app.Environment.IsDevelopment()) -//{ -// app.UseDeveloperExceptionPage(); -//} -//else -//{ - -// //app.UseHsts(); -//} - -//SwaggerSetup.Configure(app, app.Environment); - -//Console.WriteLine("ǰ " + builder.Environment.EnvironmentName); - -////app.UseMiddleware(); - -//// 쳣 404 -//app.UseStatusCodePagesWithReExecute("/Error/{0}"); - - - - -//////serilog ¼ûϢ -//app.UseSerilogConfig(app.Environment); - -//app.UseRouting(); - -//app.UseCors(t => t.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader()); - - -//app.UseAuthentication(); -////app.UseJwtBearerQueryString(); -//app.UseAuthorization(); - -//////ļŷ Token -//////app.UseIRacisHostStaticFileStore(env); - - - -////app.UseEndpoints(endpoints => -////{ - - -//// endpoints.MapControllers(); - -//// endpoints.MapHub("/UploadHub")/*.RequireCors(t=>t.WithOrigins(new string[] {"null"}).AllowAnyMethod().AllowAnyHeader().AllowCredentials())*/; -////}); - - - -//app.MapControllers(); -//app.MapHub("/UploadHub")/*.RequireCors(t=>t.WithOrigins(new string[] {"null"}).AllowAnyMethod().AllowAnyHeader().AllowCredentials())*/; - - -//app.Run(); - -//ͬ diff --git a/IRaCIS.Core.API/IRC系统更新日志.docx b/IRaCIS.Core.API/IRC系统更新日志.docx deleted file mode 100644 index 467c074a1e7709eb03de8e22214976827220fcea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18441 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 J9y^0H0RRi!yVd{z diff --git a/IRaCIS.Core.API/IRaCIS.Core.API.xml b/IRaCIS.Core.API/IRaCIS.Core.API.xml index 5b5c02b0c..fb1288021 100644 --- a/IRaCIS.Core.API/IRaCIS.Core.API.xml +++ b/IRaCIS.Core.API/IRaCIS.Core.API.xml @@ -4,34 +4,6 @@ IRaCIS.Core.API - - - 主要处理 前端404等错误 全局业务异常已统一处理了,非业务错误会来到这里 - - - - - - - 医生基本信息 、工作信息 专业信息、审核状态 - - - - - 获取医生详情 - - - - - - - - - - - - 系统用户登录接口[New] - 添加实验项目-返回新增Id[AUTH] 新记录Id @@ -373,6 +345,27 @@ 序列化成员 + + + 医生基本信息 、工作信息 专业信息、审核状态 + + + + + 获取医生详情 + + + + + + + + + + + + 系统用户登录接口[New] + 为了前端 一段时间无操作,需要重新登陆 @@ -380,6 +373,13 @@ + + + 主要处理 前端404等错误 全局业务异常已统一处理了,非业务错误会来到这里 + + + + 对称可逆加密 diff --git a/IRaCIS.Core.API/Progranm.cs b/IRaCIS.Core.API/Progranm.cs new file mode 100644 index 000000000..5116d15fa --- /dev/null +++ b/IRaCIS.Core.API/Progranm.cs @@ -0,0 +1,265 @@ +using System; +using Autofac.Extensions.DependencyInjection; +using Microsoft.AspNetCore.Hosting; +using Microsoft.Extensions.Hosting; +using Microsoft.Extensions.Configuration; +using Serilog; +using MediatR; +using IRaCIS.Core.Application.MediatR.Handlers; +using System.Threading.Tasks; +using MassTransit; +using MassTransit.NewIdProviders; +using System.IO; +using IRaCIS.Core.Domain.Share; +using IRaCIS.Core.Infra.EFCore; +using IRaCIS.Core.Application.Helper; +using System.Runtime.InteropServices; +using Microsoft.AspNetCore.Builder; +using IRaCIS.Core.API; +using Autofac; +using Microsoft.AspNetCore.Http.Features; +using Microsoft.AspNetCore.SignalR; +using Microsoft.Extensions.DependencyInjection; +using IRaCIS.Core.Application.Filter; +using Microsoft.AspNetCore.HttpOverrides; +using IRaCIS.Application.Services.BackGroundJob; +using LogDashboard; + + + +#region ãԼάƽ̨ + +//ļΪ׼ urlȡֵ(дݲļ˾ͲҪݻ) +var config = new ConfigurationBuilder() + .AddEnvironmentVariables() + .Build(); + +var enviromentName = config["ASPNETCORE_ENVIRONMENT"]; + +if (string.IsNullOrWhiteSpace(enviromentName)) +{ + + var index = Array.IndexOf(args, "--env"); + enviromentName = index > -1 + ? args[index + 1] + : "Development"; +} + +if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) +{ + Log.Logger.Warning($"ǰƽ̨windows"); +} +else if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux)) +{ + Log.Logger.Warning($"ǰƽ̨linux"); +} +else +{ + Log.Logger.Warning($"ǰƽ̨OSX or FreeBSD"); +} + +#endregion + + +NewId.SetProcessIdProvider(new CurrentProcessIdProvider()); + +var builder = WebApplication.CreateBuilder(args); + +builder.Host.UseEnvironment(enviromentName) + .ConfigureAppConfiguration((hostContext, config) => + { + + //Console.WriteLine(hostContext.HostingEnvironment.EnvironmentName); + config.AddJsonFile("appsettings.json", false, true) + .AddJsonFile($"appsettings.{enviromentName}.json", false, true); + }) + .UseServiceProviderFactory(new AutofacServiceProviderFactory()) + .ConfigureContainer(containerBuilder => + { + containerBuilder.RegisterModule(); + }) + .UseWindowsService().UseSerilog(); + + + + +#region ÷ +var _configuration = builder.Configuration; + +// +builder.Services.AddHealthChecks(); +//ػ +builder.Services.AddJsonLocalization(options => options.ResourcesPath = "Resources"); + +// 쳣ͳһ֤JsonлáַͳһTrim() +builder.Services.AddControllers(options => +{ + //options.Filters.Add(); + options.Filters.Add(); + options.Filters.Add(); + options.Filters.Add(); + + if (_configuration.GetSection("BasicSystemConfig").GetValue("OpenLoginLimit")) + { + options.Filters.Add(); + } + +}) + .AddNewtonsoftJsonSetup(); // NewtonsoftJson л + +builder.Services.AddOptions().Configure(_configuration.GetSection("SystemEmailSendConfig")); +builder.Services.AddOptions().Configure(_configuration.GetSection("BasicSystemConfig")); +builder.Services.AddOptions().Configure(_configuration.GetSection("AliyunOSS")); +builder.Services.AddOptions().Configure(_configuration.GetSection("ObjectStoreService")); + + +//̬WebApi + UnifiedApiResultFilter ʡ +builder.Services.AddDynamicWebApiSetup(); +//AutoMapper +builder.Services.AddAutoMapperSetup(); +//EF ORM QueryWithNoLock +builder.Services.AddEFSetup(_configuration); +//Http Ӧѹ +builder.Services.AddResponseCompressionSetup(); +//Swagger Api ĵ +builder.Services.AddSwaggerSetup(); +//JWT Token ֤ +builder.Services.AddJWTAuthSetup(_configuration); + +// MediatR Ϣ ¼ ӳ עhandlerӦϵ +builder.Services.AddMediatR(cfg => cfg.RegisterServicesFromAssemblyContaining()); +// EasyCaching +builder.Services.AddEasyCachingSetup(_configuration); + +// hangfire ʱ н棬Ѻ~ +builder.Services.AddhangfireSetup(_configuration); + + +//Serilog ־ӻ LogDashboard־ +builder.Services.AddLogDashboardSetup(); + + +builder.Services.AddJsonConfigSetup(_configuration); +//תͷ ȡʵIP +builder.Services.Configure(options => +{ + options.ForwardedHeaders = + ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto; +}); +//DicomӰȾͼƬ ƽ̨ +builder.Services.AddDicomSetup(); + +// ʵʱӦ +builder.Services.AddSignalR(); + +builder.Services.AddSingleton(); + + + + + +#region ʷ +//builder.Services.AddMemoryCache(); +////ϴ +//builder.Services.Configure(options => +//{ +// options.MultipartBodyLengthLimit = int.MaxValue; +// options.ValueCountLimit = int.MaxValue; +// options.ValueLengthLimit = int.MaxValue; +//}); +//IP ð ߺ +//services.AddIpPolicyRateLimitSetup(_configuration); +// û Ȩ +//services.AddAuthorizationPolicySetup(_configuration); +#endregion + +#endregion + +var app = builder.Build(); +var env = app.Environment; + +#region м + + +// Configure the HTTP request pipeline. + +//ػ +app.UseLocalization(); + +app.UseForwardedHeaders(); + +//Ӧѹ +app.UseResponseCompression(); + +//app.UseCors(t => t.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader()); + +//Ҫ token ʵľ̬ļ wwwroot css, JavaScript, and images don't require authentication. +app.UseStaticFiles(); + +app.UseMiddleware(); + +//LogDashboard +app.UseLogDashboard("/LogDashboard"); + +//hangfire +app.UseHangfireConfig(env); + + +//// м +//app.UseIpRateLimiting(); + + +if (env.IsDevelopment()) +{ + app.UseDeveloperExceptionPage(); +} +else +{ + //app.UseHsts(); +} + +// 쳣 404 +app.UseStatusCodePagesWithReExecute("/Error/{0}"); + +SwaggerSetup.Configure(app, env); + + +////serilog ¼ûϢ +app.UseSerilogConfig(env); + +app.UseRouting(); + +app.UseCors(t => t.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader()); + +//app.UseIRacisHostStaticFileStore(env); + + +app.UseAuthentication(); +app.UseAuthorization(); + + +app.UseEndpoints(endpoints => +{ + endpoints.MapControllers(); + + endpoints.MapHub("/UploadHub"); + + endpoints.MapHealthChecks("/health"); +}); + +// Serilog +SerilogExtension.AddSerilogSetup(enviromentName, app.Services); + +Log.Logger.Warning($"ǰ{enviromentName}"); + +var hangfireJobService = app.Services.GetRequiredService(); + +await hangfireJobService.InitHangfireJobTaskAsync(); + + +#endregion + +app.Run(); + + + diff --git a/IRaCIS.Core.Application/Service/Management/UserService.cs b/IRaCIS.Core.Application/Service/Management/UserService.cs index 2606ad5b0..6f2f6718e 100644 --- a/IRaCIS.Core.Application/Service/Management/UserService.cs +++ b/IRaCIS.Core.Application/Service/Management/UserService.cs @@ -12,6 +12,7 @@ using Microsoft.Identity.Client; using static IRaCIS.Core.Domain.Share.StaticData; using IRaCIS.Core.Application.ViewModel; using Medallion.Threading; +using EasyCaching.Core; namespace IRaCIS.Application.Services { @@ -26,7 +27,7 @@ namespace IRaCIS.Application.Services private readonly IRepository _userLogRepository; private readonly IDistributedLockProvider _distributedLockProvider; - private readonly IMemoryCache _cache; + private readonly IEasyCachingProvider _cache; private readonly IOptionsMonitor _verifyConfig; @@ -36,7 +37,7 @@ namespace IRaCIS.Application.Services IMailVerificationService mailVerificationService, IRepository verificationCodeRepository, IRepository doctorRepository, - IMemoryCache cache, + IEasyCachingProvider cache, IRepository userTrialRepository, IOptionsMonitor verifyConfig, IRepository userLogRepository @@ -631,7 +632,7 @@ namespace IRaCIS.Application.Services string cacheKey = $"{cachePrefix}{userName}"; // 从缓存中获取登录失败次数 - int? failCount = _cache.Get(cacheKey); + int? failCount = _cache.Get(cacheKey).Value; if (failCount == null) { diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs index b7c96d35e..21b355e6b 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs @@ -62,12 +62,10 @@ namespace IRaCIS.Application.Services private readonly IRepository _noneDicomStudyFileSystem; private readonly IRepository _readingQuestionTrialRepository; - private readonly IMemoryCache _cache; private readonly ITrialEmailNoticeConfigService _trialEmailNoticeConfigService; public ReadingImageTaskService( - IMapper mapper, IRepository noneDicomStudyRepository, IRepository visitTaskRepository, IRepository TrialRepository, @@ -90,8 +88,7 @@ namespace IRaCIS.Application.Services IRepository userRepository, IEasyCachingProvider provider, IRepository readingCustomTagRepository, - IRepository readingTaskQuestionMarkRepository, - IMemoryCache cache, + IRepository readingTaskQuestionMarkRepository, IRepository readingCriterionDictionaryRepository, IRepository readingTrialCriterionDictionaryRepository, IRepository tumorAssessmentRepository, @@ -107,7 +104,6 @@ namespace IRaCIS.Application.Services IRepository readingQuestionTrialRepository ) { - base._mapper = mapper; this._noneDicomStudyRepository = noneDicomStudyRepository; this._visitTaskRepository = visitTaskRepository; this._trialRepository = TrialRepository; @@ -144,7 +140,6 @@ namespace IRaCIS.Application.Services this._readingQuestionSystem = ReadingQuestionSystem; this._noneDicomStudyFileSystem = noneDicomStudyFileSystem; this._readingQuestionTrialRepository = readingQuestionTrialRepository; - this._cache = cache; this._trialEmailNoticeConfigService = trialEmailNoticeConfigService; }