修改一版

Test.EIImageViewer
he 2022-05-06 17:37:54 +08:00
parent 7afe552061
commit d21b8c024c
6 changed files with 56 additions and 22 deletions

View File

@ -231,7 +231,7 @@ namespace IRaCIS.Api.Controllers
Dictionary<string, object> keyValuePairs = new Dictionary<string, object>(); Dictionary<string, object> keyValuePairs = new Dictionary<string, object>();
keyValuePairs.Add("StyudCode", studycode); keyValuePairs.Add("StyudCode", studycode);
data.JsonDetail = _inspectionService.AddJsonItem(data.JsonDetail, keyValuePairs); data.JsonDetail = _inspectionService.AddJsonItem(data.JsonDetail, keyValuePairs);
await _inspectionService.AddInspectionRecordAsync(data); //await _inspectionService.AddInspectionRecordAsync(data);
} }
catch (Exception e) catch (Exception e)
{ {

View File

@ -137,7 +137,8 @@ namespace IRaCIS.Core.Application.Services
return ResponseOutput.NotOk("This visit is OutPlanPreviousVisitId and couldn't be deleted."); return ResponseOutput.NotOk("This visit is OutPlanPreviousVisitId and couldn't be deleted.");
} }
await _subjectVisitRepository.SoftDeleteFromQueryAsync(s => s.Id == id); await _subjectVisitRepository.DeleteFromQueryAsync(s => s.Id == id,true);
return ResponseOutput.Ok(); return ResponseOutput.Ok();
} }

View File

@ -277,7 +277,7 @@ namespace IRaCIS.Application.Services
SubjectId = y.Id, SubjectId = y.Id,
Id = guid, Id = guid,
VisitName = x.VisitName, VisitName = x.VisitName,
TrialId= trialId,
BlindName = x.BlindName, BlindName = x.BlindName,
IsBaseLine = x.IsBaseLine, IsBaseLine = x.IsBaseLine,
IsUrgent = false, IsUrgent = false,
@ -292,7 +292,7 @@ namespace IRaCIS.Application.Services
await _repository.AddRangeAsync(subjectVisits); await _repository.AddRangeAsync(subjectVisits);
//访视计划 整体状态变更为 确认 //访视计划 整体状态变更为 确认
await _visitStageRepository.BatchUpdateNoTrackingAsync(u => u.TrialId == trialId, t => new VisitStage() { IsConfirmed = true, IsHaveFirstConfirmed = true }); await _visitStageRepository.UpdatePartialFromQueryAsync(u => u.TrialId == trialId&&u.IsConfirmed==false, t => new VisitStage() { IsConfirmed = true, IsHaveFirstConfirmed = true });
await _visitStageRepository.SaveChangesAsync(); await _visitStageRepository.SaveChangesAsync();
return ResponseOutput.Ok(); return ResponseOutput.Ok();

View File

@ -89,7 +89,7 @@ namespace IRaCIS.Core.Application.Triggers
//// 这里是触发器的位置 //// 这里是触发器的位置
//await _subjectVisitRepository.AddListInspectionRecordAsync(datas); //await _subjectVisitRepository.AddListInspectionRecordAsync(datas);
await _subjectVisitRepository.BatchUpdateNoTrackingAsync(t => t.Id == subjectVisitId && t.SubmitState == SubmitStateEnum.ToSubmit, await _subjectVisitRepository.UpdatePartialFromQueryAsync(t => t.Id == subjectVisitId && t.SubmitState == SubmitStateEnum.ToSubmit,
u => new SubjectVisit() { VisitExecuted = 0, SVENDTC = null, SVSTDTC = null, SubmitState = SubmitStateEnum.None }); u => new SubjectVisit() { VisitExecuted = 0, SVENDTC = null, SVSTDTC = null, SubmitState = SubmitStateEnum.None });
} }
} }

View File

