修改影响列表

Uat_Study
hang 2022-11-09 13:45:22 +08:00
parent dfab80657b
commit f1768d5bd9
9 changed files with 143 additions and 5 deletions

View File

@ -49,7 +49,7 @@ public static class ExcelExportHelper
{ {
var beforeValue = itemDic[needTranslateProperty.Name].ToString(); var beforeValue = itemDic[needTranslateProperty.Name].ToString();
itemDic[needTranslateProperty.Name] = translateDataList[needTranslateProperty.DicParentCode].Where(t => t.Code.ToLower() == beforeValue.ToLower()).FirstOrDefault()?.ValueCN; itemDic[needTranslateProperty.Name] = translateDataList[needTranslateProperty.DicParentCode].Where(t => t.Code.ToLower() == beforeValue.ToLower()).FirstOrDefault()?.ValueCN??String.Empty;
} }
itemDic.Add("No", no++); itemDic.Add("No", no++);

View File

@ -3582,6 +3582,26 @@
IsBaseUse IsBaseUse
</summary> </summary>
</member> </member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetSystemGlobalInfoOutDto.IsMustGlobalReading">
<summary>
是否必须全局阅片
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.SystemGlobalInfo.DictionaryId">
<summary>
DictionaryId
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.SystemGlobalInfo.IsBaseLineUse">
<summary>
IsBaseLineUse
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.SystemGlobalInfo.IsFollowVisitUse">
<summary>
IsBaseUse
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.ReadingTableQuestionSystemQuery.TableQuestionType"> <member name="P:IRaCIS.Core.Application.Service.Reading.Dto.ReadingTableQuestionSystemQuery.TableQuestionType">
<summary> <summary>
表格问题类型 表格问题类型
@ -3753,6 +3773,11 @@
是否完成配置 是否完成配置
</summary> </summary>
</member> </member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.AddOrUpdateReadingQuestionCriterionSystemInDto.FormType">
<summary>
表单类型
</summary>
</member>
<member name="T:IRaCIS.Core.Application.Service.Reading.Dto.ReadingQuestionCriterionSystemViewInDto"> <member name="T:IRaCIS.Core.Application.Service.Reading.Dto.ReadingQuestionCriterionSystemViewInDto">
<summary> <summary>
@ -4791,6 +4816,20 @@
<param name="trialReadingCriterionId">项目标准Id</param> <param name="trialReadingCriterionId">项目标准Id</param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:IRaCIS.Core.Application.Service.RC.ReadingQuestionService.SetSystemGlobalInfo(IRaCIS.Core.Application.Service.Reading.Dto.SetSystemGlobalInfoInDto)">
<summary>
设置系统全局阅片阅片信息
</summary>
<param name="inDto"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.RC.ReadingQuestionService.GetSystemGlobalInfo(IRaCIS.Core.Application.Service.Reading.Dto.GetSystemOncologyInfoInDto)">
<summary>
获取系统全局阅片信息
</summary>
<param name="inDto"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.RC.ReadingQuestionService.GetSystemOncologyInfo(IRaCIS.Core.Application.Service.Reading.Dto.GetSystemOncologyInfoInDto)"> <member name="M:IRaCIS.Core.Application.Service.RC.ReadingQuestionService.GetSystemOncologyInfo(IRaCIS.Core.Application.Service.Reading.Dto.GetSystemOncologyInfoInDto)">
<summary> <summary>
获取系统肿瘤信息 获取系统肿瘤信息
@ -6427,6 +6466,11 @@
仲裁阅片 仲裁阅片
</summary> </summary>
</member> </member>
<member name="P:IRaCIS.Core.Application.Contracts.GetTrialReadingInfoOutDto.IsMustGlobalReading">
<summary>
是否必须全局阅片
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Contracts.GetTrialReadingInfoOutDto.IsOncologyReading"> <member name="P:IRaCIS.Core.Application.Contracts.GetTrialReadingInfoOutDto.IsOncologyReading">
<summary> <summary>
肿瘤学阅片 原字段 IsClinicalReading 肿瘤学阅片 原字段 IsClinicalReading
@ -6602,6 +6646,11 @@
阅片信息签名时间 阅片信息签名时间
</summary> </summary>
</member> </member>
<member name="P:IRaCIS.Core.Application.Contracts.GetTrialReadingCriterionInfoOutDto.IsMustGlobalReading">
<summary>
是否必须全局阅片
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Contracts.GetTrialReadingCriterionInfoOutDto.DigitPlaces"> <member name="P:IRaCIS.Core.Application.Contracts.GetTrialReadingCriterionInfoOutDto.DigitPlaces">
<summary> <summary>
修约小数点 修约小数点
@ -7019,11 +7068,18 @@
</member> </member>
<member name="M:IRaCIS.Core.Application.Image.QA.QCListService.GetDicomAndNoneDicomStudyList_Export(IRaCIS.Core.Application.Contracts.StudyQuery,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.CommonDocument},IRaCIS.Application.Interfaces.IDictionaryService)"> <member name="M:IRaCIS.Core.Application.Image.QA.QCListService.GetDicomAndNoneDicomStudyList_Export(IRaCIS.Core.Application.Contracts.StudyQuery,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.CommonDocument},IRaCIS.Application.Interfaces.IDictionaryService)">
<summary> <summary>
一致性核查表 一致性核查 检查信息
</summary> </summary>
<param name="studyQuery"></param> <param name="studyQuery"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:IRaCIS.Core.Application.Image.QA.QCListService.GetConsistencyVerificationList_Export(IRaCIS.Core.Application.Contracts.CheckQuery,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.CommonDocument},IRaCIS.Application.Interfaces.IDictionaryService)">
<summary>
一致性核查记录表
</summary>
<param name="checkQuery"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Image.QA.QCListService.GetCRCVisitList(IRaCIS.Core.Application.Contracts.CRCVisitSearchDTO)"> <member name="M:IRaCIS.Core.Application.Image.QA.QCListService.GetCRCVisitList(IRaCIS.Core.Application.Contracts.CRCVisitSearchDTO)">
<summary> <summary>
CRC 访视上传列表 CRC 访视上传列表

