示例#1
0
        public QueryOutput QueryStudies(QueryInput input)
        {
            var criteria = new DicomAttributeCollection();

            criteria[DicomTags.QueryRetrieveLevel].SetStringValue("STUDY");
            criteria[DicomTags.PatientId].SetStringValue(input.PatientId);
            criteria[DicomTags.AccessionNumber].SetStringValue(input.AccessionNumber);
            criteria[DicomTags.PatientsName].SetStringValue(input.PatientsName);
            criteria[DicomTags.StudyDate].SetDateTime(0, input.StudyDate);
            criteria[DicomTags.StudyDescription].SetStringValue(input.StudyDescription);
            criteria[DicomTags.PatientsBirthDate].SetStringValue("");
            criteria[DicomTags.ModalitiesInStudy].SetStringValue(input.ModalitiesInStudy);
            criteria[DicomTags.SpecificCharacterSet].SetStringValue("");
            criteria[DicomTags.StudyInstanceUid].SetStringValue(input.StudyInstanceUID);

            var reader  = DataAccessLayer.GetIDataStoreReader();
            var results = reader.Query(criteria);

            return(new QueryOutput(
                       CollectionUtils.Map(results,
                                           delegate(DicomAttributeCollection result)
            {
                var item = new StudyProperties();
                item.PatientId = result[DicomTags.PatientId].ToString();
                item.PatientsName = result[DicomTags.PatientsName].ToString();
                item.StudyDate = result[DicomTags.StudyDate].GetDateTime(0);
                item.StudyDescription = result[DicomTags.StudyDescription].ToString();
                item.ModalitiesInStudy = result[DicomTags.ModalitiesInStudy].ToString();
                item.AccessionNumber = result[DicomTags.AccessionNumber].ToString();
                item.StudyInstanceUID = result[DicomTags.StudyInstanceUid].ToString();
                return item;
            })));
        }
示例#2
0
		public QueryOutput QueryStudies(QueryInput input)
		{
			var criteria = new DicomAttributeCollection();
			criteria[DicomTags.QueryRetrieveLevel].SetStringValue("STUDY");
			criteria[DicomTags.PatientId].SetStringValue(input.PatientId);
			criteria[DicomTags.AccessionNumber].SetStringValue(input.AccessionNumber);
			criteria[DicomTags.PatientsName].SetStringValue(input.PatientsName);
			criteria[DicomTags.StudyDate].SetDateTime(0, input.StudyDate);
			criteria[DicomTags.StudyDescription].SetStringValue(input.StudyDescription);
			criteria[DicomTags.PatientsBirthDate].SetStringValue("");
			criteria[DicomTags.ModalitiesInStudy].SetStringValue(input.ModalitiesInStudy);
			criteria[DicomTags.SpecificCharacterSet].SetStringValue("");
			criteria[DicomTags.StudyInstanceUid].SetStringValue(input.StudyInstanceUID);

			var reader = DataAccessLayer.GetIDataStoreReader();
			var results = reader.Query(criteria);

			return new QueryOutput(
				CollectionUtils.Map(results,
					delegate(DicomAttributeCollection result)
					{
						var item = new StudyProperties();
						item.PatientId = result[DicomTags.PatientId].ToString();
						item.PatientsName = result[DicomTags.PatientsName].ToString();
						item.StudyDate = result[DicomTags.StudyDate].GetDateTime(0);
						item.StudyDescription = result[DicomTags.StudyDescription].ToString();
						item.ModalitiesInStudy = result[DicomTags.ModalitiesInStudy].ToString();
						item.AccessionNumber = result[DicomTags.AccessionNumber].ToString();
						item.StudyInstanceUID = result[DicomTags.StudyInstanceUid].ToString();
						return item;
					}));
		}