Example #1
0
        public Task <InstanceData[]> FindInstances(string authenticationCookie, DataContracts.QueryOptions options, string baseUrl, DataContracts.ExtraOptions extraOptions)
        {
            var userName = AuthHandler.Authorize(authenticationCookie, PermissionsTable.Instance.CanQuery);

            return(Task.Factory.StartNew(() => _queryAddin.Value.FindInstances(userName, options, MaxQueryResults(extraOptions), LightQuery(extraOptions), NoSort(extraOptions), StackInstanceUID(extraOptions))));
        }
Example #2
0
        public bool UpdatePatient(string authenticationCookie, PatientInfo_Json info, DataContracts.ExtraOptions extraOptions)
        {
            string userName;


            try
            {
                userName = ServiceUtils.Authorize(authenticationCookie, PermissionsTable.Instance.CanQuery);
            }
            catch (Exception ex)
            {
                throw ex;
            }

            QueryOptions queryOptions = new QueryOptions();

            queryOptions.PatientsOptions           = new PatientsQueryOptions();
            queryOptions.PatientsOptions.PatientID = info.PatientId;

            PatientData[] patientData = _queryAddin.FindPatients(userName, queryOptions);
            if (patientData == null || patientData.Length == 0)
            {
                throw new Exception("PatientID does not exist: " + info.PatientId);
                // return false;
            }

            using (DicomDataSet ds = new DicomDataSet())
            {
                ChangePatient c       = new ChangePatient();
                const string  notUsed = "NotUsed";

                c.OriginalPatientId = info.PatientId;
                c.PatientId         = info.PatientId;
                c.Name = new PersonName(info.Name);
                c.Sex  = info.Sex;
#if LEADTOOLS_V19_OR_LATER
                c.PatientComments = info.Comments;
                c.EthnicGroup     = info.EthnicGroup;
#endif

                if (info.BirthDate != null)
                {
                    c.Birthdate = DateTime.Parse(info.BirthDate);
                }

                c.Description   = notUsed;
                c.Reason        = notUsed;
                c.Operator      = notUsed;
                c.Station       = notUsed;
                c.Date          = DateTime.Now;
                c.Time          = c.Date;
                c.TransactionID = notUsed;

                ds.Set(c);

                _storeAddin.UpdatePatient(ds);
            }

            return(true);
        }
Example #3
0
        public Task <StudyData[]> FindStudies(string authenticationCookie, DataContracts.QueryOptions options, DataContracts.ExtraOptions extraOptions)
        {
            var userName = AuthHandler.Authorize(authenticationCookie, PermissionsTable.Instance.CanQuery);

            return(Task.Factory.StartNew(() => _queryAddin.Value.FindStudies(userName, options, MaxQueryResults(extraOptions), ReadModalitiesInStudy(extraOptions))));
        }
Example #4
0
        public Task <InstanceData[]> FindInstances(string authenticationCookie, DataContracts.QueryOptions options, string baseUrl, DataContracts.ExtraOptions extraOptions)
        {
            AuthHandler.Authorize(authenticationCookie, PermissionsTable.Instance.CanQuery);
            return(null);

            //this may be implemented as follows:
            //var config = RemoteConnectionFactory.Config(new WadoConnection() { dicomWebRoot = @"http://localhost/WadoService/api/", qido = "qido-rs" });
            //var instances = await _query.FindInstances(config , options);
            //return instances;
            //authenticationCookie,
            //MaxQueryResults(extraOptions),
            //LightQuery(extraOptions),
            //NoSort(extraOptions),
            //StackInstanceUID(extraOptions),
            //TimeStampProvider.GetTimeStamp(),
        }
Example #5
0
        public Task <StudyData[]> FindStudies(string authenticationCookie, DataContracts.QueryOptions options, DataContracts.ExtraOptions extraOptions)
        {
            AuthHandler.Authorize(authenticationCookie, PermissionsTable.Instance.CanQuery);
            return(null);

            //this may be implemented as follows:
            //var config = RemoteConnectionFactory.Config(new WadoConnection() { dicomWebRoot = @"http://localhost/WadoService/api/", qido = "qido-rs" });
            //var studies = await _query.FindStudies(config , options);
            //return studies;
            //MaxQueryResults(extraOptions)
            //ReadModalitiesInStudy(extraOptions)
        }
