Esempio n. 1
0
        public async Task <SeriesData[]> FindSeries(string authenticationCookie, RemoteConnection server, ClientConnection client, QueryOptions options)
        {
            AuthHandler.Authorize(authenticationCookie, PermissionsTable.Instance.CanQueryPACS);

            var series = await _query.FindSeries(RemoteConnectionFactory.Config(server as WadoConnection), options);

            return(series);
        }
Esempio n. 2
0
        private async Task <List <string> > QuerySeries(RemoteConnection server, string PatientID, string StudyInstanceUID, string SeriesInstanceUID)
        {
            //study should be provided
            if (string.IsNullOrEmpty(StudyInstanceUID))
            {
                throw new ArgumentNullException("StudyInstanceUID");
            }

            //figure out series
            var SeriesInstanceUIDList = new List <string>();

            if (string.IsNullOrEmpty(SeriesInstanceUID))
            {
                var query = new QueryOptions()
                {
                    StudiesOptions = new StudiesQueryOptions()
                    {
                        StudyInstanceUID = StudyInstanceUID
                    },
                    PatientsOptions = new PatientsQueryOptions()
                    {
                        PatientID = PatientID
                    }
                };

                var series = await _query.FindSeries(RemoteConnectionFactory.Config(server as WadoConnection), query);

                foreach (var s in series)
                {
                    SeriesInstanceUIDList.Add(s.InstanceUID);
                }
            }
            else
            {
                SeriesInstanceUIDList.Add(SeriesInstanceUID); //single series specified
            }

            return(SeriesInstanceUIDList);
        }