@ -52,10 +52,19 @@ namespace IRaCIS.Core.Infra.EFCore.Common
await InsertAddEntitys(entitys.Where(x => x.State == EntityState.Added).ToList(), "Add"); await InsertAddEntitys(entitys.Where(x => x.State == EntityState.Added).ToList(), "Add");
// 修改 // 修改
await InsertAddEntitys(entitys.Where(x => x.State == EntityState.Modified).ToList(), "Update"); await InsertAddEntitys(entitys.Where(x => x.State == EntityState.Modified&&(!typeof(ISoftDelete).IsAssignableFrom(x.Entity.GetType())
|| !(bool)x.Entity.GetType().GetProperty("IsDeleted").GetValue(x.Entity))
).ToList(), "Update");
// 删除 // 删除
await InsertAddEntitys(entitys.Where(x => x.State == EntityState.Deleted).ToList(), "Deleted"); await InsertAddEntitys(entitys.Where(x => x.State == EntityState.Deleted
||((typeof(ISoftDelete).IsAssignableFrom(x.Entity.GetType())&& (bool)x.Entity.GetType().GetProperty("IsDeleted").GetValue(x.Entity)))
).ToList(), "Deleted");
//var value = data.GetType().GetProperty(item).GetValue(data);
//entitys.Where(x=>x.Entity.is)
} }
/// <summary> /// <summary>
@ -84,6 +93,15 @@ namespace IRaCIS.Core.Infra.EFCore.Common
}); });
} }
// 访视计划
foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(VisitStage)))
{
await InsertInspection<VisitStage>(item, type, x => new DataInspection()
{
VisitStageId = x.Id,
});
}
// TrialDocument // TrialDocument
foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(TrialDocument))) foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(TrialDocument)))
{ {
@ -117,15 +135,6 @@ namespace IRaCIS.Core.Infra.EFCore.Common
}); });
} }
// 访视计划
foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(VisitStage)))
{
await InsertInspection<VisitStage>(item, type, x => new DataInspection()
{
VisitStageId = x.Id,
});
}
// 既往手术史 // 既往手术史
foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(PreviousSurgery))) foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(PreviousSurgery)))
@ -161,9 +170,12 @@ namespace IRaCIS.Core.Infra.EFCore.Common
await InsertInspection<DicomStudy>(item, type, x => new DataInspection() await InsertInspection<DicomStudy>(item, type, x => new DataInspection()
{ {
GeneralId = x.Id, GeneralId = x.Id,
}); });
} }
// 序列 // 序列
foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(DicomSeries))) foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(DicomSeries)))
{ {
@ -172,12 +184,34 @@ namespace IRaCIS.Core.Infra.EFCore.Common
await InsertInspection<DicomSeries>(item, type, x => new DataInspection() await InsertInspection<DicomSeries>(item, type, x => new DataInspection()
{ {
GeneralId = x.Id, GeneralId = x.Id,
},new { }, new
{
StudyCode = entity.DicomStudy.StudyCode, StudyCode = entity.DicomStudy.StudyCode,
Modalities = entity.DicomStudy.Modalities, Modalities = entity.DicomStudy.Modalities,
}); });
} }
// 非Dicom
foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(NoneDicomStudy)))
{
await InsertInspection<NoneDicomStudy>(item, type, x => new DataInspection()
{
GeneralId = x.Id,
});
}
// 非Dicom文件
foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(NoneDicomStudyFile)))
{
await InsertInspection<NoneDicomStudyFile>(item, type, x => new DataInspection()
{
GeneralId = x.Id,
});
}
//质疑 //质疑
foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(QCChallenge))) foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(QCChallenge)))
{ {

View File

@ -594,7 +594,6 @@ namespace IRaCIS.Core.Infra.EFCore
item.Json = await SetEnum(dto.TrialId, item.Identification, item.Json); item.Json = await SetEnum(dto.TrialId, item.Identification, item.Json);
item.Json = await SetDataInspectionDateType(item.Identification, item.Json); item.Json = await SetDataInspectionDateType(item.Identification, item.Json);
} }
return dto.Items.Select(x => x.Json).ToList(); return dto.Items.Select(x => x.Json).ToList();
} }
@ -610,7 +609,7 @@ namespace IRaCIS.Core.Infra.EFCore
public async Task<string> SetDataInspectionDateType(string identification, string json) public async Task<string> SetDataInspectionDateType(string identification, string json)
{ {
var list = await (from parent in _dbContext.FrontAuditConfig.AsQueryable().Where(x => x.Identification == identification) var list = await (from parent in _dbContext.FrontAuditConfig.AsQueryable().Where(x => x.Identification == identification)
join child in _dbContext.FrontAuditConfig.AsQueryable().Where(x => x.EnumType == "Date") on parent.Id equals child.ParentId join child in _dbContext.FrontAuditConfig.AsQueryable().Where(x => x.EnumType == "Date" && x.IsEnable.HasValue && x.IsEnable.Value) on parent.Id equals child.ParentId
select new DateDto() select new DateDto()
{ {
Code = child.Code, Code = child.Code,
@ -665,7 +664,7 @@ namespace IRaCIS.Core.Infra.EFCore
public async Task<string> GetInspectionEnumValue(string identification, string json) public async Task<string> GetInspectionEnumValue(string identification, string json)
{ {
var list = await (from u in _dbContext.FrontAuditConfig.Where(x => x.Identification == identification) var list = await (from u in _dbContext.FrontAuditConfig.Where(x => x.Identification == identification)
join p in _dbContext.FrontAuditConfig.Where(x => x.EnumType == "Foreign") on u.Id equals p.ParentId join p in _dbContext.FrontAuditConfig.Where(x => x.EnumType == "Foreign" && x.IsEnable.HasValue && x.IsEnable.Value) on u.Id equals p.ParentId
select new select new
{ {
Key = p.Code, Key = p.Code,
@ -721,7 +720,7 @@ namespace IRaCIS.Core.Infra.EFCore
public async Task<string> SetEnum(Guid trilaid, string identification, string json) public async Task<string> SetEnum(Guid trilaid, string identification, string json)
{ {
var list = await (from u in _dbContext.FrontAuditConfig.Where(x => x.Identification == identification) var list = await (from u in _dbContext.FrontAuditConfig.Where(x => x.Identification == identification)
join p in _dbContext.FrontAuditConfig.Where(x => x.Code != "AuditState" && x.EnumType == "Dictionary") on u.Id equals p.ParentId join p in _dbContext.FrontAuditConfig.Where(x => x.Code != "AuditState" && x.EnumType == "Dictionary"&&x.IsEnable.HasValue&& x.IsEnable.Value) on u.Id equals p.ParentId
select new select new
{ {
Key = p.Code, Key = p.Code,