Example #6
0
        public SeriesData[] FindSeries(string authenticationCookie, DataContracts.QueryOptions options, DataContracts.ExtraOptions extraOptions)
        {
            string userName;

            userName = ServiceUtils.Authorize(authenticationCookie, PermissionsTable.Instance.CanQuery);

            int MaxQueryResults = 0;

            if (extraOptions != null && extraOptions.UserData != null)
            {
                MaxQueryResults = Convert.ToInt32(extraOptions.UserData);
            }

            bool lightQuery = extraOptions != null && extraOptions.UserData2 != null ? (extraOptions.UserData2 == "lightQuery") : false;

            return(_queryAddin.FindSeries(userName, options, MaxQueryResults, lightQuery));
        }
Example #7
0
        public StudyData[] FindStudies(string authenticationCookie, DataContracts.QueryOptions options, DataContracts.ExtraOptions extraOptions)
        {
            string userName;

            userName = ServiceUtils.Authorize(authenticationCookie, PermissionsTable.Instance.CanQuery);

            int MaxQueryResults = 0;

            if (extraOptions != null && extraOptions.UserData != null)
            {
                MaxQueryResults = Convert.ToInt32(extraOptions.UserData);
            }

            var readModalitiesInStudy = false;

            if (extraOptions != null)
            {
                if (extraOptions.UserData2 != null)
                {
                    if (extraOptions.UserData2.ToLower() == "readmodalitiesinstudy")
                    {
                        readModalitiesInStudy = true;
                    }
                }
            }

            return(_queryAddin.FindStudies(userName, options, MaxQueryResults, readModalitiesInStudy));
        }
Example #8
0
        public PatientData[] FindPatients(string authenticationCookie, DataContracts.QueryOptions options, DataContracts.ExtraOptions extraOptions)
        {
            string userName;

            userName = ServiceUtils.Authorize(authenticationCookie, PermissionsTable.Instance.CanQuery);

            int MaxQueryResults = 0;

            if (extraOptions != null && extraOptions.UserData != null)
            {
                MaxQueryResults = Convert.ToInt32(extraOptions.UserData);
            }
            return(_queryAddin.FindPatients(userName, options, MaxQueryResults));
        }
Example #9
0
        public InstanceData[] FindInstances(string authenticationCookie, DataContracts.QueryOptions options, DataContracts.ExtraOptions extraOptions)
        {
            string userName;


            userName = ServiceUtils.Authorize(authenticationCookie, PermissionsTable.Instance.CanQuery);

            int MaxQueryResults = 0;

            if (extraOptions != null && extraOptions.UserData != null)
            {
                MaxQueryResults = Convert.ToInt32(extraOptions.UserData);
            }

            bool   lightQuery       = extraOptions != null && extraOptions.UserData2 != null ? (extraOptions.UserData2 == "lightQuery") : false;
            bool   noSort           = extraOptions != null && extraOptions.UserData3 != null ? (extraOptions.UserData3 == "NoSort") : false;
            string stackInstanceUID = !lightQuery && extraOptions != null && extraOptions.UserData2 != null ? extraOptions.UserData2 : string.Empty;

            return(_queryAddin.FindInstances(userName, options, MaxQueryResults, lightQuery, noSort, stackInstanceUID));
        }
Example #10
0
        public InstanceData[] FindInstances(string authenticationCookie, DataContracts.PACSConnection server, DataContracts.ClientConnection client, DataContracts.QueryOptions options, DataContracts.ExtraOptions extraOptions)
        {
            ServiceUtils.Authorize(authenticationCookie, PermissionsTable.Instance.CanQueryPACS);

            return(AddinsFactory.CreatePacsQueryAddin( ).FindInstances(server, client, options));
        }