From c39f6225e9b3e8621c4cb245864e82b268e81b68 Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Mon, 8 Aug 2022 15:48:50 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/UploadDownLoadController.cs | 2 +- IRaCIS.Core.API/SignalRHub/UploadHub.cs | 10 +++++----- IRaCIS.Core.API/appsettings.json | 4 +++- .../BusinessFilter/TrialResourceFilter.cs | 17 +++++++++++------ .../Service/ImageAndDoc/ImageShareService.cs | 4 +++- .../Service/TrialSiteUser/TrialSiteService.cs | 2 +- IRaCIS.Core.Domain/_Config/_AppSettings.cs | 6 +++++- 7 files changed, 29 insertions(+), 16 deletions(-) diff --git a/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs b/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs index 63052fb06..b2b20946f 100644 --- a/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs +++ b/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs @@ -227,7 +227,7 @@ namespace IRaCIS.Core.API.Controllers [HttpPost, Route("Study/ArchiveStudy")] [DisableFormValueModelBinding] [DisableRequestSizeLimit] - //[TypeFilter(typeof(TrialResourceFilter))] + [TypeFilter(typeof(TrialResourceFilter))] public async Task ArchiveStudyNew(/*[FromForm] ArchiveStudyCommand archiveStudyCommand,*/ Guid trialId, Guid subjectVisitId, string studyInstanceUid, Guid? abandonStudyId, [FromServices] ILogger _logger, [FromServices] IEasyCachingProvider _provider, diff --git a/IRaCIS.Core.API/SignalRHub/UploadHub.cs b/IRaCIS.Core.API/SignalRHub/UploadHub.cs index 9e4de3285..f311efc9b 100644 --- a/IRaCIS.Core.API/SignalRHub/UploadHub.cs +++ b/IRaCIS.Core.API/SignalRHub/UploadHub.cs @@ -29,10 +29,10 @@ namespace IRaCIS.Core.API { public ILogger _logger { get; set; } - public IUserInfo _userInfo { get; set; } - public UploadHub(IUserInfo userInfo, ILogger logger) + //public IUserInfo _userInfo { get; set; } + public UploadHub(/*IUserInfo userInfo,*/ ILogger logger) { - _userInfo = userInfo; + //_userInfo = userInfo; _logger = logger; } @@ -40,11 +40,11 @@ namespace IRaCIS.Core.API public override Task OnConnectedAsync() { //base.Context.User.id - var a = Context.User.Identity; - var b = _userInfo.Id; + _logger.LogError("连接: " + Context.ConnectionId); + return base.OnConnectedAsync(); } diff --git a/IRaCIS.Core.API/appsettings.json b/IRaCIS.Core.API/appsettings.json index fc848d653..819c73a31 100644 --- a/IRaCIS.Core.API/appsettings.json +++ b/IRaCIS.Core.API/appsettings.json @@ -79,7 +79,9 @@ "DefaultPassword": "123456", - "DefaultInternalOrganizationName": "ExtImaging" + "DefaultInternalOrganizationName": "ExtImaging", + + "ImageShareExpireDays": 10 } //��վ����ַ��Ϊ�˷����ļ� dicom ���ϴ����ĵ�... ʵ�ⷢ�ֲ��ý�����ƴ�ӷ��أ���������Զ����ϵ�ǰip�������˶໷����ȡ���������ļ� diff --git a/IRaCIS.Core.Application/BusinessFilter/TrialResourceFilter.cs b/IRaCIS.Core.Application/BusinessFilter/TrialResourceFilter.cs index b7558fd01..f6775a8e8 100644 --- a/IRaCIS.Core.Application/BusinessFilter/TrialResourceFilter.cs +++ b/IRaCIS.Core.Application/BusinessFilter/TrialResourceFilter.cs @@ -29,11 +29,11 @@ namespace IRaCIS.Core.Application.Filter #region 处理新的用户类型,不能操作项目相关接口 // 后期列举出具体的类型,其他任何用户类型,都不允许操作 - if( _userInfo.UserTypeEnumInt == (int)UserTypeEnum.CRA) + if (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.CRA) { context.Result = new JsonResult(ResponseOutput.NotOk("对不起,您的账户没有操作权限。")); - return ; + return; } #endregion @@ -43,8 +43,13 @@ namespace IRaCIS.Core.Application.Filter //TrialId 传递的途径多种,可能在path 可能在body 可能在数组中,也可能在对象中,可能就在url var trialIdStr = string.Empty; + if (!string.IsNullOrWhiteSpace(context.HttpContext.Request.Query["trialId"])) + { + trialIdStr = context.HttpContext.Request.Query["trialId"]; + } + //先尝试从path中取TrialId - if (context.RouteData.Values.Keys.Any(t => t.Contains("trialId"))) + else if (context.RouteData.Values.Keys.Any(t => t.Contains("trialId"))) { var index = context.RouteData.Values.Keys.ToList().IndexOf("trialId"); trialIdStr = context.RouteData.Values.Values.ToList()[index] as string; @@ -68,7 +73,7 @@ namespace IRaCIS.Core.Application.Filter { trialIdStr = contentFromBody.Substring(trialIdIndex + "TrialId".Length + 4, 36); } - + #endregion } @@ -106,8 +111,8 @@ namespace IRaCIS.Core.Application.Filter } - } - + } + else { //如果项目相关接口没有传递trialId 会来到这里,提醒,以便修改 diff --git a/IRaCIS.Core.Application/Service/ImageAndDoc/ImageShareService.cs b/IRaCIS.Core.Application/Service/ImageAndDoc/ImageShareService.cs index 0f9eea964..e16e0b16b 100644 --- a/IRaCIS.Core.Application/Service/ImageAndDoc/ImageShareService.cs +++ b/IRaCIS.Core.Application/Service/ImageAndDoc/ImageShareService.cs @@ -68,7 +68,9 @@ namespace IRaCIS.Core.Application.Services imageShareCommand.Password = verificationPassWord.ToString(); //配置文件读取过期时间 - var days = int.Parse(_configuration.GetSection("imageShare:ExpireDays").Value); + + var days = AppSettings.ImageShareExpireDays; + imageShareCommand.ExpireTime = DateTime.Now.AddDays(days); diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialSiteService.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialSiteService.cs index c1d1c1e79..c42a966ed 100644 --- a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialSiteService.cs +++ b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialSiteService.cs @@ -336,7 +336,7 @@ namespace IRaCIS.Core.Application.Services .WhereIf(_userInfo.UserTypeEnumInt == (int)UserTypeEnum.ClinicalResearchCoordinator || _userInfo.UserTypeEnumInt == (int)UserTypeEnum.CRA, t => t.CRCUserList.Any(t => t.UserId == _userInfo.Id)) .Select(t=> t.TrialSiteCode).ToListAsync(); - var virtualList = await _repository.Where(t => t.IsSelfAnalysis==true).Select(t => t.BlindTrialSiteCode).Distinct().ToListAsync(); + var virtualList = await _repository.Where(t => t.IsSelfAnalysis==true && t.TrialId==trialId).Select(t => t.BlindTrialSiteCode).Distinct().ToListAsync(); return isIncludeVirtualSite? list.Concat(virtualList): list; } diff --git a/IRaCIS.Core.Domain/_Config/_AppSettings.cs b/IRaCIS.Core.Domain/_Config/_AppSettings.cs index f7f0d33bd..c5a9cbc84 100644 --- a/IRaCIS.Core.Domain/_Config/_AppSettings.cs +++ b/IRaCIS.Core.Domain/_Config/_AppSettings.cs @@ -36,6 +36,8 @@ namespace IRaCIS.Core.Domain.Share public static string DefaultInternalOrganizationName { get; set; } + public static int ImageShareExpireDays { get; set; } = 7; + /// /// 用户默认密码 @@ -59,7 +61,9 @@ namespace IRaCIS.Core.Domain.Share NoneDicomStudyCodePrefix = configuration.GetSection("IRaCISBasicConfig").GetValue("NoneDicomStudyCodePrefix"); DicomStudyCodePrefix = configuration.GetSection("IRaCISBasicConfig").GetValue("DicomStudyCodePrefix"); DefaultPassword= configuration.GetSection("IRaCISBasicConfig").GetValue("DefaultPassword"); - DefaultPassword = configuration.GetSection("IRaCISBasicConfig").GetValue("DefaultInternalOrganizationName"); + DefaultInternalOrganizationName = configuration.GetSection("IRaCISBasicConfig").GetValue("DefaultInternalOrganizationName"); + + ImageShareExpireDays = configuration.GetSection("IRaCISBasicConfig").GetValue("ImageShareExpireDays"); }