融合问题修改
							parent
							
								
									a55ec01992
								
							
						
					
					
						commit
						c743335d13
					
				| 
						 | 
				
			
			@ -325,19 +325,14 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
 | 
			
		|||
 | 
			
		||||
     
 | 
			
		||||
        /// <summary>
 | 
			
		||||
        /// 融合的病灶
 | 
			
		||||
        /// 融合的主病灶
 | 
			
		||||
        /// </summary>
 | 
			
		||||
        public Guid MergeRowId { get; set; }
 | 
			
		||||
        public Guid MergeMainRowId { get; set; }
 | 
			
		||||
 | 
			
		||||
        /// <summary>
 | 
			
		||||
        /// 融向的病灶
 | 
			
		||||
        /// 融合的病灶
 | 
			
		||||
        /// </summary>
 | 
			
		||||
		public List<Guid> MeltingInToLesionList { get; set; }
 | 
			
		||||
 | 
			
		||||
        ///// <summary>
 | 
			
		||||
        ///// 融合后病灶状态
 | 
			
		||||
        ///// </summary>
 | 
			
		||||
        //public string LesionState { get; set; }
 | 
			
		||||
		public List<Guid> MergeRowIdList { get; set; }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1364,7 +1364,7 @@ namespace IRaCIS.Application.Services
 | 
			
		|||
                answers.Add("RowIndex", x.ToString());
 | 
			
		||||
                answers.Add("RowId", rowInfo==null?string.Empty: rowInfo.Id.ToString());
 | 
			
		||||
				answers.Add("MarkTool", rowInfo.MarkTool);
 | 
			
		||||
				answers.Add("MeltingInToLesionMarks", rowInfo.MeltingInToLesionMarks);
 | 
			
		||||
				answers.Add("MergeLesionMark", rowInfo.MergeLesionMark);
 | 
			
		||||
				answers.Add("StudyId", rowInfo.StudyId.ToString());
 | 
			
		||||
                answers.Add("OrganInfoId", rowInfo.OrganInfoId.ToString());
 | 
			
		||||
				answers.Add("IsFristAdd", (rowInfo.FristAddTaskId== TaskId).ToString());
 | 
			
		||||
| 
						 | 
				
			
			@ -1468,11 +1468,9 @@ namespace IRaCIS.Application.Services
 | 
			
		|||
        {
 | 
			
		||||
			await VerifyTaskIsSign(inDto.VisitTaskId);
 | 
			
		||||
			await this.VerifyIsBaseLineTask(inDto.VisitTaskId);
 | 
			
		||||
			var mergeRow = await _readingTableAnswerRowInfoRepository.Where(x => x.Id == inDto.MergeRowId).FirstNotNullAsync();
 | 
			
		||||
			var mergeRow = await _readingTableAnswerRowInfoRepository.Where(x => x.Id == inDto.MergeMainRowId).Include(x => x.ReadingQuestionTrial).FirstNotNullAsync();
 | 
			
		||||
 | 
			
		||||
            var meltingRows = await _readingTableAnswerRowInfoRepository.Where(x => inDto.MeltingInToLesionList.Contains(x.Id)).Include(x => x.ReadingQuestionTrial).ToListAsync();
 | 
			
		||||
 | 
			
		||||
			List<string> marks = meltingRows.OrderBy(x => x.RowIndex).Select(x => x.ReadingQuestionTrial.OrderMark + x.RowIndex.GetLesionMark()).ToList();
 | 
			
		||||
            var mark = mergeRow.ReadingQuestionTrial.OrderMark + mergeRow.RowIndex.GetLesionMark();
 | 
			
		||||
 | 
			
		||||
			await _readingTableQuestionAnswerRepository.BatchUpdateNoTrackingAsync(x => x.RowId == mergeRow.Id && x.ReadingTableQuestionTrial.QuestionMark == QuestionMark.State, x => new ReadingTableQuestionAnswer()
 | 
			
		||||
			{
 | 
			
		||||
| 
						 | 
				
			
			@ -1480,11 +1478,10 @@ namespace IRaCIS.Application.Services
 | 
			
		|||
			});
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
            await _readingTableAnswerRowInfoRepository.UpdatePartialFromQueryAsync(inDto.MergeRowId, x => new ReadingTableAnswerRowInfo()
 | 
			
		||||
            await _readingTableAnswerRowInfoRepository.UpdatePartialFromQueryAsync(x=> inDto.MergeRowIdList.Contains(x.Id), x => new ReadingTableAnswerRowInfo()
 | 
			
		||||
            {
 | 
			
		||||
                MeltingInToLesion = JsonConvert.SerializeObject(inDto.MeltingInToLesionList),
 | 
			
		||||
                MeltingInToLesionMarks = string.Join(',', marks),
 | 
			
		||||
 | 
			
		||||
                MergeRowId=inDto.MergeMainRowId,
 | 
			
		||||
                MergeLesionMark = mark,
 | 
			
		||||
                SplitOrMergeType = SplitOrMergeType.Merge,
 | 
			
		||||
            }) ;
 | 
			
		||||
			await _readingTableAnswerRowInfoRepository.SaveChangesAsync();
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -207,29 +207,10 @@ namespace IRaCIS.Core.Domain.Models
 | 
			
		|||
		/// </summary>
 | 
			
		||||
		public string MarkTool { get; set; } = string.Empty;
 | 
			
		||||
 | 
			
		||||
		/// <summary>
 | 
			
		||||
		/// 融向的病灶
 | 
			
		||||
		/// </summary>
 | 
			
		||||
		public string MeltingInToLesion { get; set; } = "[]";
 | 
			
		||||
 | 
			
		||||
		/// <summary>
 | 
			
		||||
		/// 融向病灶的名称
 | 
			
		||||
		/// </summary>
 | 
			
		||||
		public string MeltingInToLesionMarks { get; set; } = string.Empty;
 | 
			
		||||
 | 
			
		||||
		public List<Guid> MeltingInToLesionList { get {
 | 
			
		||||
 | 
			
		||||
				try
 | 
			
		||||
				{
 | 
			
		||||
					return JsonConvert.DeserializeObject<List<Guid>>(this.MeltingInToLesion);
 | 
			
		||||
				}
 | 
			
		||||
				catch (Exception)
 | 
			
		||||
				{
 | 
			
		||||
 | 
			
		||||
					return new List<Guid>();
 | 
			
		||||
				}
 | 
			
		||||
			} }
 | 
			
		||||
 | 
			
		||||
		public string MergeLesionMark { get; set; } = string.Empty;
 | 
			
		||||
 | 
			
		||||
		[JsonIgnore]
 | 
			
		||||
        [ForeignKey("VisitTaskId")]
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue