导出下载访视修改
continuous-integration/drone/push Build is pending Details

Test_IRC_Net8
hang 2026-06-02 15:03:00 +08:00
parent 0f55c6da9d
commit 967c0114d8
1 changed files with 62 additions and 54 deletions

View File

@ -206,6 +206,14 @@ namespace IRaCIS.Core.Application.Service
public Guid? SubjectVisitId { get; set; } public Guid? SubjectVisitId { get; set; }
public decimal VisitNum { get; set; } public decimal VisitNum { get; set; }
public string VisitName { get; set; } public string VisitName { get; set; }
public string R1 { get; set; }
public string R1 { get; set; }
public string R2 { get; set; }
public string R2 { get; set; }
} }
[AllowAnonymous] [AllowAnonymous]
@ -231,76 +239,76 @@ namespace IRaCIS.Core.Application.Service
string exportPath = @$"C:\Users\PC\Desktop\newDownload.xlsx"; string exportPath = @$"C:\Users\PC\Desktop\newDownload.xlsx";
//MiniExcel.SaveAs(exportPath, downloadVisit); MiniExcel.SaveAs(exportPath, downloadVisit);
#region 数据库查询 #region 数据库查询
var downloadInfo = _trialRepository.Where(t => t.Id == trialId).Select(t => new // var downloadInfo = _trialRepository.Where(t => t.Id == trialId).Select(t => new
{ // {
t.ResearchProgramNo, // t.ResearchProgramNo,
t.TrialCode, // t.TrialCode,
VisitList = t.SubjectVisitList.Where(t => t.VisitTaskList.Any(t => t.TaskState == TaskState.Effect && t.ReadingCategory == ReadingCategory.Visit && t.ReadingTaskState != ReadingTaskState.HaveSigned && t.SourceSubjectVisitId != null && t.DoctorUserId != null)) // VisitList = t.SubjectVisitList.Where(t => t.VisitTaskList.Any(t => t.TaskState == TaskState.Effect && t.ReadingCategory == ReadingCategory.Visit && t.ReadingTaskState != ReadingTaskState.HaveSigned && t.SourceSubjectVisitId != null && t.DoctorUserId != null))
//.Where(t=>subjectCodeList.Contains(t.Subject.Code)) // //.Where(t=>subjectCodeList.Contains(t.Subject.Code))
.Select(sv => new // .Select(sv => new
{ // {
SubjectVisitId = sv.Id, // SubjectVisitId = sv.Id,
TrialSiteCode = sv.TrialSite.TrialSiteCode, // TrialSiteCode = sv.TrialSite.TrialSiteCode,
SubjectCode = sv.Subject.Code, // SubjectCode = sv.Subject.Code,
VisitName = sv.VisitName, // VisitName = sv.VisitName,
VisitNum = sv.VisitNum, // VisitNum = sv.VisitNum,
StudyList = sv.StudyList.Select(u => new // StudyList = sv.StudyList.Select(u => new
{ // {
StudyId = u.Id, // StudyId = u.Id,
u.PatientId, // u.PatientId,
u.StudyTime, // u.StudyTime,
u.StudyCode, // u.StudyCode,
u.StudyInstanceUid, // u.StudyInstanceUid,
u.StudyDIRPath, // u.StudyDIRPath,
SeriesList = u.SeriesList.Where(t => t.IsReading).Select(z => new // SeriesList = u.SeriesList.Where(t => t.IsReading).Select(z => new
{ // {
z.Modality, // z.Modality,
InstancePathList = z.DicomInstanceList.Where(t => t.IsReading).Select(k => new // InstancePathList = z.DicomInstanceList.Where(t => t.IsReading).Select(k => new
{ // {
InstanceId = k.Id, // InstanceId = k.Id,
k.Path, // k.Path,
k.IsEncapsulated, // k.IsEncapsulated,
k.NumberOfFrames, // k.NumberOfFrames,
}).ToList() // }).ToList()
}) // })
}).ToList(), // }).ToList(),
NoneDicomStudyList = sv.NoneDicomStudyList.Where(t => t.IsReading).Select(nd => new // NoneDicomStudyList = sv.NoneDicomStudyList.Where(t => t.IsReading).Select(nd => new
{ // {
nd.Modality, // nd.Modality,
nd.StudyCode, // nd.StudyCode,
nd.ImageDate, // nd.ImageDate,
FileList = nd.NoneDicomFileList.Where(t => t.IsReading).Select(file => new // FileList = nd.NoneDicomFileList.Where(t => t.IsReading).Select(file => new
{ // {
file.FileName, // file.FileName,
file.Path, // file.Path,
file.FileType // file.FileType
}).ToList() // }).ToList()
}).ToList() // }).ToList()
}).OrderBy(t => t.SubjectCode).ThenBy(t => t.VisitNum).ToList() // }).OrderBy(t => t.SubjectCode).ThenBy(t => t.VisitNum).ToList()
}).FirstOrDefault(); // }).FirstOrDefault();
var acturalDownList = downloadInfo.VisitList.Where(t => !oldVisits.Any(old => old.VisitNum == t.VisitNum && old.SubjectCode == t.SubjectCode && // var acturalDownList = downloadInfo.VisitList.Where(t => !oldVisits.Any(old => old.VisitNum == t.VisitNum && old.SubjectCode == t.SubjectCode &&
old.VisitName.Trim().ToLower() == t.VisitName.Trim().ToLower())).ToList(); //old.VisitName.Trim().ToLower() == t.VisitName.Trim().ToLower())).ToList();
var diffList = downloadVisit.Where(t => !acturalDownList.Any(old => old.SubjectCode.Trim() == t.SubjectCode.Trim() && // var diffList = downloadVisit.Where(t => !acturalDownList.Any(old => old.SubjectCode.Trim() == t.SubjectCode.Trim() &&
old.VisitName.Trim().ToLower() == t.VisitName.Trim().ToLower())).ToList(); //old.VisitName.Trim().ToLower() == t.VisitName.Trim().ToLower())).ToList();
string diffPath = @$"C:\Users\PC\Desktop\diff.xlsx"; // string diffPath = @$"C:\Users\PC\Desktop\diff.xlsx";
MiniExcel.SaveAs(diffPath, diffList); // MiniExcel.SaveAs(diffPath, diffList);
#endregion #endregion