View File

@ -2142,6 +2142,7 @@ namespace IRaCIS.Core.Application.Service.Allocation
//回退后,回退状态恢复 //回退后,回退状态恢复
sv.RequestBackState = RequestBackStateEnum.NotRequest; sv.RequestBackState = RequestBackStateEnum.NotRequest;
sv.IsCheckBack = false; sv.IsCheckBack = false;
sv.CheckBackTime = null;
sv.CheckState = CheckStateEnum.None; sv.CheckState = CheckStateEnum.None;
sv.CheckChallengeState = CheckChanllengeTypeEnum.None; sv.CheckChallengeState = CheckChanllengeTypeEnum.None;
@ -2200,14 +2201,14 @@ namespace IRaCIS.Core.Application.Service.Allocation
if (isReReading) if (isReReading)
{ {
filterExpression = filterExpression.And(t => t.TrialReadingCriterionId == filterObj.TrialReadingCriterionId);
//IR 申请 PM 同意 仅仅影响自己 //IR 申请 PM 同意 仅仅影响自己
if ((_userInfo.UserTypeEnumInt == (int)UserTypeEnum.ProjectManager && applyId != null && await _visitTaskReReadingRepository.AnyAsync(t => t.Id == applyId && t.CreateUser.UserTypeEnum == UserTypeEnum.IndependentReviewer)) if ((_userInfo.UserTypeEnumInt == (int)UserTypeEnum.ProjectManager && applyId != null && await _visitTaskReReadingRepository.AnyAsync(t => t.Id == applyId && t.CreateUser.UserTypeEnum == UserTypeEnum.IndependentReviewer))
|| (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.IndependentReviewer && applyId == null)) || (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.IndependentReviewer && applyId == null))
{ {
filterExpression = filterExpression.And(t => t.TrialReadingCriterionId == filterObj.TrialReadingCriterionId);
//当前任务及其之后的所有访视任务、全局任务、裁判任务、肿瘤学阅片任务 //当前任务及其之后的所有访视任务、全局任务、裁判任务、肿瘤学阅片任务

View File

@ -245,6 +245,9 @@ namespace IRaCIS.Core.Application.Contracts
public DateTime? OutEnrollmentTime { get; set; } public DateTime? OutEnrollmentTime { get; set; }
public DateTime? VisitOverTime { get; set; } public DateTime? VisitOverTime { get; set; }
[DictionaryTranslateAttribute("Subject_Visit_Status")]
public SubjectStatus Status { get; set; } public SubjectStatus Status { get; set; }
@ -350,6 +353,46 @@ namespace IRaCIS.Core.Application.Contracts
[DictionaryTranslateAttribute("YesOrNo")] [DictionaryTranslateAttribute("YesOrNo")]
public bool IsDicom { get; set; } public bool IsDicom { get; set; }
} }
public class PMKCheckEXportDTO
{
public string? TalkContent { get; set; } = String.Empty;
public string BlindName { get; set; } = String.Empty;
public bool IsUrgent { get; set; }
public DateTime? CheckPassedTime { get; set; }
public AuditStateEnum AuditState { get; set; }
public CheckStateEnum CheckState { get; set; }
public String TrialSiteCode { get; set; } = String.Empty;
public string SubjectCode { get; set; } = String.Empty;
[DictionaryTranslateAttribute("Subject_Visit_Status")]
public SubjectStatus SubjectStatus { get; set; }
public decimal VisitNum { get; set; }
public string VisitName { get; set; } = string.Empty;
public Guid SubjectId { get; set; }
public Guid SiteId { get; set; }
[DictionaryTranslateAttribute("RequestBackState")]
public RequestBackStateEnum RequestBackState { get; set; }
public DateTime? CheckTime { get; set; }
[DictionaryTranslateAttribute("CheckChallengeState")]
public CheckChanllengeTypeEnum CheckChallengeState { get; set; }
[DictionaryTranslateAttribute("YesOrNo")]
public bool? IsCheckBack { get; set; }
public string CheckResult { get; set; } = String.Empty;
}
#endregion #endregion

View File

@ -179,7 +179,7 @@ namespace IRaCIS.Core.Application.Image.QA
} }
/// <summary> /// <summary>
/// 一致性核查 /// 一致性核查 检查信息
/// </summary> /// </summary>
/// <param name="studyQuery"></param> /// <param name="studyQuery"></param>
/// <returns></returns> /// <returns></returns>
@ -256,7 +256,34 @@ namespace IRaCIS.Core.Application.Image.QA
} }
/// <summary>
/// 一致性核查记录表
/// </summary>
/// <param name="checkQuery"></param>
/// <returns></returns>
[HttpPost]
public async Task<IActionResult> GetConsistencyVerificationList_Export(CheckQuery checkQuery,
[FromServices] IRepository<CommonDocument> _commonDocumentRepository,
[FromServices] IDictionaryService _dictionaryService)
{
var svExpression = QCCommon.GetSubjectVisitFilter(checkQuery.VisitPlanArray);
var list = await _subjectVisitRepository.Where(x => x.TrialId == checkQuery.TrialId)
.Where(x => x.AuditState == AuditStateEnum.QCPassed) //一致性核查中的,或者还没一致性核查的
.WhereIf(checkQuery.CheckState != null, t => t.CheckState == checkQuery.CheckState)
.WhereIf(checkQuery.SiteId != null, t => t.SiteId == checkQuery.SiteId)
.WhereIf(!string.IsNullOrEmpty(checkQuery.SubjectInfo), t => t.Subject.Code.Contains(checkQuery.SubjectInfo))
.WhereIf(checkQuery.VisitPlanArray != null && checkQuery.VisitPlanArray?.Length > 0, svExpression)
.WhereIf(_userInfo.UserTypeEnumInt == (int)UserTypeEnum.ClinicalResearchCoordinator || _userInfo.UserTypeEnumInt == (int)UserTypeEnum.CRA, t => t.TrialSite.CRCUserList.Any(t => t.UserId == _userInfo.Id))//CRC 过滤负责的site
.ProjectTo<PMKCheckEXportDTO>(_mapper.ConfigurationProvider).ToListAsync();
var exportInfo = (await _trialRepository.Where(t => t.Id == checkQuery.TrialId).IgnoreQueryFilters().ProjectTo<ExcelExportInfo>(_mapper.ConfigurationProvider).FirstOrDefaultAsync()).IfNullThrowException();
exportInfo.List = list;
return await ExcelExportHelper.DataExportAsync(StaticData.Export.TrialSubjectVisitCheckList_Export, exportInfo, "", _commonDocumentRepository, _hostEnvironment, _dictionaryService, typeof(PMKCheckEXportDTO));
}
#endregion #endregion

