Пример #1
0
        public void GetContactMetaDataByName()
        {
            ContactMetadata item = null;

            try
            {
                var all = _client.GetContactMetaData();
                item = all.Data.First();
            }
            catch (Exception e)
            {
                Assert.Inconclusive("Failed to get a single item to check");
            }

            if (item == null)
            {
                //This should be possible, but still...
                Assert.Inconclusive("Failed to get a single item to check");
            }

            var api = _client.GetContactMetaData(item.Name, item.NameSpace);

            Assert.IsNotNull(api);
            var apiItem = api.Data.Single();

            Assert.AreEqual(item.ID, apiItem.ID);
            Assert.AreEqual(item.Name, apiItem.Name);
            Assert.AreEqual(item.NameSpace, apiItem.NameSpace);
            Assert.AreEqual(item.Datatype, apiItem.Datatype);
        }
Пример #2
0
        public void DeleteContactMetaDataById()
        {
            ContactMetadata item = null;

            try
            {
                var all = _client.GetContactMetaData();
                item = all.Data.Where(x => x.Name.Contains("test") && x.Name.Contains("updated")).First();
            }
            catch (Exception e)
            {
                Assert.Inconclusive("Failed to get a single item to check");
            }

            if (item == null)
            {
                //This should be possible, but still...
                Assert.Inconclusive("Failed to get a single item to check");
            }


            _client.DeleteContactMetaData(item.ID);

            try
            {
                var api = _client.GetContactMetaData(item.ID);
                Assert.Fail("Item was not deleted!"); // should not be able to reach this line!
            }
            catch (Exception)
            {
                Assert.Pass(); // should not be able to find this object anymore
            }
        }
Пример #3
0
        public void UpdateContactMetaData()
        {
            ContactMetadata item = null;

            try
            {
                var all = _client.GetContactMetaData();
                item = all.Data.Where(x => x.Name.Contains("test") && !x.Name.Contains("updated")).First();
            }
            catch (Exception e)
            {
                Assert.Inconclusive("Failed to get a single item to check");
            }

            if (item == null)
            {
                //This should be possible, but still...
                Assert.Inconclusive("Failed to get a single item to check");
            }


            item.Name = item.Name + "updated";

            var api = _client.UpdateContactMetaData(item);

            Assert.IsNotNull(api);
            var apiItem = api.Data.Single();

            Assert.AreEqual(item.ID, apiItem.ID);
            Assert.AreEqual(item.Name, apiItem.Name);
            Assert.AreEqual(item.NameSpace, apiItem.NameSpace);
            Assert.AreEqual(item.Datatype, apiItem.Datatype);
        }
Пример #4
0
        public void CreateContactMetaData()
        {
            var data = new ContactMetadata()
            {
                Datatype  = ContactMetadataDataType.str,
                Name      = "test" + DateTime.UtcNow.ToString("ddMMyyhhmmss"),
                NameSpace = ContactMetadataNameSpace.@static
            };

            var result = _client.CreateContactMetaData(data);

            Assert.IsNotNull(result);
            Assert.AreEqual(1, result.Data.Count);
            var item = result.Data.Single();

            Assert.AreEqual(data.Name, item.Name);
            Assert.AreEqual(data.NameSpace, item.NameSpace);
            Assert.AreEqual(data.Datatype, item.Datatype);
        }
Пример #5
0
        public Response <ContactMetadata> CreateContactMetaData(ContactMetadata ContactMetadata)
        {
            if (ContactMetadata.Name.Any(x => x == ' '))
            {
                throw new InvalidOperationException("Name cannot contain a space");
            }
            var request = new RestRequest("REST/contactmetadata", Method.POST);

            request.AddParameter("name", ContactMetadata.Name, ParameterType.GetOrPost);

            var @namespace = System.Enum.GetName(typeof(ContactMetadataNameSpace), ContactMetadata.NameSpace);

            request.AddParameter("namespace", @namespace, ParameterType.GetOrPost);

            var type = System.Enum.GetName(typeof(ContactMetadataDataType), ContactMetadata.Datatype);

            request.AddParameter("datatype", type, ParameterType.GetOrPost);

            return(ExecuteRequest <ContactMetadata>(request));
        }
