非dicom 增加数字
parent
9eb138aa62
commit
175b0459df
|
@ -613,7 +613,7 @@ namespace IRaCIS.Core.API.Controllers
|
|||
[HttpPost("NoneDicomStudy/UploadNoneDicomFile/{trialId:guid}/{subjectVisitId:guid}/{noneDicomStudyId:guid}")]
|
||||
[TypeFilter(typeof(TrialResourceFilter))]
|
||||
[Authorize(Policy = IRaCISPolicy.CRC)]
|
||||
public async Task<IResponseOutput> UploadNoneDicomFile(IFormCollection formCollection, Guid subjectVisitId, Guid noneDicomStudyId)
|
||||
public async Task<IResponseOutput> UploadNoneDicomFile(IFormCollection formCollection, Guid subjectVisitId, Guid noneDicomStudyId, [FromServices] IRepository<NoneDicomStudy> _noneDicomStudyRepository)
|
||||
{
|
||||
var startTime = DateTime.Now;
|
||||
|
||||
|
@ -637,7 +637,9 @@ namespace IRaCIS.Core.API.Controllers
|
|||
//// 上传非Dicom 后 将状态改为待提交 分为普通上传 和QC后重传 普通上传时才改为待提交
|
||||
//await _repository.UpdatePartialFromQueryAsync<SubjectVisit>(t => t.Id == subjectVisitId && t.SubmitState == SubmitStateEnum.None, u => new SubjectVisit() { SubmitState = SubmitStateEnum.ToSubmit });
|
||||
|
||||
var studyCode = await _repository.Where<NoneDicomStudy>(t => t.Id == noneDicomStudyId).Select(t => t.StudyCode).FirstOrDefaultAsync();
|
||||
var noneDicomStudy = await _noneDicomStudyRepository.FirstOrDefaultAsync((t => t.Id == noneDicomStudyId));
|
||||
|
||||
noneDicomStudy.FileCount = noneDicomStudy.FileCount + formCollection.Files.Count;
|
||||
|
||||
await _repository.AddAsync(new StudyMonitor()
|
||||
{
|
||||
|
@ -646,7 +648,7 @@ namespace IRaCIS.Core.API.Controllers
|
|||
IsDicom = false,
|
||||
IsDicomReUpload = false,
|
||||
StudyId = noneDicomStudyId,
|
||||
StudyCode = studyCode,
|
||||
StudyCode = noneDicomStudy.StudyCode,
|
||||
UploadStartTime = startTime,
|
||||
UploadFinishedTime = DateTime.Now,
|
||||
IP = _userInfo.IP,
|
||||
|
|
|
@ -273,7 +273,7 @@
|
|||
<param name="taskMedicalReviewId"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.API.Controllers.StudyController.UploadNoneDicomFile(Microsoft.AspNetCore.Http.IFormCollection,System.Guid,System.Guid)">
|
||||
<member name="M:IRaCIS.Core.API.Controllers.StudyController.UploadNoneDicomFile(Microsoft.AspNetCore.Http.IFormCollection,System.Guid,System.Guid,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.NoneDicomStudy})">
|
||||
<summary>
|
||||
上传非Dicom 文件 支持压缩包 多文件上传
|
||||
</summary>
|
||||
|
|
|
@ -24,21 +24,21 @@ namespace IRaCIS.Core.Application.Contracts
|
|||
|
||||
|
||||
public NoneDicomStudyService(IRepository<NoneDicomStudy> noneDicomStudyRepository,
|
||||
|
||||
|
||||
IRepository<NoneDicomStudyFile> noneDicomStudyFileRepository)
|
||||
{
|
||||
_noneDicomStudyRepository = noneDicomStudyRepository;
|
||||
|
||||
|
||||
_noneDicomStudyFileRepository = noneDicomStudyFileRepository;
|
||||
|
||||
}
|
||||
|
||||
|
||||
[HttpGet]
|
||||
public async Task<List<NoneDicomStudyView>> GetNoneDicomStudyList( [FromQuery,NotDefault] Guid subjectVisitId,Guid? nonedicomStudyId)
|
||||
public async Task<List<NoneDicomStudyView>> GetNoneDicomStudyList([FromQuery, NotDefault] Guid subjectVisitId, Guid? nonedicomStudyId)
|
||||
{
|
||||
|
||||
var noneDicomStudyQueryable = _noneDicomStudyRepository.Where(t => t.SubjectVisitId == subjectVisitId).WhereIf(nonedicomStudyId!=null , t => t.Id== nonedicomStudyId)
|
||||
var noneDicomStudyQueryable = _noneDicomStudyRepository.Where(t => t.SubjectVisitId == subjectVisitId).WhereIf(nonedicomStudyId != null, t => t.Id == nonedicomStudyId)
|
||||
|
||||
.ProjectTo<NoneDicomStudyView>(_mapper.ConfigurationProvider, new { token = _userInfo.UserToken });
|
||||
|
||||
|
@ -55,7 +55,7 @@ namespace IRaCIS.Core.Application.Contracts
|
|||
|
||||
await QCCommon.VerifyStudyImageDataAsync(_repository, addOrEditNoneDicomStudy.SubjectId, addOrEditNoneDicomStudy.SubjectVisitId, addOrEditNoneDicomStudy.ImageDate);
|
||||
|
||||
|
||||
|
||||
NoneDicomStudy? optEntity = null;
|
||||
using (await _mutex.LockAsync())
|
||||
{
|
||||
|
@ -72,7 +72,7 @@ namespace IRaCIS.Core.Application.Contracts
|
|||
}
|
||||
else
|
||||
{
|
||||
|
||||
|
||||
optEntity = await _noneDicomStudyRepository.UpdateFromDTOAsync(addOrEditNoneDicomStudy);
|
||||
}
|
||||
|
||||
|
@ -96,7 +96,7 @@ namespace IRaCIS.Core.Application.Contracts
|
|||
//提交了 但是IQC同意的时候 是可以删除的 | 普通提交后也不能删除
|
||||
|
||||
|
||||
await QCCommon.VerifyIsCRCSubmmitAsync(_repository,_userInfo, subjectVisitId);
|
||||
await QCCommon.VerifyIsCRCSubmmitAsync(_repository, _userInfo, subjectVisitId);
|
||||
|
||||
await _noneDicomStudyRepository.DeleteFromQueryAsync(noneDicomStudyId);
|
||||
|
||||
|
@ -118,7 +118,14 @@ namespace IRaCIS.Core.Application.Contracts
|
|||
//提交了 但是IQC同意的时候 是可以删除的 | 普通提交后也不能删除
|
||||
await QCCommon.VerifyIsCRCSubmmitAsync(_repository, _userInfo, subjectVisitId);
|
||||
|
||||
var success = await _noneDicomStudyFileRepository.DeleteFromQueryAsync(t => t.Id == noneDicomStudyFileId, true);
|
||||
var noneDicomStudyFile = await _noneDicomStudyFileRepository.FirstOrDefaultAsync(t => t.Id == noneDicomStudyFileId);
|
||||
|
||||
var success = await _noneDicomStudyFileRepository.DeleteAsync(noneDicomStudyFile, true);
|
||||
|
||||
//维护文件数量数字
|
||||
var noneDicomStudy = await _noneDicomStudyRepository.FirstOrDefaultAsync(t => t.Id == noneDicomStudyFile.NoneDicomStudyId);
|
||||
noneDicomStudy.FileCount = await _noneDicomStudyFileRepository.CountAsync(t => t.NoneDicomStudyId == noneDicomStudyFile.NoneDicomStudyId);
|
||||
await _noneDicomStudyRepository.SaveChangesAsync();
|
||||
|
||||
return ResponseOutput.Ok();
|
||||
}
|
||||
|
|
|
@ -285,7 +285,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
.ForMember(d => d.FullFilePath, u => u.MapFrom(s => s.Path + "?access_token=" + token));
|
||||
|
||||
CreateMap<NoneDicomStudy, NoneDicomStudyView>()
|
||||
.ForMember(d => d.FileCount, u => u.MapFrom(s => s.NoneDicomFileList.Count))
|
||||
//.ForMember(d => d.FileCount, u => u.MapFrom(s => s.NoneDicomFileList.Count))
|
||||
.ForMember(d => d.NoneDicomStudyFileList, u => u.MapFrom(s => s.NoneDicomFileList))
|
||||
.ForMember(d => d.CodeView, u => u.MapFrom(s => s.StudyCode));
|
||||
|
||||
|
|
|
@ -15,16 +15,19 @@ namespace IRaCIS.Core.Domain.Models
|
|||
[Table("NoneDicomStudy")]
|
||||
public class NoneDicomStudy : Entity, IAuditUpdate, IAuditAdd
|
||||
{
|
||||
[JsonIgnore]
|
||||
public List<NoneDicomStudyFile> NoneDicomFileList { get; set; }
|
||||
|
||||
[JsonIgnore]
|
||||
public SubjectVisit SubjectVisit { get; set; }
|
||||
|
||||
[JsonIgnore]
|
||||
public TrialSite TrialSite { get; set; }
|
||||
|
||||
[JsonIgnore]
|
||||
public Subject Subject { get; set; }
|
||||
|
||||
public string StudyCode { get; set; } = string.Empty;
|
||||
|
||||
public int FileCount { get; set; }
|
||||
|
||||
public int Code { get; set; }
|
||||
|
||||
/// <summary>
|
||||
|
|
|
@ -15,7 +15,7 @@ namespace IRaCIS.Core.Domain.Models
|
|||
public class NoneDicomStudyFile : Entity, IAuditAdd
|
||||
{
|
||||
[ForeignKey("NoneDicomStudyId")]
|
||||
|
||||
[JsonIgnore]
|
||||
public NoneDicomStudy NoneDicomStudy { get; set; }
|
||||
|
||||
[Required]
|
||||
|
|
|
@ -23,3 +23,6 @@ update Doctor set Physician='Staff',PhysicianCN='ҽʦ' where RankId='82411c2e-
|
|||
|
||||
|
||||
update DataInspection set JsonDetail= replace(cast(JsonDetail as varchar(max)),'Insepection','CommonData')
|
||||
|
||||
update ReadingClinicalData set FileCount=(select count(*) from ReadingClinicalDataPDF where ReadingClinicalDataId =ReadingClinicalData.Id)
|
||||
update NoneDicomStudy set FileCount=(select count(*) from NoneDicomStudyFile where NoneDicomStudyId =NoneDicomStudy.Id)
|
||||
|
|
|
@ -1103,7 +1103,8 @@ namespace IRaCIS.Core.Infra.EFCore.Common
|
|||
Data = AddJsonItem(entityObj, otherItem),
|
||||
|
||||
//准确来讲 此处称之为 RelationData 更贴合
|
||||
CommonData = AddJsonItem(generalData, otherItem)
|
||||
CommonData = otherItem
|
||||
//CommonData = AddJsonItem(generalData, otherItem)
|
||||
|
||||
}.ToJsonStr();
|
||||
|
||||
|
|
Loading…
Reference in New Issue