View File

@ -472,6 +472,7 @@ namespace IRaCIS.Core.Application.Image.QA
//回退后,回退状态恢复 //回退后,回退状态恢复
sv.RequestBackState = RequestBackStateEnum.NotRequest; sv.RequestBackState = RequestBackStateEnum.NotRequest;
sv.IsCheckBack = true; sv.IsCheckBack = true;
sv.CheckBackTime = DateTime.Now;
sv.CheckState = CheckStateEnum.None; sv.CheckState = CheckStateEnum.None;
sv.CheckChallengeState = CheckChanllengeTypeEnum.None; sv.CheckChallengeState = CheckChanllengeTypeEnum.None;

View File

@ -70,6 +70,12 @@ namespace IRaCIS.Core.Application.Service
.ForMember(d => d.FirstGiveMedicineTime, u => u.MapFrom(s => s.Subject.FirstGiveMedicineTime)) .ForMember(d => d.FirstGiveMedicineTime, u => u.MapFrom(s => s.Subject.FirstGiveMedicineTime))
.ForMember(d => d.TrialReadingCriterionName, u => u.MapFrom(s => s.TrialReadingCriterion.CriterionName)); .ForMember(d => d.TrialReadingCriterionName, u => u.MapFrom(s => s.TrialReadingCriterion.CriterionName));
CreateMap<SubjectVisit, PMKCheckEXportDTO>()
.ForMember(d => d.TalkContent, u => u.MapFrom(s => s.CheckChallengeDialogList.OrderByDescending(y => y.CreateTime).Select(x => x.TalkContent).FirstOrDefault()))
.ForMember(d => d.SubjectCode, u => u.MapFrom(s => s.Subject.Code))
.ForMember(d => d.TrialSiteCode, u => u.MapFrom(s => s.TrialSite.TrialSiteCode));
#endregion #endregion

View File

@ -107,6 +107,8 @@ namespace IRaCIS.Core.Domain.Models
//是否一致性核查回退 //是否一致性核查回退
public bool? IsCheckBack { get; set; } public bool? IsCheckBack { get; set; }
public DateTime? CheckBackTime { get; set; }
public CheckChanllengeTypeEnum CheckChallengeState { get; set; } public CheckChanllengeTypeEnum CheckChallengeState { get; set; }
public PDStateEnum PDState { get; set; } = PDStateEnum.None; public PDStateEnum PDState { get; set; } = PDStateEnum.None;

View File

@ -133,6 +133,8 @@ public static class StaticData
public const string TrialStudyList_Export = "TrialStudyList_Export"; public const string TrialStudyList_Export = "TrialStudyList_Export";
public const string TrialSubjectVisitCheckList_Export = "TrialSubjectVisitCheckList_Export";
} }