Пример #6
0
        public static async Task <int> CallAnamnesisService()
        {
            var service = new EsitiedotClient();

            var header = new MessageHeader()
            {
                MessageID           = "101",
                TransactionID       = "101",
                SenderID            = "101",
                SenderApplication   = "Debug",
                ReceiverID          = "101",
                ReceiverApplication = "Effica",
                CharacterSet        = "UTF-16"
            };

            var common = new LisCommon()
            {
                ContractKey   = ContractKey,
                UserId        = UserId,
                CallingSystem = CallingSystem,
                CallingUserId = UserId
            };

            // Initialize Request
            var contact = new Contact()
            {
                // 010100-A011 -- RID 1, ServiceEvent 1.2.246.10.19623654.10.1.14010.2013.947
                // 010101-0101 -- ServiceEvent 1.2.246.10.19623654.10.3.14669.2015.87
                PatientId = new PatientId()
                {
                    Identifier = "010101-0101"
                },
                Originator        = "Hackathon",
                Created           = DateTime.Now.AddDays(-1.0),
                Finished          = DateTime.Now,
                FormsetCode       = "E121",
                FormsetCodesystem = "1.123.234.567",
                FormsetName       = "Testaajan testikysely",
                Organisation      = "Kalvolan TK",
                OrganisationOid   = "1.2.246.10.19623654.19.1",
                OrgUnit           = "Kehvon Anamneesitutkimuskeskus",
                OrgUnitOid        = "121.121.121.234.0",
                Severity          = 1,
                Status            = Status.FORMSET_RECEIVED // Status - enumeration: [FORMSET_SENT,FORMSET_RECEIVED,DATA_AS_IMAGE]
            };

            var contactMeta = new ContactMetadata[]
            {
                new ContactMetadata()
                {
                    Key = "AR12312", Value = "MetaValue1"
                }
            };

            var forms = new Form[]
            {
                new Form()
                {
                    FormCode       = "A3399T",
                    FormCodeSystem = "123.123.123.444",
                    FormName       = "Testform",
                    Order          = 1,
                    Severity       = 1,
                    Questions      = new Question[]
                    {
                        new Question()
                        {
                            QuestionCode       = "1",
                            QuestionCodeSystem = "123.456.789.10",
                            QuestionText       = "Kysymys yksi",
                            Order    = 1,
                            Language = "fi",
                            Answer   = new Answer()
                            {
                                AnswerCode       = 1,
                                AnswerCodeSystem = "123.456.123.10",
                                AnswerText       = "Vastaus kysymykseen yksi"
                            }
                        },
                        new Question()
                        {
                            QuestionCode       = "2",
                            QuestionCodeSystem = "123.456.789.10",
                            QuestionText       = "Kysymys kaksi",
                            Order          = 1,
                            Language       = "fi",
                            Severity       = 1,
                            ParentQuestion = "1",
                            Answer         = new Answer()
                            {
                                AnswerCode       = 2,
                                AnswerCodeSystem = "123.123.123",
                                AnswerText       = "Vastaus kysymykseen kaksi joka liittyy parentquestion-arvon kautta kysymykseen yksi"
                            }
                        },
                        new Question()
                        {
                            QuestionCode       = "3",
                            QuestionCodeSystem = "123.456.789.10",
                            QuestionText       = "Kysymys kolme, jolle ei ole annettu vastausta. Answer osuus puuttuu.",
                            Order    = 3,
                            Language = "fi",
                            Severity = 2
                        }
                    }
                }
            };

            // Structure for return data
            var patient = new PatientId();

            try
            {
                service.AddEsitieto(ref header, common, contact, contactMeta, forms, out patient);
            }
            catch (Exception e)
            {
                Debug.Write(e.Message);
            }

            return(0);
        }