Merge branch 'Test_IRC_Net8' of https://gitea.frp.extimaging.com/XCKJ/irc-netcore-api into Test_IRC_Net8
continuous-integration/drone/push Build is passing Details

IRC_NewDev
he 2024-09-23 15:20:08 +08:00
commit 92e1a3f90b
17 changed files with 41 additions and 19 deletions

View File

@ -17,7 +17,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "IRaCIS.Core.Infra.EFCore",
EndProject EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "IRaCIS.Core.Infrastructure", "IRaCIS.Core.Infrastructure\IRaCIS.Core.Infrastructure.csproj", "{07EED0F8-08E6-46F3-ACBE-17BC1391BD4C}" Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "IRaCIS.Core.Infrastructure", "IRaCIS.Core.Infrastructure\IRaCIS.Core.Infrastructure.csproj", "{07EED0F8-08E6-46F3-ACBE-17BC1391BD4C}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IRC.Core.SCP", "IRC.Core.SCP\IRC.Core.SCP.csproj", "{ECD08F47-DC1A-484E-BB91-6CDDC8823CC5}" Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "IRC.Core.SCP", "IRC.Core.SCP\IRC.Core.SCP.csproj", "{ECD08F47-DC1A-484E-BB91-6CDDC8823CC5}"
EndProject EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution

View File

@ -64,7 +64,8 @@
"CompanyName": "Extensive Imaging", "CompanyName": "Extensive Imaging",
"CompanyNameCN": "上海展影医疗科技有限公司", "CompanyNameCN": "上海展影医疗科技有限公司",
"CompanyShortName": "Extensive Imaging", "CompanyShortName": "Extensive Imaging",
"CompanyShortNameCN": "展影医疗" "CompanyShortNameCN": "展影医疗",
"IsEnv_US": false
} }

View File

@ -68,7 +68,8 @@
"CompanyName": "Extensive Imaging", "CompanyName": "Extensive Imaging",
"CompanyNameCN": "上海展影医疗科技有限公司", "CompanyNameCN": "上海展影医疗科技有限公司",
"CompanyShortName": "Extensive Imaging", "CompanyShortName": "Extensive Imaging",
"CompanyShortNameCN": "展影医疗" "CompanyShortNameCN": "展影医疗",
"IsEnv_US": false
}, },
"SystemPacsConfig": { "SystemPacsConfig": {
"Port": "11113", "Port": "11113",

View File

@ -88,7 +88,8 @@
"CompanyName": "Extensive Imaging", "CompanyName": "Extensive Imaging",
"CompanyNameCN": "上海展影医疗科技有限公司", "CompanyNameCN": "上海展影医疗科技有限公司",
"CompanyShortName": "Extensive Imaging", "CompanyShortName": "Extensive Imaging",
"CompanyShortNameCN": "展影医疗" "CompanyShortNameCN": "展影医疗",
"IsEnv_US": false
}, },
"SystemPacsConfig": { "SystemPacsConfig": {

View File

@ -73,7 +73,8 @@
"CompanyNameCN": "上海展影医疗科技有限公司", "CompanyNameCN": "上海展影医疗科技有限公司",
"CompanyShortName": "Elevate Imaging", "CompanyShortName": "Elevate Imaging",
"CompanyShortNameCN": "展影医疗", "CompanyShortNameCN": "展影医疗",
"SiteUrl": "https://lili.elevateimaging.ai/login" "SiteUrl": "https://lili.elevateimaging.ai/login",
"IsEnv_US": true
}, },
"SystemPacsConfig": { "SystemPacsConfig": {

View File

@ -81,7 +81,8 @@
"CompanyNameCN": "上海展影医疗科技有限公司", "CompanyNameCN": "上海展影医疗科技有限公司",
"CompanyShortName": "Elevate Imaging", "CompanyShortName": "Elevate Imaging",
"CompanyShortNameCN": "展影医疗", "CompanyShortNameCN": "展影医疗",
"SiteUrl": "https://lili.test.elevateimaging.ai/login" "SiteUrl": "https://lili.test.elevateimaging.ai/login",
"IsEnv_US": true
}, },
"SystemPacsConfig": { "SystemPacsConfig": {

View File

@ -85,7 +85,8 @@
"CompanyNameCN": "上海展影医疗科技有限公司", "CompanyNameCN": "上海展影医疗科技有限公司",
"CompanyShortName": "Elevate Imaging", "CompanyShortName": "Elevate Imaging",
"CompanyShortNameCN": "展影医疗", "CompanyShortNameCN": "展影医疗",
"SiteUrl": "https://lili.test.elevateimaging.ai/login" "SiteUrl": "https://lili.test.elevateimaging.ai/login",
"IsEnv_US": true
}, },
"SystemPacsConfig": { "SystemPacsConfig": {

View File

@ -86,7 +86,8 @@
"CompanyName": "Extensive Imaging", "CompanyName": "Extensive Imaging",
"CompanyNameCN": "上海展影医疗科技有限公司", "CompanyNameCN": "上海展影医疗科技有限公司",
"CompanyShortName": "Extensive Imaging", "CompanyShortName": "Extensive Imaging",
"CompanyShortNameCN": "展影医疗" "CompanyShortNameCN": "展影医疗",
"IsEnv_US": false
}, },
"SystemPacsConfig": { "SystemPacsConfig": {

View File

@ -123,14 +123,19 @@ public class TrialResourceFilter : Attribute, IAsyncResourceFilter
if (string.IsNullOrWhiteSpace(trialStatusStr)) if (string.IsNullOrWhiteSpace(trialStatusStr))
{ {
//数据库 检查该项目Id不对 //数据库 检查该项目Id不对
context.Result = new JsonResult(ResponseOutput.NotOk(_localizer["TrialResource_ReferTrialIdFailed"])); context.Result = new JsonResult(ResponseOutput.NotOk(_localizer["TrialResource_ReferTrialIdFailed"]));
return;
} }
} }
else else
{ {
//---正则取请求Refer 中trialId 失败,请联系开发人员核查 //---正则取请求Refer 中trialId 失败,请联系开发人员核查
context.Result = new JsonResult(ResponseOutput.NotOk(_localizer["TrialResource_ReferTrialIdFailed"])); context.Result = new JsonResult(ResponseOutput.NotOk(_localizer["TrialResource_ReferTrialIdFailed"]));
return;
} }
//使用字符串取 如果是swagger 可能有时取的不对 因为空格的原因 //使用字符串取 如果是swagger 可能有时取的不对 因为空格的原因

View File

@ -59,6 +59,8 @@ public class SystemEmailSendConfig
public string CompanyShortName { get; set; } = string.Empty; public string CompanyShortName { get; set; } = string.Empty;
public string CompanyShortNameCN { get; set; } = string.Empty; public string CompanyShortNameCN { get; set; } = string.Empty;
public string IsEnv_US { get; set; }
} }
public class SystemEmailSendConfigView public class SystemEmailSendConfigView

View File

@ -13,6 +13,8 @@ namespace IRaCIS.Core.Application.ViewModel
public Guid CreateUserId { get; set; } public Guid CreateUserId { get; set; }
public Guid UpdateUserId { get; set; } public Guid UpdateUserId { get; set; }
public DateTime UpdateTime { get; set; } public DateTime UpdateTime { get; set; }
public string IsEnv_US { get; set; }
} }
///<summary>PublishLogQuery 列表查询参数模型</summary> ///<summary>PublishLogQuery 列表查询参数模型</summary>
@ -32,6 +34,8 @@ namespace IRaCIS.Core.Application.ViewModel
{ {
public Guid? Id { get; set; } public Guid? Id { get; set; }
public string Version { get; set; } public string Version { get; set; }
public string Version_US { get; set; }
public DateTime? PublishTime { get; set; } public DateTime? PublishTime { get; set; }
public string UpdateContent { get; set; } public string UpdateContent { get; set; }
@ -47,6 +51,7 @@ namespace IRaCIS.Core.Application.ViewModel
{ {
public Guid Id { get; set; } public Guid Id { get; set; }
public string Version { get; set; } public string Version { get; set; }
public string Version_US { get; set; }
public int State { get; set; } public int State { get; set; }
public DateTime? PublishTime { get; set; } public DateTime? PublishTime { get; set; }
public bool IsCurrentVersion { get; set; } public bool IsCurrentVersion { get; set; }

View File

@ -6,8 +6,10 @@
using IRaCIS.Core.Application.Interfaces; using IRaCIS.Core.Application.Interfaces;
using IRaCIS.Core.Application.ViewModel; using IRaCIS.Core.Application.ViewModel;
using IRaCIS.Core.Domain.Share;
using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Options;
namespace IRaCIS.Core.Application.Service namespace IRaCIS.Core.Application.Service
{ {
@ -40,7 +42,7 @@ namespace IRaCIS.Core.Application.Service
{ {
Version version; Version version;
if (!Version.TryParse(addOrEditPublishLog.Version, out version)) if (!Version.TryParse(addOrEditPublishLog.Version, out version)|| !Version.TryParse(addOrEditPublishLog.Version_US, out version))
{ {
//"版本号不符合要求" //"版本号不符合要求"
return ResponseOutput.NotOk(_localizer["PublishLog_NotValidVersion"]); return ResponseOutput.NotOk(_localizer["PublishLog_NotValidVersion"]);
@ -48,7 +50,7 @@ namespace IRaCIS.Core.Application.Service
var verifyExp1 = new EntityVerifyExp<PublishLog>() var verifyExp1 = new EntityVerifyExp<PublishLog>()
{ {
VerifyExp = u => u.Version == addOrEditPublishLog.Version, VerifyExp = u => u.Version == addOrEditPublishLog.Version || u.Version_US == addOrEditPublishLog.Version_US,
//"发布编号不能重复" //"发布编号不能重复"
VerifyMsg = _localizer["PublishLog_RepeatVersion"] VerifyMsg = _localizer["PublishLog_RepeatVersion"]
@ -79,7 +81,7 @@ namespace IRaCIS.Core.Application.Service
} }
[AllowAnonymous] [AllowAnonymous]
public async Task<PublishLogView> GetCurrentPublishInfo() public async Task<PublishLogView> GetCurrentPublishInfo([FromServices] IOptionsMonitor<SystemEmailSendConfig> _sysEmialConfigOPtion)
{ {
var result = await _publishLogRepository.Where(t => t.IsCurrentVersion == true).ProjectTo<PublishLogView>(_mapper.ConfigurationProvider).FirstOrDefaultAsync(); var result = await _publishLogRepository.Where(t => t.IsCurrentVersion == true).ProjectTo<PublishLogView>(_mapper.ConfigurationProvider).FirstOrDefaultAsync();
@ -89,6 +91,7 @@ namespace IRaCIS.Core.Application.Service
throw new QueryBusinessObjectNotExistException(_localizer["PublishLog_NoCurrentVersion"]); throw new QueryBusinessObjectNotExistException(_localizer["PublishLog_NoCurrentVersion"]);
} }
result.IsEnv_US = _sysEmialConfigOPtion.CurrentValue.IsEnv_US;
return result; return result;
} }

View File

@ -183,7 +183,7 @@ namespace IRaCIS.Core.Application.Service
await VerifyUserEmailAsync(_userInfo.Id, _userInfo.UserTypeId, newEmail); await VerifyUserEmailAsync(_userInfo.Id, _userInfo.UserTypeId, newEmail);
await _userRepository.UpdatePartialNowNoQueryAsync(_userInfo.Id, u => new User() await _userRepository.UpdatePartialFromQueryAsync(_userInfo.Id, u => new User()
{ {
EMail = newEmail EMail = newEmail
}); });
@ -206,7 +206,7 @@ namespace IRaCIS.Core.Application.Service
await VerifyUserPhoneAsync(_userInfo.Id, _userInfo.UserTypeId, newPhone); await VerifyUserPhoneAsync(_userInfo.Id, _userInfo.UserTypeId, newPhone);
await _userRepository.UpdatePartialNowNoQueryAsync(_userInfo.Id, u => new User() await _userRepository.UpdatePartialFromQueryAsync(_userInfo.Id, u => new User()
{ {
Phone = newPhone Phone = newPhone
}); });
@ -223,7 +223,7 @@ namespace IRaCIS.Core.Application.Service
await VerifyUserNameAsync(_userInfo.Id, newUserName); await VerifyUserNameAsync(_userInfo.Id, newUserName);
await _userRepository.UpdatePartialNowNoQueryAsync(_userInfo.Id, u => new User() await _userRepository.UpdatePartialFromQueryAsync(_userInfo.Id, u => new User()
{ {
UserName = newUserName UserName = newUserName
}); });
@ -277,7 +277,7 @@ namespace IRaCIS.Core.Application.Service
await _mailVerificationService.AdminResetPwdSendEmailAsync(userId, pwd); await _mailVerificationService.AdminResetPwdSendEmailAsync(userId, pwd);
await _userRepository.UpdatePartialNowNoQueryAsync(userId, u => new User() await _userRepository.UpdatePartialFromQueryAsync(userId, u => new User()
{ {
Password = MD5Helper.Md5(pwd), Password = MD5Helper.Md5(pwd),
IsFirstAdd = true IsFirstAdd = true

View File

@ -101,7 +101,7 @@ namespace IRaCIS.Core.Application.Service
[HttpPost] [HttpPost]
public async Task<IResponseOutput> SetAutoCutNextTask(SetAutoCutNextTaskInDto inDto) public async Task<IResponseOutput> SetAutoCutNextTask(SetAutoCutNextTaskInDto inDto)
{ {
await _userRepository.UpdatePartialNowNoQueryAsync(_userInfo.Id, x => new User() await _userRepository.UpdatePartialFromQueryAsync(_userInfo.Id, x => new User()
{ {
AutoCutNextTask = inDto.AutoCutNextTask AutoCutNextTask = inDto.AutoCutNextTask

View File

@ -6,6 +6,8 @@ public class PublishLog : BaseFullAuditEntity
{ {
public string Version { get; set; } = string.Empty; public string Version { get; set; } = string.Empty;
public string Version_US { get; set; }
public DateTime? PublishTime { get; set; } public DateTime? PublishTime { get; set; }
public string UpdateContent { get; set; } = string.Empty; public string UpdateContent { get; set; } = string.Empty;

View File

@ -24,5 +24,3 @@ public class UserLog : BaseAddAuditEntity
} }

View File

@ -66,7 +66,7 @@ namespace IRaCIS.Core.Infra.EFCore
/// <summary>EF跟踪方式 生成 部分字段立即更新,不会去数据库查询完整的实体,不符合我们稽查的需求</summary> /// <summary>EF跟踪方式 生成 部分字段立即更新,不会去数据库查询完整的实体,不符合我们稽查的需求</summary>
Task<bool> UpdatePartialNowNoQueryAsync(Guid id, Expression<Func<TEntity, TEntity>> updateFactory, params EntityVerifyExp<TEntity>[] verify); //Task<bool> UpdatePartialNowNoQueryAsync(Guid id, Expression<Func<TEntity, TEntity>> updateFactory, params EntityVerifyExp<TEntity>[] verify);
/// <summary> EF跟踪方式 生成 部分字段更新,不会去数据库查询完整的实体,不符合我们稽查的需求</summary> /// <summary> EF跟踪方式 生成 部分字段更新,不会去数据库查询完整的实体,不符合我们稽查的需求</summary>
//Task UpdatePartialNoQueryAsync(Guid id, Expression<Func<TEntity, TEntity>> updateFactory, bool autoSave = false, params EntityVerifyExp<TEntity>[] verify); //Task UpdatePartialNoQueryAsync(Guid id, Expression<Func<TEntity, TEntity>> updateFactory, bool autoSave = false, params EntityVerifyExp<TEntity>[] verify);