| 
					
					
						
							
						
					
					
				 | 
				@ -173,7 +173,7 @@ namespace Shentun.Peis.PrintReports | 
			
		
		
	
		
			
				 | 
				 | 
				            var MedicalCenterTelphone = await _sysParmValueManager.GetSysParmValueAsync(medicalCenterId, "medical_center_telphone"); | 
				 | 
				 | 
				            var MedicalCenterTelphone = await _sysParmValueManager.GetSysParmValueAsync(medicalCenterId, "medical_center_telphone"); | 
			
		
		
	
		
			
				 | 
				 | 
				            #endregion
 | 
				 | 
				 | 
				            #endregion
 | 
			
		
		
	
		
			
				 | 
				 | 
				
 | 
				 | 
				 | 
				
 | 
			
		
		
	
		
			
				 | 
				 | 
				            var customerOrgList = await _customerOrgRepository.GetListAsync(); | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				            //var customerOrgList = await _customerOrgRepository.GetListAsync();
 | 
			
		
		
	
		
			
				 | 
				 | 
				
 | 
				 | 
				 | 
				
 | 
			
		
		
	
		
			
				 | 
				 | 
				            var query = from a in await _patientRegisterRepository.GetQueryableAsync() | 
				 | 
				 | 
				            var query = from a in await _patientRegisterRepository.GetQueryableAsync() | 
			
		
		
	
		
			
				 | 
				 | 
				                        join b in await _sexRegisterRepository.GetQueryableAsync() | 
				 | 
				 | 
				                        join b in await _sexRegisterRepository.GetQueryableAsync() | 
			
		
		
	
	
		
			
				| 
					
						
							
						
					
					
						
							
						
					
					
				 | 
				@ -252,115 +252,123 @@ namespace Shentun.Peis.PrintReports | 
			
		
		
	
		
			
				 | 
				 | 
				            //生成LIS条码
 | 
				 | 
				 | 
				            //生成LIS条码
 | 
			
		
		
	
		
			
				 | 
				 | 
				            var lisRequests = await _lisRequestManager.SetLisRequestAsync(input.PatientRegisterId); | 
				 | 
				 | 
				            var lisRequests = await _lisRequestManager.SetLisRequestAsync(input.PatientRegisterId); | 
			
		
		
	
		
			
				 | 
				 | 
				            await _unitOfWorkManager.Current.SaveChangesAsync(); | 
				 | 
				 | 
				            await _unitOfWorkManager.Current.SaveChangesAsync(); | 
			
		
		
	
		
			
				 | 
				 | 
				            //await _unitOfWorkManager.Current.CompleteAsync();
 | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				            await _unitOfWorkManager.Current.CompleteAsync(); | 
			
		
		
	
		
			
				 | 
				 | 
				
 | 
				 | 
				 | 
				
 | 
			
		
		
	
		
			
				 | 
				 | 
				            //检索条码数据
 | 
				 | 
				 | 
				            //检索条码数据
 | 
			
		
		
	
		
			
				 | 
				 | 
				
 | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				            var query = (from patient in await _patientRepository.GetQueryableAsync() | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                         join patientRegister in await _patientRegisterRepository.GetQueryableAsync() | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                         on patient.Id equals patientRegister.PatientId | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                         join sex in await _sexRegisterRepository.GetQueryableAsync() on patientRegister.SexId equals sex.Id | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                         join registerCheckAsbitem in await _registerCheckAsbitemRepository.GetQueryableAsync() on patientRegister.Id equals registerCheckAsbitem.PatientRegisterId | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                         join asbitem in await _asbitemRepository.GetQueryableAsync() on registerCheckAsbitem.AsbitemId equals asbitem.Id | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                         join lisRequest in await _lisRequestRepository.GetQueryableAsync() on registerCheckAsbitem.LisRequestId equals lisRequest.Id | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                         join sampleContainer in await _sampleContainerRepository.GetQueryableAsync() on lisRequest.SampleContainerId equals sampleContainer.Id into dd | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                         from sampleContainerHaveEmpty in dd.DefaultIfEmpty() | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                         join sampleType in await _sampleTypeRepository.GetQueryableAsync() on lisRequest.SampleTypeId equals sampleType.Id into ee | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                         from sampleTypeHaveEmpty in ee.DefaultIfEmpty() | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                         where (patientRegister.Id == input.PatientRegisterId && registerCheckAsbitem.LisRequestId != null) | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                         select new | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                         { | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                             patient, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                             patientRegister, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                             sex, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                             registerCheckAsbitem, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                             asbitem, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                             lisRequest, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                             sampleContainerHaveEmpty, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                             sampleTypeHaveEmpty | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                         } | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                         ).ToList(); | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				            lisRequests = query.Select(o => o.lisRequest).Distinct().ToList(); | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				            //发送第三方LIS申请
 | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				            if (lisRequests != null) | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				            using (var uow = _unitOfWorkManager.Begin( | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                requiresNew: false, isTransactional: false | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				            )) | 
			
		
		
	
		
			
				 | 
				 | 
				            { | 
				 | 
				 | 
				            { | 
			
		
		
	
		
			
				 | 
				 | 
				                foreach (var lisRequest in lisRequests) | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                var query = (from patient in await _patientRepository.GetQueryableAsync() | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                             join patientRegister in await _patientRegisterRepository.GetQueryableAsync() | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                             on patient.Id equals patientRegister.PatientId | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                             join sex in await _sexRegisterRepository.GetQueryableAsync() on patientRegister.SexId equals sex.Id | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                             join registerCheckAsbitem in await _registerCheckAsbitemRepository.GetQueryableAsync() on patientRegister.Id equals registerCheckAsbitem.PatientRegisterId | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                             join asbitem in await _asbitemRepository.GetQueryableAsync() on registerCheckAsbitem.AsbitemId equals asbitem.Id | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                             join lisRequest in await _lisRequestRepository.GetQueryableAsync() on registerCheckAsbitem.LisRequestId equals lisRequest.Id | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                             join sampleContainer in await _sampleContainerRepository.GetQueryableAsync() on lisRequest.SampleContainerId equals sampleContainer.Id into dd | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                             from sampleContainerHaveEmpty in dd.DefaultIfEmpty() | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                             join sampleType in await _sampleTypeRepository.GetQueryableAsync() on lisRequest.SampleTypeId equals sampleType.Id into ee | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                             from sampleTypeHaveEmpty in ee.DefaultIfEmpty() | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                             where (patientRegister.Id == input.PatientRegisterId && registerCheckAsbitem.LisRequestId != null) | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                             select new | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                             { | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                                 patient, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                                 patientRegister, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                                 sex, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                                 registerCheckAsbitem, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                                 asbitem, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                                 lisRequest, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                                 sampleContainerHaveEmpty, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                                 sampleTypeHaveEmpty | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                             } | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                          ).ToList(); | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                lisRequests = query.Select(o => o.lisRequest).Distinct().ToList(); | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                //发送第三方LIS申请
 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                if (lisRequests != null) | 
			
		
		
	
		
			
				 | 
				 | 
				                { | 
				 | 
				 | 
				                { | 
			
		
		
	
		
			
				 | 
				 | 
				                    await _lisRequestManager.SendThirdLisRequestAsync(lisRequest.Id); | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    foreach (var lisRequest in lisRequests) | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    { | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        await _lisRequestManager.SendThirdLisRequestAsync(lisRequest.Id); | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    } | 
			
		
		
	
		
			
				 | 
				 | 
				                } | 
				 | 
				 | 
				                } | 
			
		
		
	
		
			
				 | 
				 | 
				            } | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				
 | 
				 | 
				 | 
				
 | 
			
		
		
	
		
			
				 | 
				 | 
				            var lisRequestReportDtoList = query.Select(o => new LisRequestReportDto | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				            { | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                LisRequestId = o.lisRequest.Id, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                PatientNo = o.patient.PatientNo, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                Age = o.patientRegister.Age, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                AsbitemNames = string.IsNullOrEmpty(o.asbitem.ShortName) ? o.asbitem.DisplayName : o.asbitem.ShortName, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                LisRequestNo = o.lisRequest.LisRequestNo, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                PatientName = o.patientRegister.PatientName, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                PatientRegisterNo = o.patientRegister.PatientRegisterNo, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                SampleContainerName = (o.sampleContainerHaveEmpty == null) ? "" : o.sampleContainerHaveEmpty.DisplayName, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                ContainerColor = (o.sampleContainerHaveEmpty == null) ? 16777215 : o.sampleContainerHaveEmpty.ContainerColor, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                SampleContainerRemark = (o.sampleContainerHaveEmpty == null) ? "" : o.sampleContainerHaveEmpty.ContainerRemark, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                SampleTypeName = (o.sampleTypeHaveEmpty == null) ? "" : o.sampleTypeHaveEmpty.DisplayName, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                SexName = o.sex.DisplayName, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                CustomerOrgName = _cacheService.GetTopCustomerOrgAsync(o.patientRegister.CustomerOrgId).Result.DisplayName, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                DepartmentName = _cacheService.GetCustomerOrgNameAsync(o.patientRegister.CustomerOrgId).Result, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                IsPrint = o.lisRequest.IsPrint, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                IsSignIn = o.lisRequest.IsSignIn, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                SamplingTime = o.lisRequest.SamplingTime, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                SignInOrder = o.lisRequest.SignInOrder, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                SignInPerson = o.lisRequest.SignInPerson, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                SignInTime = o.lisRequest.SignInTime, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				            }).ToList(); | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				
 | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				            var entlist = lisRequestReportDtoList.GroupBy(g => new | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				            { | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                g.PatientNo, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                g.LisRequestId, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                g.LisRequestNo, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                g.Age, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                g.PatientName, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                g.PatientRegisterNo, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                g.SampleContainerName, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                g.ContainerColor, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                g.SampleContainerRemark, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                g.SampleTypeName, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                g.SexName, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                g.CustomerOrgName, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                g.DepartmentName, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                g.IsPrint, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                g.IsSignIn, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                g.SamplingTime, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                g.SignInOrder, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                g.SignInPerson, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                g.SignInTime | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				            }) | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                .Select(s => new LisRequestReportDto | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                var lisRequestReportDtoList = query.Select(o => new LisRequestReportDto | 
			
		
		
	
		
			
				 | 
				 | 
				                { | 
				 | 
				 | 
				                { | 
			
		
		
	
		
			
				 | 
				 | 
				                    PatientNo = s.Key.PatientNo, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    LisRequestId = s.Key.LisRequestId, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    SexName = s.Key.SexName, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    SampleTypeName = s.Key.SampleTypeName, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    SampleContainerRemark = s.Key.SampleContainerRemark, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    SampleContainerName = s.Key.SampleContainerName, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    ContainerColor = s.Key.ContainerColor, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    PatientRegisterNo = s.Key.PatientRegisterNo, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    PatientName = s.Key.PatientName, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    Age = s.Key.Age, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    LisRequestNo = s.Key.LisRequestNo, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    CustomerOrgName = s.Key.CustomerOrgName, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    DepartmentName = s.Key.DepartmentName, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    AsbitemNames = string.Join(",", s.Select(d => d.AsbitemNames)), | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    IsPrint = s.Key.IsPrint, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    IsSignIn = s.Key.IsSignIn, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    SamplingTime = s.Key.SamplingTime, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    SignInOrder = s.Key.SignInOrder, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    SignInPerson = s.Key.SignInPerson, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    SignInTime = s.Key.SignInTime, | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    LisRequestId = o.lisRequest.Id, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    PatientNo = o.patient.PatientNo, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    Age = o.patientRegister.Age, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    AsbitemNames = string.IsNullOrEmpty(o.asbitem.ShortName) ? o.asbitem.DisplayName : o.asbitem.ShortName, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    LisRequestNo = o.lisRequest.LisRequestNo, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    PatientName = o.patientRegister.PatientName, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    PatientRegisterNo = o.patientRegister.PatientRegisterNo, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    SampleContainerName = (o.sampleContainerHaveEmpty == null) ? "" : o.sampleContainerHaveEmpty.DisplayName, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    ContainerColor = (o.sampleContainerHaveEmpty == null) ? 16777215 : o.sampleContainerHaveEmpty.ContainerColor, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    SampleContainerRemark = (o.sampleContainerHaveEmpty == null) ? "" : o.sampleContainerHaveEmpty.ContainerRemark, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    SampleTypeName = (o.sampleTypeHaveEmpty == null) ? "" : o.sampleTypeHaveEmpty.DisplayName, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    SexName = o.sex.DisplayName, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    CustomerOrgName = _cacheService.GetTopCustomerOrgAsync(o.patientRegister.CustomerOrgId).Result.DisplayName, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    DepartmentName = _cacheService.GetCustomerOrgNameAsync(o.patientRegister.CustomerOrgId).Result, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    IsPrint = o.lisRequest.IsPrint, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    IsSignIn = o.lisRequest.IsSignIn, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    SamplingTime = o.lisRequest.SamplingTime, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    SignInOrder = o.lisRequest.SignInOrder, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    SignInPerson = o.lisRequest.SignInPerson, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    SignInTime = o.lisRequest.SignInTime, | 
			
		
		
	
		
			
				 | 
				 | 
				                }).ToList(); | 
				 | 
				 | 
				                }).ToList(); | 
			
		
		
	
		
			
				 | 
				 | 
				
 | 
				 | 
				 | 
				
 | 
			
		
		
	
		
			
				 | 
				 | 
				            return entlist; | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                var entlist = lisRequestReportDtoList.GroupBy(g => new | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                { | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    g.PatientNo, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    g.LisRequestId, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    g.LisRequestNo, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    g.Age, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    g.PatientName, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    g.PatientRegisterNo, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    g.SampleContainerName, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    g.ContainerColor, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    g.SampleContainerRemark, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    g.SampleTypeName, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    g.SexName, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    g.CustomerOrgName, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    g.DepartmentName, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    g.IsPrint, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    g.IsSignIn, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    g.SamplingTime, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    g.SignInOrder, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    g.SignInPerson, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    g.SignInTime | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                }) | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    .Select(s => new LisRequestReportDto | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    { | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        PatientNo = s.Key.PatientNo, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        LisRequestId = s.Key.LisRequestId, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        SexName = s.Key.SexName, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        SampleTypeName = s.Key.SampleTypeName, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        SampleContainerRemark = s.Key.SampleContainerRemark, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        SampleContainerName = s.Key.SampleContainerName, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        ContainerColor = s.Key.ContainerColor, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        PatientRegisterNo = s.Key.PatientRegisterNo, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        PatientName = s.Key.PatientName, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        Age = s.Key.Age, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        LisRequestNo = s.Key.LisRequestNo, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        CustomerOrgName = s.Key.CustomerOrgName, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        DepartmentName = s.Key.DepartmentName, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        AsbitemNames = string.Join(",", s.Select(d => d.AsbitemNames)), | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        IsPrint = s.Key.IsPrint, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        IsSignIn = s.Key.IsSignIn, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        SamplingTime = s.Key.SamplingTime, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        SignInOrder = s.Key.SignInOrder, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        SignInPerson = s.Key.SignInPerson, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        SignInTime = s.Key.SignInTime, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    }).ToList(); | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				
 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                await uow.CompleteAsync(); | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                return entlist; | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				
 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				            } | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				             | 
			
		
		
	
		
			
				 | 
				 | 
				        } | 
				 | 
				 | 
				        } | 
			
		
		
	
		
			
				 | 
				 | 
				
 | 
				 | 
				 | 
				
 | 
			
		
		
	
		
			
				 | 
				 | 
				        [HttpPost("api/app/PrintReport/GetLisRequestReportByLisRequestId")] | 
				 | 
				 | 
				        [HttpPost("api/app/PrintReport/GetLisRequestReportByLisRequestId")] | 
			
		
		
	
	
		
			
				| 
					
						
							
						
					
					
						
							
						
					
					
				 | 
				@ -793,6 +801,7 @@ namespace Shentun.Peis.PrintReports | 
			
		
		
	
		
			
				 | 
				 | 
				                AsbitemName = s.Asbitem.DisplayName, | 
				 | 
				 | 
				                AsbitemName = s.Asbitem.DisplayName, | 
			
		
		
	
		
			
				 | 
				 | 
				                AsbitemGuide = _asbitemGuideManager.GetAsbitemGuideConvertSexId(medicalCenterId, s.AsbitemId, SexId), | 
				 | 
				 | 
				                AsbitemGuide = _asbitemGuideManager.GetAsbitemGuideConvertSexId(medicalCenterId, s.AsbitemId, SexId), | 
			
		
		
	
		
			
				 | 
				 | 
				                AsbitemDisplayOrder = s.Asbitem.DisplayOrder, | 
				 | 
				 | 
				                AsbitemDisplayOrder = s.Asbitem.DisplayOrder, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                ItemTypeDisplayOrder = s.Asbitem.ItemType.DisplayOrder, | 
			
		
		
	
		
			
				 | 
				 | 
				                GuideDisplayOrder = s.Asbitem.ItemType.GuidType.DisplayOrder, | 
				 | 
				 | 
				                GuideDisplayOrder = s.Asbitem.ItemType.GuidType.DisplayOrder, | 
			
		
		
	
		
			
				 | 
				 | 
				                GuideName = s.Asbitem.ItemType.GuidType.DisplayName | 
				 | 
				 | 
				                GuideName = s.Asbitem.ItemType.GuidType.DisplayName | 
			
		
		
	
		
			
				 | 
				 | 
				            }) | 
				 | 
				 | 
				            }) | 
			
		
		
	
	
		
			
				| 
					
					
					
						
							
						
					
				 | 
				@ -807,7 +816,7 @@ namespace Shentun.Peis.PrintReports | 
			
		
		
	
		
			
				 | 
				 | 
				                { | 
				 | 
				 | 
				                { | 
			
		
		
	
		
			
				 | 
				 | 
				                    AsbitemName = ss.AsbitemName, | 
				 | 
				 | 
				                    AsbitemName = ss.AsbitemName, | 
			
		
		
	
		
			
				 | 
				 | 
				                    AsbitemGuide = ss.AsbitemGuide, | 
				 | 
				 | 
				                    AsbitemGuide = ss.AsbitemGuide, | 
			
		
		
	
		
			
				 | 
				 | 
				                    DisplayOrder = ss.AsbitemDisplayOrder | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    DisplayOrder = (ss.ItemTypeDisplayOrder * 3000) + ss.AsbitemDisplayOrder | 
			
		
		
	
		
			
				 | 
				 | 
				                }).OrderBy(o => o.DisplayOrder).ToList() | 
				 | 
				 | 
				                }).OrderBy(o => o.DisplayOrder).ToList() | 
			
		
		
	
		
			
				 | 
				 | 
				            }).OrderBy(o => o.DisplayOrder).ToList(); | 
				 | 
				 | 
				            }).OrderBy(o => o.DisplayOrder).ToList(); | 
			
		
		
	
		
			
				 | 
				 | 
				
 | 
				 | 
				 | 
				
 | 
			
		
		
	
	
		
			
				| 
					
						
							
						
					
					
					
				 | 
				
  |