修改导出
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
ad7463c2c9
commit
fd3fc0ea03
|
@ -199,21 +199,25 @@ public static class ExcelExportHelper
|
||||||
|
|
||||||
public class DynamicColumnConfig
|
public class DynamicColumnConfig
|
||||||
{
|
{
|
||||||
|
//标题动态修改的行 从0 开始算
|
||||||
public int AutoColumnStartIndex { get; set; }
|
public int AutoColumnStartIndex { get; set; }
|
||||||
|
|
||||||
|
//动态列开始的index 从0开始
|
||||||
public int AutoColumnRowIndex { get; set; }
|
public int AutoColumnRowIndex { get; set; }
|
||||||
|
|
||||||
|
//动态列后面还有几列数据
|
||||||
public int BackMoveCount { get; set; }
|
public int BackMoveCount { get; set; }
|
||||||
|
|
||||||
|
//动态的列名
|
||||||
public List<string> ColumnNameList { get; set; }
|
public List<string> ColumnNameList { get; set; }
|
||||||
|
|
||||||
|
//动态翻译的字典名
|
||||||
public List<string> TranslateDicNameList { get; set; }
|
public List<string> TranslateDicNameList { get; set; }
|
||||||
|
|
||||||
//动态取数据的集合名
|
//动态取数据的集合名
|
||||||
public string DynamicListName { get; set; }
|
public string DynamicListName { get; set; }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//动态数据翻译的取字典的属性名
|
//动态数据翻译的取字典的属性名
|
||||||
public string DynamicItemDicName { get; set; }
|
public string DynamicItemDicName { get; set; }
|
||||||
//取值的属性名
|
//取值的属性名
|
||||||
|
@ -420,7 +424,7 @@ public static class ExcelExportHelper
|
||||||
var index = list.IndexOf(itemResult);
|
var index = list.IndexOf(itemResult);
|
||||||
|
|
||||||
//从第四行开始处理动态列
|
//从第四行开始处理动态列
|
||||||
var row = sheet.GetRow(index + 3);
|
var row = sheet.GetRow(index + dynamicColumnConfig.AutoColumnRowIndex + 1);
|
||||||
|
|
||||||
var itemDic = itemResult.ConvertToDictionary();
|
var itemDic = itemResult.ConvertToDictionary();
|
||||||
|
|
||||||
|
|
|
@ -12716,6 +12716,38 @@
|
||||||
利用DocX 库 处理word国际化模板
|
利用DocX 库 处理word国际化模板
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.MassTransit.Consumer.CommonEmailHelper.TranslationDictionary(IRaCIS.Core.Application.MassTransit.Consumer.TranslationDictionaryDto)">
|
||||||
|
<summary>
|
||||||
|
翻译字典
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="T:IRaCIS.Core.Application.MassTransit.Consumer.TranslationDictionaryDto">
|
||||||
|
<summary>
|
||||||
|
转换字典的Dto
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:IRaCIS.Core.Application.MassTransit.Consumer.TranslationDictionaryDto.DictionaryRepository">
|
||||||
|
<summary>
|
||||||
|
字典仓储
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:IRaCIS.Core.Application.MassTransit.Consumer.TranslationDictionaryDto.DictionaryCode">
|
||||||
|
<summary>
|
||||||
|
字典Code
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:IRaCIS.Core.Application.MassTransit.Consumer.TranslationDictionaryDto.EnumValue">
|
||||||
|
<summary>
|
||||||
|
枚举值
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:IRaCIS.Core.Application.MassTransit.Consumer.TranslationDictionaryDto.IsEn_US">
|
||||||
|
<summary>
|
||||||
|
是否是英文
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="M:IRaCIS.Core.Application.MassTransit.Consumer.ConsistencyCheckConsumer.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.DicomStudy},IRaCIS.Core.Domain.Share.IUserInfo,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Subject},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialSite},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.NoneDicomStudy},AutoMapper.IMapper,Microsoft.Extensions.Localization.IStringLocalizer)">
|
<member name="M:IRaCIS.Core.Application.MassTransit.Consumer.ConsistencyCheckConsumer.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.DicomStudy},IRaCIS.Core.Domain.Share.IUserInfo,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Subject},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialSite},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.NoneDicomStudy},AutoMapper.IMapper,Microsoft.Extensions.Localization.IStringLocalizer)">
|
||||||
<summary>
|
<summary>
|
||||||
构造函数注入
|
构造函数注入
|
||||||
|
@ -12762,6 +12794,19 @@
|
||||||
加急的医学反馈任务 通知MIM
|
加急的医学反馈任务 通知MIM
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.MassTransit.Consumer.UrgentMedicalReviewAddedEventConsumer.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.User},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TaskMedicalReview},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialSiteSurvey},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.EmailNoticeConfig},Microsoft.Extensions.Options.IOptionsMonitor{IRaCIS.Core.Domain.Share.SystemEmailSendConfig})">
|
||||||
|
<summary>
|
||||||
|
加急的医学反馈任务 通知MIM
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.MassTransit.Consumer.UrgentMedicalReviewAddedEventConsumer.Consume(MassTransit.ConsumeContext{IRaCIS.Core.Domain.UrgentMedicalReviewAddedEvent})">
|
||||||
|
<summary>
|
||||||
|
加急的医学反馈任务 通知MIM
|
||||||
|
</summary>
|
||||||
|
<param name="context"></param>
|
||||||
|
<returns></returns>
|
||||||
|
<exception cref="T:System.NotImplementedException"></exception>
|
||||||
|
</member>
|
||||||
<member name="T:IRaCIS.Core.Application.MassTransit.Consumer.UrgentMIMRepliedMedicalReviewConsumer">
|
<member name="T:IRaCIS.Core.Application.MassTransit.Consumer.UrgentMIMRepliedMedicalReviewConsumer">
|
||||||
<summary>
|
<summary>
|
||||||
MIM 回复医学返回通知IR
|
MIM 回复医学返回通知IR
|
||||||
|
|
|
@ -73,7 +73,7 @@ public class UrgentMedicalReviewAddedEventConsumer(
|
||||||
var htmlBodyStr = string.Format(CommonEmailHelper.ReplaceCompanyName(_systemEmailConfig, input.htmlBodyStr),
|
var htmlBodyStr = string.Format(CommonEmailHelper.ReplaceCompanyName(_systemEmailConfig, input.htmlBodyStr),
|
||||||
userinfo.FullName, // 用户名
|
userinfo.FullName, // 用户名
|
||||||
trialInfo.ExperimentName , // 项目
|
trialInfo.ExperimentName , // 项目
|
||||||
criterion.CriterionName, // 阅片标准
|
criterion.CriterionName // 阅片标准
|
||||||
// 受试者
|
// 受试者
|
||||||
// 访视
|
// 访视
|
||||||
// 任务类型
|
// 任务类型
|
||||||
|
|
|
@ -1602,6 +1602,11 @@ namespace IRaCIS.Core.Application.Service.Common
|
||||||
var list = new List<ExportDocumentDes>();
|
var list = new List<ExportDocumentDes>();
|
||||||
var criterion = await _readingQuestionCriterionTrialRepository.Where(t => t.Id == trialReadingCriterionId).Select(t => new { t.CriterionType, t.CriterionName }).FirstNotNullAsync();
|
var criterion = await _readingQuestionCriterionTrialRepository.Where(t => t.Id == trialReadingCriterionId).Select(t => new { t.CriterionType, t.CriterionName }).FirstNotNullAsync();
|
||||||
|
|
||||||
|
list.Add(new ExportDocumentDes() { Code = StaticData.Export.CommonReading_Export, ExportCatogory = ExportCatogory.OverallTumorEvaluation });
|
||||||
|
list.Add(new ExportDocumentDes() { Code = StaticData.Export.CommonReadingDetail_Export, ExportCatogory = ExportCatogory.OverallTumorEvaluation });
|
||||||
|
list.Add(new ExportDocumentDes() { Code = StaticData.Export.CommonJudgeReadingDetail_Export, ExportCatogory = ExportCatogory.OverallTumorEvaluation });
|
||||||
|
|
||||||
|
|
||||||
if (criterion.CriterionType == CriterionType.RECIST1Point1 || criterion.CriterionType == CriterionType.RECIST1Pointt1_MB)
|
if (criterion.CriterionType == CriterionType.RECIST1Point1 || criterion.CriterionType == CriterionType.RECIST1Pointt1_MB)
|
||||||
{
|
{
|
||||||
list.Add(new ExportDocumentDes() { Code = StaticData.Export.OverallTumorEvaluation_Export, ExportCatogory = ExportCatogory.OverallTumorEvaluation });
|
list.Add(new ExportDocumentDes() { Code = StaticData.Export.OverallTumorEvaluation_Export, ExportCatogory = ExportCatogory.OverallTumorEvaluation });
|
||||||
|
@ -2072,7 +2077,13 @@ namespace IRaCIS.Core.Application.Service.Common
|
||||||
exportInfo.List = ExportExcelConverterDate.ConvertToClientTimeInObject(list.Where(t => t.ReadingCategory != ReadingCategory.Global).ToList(), _userInfo.TimeZoneId);
|
exportInfo.List = ExportExcelConverterDate.ConvertToClientTimeInObject(list.Where(t => t.ReadingCategory != ReadingCategory.Global).ToList(), _userInfo.TimeZoneId);
|
||||||
exportInfo.CurrentTime = ExportExcelConverterDate.DateTimeInternationalToString(DateTime.Now, _userInfo.TimeZoneId);
|
exportInfo.CurrentTime = ExportExcelConverterDate.DateTimeInternationalToString(DateTime.Now, _userInfo.TimeZoneId);
|
||||||
|
|
||||||
var dynamicColumnConfig = new DynamicColumnConfig() { AutoColumnRowIndex = 2, AutoColumnStartIndex = 6, ColumnNameList = list.FirstOrDefault()?.JudgeQuestionAnswerList.Select(t => t.QuestionName).ToList() };
|
var dynamicColumnConfig = new DynamicColumnConfig() { AutoColumnRowIndex = 2, AutoColumnStartIndex = 6, BackMoveCount=3,
|
||||||
|
DynamicItemDicName= "QuestionName",
|
||||||
|
DynamicItemValueName= "QuestionValue",
|
||||||
|
DynamicListName= "JudgeQuestionAnswerList",
|
||||||
|
ColumnNameList = list.FirstOrDefault()?.JudgeQuestionAnswerList.Select(t => t.QuestionName).ToList(),
|
||||||
|
TranslateDicNameList= list.FirstOrDefault()?.JudgeQuestionAnswerList.Select(t => t.TranslateDicName).ToList()
|
||||||
|
};
|
||||||
|
|
||||||
var (memoryStream, fileName) = await ExcelExportHelper.DataExport_NpoiTestAsync(StaticData.Export.CommonReading_Export, exportInfo, _commonDocumentRepository, _hostEnvironment, _dictionaryService, typeof(CommonEvaluationExport), criterion.CriterionType, dynamicColumnConfig);
|
var (memoryStream, fileName) = await ExcelExportHelper.DataExport_NpoiTestAsync(StaticData.Export.CommonReading_Export, exportInfo, _commonDocumentRepository, _hostEnvironment, _dictionaryService, typeof(CommonEvaluationExport), criterion.CriterionType, dynamicColumnConfig);
|
||||||
|
|
||||||
|
|
|
@ -57,15 +57,16 @@ namespace IRaCIS.Core.Infrastructure.Extention
|
||||||
}
|
}
|
||||||
|
|
||||||
Type type = obj.GetType();
|
Type type = obj.GetType();
|
||||||
PropertyInfo[] properties = type.GetProperties();
|
PropertyInfo[] properties = type.GetProperties(BindingFlags.Public | BindingFlags.Instance);
|
||||||
|
|
||||||
Dictionary<string, object> dictionary = new Dictionary<string, object>();
|
Dictionary<string, object> dictionary = new Dictionary<string, object>();
|
||||||
|
|
||||||
foreach (PropertyInfo property in properties)
|
foreach (PropertyInfo property in properties)
|
||||||
{
|
{
|
||||||
string propertyName = property.Name;
|
string propertyName = property.Name;
|
||||||
|
Console.WriteLine(propertyName);
|
||||||
object propertyValue = property.GetValue(obj);
|
object propertyValue = property.GetValue(obj);
|
||||||
|
Console.WriteLine(propertyName);
|
||||||
// 如果属性的类型是枚举,将其值保留为整数
|
// 如果属性的类型是枚举,将其值保留为整数
|
||||||
if (property.PropertyType.IsEnum || (Nullable.GetUnderlyingType(property.PropertyType)?.IsEnum == true && propertyValue!=null) )
|
if (property.PropertyType.IsEnum || (Nullable.GetUnderlyingType(property.PropertyType)?.IsEnum == true && propertyValue!=null) )
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue