修改oss 配置
continuous-integration/drone/push Build is passing Details

IRC_NewDev
hang 2024-09-03 13:02:40 +08:00
parent 01ee530e38
commit a5ef0fc902
8 changed files with 79 additions and 41 deletions

View File

@ -304,10 +304,10 @@ namespace IRaCIS.Api.Controllers
var client = new Client(new AlibabaCloud.OpenApiClient.Models.Config() var client = new Client(new AlibabaCloud.OpenApiClient.Models.Config()
{ {
//AccessKeyId = ossOptions.accessKeyId, AccessKeyId = ossOptions.accessKeyId,
//AccessKeySecret = ossOptions.accessKeySecret, AccessKeySecret = ossOptions.accessKeySecret,
AccessKeyId = "LTAI5tJV76pYX5yPg1N9QVE8", //AccessKeyId = "LTAI5tJV76pYX5yPg1N9QVE8",
AccessKeySecret = "roRNLa9YG1of4pYruJGCNKBXEWTAWa", //AccessKeySecret = "roRNLa9YG1of4pYruJGCNKBXEWTAWa",
Endpoint = "sts.cn-hangzhou.aliyuncs.com" Endpoint = "sts.cn-hangzhou.aliyuncs.com"
}); });
@ -316,9 +316,9 @@ namespace IRaCIS.Api.Controllers
// 将<YOUR_ROLE_SESSION_NAME>设置为自定义的会话名称例如oss-role-session。 // 将<YOUR_ROLE_SESSION_NAME>设置为自定义的会话名称例如oss-role-session。
assumeRoleRequest.RoleSessionName = $"session-name-{NewId.NextGuid()}"; assumeRoleRequest.RoleSessionName = $"session-name-{NewId.NextGuid()}";
// 将<YOUR_ROLE_ARN>替换为拥有上传文件到指定OSS Bucket权限的RAM角色的ARN。 // 将<YOUR_ROLE_ARN>替换为拥有上传文件到指定OSS Bucket权限的RAM角色的ARN。
//assumeRoleRequest.RoleArn = ossOptions.roleArn; assumeRoleRequest.RoleArn = ossOptions.roleArn;
assumeRoleRequest.RoleArn = "acs:ram::1899121822495495:role/webdirect"; //assumeRoleRequest.RoleArn = "acs:ram::1899121822495495:role/webdirect";
assumeRoleRequest.DurationSeconds = 7200; assumeRoleRequest.DurationSeconds = ossOptions.durationSeconds;
var runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); var runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
var response = client.AssumeRoleWithOptions(assumeRoleRequest, runtime); var response = client.AssumeRoleWithOptions(assumeRoleRequest, runtime);
var credentials = response.Body.Credentials; var credentials = response.Body.Credentials;
@ -338,7 +338,7 @@ namespace IRaCIS.Api.Controllers
}; };
return ResponseOutput.Ok(new ObjectStoreDTO() { ObjectStoreUse = serviceOption.ObjectStoreUse, AliyunOSS = serviceOption.AliyunOSS, AliyunOSSTemp= tempToken }); return ResponseOutput.Ok(new ObjectStoreDTO() { ObjectStoreUse = serviceOption.ObjectStoreUse, AliyunOSS = tempToken });
} }
@ -352,23 +352,7 @@ namespace IRaCIS.Api.Controllers
} }
} }
[HttpGet("user/getUploadTempToken")]
public IResponseOutput GetUploadTempToken([FromServices] IOptionsMonitor<ObjectStoreServiceOptions> options)
{
var serviceOption = options.CurrentValue;
if (Enum.TryParse<ObjectStoreUse>(serviceOption.ObjectStoreUse, out var parsedEnum) && parsedEnum == ObjectStoreUse.AliyunOSS)
{
var ossOptions = serviceOption.AliyunOSS;
}
return ResponseOutput.Ok();
}
#region aliyun-net-sdk-sts 之前 #region aliyun-net-sdk-sts 之前

View File

