Merge branch 'master' of http://192.168.1.2:8033/IRaCIS_Core_Api
						commit
						b3fc87bd18
					
				| 
						 | 
				
			
			@ -1080,15 +1080,21 @@ namespace IRaCIS.Core.Application.Service.Allocation
 | 
			
		|||
        public async Task<IResponseOutput> AIRReReading(AIRReReadingCommand command, [FromServices] IVisitTaskHelpeService _visitTaskCommonService)
 | 
			
		||||
        {
 | 
			
		||||
            var baseLineTaskList = await _visitTaskRepository.Where(t => t.TrialId == command.TrialId && t.TrialReadingCriterionId == command.TrialReadingCriterionId && t.DoctorUserId == _userInfo.Id
 | 
			
		||||
                 && t.TaskState == TaskState.Effect && t.ReadingCategory == ReadingCategory.Visit && t.ReadingTaskState == ReadingTaskState.HaveSigned && t.SourceSubjectVisit.IsBaseLine == true && t.DoctorUserId == _userInfo.Id).ToListAsync();
 | 
			
		||||
                 && t.TaskState == TaskState.Effect && t.ReadingCategory == ReadingCategory.Visit && t.ReadingTaskState == ReadingTaskState.HaveSigned && t.SourceSubjectVisit.IsBaseLine == true).ToListAsync();
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
            var baseLineTaskIdList = baseLineTaskList.Select(t => t.Id).ToList();
 | 
			
		||||
            if (baseLineTaskList == null)
 | 
			
		||||
 | 
			
		||||
            if (baseLineTaskIdList.Count == 0)
 | 
			
		||||
            {
 | 
			
		||||
                return ResponseOutput.NotOk("基线任务未阅完,不允许重阅基线任务");
 | 
			
		||||
                return ResponseOutput.Ok();
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            //if (baseLineTaskList == null)
 | 
			
		||||
            //{
 | 
			
		||||
            //    return ResponseOutput.NotOk("基线任务未阅完,不允许重阅基线任务");
 | 
			
		||||
            //}
 | 
			
		||||
 | 
			
		||||
            await ApplyReReading(new ApplyReReadingCommand() { IsCopyFollowForms = false, IsCopyOrigenalForms = false, TaskIdList = baseLineTaskIdList, TrialId = command.TrialId, RequestReReadingReason = "AIR自动重阅基线", RequestReReadingType = RequestReReadingType.DocotorApply });
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -2235,7 +2241,8 @@ namespace IRaCIS.Core.Application.Service.Allocation
 | 
			
		|||
            }
 | 
			
		||||
            else
 | 
			
		||||
            {
 | 
			
		||||
                await _readingClinicalDataReposiotry.UpdatePartialFromQueryAsync(t => t.ReadingId == sv.Id &&  t.ClinicalDataTrialSet.ClinicalDataLevel == ClinicalLevel.SubjectVisit, c => new ReadingClinicalData() { IsSign = false, ReadingClinicalDataState =ReadingClinicalDataStatus.HaveUploaded });
 | 
			
		||||
                await _readingClinicalDataReposiotry.UpdatePartialFromQueryAsync(t => t.ReadingId == sv.Id &&  t.ClinicalDataTrialSet.ClinicalDataLevel == ClinicalLevel.SubjectVisit, c => new ReadingClinicalData() { 
 | 
			
		||||
                    IsSign = false, ReadingClinicalDataState =ReadingClinicalDataStatus.HaveUploaded,IsBlind=null,IsComplete=null });
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -194,9 +194,14 @@ namespace IRaCIS.Application.Contracts
 | 
			
		|||
    public class UserListQueryDTO : PageInput
 | 
			
		||||
    {
 | 
			
		||||
        public string UserName { get; set; } = string.Empty;
 | 
			
		||||
        public string RealName { get; set; }
 | 
			
		||||
        public string Phone { get; set; } = string.Empty;
 | 
			
		||||
        public string OrganizationName { get; set; } = string.Empty;
 | 
			
		||||
        public Guid? UserType { get; set; }
 | 
			
		||||
 | 
			
		||||
        public bool? IsTestUser { get; set; }
 | 
			
		||||
 | 
			
		||||
        public bool ? IsZhiZhun { get; set; }
 | 
			
		||||
        public UserStateEnum? UserState { get; set; }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -448,11 +448,14 @@ namespace IRaCIS.Application.Services
 | 
			
		|||
        public async Task<PageOutput<UserListDTO>> GetUserList(UserListQueryDTO param)
 | 
			
		||||
        {
 | 
			
		||||
            var userQueryable = _userRepository.Where(x => x.UserTypeEnum != UserTypeEnum.SuperAdmin)
 | 
			
		||||
                  .WhereIf(!string.IsNullOrWhiteSpace(param.UserName), t => t.UserName.Contains(param.UserName) || (t.FullName).Contains(param.UserName))
 | 
			
		||||
                  .WhereIf(!string.IsNullOrWhiteSpace(param.UserName), t => t.UserName.Contains(param.UserName) )
 | 
			
		||||
                  .WhereIf(!string.IsNullOrWhiteSpace(param.RealName), t => t.FullName.Contains(param.RealName))
 | 
			
		||||
                  .WhereIf(!string.IsNullOrWhiteSpace(param.Phone), t => t.Phone.Contains(param.Phone))
 | 
			
		||||
                  .WhereIf(!string.IsNullOrWhiteSpace(param.OrganizationName), t => t.OrganizationName.Contains(param.OrganizationName))
 | 
			
		||||
                  .WhereIf(param.UserType != null, t => t.UserTypeId == param.UserType)
 | 
			
		||||
                  .WhereIf(param.UserState != null, t => t.Status == param.UserState)
 | 
			
		||||
                  .WhereIf(param.IsTestUser != null, t => t.IsTestUser == param.IsTestUser)
 | 
			
		||||
                  .WhereIf(param.IsZhiZhun != null, t => t.IsZhiZhun == param.IsZhiZhun)
 | 
			
		||||
                  .ProjectTo<UserListDTO>(_mapper.ConfigurationProvider);
 | 
			
		||||
 | 
			
		||||
            return await userQueryable.ToPagedListAsync(param.PageIndex, param.PageSize, param.SortField == string.Empty ? "UserName" : param.SortField, param.Asc);
 | 
			
		||||
| 
						 | 
				
			
			@ -540,7 +543,7 @@ namespace IRaCIS.Application.Services
 | 
			
		|||
 | 
			
		||||
            if (user.IsZhiZhun)
 | 
			
		||||
            {
 | 
			
		||||
                user.OrganizationName = "Zhizhun";
 | 
			
		||||
                user.OrganizationName = AppSettings.DefaultInternalOrganizationName;
 | 
			
		||||
            }
 | 
			
		||||
            var success = await _userRepository.SaveChangesAsync();
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -108,7 +108,7 @@ namespace IRaCIS.Core.Application.Contracts
 | 
			
		|||
 | 
			
		||||
            if (userTypeSelectEnum == UserTypeSelectEnum.InnerUser)
 | 
			
		||||
            {
 | 
			
		||||
                userTypeEnums = new List<UserTypeEnum>() { UserTypeEnum.IQC, UserTypeEnum.APM, UserTypeEnum.MIM, UserTypeEnum.MW };
 | 
			
		||||
                userTypeEnums = new List<UserTypeEnum>() { UserTypeEnum.IQC, UserTypeEnum.APM, UserTypeEnum.MIM, UserTypeEnum.QA ,UserTypeEnum.MW};
 | 
			
		||||
 | 
			
		||||
                if (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin)
 | 
			
		||||
                {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -54,7 +54,7 @@ namespace IRaCIS.Core.Application.Contracts
 | 
			
		|||
                    if (existSysUser.LastName != addOrEditTrialSiteUserSurvey.LastName || existSysUser.FirstName != addOrEditTrialSiteUserSurvey.FirstName)
 | 
			
		||||
                    {
 | 
			
		||||
                        return ResponseOutput.NotOk($"该用户在系统中账户名为:{existSysUser.LastName + " / " + existSysUser.FirstName} ,与填写信息存在不一致项, 现将界面信息修改为与系统一致,可进行保存",
 | 
			
		||||
                            new { existSysUser.LastName, existSysUser.FirstName, existSysUser.Phone }, ApiResponseCodeEnum.NeedTips);
 | 
			
		||||
                            new { existSysUser.LastName, existSysUser.FirstName, existSysUser.Phone,existSysUser.IsTestUser,existSysUser.IsZhiZhun }, ApiResponseCodeEnum.NeedTips);
 | 
			
		||||
                    }
 | 
			
		||||
 | 
			
		||||
                }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -68,7 +68,8 @@ namespace IRaCIS.Core.Application.Service
 | 
			
		|||
        /// <param name="addOrEditTrialExternalUser"></param>
 | 
			
		||||
        /// <returns></returns>
 | 
			
		||||
        [Authorize(Policy = IRaCISPolicy.PM_APM)]
 | 
			
		||||
         [TypeFilter(typeof(TrialResourceFilter),Arguments = new object[] { "AfterStopCannNotOpt" })]
 | 
			
		||||
        [UnitOfWork]
 | 
			
		||||
        [TypeFilter(typeof(TrialResourceFilter), Arguments = new object[] { "AfterStopCannNotOpt" })]
 | 
			
		||||
        public async Task<IResponseOutput> AddOrUpdateTrialExternalUser(TrialExternalUserAddAndSendEmail addOrEditTrialExternalUser)
 | 
			
		||||
        {
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -80,7 +81,7 @@ namespace IRaCIS.Core.Application.Service
 | 
			
		|||
                {
 | 
			
		||||
                    if (existSysUser.LastName != addOrEditTrialExternalUser.LastName || existSysUser.FirstName != addOrEditTrialExternalUser.FirstName)
 | 
			
		||||
                    {
 | 
			
		||||
                        return ResponseOutput.NotOk($"该用户在系统中的用户名为:{existSysUser.LastName + " / " + existSysUser.FirstName} 电话:{existSysUser.Phone},与填写信息存在不一致项, 请将界面信息修改为与系统一致,再进行保存", new { existSysUser.LastName, existSysUser.FirstName, existSysUser.Phone }, ApiResponseCodeEnum.NeedTips);
 | 
			
		||||
                        return ResponseOutput.NotOk($"该用户在系统中的用户名为:{existSysUser.LastName + " / " + existSysUser.FirstName} 电话:{existSysUser.Phone},与填写信息存在不一致项, 请将界面信息修改为与系统一致,再进行保存", new { existSysUser.LastName, existSysUser.FirstName, existSysUser.Phone, existSysUser.IsZhiZhun, existSysUser.IsTestUser }, ApiResponseCodeEnum.NeedTips);
 | 
			
		||||
                    }
 | 
			
		||||
 | 
			
		||||
                }
 | 
			
		||||
| 
						 | 
				
			
			@ -95,6 +96,7 @@ namespace IRaCIS.Core.Application.Service
 | 
			
		|||
                }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                var addEntity = _mapper.Map<TrialExternalUser>(addOrEditTrialExternalUser);
 | 
			
		||||
 | 
			
		||||
                await _trialExternalUseRepository.AddAsync(addEntity);
 | 
			
		||||
| 
						 | 
				
			
			@ -206,7 +208,7 @@ namespace IRaCIS.Core.Application.Service
 | 
			
		|||
        //New  省掉邀请流程
 | 
			
		||||
        [HttpPost]
 | 
			
		||||
        [Authorize(Policy = IRaCISPolicy.PM_APM)]
 | 
			
		||||
         [TypeFilter(typeof(TrialResourceFilter),Arguments = new object[] { "AfterStopCannNotOpt" })]
 | 
			
		||||
        [TypeFilter(typeof(TrialResourceFilter), Arguments = new object[] { "AfterStopCannNotOpt" })]
 | 
			
		||||
        [UnitOfWork]
 | 
			
		||||
        public async Task<IResponseOutput> SendExternalUserJoinEmail(TrialExternalUserSendEmail sendEmail)
 | 
			
		||||
        {
 | 
			
		||||
| 
						 | 
				
			
			@ -224,7 +226,7 @@ namespace IRaCIS.Core.Application.Service
 | 
			
		|||
                if (!await _trialUserRepository.AnyAsync(t => t.TrialId == trialId && t.UserId == userId, true))
 | 
			
		||||
                {
 | 
			
		||||
 | 
			
		||||
                    await _repository.AddAsync(new TrialUser() { TrialId = trialId, UserId = userId ,JoinTime = DateTime.Now });
 | 
			
		||||
                    await _repository.AddAsync(new TrialUser() { TrialId = trialId, UserId = userId, JoinTime = DateTime.Now });
 | 
			
		||||
 | 
			
		||||
                    await _userRepository.BatchUpdateNoTrackingAsync(t => t.Id == userId, u => new User() { Status = UserStateEnum.Enable });
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -107,11 +107,25 @@ namespace IRaCIS.Application.Services
 | 
			
		|||
        {
 | 
			
		||||
            var trialType = _trialRepository.Where(t => t.Id == trialUserQuery.TrialId).Select(t => t.TrialType).FirstOrDefault();
 | 
			
		||||
 | 
			
		||||
            var userTypeEnums = new List<UserTypeEnum>() { UserTypeEnum.IQC, UserTypeEnum.APM, UserTypeEnum.MIM, UserTypeEnum.QA, UserTypeEnum.MW };
 | 
			
		||||
            if (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin)
 | 
			
		||||
            {
 | 
			
		||||
                userTypeEnums.Add(UserTypeEnum.ProjectManager);
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
            //之前已经选择的用户 不放在列表中,现在又要改回去 废弃
 | 
			
		||||
            var query = _repository.Where<User>(t => t.UserTypeEnum != UserTypeEnum.SuperAdmin)
 | 
			
		||||
 | 
			
		||||
                 //正式或者培训的项目不能允许测试用户
 | 
			
		||||
                 .WhereIf(trialType == TrialType.OfficialTrial || trialType == TrialType.Training, t => t.IsTestUser == false)
 | 
			
		||||
                 //正式或者培训的项目不能允许测试用户  同时必须是内部的用户
 | 
			
		||||
                 .WhereIf(trialType == TrialType.OfficialTrial || trialType == TrialType.Training, t => t.IsTestUser == false && t.IsZhiZhun)
 | 
			
		||||
 | 
			
		||||
                 //测试用户  或者内部正式用户
 | 
			
		||||
                 .WhereIf(trialType == TrialType.NoneOfficial, t => t.IsTestUser == true || (t.IsTestUser == false && t.IsZhiZhun))
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                 .WhereIf(!string.IsNullOrWhiteSpace(trialUserQuery.UserRealName), t => (t.FullName).Contains(trialUserQuery.UserRealName))
 | 
			
		||||
                 .WhereIf(!string.IsNullOrWhiteSpace(trialUserQuery.UserName), t => t.UserName.Contains(trialUserQuery.UserName))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -33,10 +33,11 @@ namespace IRaCIS.Core.Application.Triggers
 | 
			
		|||
                //批量添加的时候,使用Find   不会多次查询,优先从跟踪的内存中查找
 | 
			
		||||
                var trialInfo = await _trialRepository.FindAsync(trialUser.TrialId);
 | 
			
		||||
 | 
			
		||||
                if(trialInfo.TrialType==Domain.Share.TrialType.OfficialTrial || trialInfo.TrialType == Domain.Share.TrialType.Training  )
 | 
			
		||||
                // 必须包在同一个事务,有的时候是数据库还没用户,不能直接查询数据库
 | 
			
		||||
                var user = await _userRepository.FindAsync(trialUser.UserId);
 | 
			
		||||
 | 
			
		||||
                if (trialInfo.TrialType == Domain.Share.TrialType.OfficialTrial || trialInfo.TrialType == Domain.Share.TrialType.Training)
 | 
			
		||||
                {
 | 
			
		||||
                    // 必须包在同一个事务,有的时候是数据库还没用户,不能直接查询数据库
 | 
			
		||||
                    var user = await _userRepository.FindAsync(trialUser.UserId);
 | 
			
		||||
 | 
			
		||||
                    if (user.IsTestUser)
 | 
			
		||||
                    {
 | 
			
		||||
| 
						 | 
				
			
			@ -44,6 +45,16 @@ namespace IRaCIS.Core.Application.Triggers
 | 
			
		|||
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                if (trialInfo.TrialType == TrialType.NoneOfficial)
 | 
			
		||||
                {
 | 
			
		||||
 | 
			
		||||
                    if (user.IsTestUser == false && user.IsZhiZhun == false)
 | 
			
		||||
                    {
 | 
			
		||||
                        throw new BusinessValidationFailedException("测试项目  不允许加入外部正式用户 ");
 | 
			
		||||
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -42,6 +42,9 @@ namespace IRaCIS.Core.Domain.Models
 | 
			
		|||
        public DateTime? LastLoginTime { get; set; }
 | 
			
		||||
 | 
			
		||||
        public Guid UserTypeId { get; set; } = Guid.Empty;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
       // 内部用户  外部用户
 | 
			
		||||
        public bool IsZhiZhun { get; set; }
 | 
			
		||||
 | 
			
		||||
        public UserTypeEnum UserTypeEnum { get; set; }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -392,35 +392,83 @@ namespace IRaCIS.Core.Infra.EFCore.Common
 | 
			
		|||
 | 
			
		||||
                });
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            //项目器官
 | 
			
		||||
            foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(OrganTrialInfo)))
 | 
			
		||||
 | 
			
		||||
            if (entitys.Any(x => x.Entity.GetType() == typeof(OrganTrialInfo)))
 | 
			
		||||
            {
 | 
			
		||||
                var type = GetEntityAuditOpt(item);
 | 
			
		||||
 | 
			
		||||
                var entity = item.Entity as OrganTrialInfo;
 | 
			
		||||
 | 
			
		||||
                var organTrialEntityEnrtyList = entitys.Where(x => x.Entity.GetType() == typeof(OrganTrialInfo));
 | 
			
		||||
 | 
			
		||||
                var extraIdentification = string.Empty;
 | 
			
		||||
                if (_userInfo.RequestUrl != "OrganInfo/batchAddTrialOrgan" && type == AuditOpt.Add)
 | 
			
		||||
 | 
			
		||||
                //同步添加
 | 
			
		||||
                if (_userInfo.RequestUrl != "OrganInfo/batchAddTrialOrgan" && organTrialEntityEnrtyList.Any( t=>GetEntityAuditOpt(t) == AuditOpt.Add)   )
 | 
			
		||||
                {
 | 
			
		||||
                    extraIdentification = "/Auto";
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                    var list = organTrialEntityEnrtyList.Select(t => t.Entity as OrganTrialInfo);
 | 
			
		||||
 | 
			
		||||
                    var organIdList = list.Select(t => t.OrganInfoId).ToList();
 | 
			
		||||
 | 
			
		||||
                    var organList = await _dbContext.OrganInfo.Where(x => organIdList.Contains(x.Id)).ToListAsync();
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                    var firstEntity = list.FirstOrDefault();
 | 
			
		||||
 | 
			
		||||
                    var cloneEntity = firstEntity.Clone();
 | 
			
		||||
 | 
			
		||||
                    //保证Id 唯一
 | 
			
		||||
                    cloneEntity.Id = IdentifierHelper.CreateGuid(firstEntity.TrialId.ToString(), firstEntity.TrialCriterionId.ToString());
 | 
			
		||||
 | 
			
		||||
                    await InsertInspection<OrganTrialInfo>(cloneEntity, AuditOpt.Add, x => new InspectionConvertDTO()
 | 
			
		||||
                    {
 | 
			
		||||
                        IsDistinctionInterface = false,
 | 
			
		||||
 | 
			
		||||
                        TrialReadingCriterionId = cloneEntity.TrialCriterionId,
 | 
			
		||||
 | 
			
		||||
                        ObjectRelationParentId = cloneEntity.TrialCriterionId,
 | 
			
		||||
 | 
			
		||||
                        ObjectRelationParentId2 = cloneEntity.OrganInfoId,
 | 
			
		||||
 | 
			
		||||
                        ExtraIndentification = extraIdentification
 | 
			
		||||
 | 
			
		||||
                    }, new
 | 
			
		||||
                    {
 | 
			
		||||
                        QuestionAnswerList = list.Join(organList, t => t.OrganInfoId, u => u.Id, (t, u) => u).OrderBy(t => t.ShowOrder).ToList(),
 | 
			
		||||
                    });
 | 
			
		||||
                    
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                await InsertInspection<OrganTrialInfo>(entity, type, x => new InspectionConvertDTO()
 | 
			
		||||
                else
 | 
			
		||||
                {
 | 
			
		||||
                    IsDistinctionInterface = false,
 | 
			
		||||
                    //手动操作
 | 
			
		||||
                    foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(OrganTrialInfo)))
 | 
			
		||||
                    {
 | 
			
		||||
                        var type = GetEntityAuditOpt(item);
 | 
			
		||||
 | 
			
		||||
                    TrialReadingCriterionId = entity.TrialCriterionId,
 | 
			
		||||
                        var entity = item.Entity as OrganTrialInfo;
 | 
			
		||||
 | 
			
		||||
                    ObjectRelationParentId = entity.TrialCriterionId,
 | 
			
		||||
                        await InsertInspection<OrganTrialInfo>(entity, type, x => new InspectionConvertDTO()
 | 
			
		||||
                        {
 | 
			
		||||
                            IsDistinctionInterface = false,
 | 
			
		||||
 | 
			
		||||
                    ObjectRelationParentId2 = entity.OrganInfoId,
 | 
			
		||||
                            TrialReadingCriterionId = entity.TrialCriterionId,
 | 
			
		||||
 | 
			
		||||
                    ExtraIndentification =extraIdentification
 | 
			
		||||
                            ObjectRelationParentId = entity.TrialCriterionId,
 | 
			
		||||
 | 
			
		||||
                });
 | 
			
		||||
                            ObjectRelationParentId2 = entity.OrganInfoId,
 | 
			
		||||
 | 
			
		||||
                            ExtraIndentification = extraIdentification
 | 
			
		||||
 | 
			
		||||
                        });
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
            // 项目  系统公用表
 | 
			
		||||
            //病灶管理  区分项目 还是系统的
 | 
			
		||||
            foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(CriterionNidus)))
 | 
			
		||||
| 
						 | 
				
			
			@ -1987,7 +2035,7 @@ namespace IRaCIS.Core.Infra.EFCore.Common
 | 
			
		|||
 | 
			
		||||
                await InsertInspection<ReadingGlobalTaskInfo>(cloneEntity, type, x => new InspectionConvertDTO()
 | 
			
		||||
                {
 | 
			
		||||
                    VisitTaskId = x.TaskId,
 | 
			
		||||
                    VisitTaskId = x.GlobalTaskId,
 | 
			
		||||
                    TrialReadingCriterionId = trialReadingCriterionId,
 | 
			
		||||
                    ObjectRelationParentId = x.TaskId,
 | 
			
		||||
                },  new { GlobalAnswerList = objList } );
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue