修改静态文件国际化方式
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
663a6c7f5c
commit
7d07e18853
|
@ -77,7 +77,7 @@ namespace IRaCIS.Core.Application.Service.BusinessFilter
|
|||
else if(statusCode != 200&&!(objectResult.Value is IResponseOutput))
|
||||
{
|
||||
//---程序错误,请联系开发人员。
|
||||
var apiResponse = ResponseOutput.NotOk(StaticData.International("UnifiedAPI_ProgramError"));
|
||||
var apiResponse = ResponseOutput.NotOk(I18n.T("UnifiedAPI_ProgramError"));
|
||||
|
||||
objectResult.Value = apiResponse;
|
||||
objectResult.DeclaredType = apiResponse.GetType();
|
||||
|
|
|
@ -30,9 +30,9 @@ public class ProjectExceptionFilter(ILogger<ProjectExceptionFilter> _logger, ISt
|
|||
|
||||
var info = string.Empty;
|
||||
|
||||
if (!string.IsNullOrWhiteSpace(error!.LocalizedKey) && StaticData.Log_Locoalize_Dic.ContainsKey(error!.LocalizedKey))
|
||||
if (!string.IsNullOrWhiteSpace(error!.LocalizedKey) && StaticData.Localizer_Dev_Dic.ContainsKey(error!.LocalizedKey))
|
||||
{
|
||||
info = $"[{error!.LocalizedKey}]:{StaticData.Log_Locoalize_Dic[error!.LocalizedKey]}";
|
||||
info = $"[{error!.LocalizedKey}]:{StaticData.Localizer_Dev_Dic[error!.LocalizedKey]}";
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -83,7 +83,7 @@ public class UnifiedApiResultFilter : Attribute, IAsyncResultFilter
|
|||
else if (statusCode != 200 && !(objectResult.Value is IResponseOutput))
|
||||
{
|
||||
//---程序错误,请联系开发人员。
|
||||
var apiResponse = ResponseOutput.NotOk(StaticData.International("UnifiedAPI_ProgramError"));
|
||||
var apiResponse = ResponseOutput.NotOk(I18n.T("UnifiedAPI_ProgramError"));
|
||||
|
||||
objectResult.Value = apiResponse;
|
||||
objectResult.DeclaredType = apiResponse.GetType();
|
||||
|
|
|
@ -39,9 +39,9 @@ public class GlobalExceptionHandler(IStringLocalizer _localizer, ILogger<GlobalE
|
|||
|
||||
var info = string.Empty;
|
||||
|
||||
if (!string.IsNullOrWhiteSpace(error!.LocalizedKey) && StaticData.Log_Locoalize_Dic.ContainsKey(error!.LocalizedKey))
|
||||
if (!string.IsNullOrWhiteSpace(error!.LocalizedKey) && StaticData.Localizer_Dev_Dic.ContainsKey(error!.LocalizedKey))
|
||||
{
|
||||
info = $"[{error!.LocalizedKey}]:{StaticData.Log_Locoalize_Dic[error!.LocalizedKey]}";
|
||||
info = $"[{error!.LocalizedKey}]:{StaticData.Localizer_Dev_Dic[error!.LocalizedKey]}";
|
||||
}
|
||||
|
||||
httpContext.Response.WriteAsJsonAsync(ResponseOutput.NotOk(exception.Message, "", error!.Code, localizedInfo: info));
|
||||
|
|
|
@ -135,7 +135,7 @@ public static class FileStoreHelper
|
|||
if (doc == null)
|
||||
{
|
||||
//---数据库没有找到对应的数据模板文件,请联系系统运维人员。
|
||||
throw new BusinessValidationFailedException(StaticData.International("FileStore_TemplateFileNotFound"));
|
||||
throw new BusinessValidationFailedException(I18n.T("FileStore_TemplateFileNotFound"));
|
||||
}
|
||||
|
||||
var filePath = FileStoreHelper.GetPhysicalFilePath(_hostEnvironment, doc.Path);
|
||||
|
@ -143,7 +143,7 @@ public static class FileStoreHelper
|
|||
if (!System.IO.File.Exists(filePath))
|
||||
{
|
||||
//---数据模板文件存储路径上未找对应文件,请联系系统运维人员。
|
||||
throw new BusinessValidationFailedException(StaticData.International("FileStore_TemplateFileStoragePathInvalid"));
|
||||
throw new BusinessValidationFailedException(I18n.T("FileStore_TemplateFileStoragePathInvalid"));
|
||||
}
|
||||
|
||||
return (filePath, isEn_US ? doc.Name.Trim('/') : doc.NameCN.Trim('/'));
|
||||
|
@ -269,7 +269,7 @@ public static class FileStoreHelper
|
|||
{
|
||||
|
||||
//---解析Json文件配置出现问题
|
||||
throw new BusinessValidationFailedException(StaticData.International("SysMon_JsonConfig") + e.Message);
|
||||
throw new BusinessValidationFailedException(I18n.T("SysMon_JsonConfig") + e.Message);
|
||||
}
|
||||
|
||||
//默认存储的路径
|
||||
|
|
|
@ -49,7 +49,7 @@ public static class InternationalizationHelper
|
|||
StaticData.En_US_Dic[item.Code] = item.Value;
|
||||
|
||||
//日志记录该信息方便自己人看, 返回给客户的是配置的
|
||||
StaticData.Log_Locoalize_Dic[item.Code] = item.Description;
|
||||
StaticData.Localizer_Dev_Dic[item.Code] = item.Description;
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -93,7 +93,7 @@ public static class InternationalizationHelper
|
|||
StaticData.En_US_Dic[key] = value;
|
||||
|
||||
//日志记录该信息方便自己人看, 返回给客户的是配置的
|
||||
StaticData.Log_Locoalize_Dic[key] = description;
|
||||
StaticData.Localizer_Dev_Dic[key] = description;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -134,7 +134,7 @@ public static class InternationalizationHelper
|
|||
StaticData.Zh_CN_Dic[tojsonItem.Code] = tojsonItem.ValueCN;
|
||||
|
||||
//日志记录该信息方便自己人看, 返回给客户的是配置的
|
||||
StaticData.Log_Locoalize_Dic[tojsonItem.Code] = tojsonItem.Description;
|
||||
StaticData.Localizer_Dev_Dic[tojsonItem.Code] = tojsonItem.Description;
|
||||
}
|
||||
|
||||
File.WriteAllText(usJsonPath, JsonConvert.SerializeObject(StaticData.En_US_Dic));
|
||||
|
@ -145,11 +145,11 @@ public static class InternationalizationHelper
|
|||
|
||||
if (!File.Exists(usJsonPath) || !File.Exists(cnJsonPath))
|
||||
{
|
||||
throw new BusinessValidationFailedException(StaticData.International("IRaCISCHangfireJob_FileNotFound"));
|
||||
throw new BusinessValidationFailedException(I18n.T("IRaCISCHangfireJob_FileNotFound"));
|
||||
}
|
||||
|
||||
|
||||
// //监测Json文件变更 实时刷新数据
|
||||
//监测Json文件变更 实时刷新数据
|
||||
|
||||
|
||||
FileSystemWatcher_US = new FileSystemWatcher
|
||||
|
|
|
@ -42,7 +42,7 @@ public static class SendEmailHelper
|
|||
{
|
||||
|
||||
//---邮件发送失败,您进行的操作未能成功,请检查邮箱或联系维护人员
|
||||
throw new Exception(StaticData.International("SendEmail_SendFail"), new Exception(ex.Message));
|
||||
throw new Exception(I18n.T("SendEmail_SendFail"), new Exception(ex.Message));
|
||||
}
|
||||
|
||||
|
||||
|
@ -82,7 +82,7 @@ public static class SendEmailHelper
|
|||
if (sMTPEmailConfig.ToMailAddressList.Count == 0)
|
||||
{
|
||||
//---没有收件人
|
||||
throw new ArgumentException(StaticData.International("SendEmail_NoRecipient"));
|
||||
throw new ArgumentException(I18n.T("SendEmail_NoRecipient"));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -397,7 +397,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
|||
if (_fusionCache.GetOrDefault<Guid>(CacheKeys.TrialTaskStudyUidDBLock(incommand.TrialId, incommand.VisitTaskId, incommand.Study.StudyInstanceUid)) != Guid.Empty)
|
||||
{
|
||||
//---当前已有人正在上传和归档该检查!
|
||||
return ResponseOutput.NotOk(StaticData.International("UploadDownLoad_ArchiveInProgress"));
|
||||
return ResponseOutput.NotOk(I18n.T("UploadDownLoad_ArchiveInProgress"));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -102,7 +102,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
|||
if (cacheValue != Guid.Empty && cacheValue != _userInfo.Id)
|
||||
{
|
||||
//---当前已有人正在上传和归档该检查!
|
||||
return ResponseOutput.NotOk(StaticData.International("UploadDownLoad_ArchiveInProgress"));
|
||||
return ResponseOutput.NotOk(I18n.T("UploadDownLoad_ArchiveInProgress"));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -134,7 +134,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
|||
if (_fusionCache.GetOrDefault<Guid>(CacheKeys.TrialStudyUidDBLock(incommand.TrialId, incommand.Study.StudyInstanceUid)) != Guid.Empty)
|
||||
{
|
||||
//---当前已有人正在上传和归档该检查!
|
||||
return ResponseOutput.NotOk(StaticData.International("UploadDownLoad_ArchiveInProgress"));
|
||||
return ResponseOutput.NotOk(I18n.T("UploadDownLoad_ArchiveInProgress"));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -4,3 +4,4 @@ global using System;
|
|||
global using System.Collections.Generic;
|
||||
global using System.ComponentModel.DataAnnotations;
|
||||
global using System.ComponentModel.DataAnnotations.Schema;
|
||||
global using IRaCIS.Core.Infrastructure.Extention;
|
||||
|
|
|
@ -62,7 +62,7 @@ public class ReadingQuestionCriterionTrial : BaseAddAuditEntity
|
|||
[Comment("全局阅片评估更新类型")]
|
||||
public string GlobalUpdateType { get; set; } = string.Empty;
|
||||
[Comment("评估原因")]
|
||||
public string EvaluationReason { get; set; } = StaticData.International("CriterionTrial_EvaluationReason");
|
||||
public string EvaluationReason { get; set; } = I18n.T("CriterionTrial_EvaluationReason");
|
||||
[Comment("是否显示详情")]
|
||||
public bool IsShowDetail { get; set; } = true;
|
||||
|
||||
|
|
|
@ -132,7 +132,7 @@ public partial class Trial : BaseFullDeleteAuditEntity
|
|||
public bool VisitPlanConfirmed { get; set; }
|
||||
|
||||
[Comment("受试者编号具体规则")]
|
||||
public string SubjectCodeRule { get; set; } = StaticData.International("Trial_number");
|
||||
public string SubjectCodeRule { get; set; } = I18n.T("Trial_number");
|
||||
[Comment("是否 提醒受试者编号规则")]
|
||||
public bool IsNoticeSubjectCodeRule { get; set; } = true;
|
||||
|
||||
|
|
|
@ -117,9 +117,9 @@ namespace IRaCIS.Core.Infrastructure.Extention
|
|||
|
||||
var info = string.Empty;
|
||||
|
||||
if (!string.IsNullOrWhiteSpace(key) && StaticData.Log_Locoalize_Dic.ContainsKey(key))
|
||||
if (!string.IsNullOrWhiteSpace(key) && StaticData.Localizer_Dev_Dic.ContainsKey(key))
|
||||
{
|
||||
info = $"[{key}]:{StaticData.Log_Locoalize_Dic[key]}";
|
||||
info = $"[{key}]:{StaticData.Localizer_Dev_Dic[key]}";
|
||||
}
|
||||
|
||||
return new ResponseOutput<string>().NotOk(msg, code: code, localizedInfo: info);
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.Threading;
|
||||
|
||||
|
@ -12,7 +13,7 @@ public static class StaticData
|
|||
|
||||
public static Dictionary<string, string> Zh_CN_Dic = new Dictionary<string, string>();
|
||||
|
||||
public static Dictionary<string, string> Log_Locoalize_Dic = new Dictionary<string, string>();
|
||||
public static Dictionary<string, string> Localizer_Dev_Dic = new Dictionary<string, string>();
|
||||
|
||||
|
||||
#region 国际化
|
||||
|
@ -33,44 +34,21 @@ public static class StaticData
|
|||
/// </summary>
|
||||
/// <param name="data"></param>
|
||||
/// <returns></returns>
|
||||
public static string International(string key, params object?[] args)
|
||||
public static string I18n(string key, params object?[] args)
|
||||
{
|
||||
try
|
||||
{
|
||||
return string.Format(GetLanguageDictionary(key), args);
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
var isEn_US = System.Globalization.CultureInfo.CurrentCulture.Name == StaticData.CultureInfo.en_US;
|
||||
|
||||
return string.Empty;
|
||||
if (isEn_US)
|
||||
{
|
||||
return En_US_Dic[key];
|
||||
}
|
||||
else
|
||||
{
|
||||
return Zh_CN_Dic[key];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public static string GetLanguageDictionary(string key)
|
||||
{
|
||||
try
|
||||
{
|
||||
var type = Thread.CurrentThread.CurrentUICulture.Name;
|
||||
if (type == "zh-CN")
|
||||
{
|
||||
return Zh_CN_Dic[key];
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
return En_US_Dic[key];
|
||||
|
||||
}
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
|
||||
return string.Empty;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 字典表项固定值
|
||||
|
|
Loading…
Reference in New Issue