@ -19,12 +19,13 @@
"regionId": "cn-shanghai", "regionId": "cn-shanghai",
"internalEndpoint": "https://oss-cn-shanghai-internal.aliyuncs.com", "internalEndpoint": "https://oss-cn-shanghai-internal.aliyuncs.com",
"endPoint": "https://oss-cn-shanghai.aliyuncs.com", "endPoint": "https://oss-cn-shanghai.aliyuncs.com",
"accessKeyId": "LTAI5tKvzs7ed3UfSpNk3xwQ", "accessKeyId": "LTAI5tJV76pYX5yPg1N9QVE8",
"accessKeySecret": "zTIceGEShlZDGnLrCFfIGFE7TXVRio", "accessKeySecret": "roRNLa9YG1of4pYruJGCNKBXEWTAWa",
"bucketName": "zy-irc-test-store", "bucketName": "zy-irc-test-store",
"roleArn": "acs:ram::1899121822495495:role/oss-upload", "roleArn": "acs:ram::1899121822495495:role/webdirect",
"viewEndpoint": "https://zy-irc-test-store.oss-cn-shanghai.aliyuncs.com", "viewEndpoint": "https://zy-irc-test-store.oss-cn-shanghai.aliyuncs.com",
"region": "oss-cn-shanghai" "region": "oss-cn-shanghai",
"durationSeconds": 7200
}, },
"MinIO": { "MinIO": {
"endPoint": "hir-oss.test.extimaging.com", "endPoint": "hir-oss.test.extimaging.com",

View File

@ -55,6 +55,10 @@ namespace IRaCIS.Core.Application.Helper
public string viewEndpoint { get; set; } public string viewEndpoint { get; set; }
public int durationSeconds { get; set; }
} }
public class ObjectStoreServiceOptions public class ObjectStoreServiceOptions
@ -74,9 +78,8 @@ namespace IRaCIS.Core.Application.Helper
{ {
public string ObjectStoreUse { get; set; } public string ObjectStoreUse { get; set; }
public AliyunOSSOptions AliyunOSS { get; set; }
public AliyunOSSTempToken AliyunOSSTemp { get; set; } public AliyunOSSTempToken AliyunOSS { get; set; }
public MinIOOptions MinIO { get; set; } public MinIOOptions MinIO { get; set; }

View File

@ -62,6 +62,11 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc.DTO
} }
public class SubjectCRCImageUploadedStudyDto: SubjectCRCImageUploadedDto
{
public bool IsDicom => DicomStudyList.Count() > 0;
}
public class SubjectCRCImageUploadedDto public class SubjectCRCImageUploadedDto
{ {
public Guid VisitTaskId { get; set; } public Guid VisitTaskId { get; set; }
@ -79,6 +84,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc.DTO
public Guid? SourceSubjectVisitId { get; set; } public Guid? SourceSubjectVisitId { get; set; }
public List<DicomStudyBasicInfo> DicomStudyList { get; set; } public List<DicomStudyBasicInfo> DicomStudyList { get; set; }
public List<NoneDicomStudyBasicInfo> NoneDicomStudyList { get; set; } public List<NoneDicomStudyBasicInfo> NoneDicomStudyList { get; set; }

View File

@ -415,7 +415,7 @@ namespace IRaCIS.Core.Application.Contracts
public List<Guid> NoneDicomStudyIdList { get; set; } public List<Guid> NoneDicomStudyIdList { get; set; }
} }
public class IRReadingDownloadQuery public class IRReadingDownloadQuery:SortInput
{ {
[NotDefault] [NotDefault]
public Guid SubjectId { get; set; } public Guid SubjectId { get; set; }

View File

@ -1,4 +1,5 @@
using FellowOakDicom; using DocumentFormat.OpenXml.Office2010.Ink;
using FellowOakDicom;
using IRaCIS.Core.Application.Contracts; using IRaCIS.Core.Application.Contracts;
using IRaCIS.Core.Application.Filter; using IRaCIS.Core.Application.Filter;
using IRaCIS.Core.Application.Helper; using IRaCIS.Core.Application.Helper;
@ -895,7 +896,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
} }
/// <summary> /// <summary>
/// IR 影像上传任务列表 /// IR 影像上传任务列表 --old 20240903 界面调整,现在先废弃
/// </summary> /// </summary>
/// <param name="inQuery"></param> /// <param name="inQuery"></param>
/// <returns></returns> /// <returns></returns>
@ -1049,7 +1050,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
/// <param name="inQuery"></param> /// <param name="inQuery"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public async Task<List<SubjectCRCImageUploadedDto>> GetSubjectImageDownloadSelectList(IRReadingDownloadQuery inQuery) public async Task<List<SubjectCRCImageUploadedStudyDto>> GetSubjectImageDownloadSelectList(IRReadingDownloadQuery inQuery)
{ {
var query = _visitTaskRepository.Where(t => t.SubjectId == inQuery.SubjectId && t.TrialReadingCriterionId == inQuery.TrialReadingCriterionId var query = _visitTaskRepository.Where(t => t.SubjectId == inQuery.SubjectId && t.TrialReadingCriterionId == inQuery.TrialReadingCriterionId
@ -1059,12 +1060,53 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
var list = await query.Where(t => t.SubjectCode == inQuery.SubjectCode).ToListAsync(); var list = await query.Where(t => t.SubjectCode == inQuery.SubjectCode).ToListAsync();
return list; #region 将任务级别转为检查级别
var result = new List<SubjectCRCImageUploadedStudyDto>();
var dicomStudyList = list.Where(item => item.DicomStudyList.Count > 0)
.Select(item => new SubjectCRCImageUploadedStudyDto
{
VisitTaskId = item.VisitTaskId,
SubjectId = item.SubjectId,
SubjectCode = item.SubjectCode,
TaskBlindName = item.TaskBlindName,
TaskName = item.TaskName,
IsImageFilter = item.IsImageFilter,
CriterionModalitys = item.CriterionModalitys,
SourceSubjectVisitId = item.SourceSubjectVisitId,
//取dicom
DicomStudyList = item.DicomStudyList,
}).ToList();
var noneStudyList = list.Where(item => item.NoneDicomStudyList.Count > 0)
.Select(item => new SubjectCRCImageUploadedStudyDto
{
VisitTaskId = item.VisitTaskId,
SubjectId = item.SubjectId,
SubjectCode = item.SubjectCode,
TaskBlindName = item.TaskBlindName,
TaskName = item.TaskName,
IsImageFilter = item.IsImageFilter,
CriterionModalitys = item.CriterionModalitys,
SourceSubjectVisitId = item.SourceSubjectVisitId,
//非dicom
NoneDicomStudyList = item.NoneDicomStudyList,
}).ToList();
result.AddRange(dicomStudyList);
result.AddRange(noneStudyList);
#endregion
return result;
} }
/// <summary> /// <summary>
/// IR 阅片页面获取下载检查的信息 会根据标准进行过滤检查,(后端要考虑到一致性分析 subjectCode的问题 /// IR 阅片页面获取下载检查的信息 会根据标准进行过滤检查,(后端要考虑到一致性分析 subjectCode的问题
/// 检查在访视下面所以需要传递下载的访视Id另外下载访视下面那些检查就把访视下的对应的检查Id 丢到数组里就好
/// </summary> /// </summary>
/// <param name="inQuery"></param> /// <param name="inQuery"></param>
/// <param name="_subjectRepository"></param> /// <param name="_subjectRepository"></param>

View File

@ -576,7 +576,7 @@ namespace IRaCIS.Core.Application.Service
else else
{ {
para = $"{JsonData["item"].ToString()}"; para = $"{JsonData["item"].ToString()}";
ForeignKeyText = 1.ToString(); ForeignKeyText = "UserName";
if (_frontAuditConfigRepository._dbContext.Database.IsSqlServer()) if (_frontAuditConfigRepository._dbContext.Database.IsSqlServer())
{ {
@ -586,7 +586,7 @@ namespace IRaCIS.Core.Application.Service
} }
else if (_frontAuditConfigRepository._dbContext.Database.IsNpgsql()) else if (_frontAuditConfigRepository._dbContext.Database.IsNpgsql())
{ {
//sql = $"select {ForeignKeyText} Text from \"{Table}\" where \"{ForeignKeyValue}\" = @para"; sql = $"select \"{ForeignKeyText}\" Text from \"{Table}\" where \"{ForeignKeyValue}\" = @para";
} }
else else
{ {
@ -608,8 +608,8 @@ namespace IRaCIS.Core.Application.Service
else if (_frontAuditConfigRepository._dbContext.Database.IsNpgsql()) else if (_frontAuditConfigRepository._dbContext.Database.IsNpgsql())
{ {
//jsonDataValueDic[item.Key] = string.Join(",", _frontAuditConfigRepository._dbContext.Database.SqlQueryRaw<string> jsonDataValueDic[item.Key] = string.Join(",", _frontAuditConfigRepository._dbContext.Database.SqlQueryRaw<string>
// (sql, new NpgsqlParameter("@para", Guid.Parse(para))).ToList()); (sql, new NpgsqlParameter("@para",para)).ToList());
} }
else else
{ {

View File

@ -109,7 +109,9 @@ namespace IRaCIS.Application.Services
{ {
var timeSpan= HolidayHelper.GetChinaWorkTimeSpan(startdate, endDate); var timeSpan= HolidayHelper.GetChinaWorkTimeSpan(startdate, endDate);
return $"{timeSpan.Days}天,{timeSpan.Hours}小时{timeSpan.Minutes}分钟{timeSpan.Seconds}"; _userRepository.Where(t => t.Id == _userInfo.Id).Select(t => t.FullName).FirstOrDefault();
return $"{timeSpan.Days}天,{timeSpan.Hours}小时{timeSpan.Minutes}分钟{timeSpan.Seconds}秒";
} }
public async Task<IResponseOutput> TestEFcore8() public async Task<IResponseOutput> TestEFcore8()