Esempio n. 1
0
        public static CDM EuccidToCdm(EUCCID euccid)
        {
            CDM cdm = new CDM()
            {
                EuccidNo      = euccid.EuccidNo,
                ChristianName = euccid.ChristianName,
                FamilyName    = euccid.FamilyName,
                Gender        = euccid.Gender,
                Street        = new string(euccid.StreetAndHouseNo
                                           .TakeWhile(c => !char.IsDigit(c))
                                           .ToArray())
                                .Trim(),
                HouseNo = new string(euccid.StreetAndHouseNo
                                     .SkipWhile(c => !char.IsDigit(c))
                                     .TakeWhile(c => c != ',')
                                     .ToArray()),
                ApartmentNo        = euccid.ApartmentNo,
                County             = euccid.County,
                PostalCode         = euccid.PostalCode,
                City               = euccid.City,
                BirthCountry       = euccid.BirthCountry,
                CountryOfResidence = euccid.CountryOfResidence
            };

            return(cdm);
        }
Esempio n. 2
0
        static void Main(string[] args)
        {
            // create messenger with in and out channels
            var messenger = new Messenger("NewEuccidChannelResponse", "NewEuccidChannel");

            // create a euccid with all the available data
            var preEuccid = new EUCCID()
            {
                ChristianName     = "Jesus",
                FamilyName        = "Christ",
                City              = "Berlin",
                StreetHouseNumber = "Friedrichstrasse 4",
                ApartmentNumber   = "2a",
                CurrentCountry    = "Germany",
                BirthCountry      = "Germany",
                Gender            = "Male",
                EuCcid            = "01012017" // to pass on the birthdate
            };

            Console.WriteLine("Hospital sending request.\n");

            messenger.Send(preEuccid);

            var euccid = messenger.Receive <EUCCID>();

            Console.WriteLine($"Hospital got response:\n{euccid}\n");
        }
        private static void SendMessage()
        {
            var rnd     = new Random();
            var gender  = new string[] { "F", "M" }[rnd.Next(0, 2)];
            var address = AddressGenerator.Generate();

            var personEUCCID = new EUCCID()
            {
                ChristianName      = NameGenerator.GenerateFirstName(gender),
                FamilyName         = NameGenerator.GenerateSurname(),
                EuccidNo           = EuccidGenerator.Generate(new DateTime(1987, 4, 23)),
                Gender             = gender,
                StreetAndHouseNo   = string.Format($"{address.Street} {address.HouseNo}"),
                ApartmentNo        = address.ApartmentNo,
                PostalCode         = address.PostalCode,
                City               = address.City,
                CountryOfResidence = "Denmark"
            };

            Console.WriteLine("---------- EUCCID input: ----------");
            personEUCCID.PrintAll();

            // translate into CDM format
            var personCDM = EuccidTranslator.EuccidToCdm(personEUCCID);

            Console.WriteLine("\n---------- Translated into CDM: ----------");
            personCDM.PrintAll();

            // build message
            var message = new Message()
            {
                Body  = personCDM,
                Label = personCDM.ToString()
            };

            // build channel
            var path = @".\Private$\EUCCID_to_CPR";

            if (!MessageQueue.Exists(path))
            {
                MessageQueue.Create(path);
            }

            var euccidToCprChannel = new MessageQueue(path)
            {
                Label = "EU-CCID to CPR"
            };

            // send
            euccidToCprChannel.Send(message);

            Console.WriteLine("\n---------- Message sent. ----------\n\n");
        }
 public PreliminaryCpr EuCcidToCpr(EUCCID euccid)
 {
     return(new PreliminaryCpr()
     {
         FirstName = euccid.ChristianName,
         Surname = euccid.FamilyName,
         Address1 = $"{euccid.StreetHouseNumber}, {euccid.ApartmentNumber}",
         City = euccid.City,
         CprNumber = GetCprNumberBeginningAndGender(euccid.EuCcid),
         PostalCode = PostalcodeLookupService.Lookup(euccid.StreetHouseNumber, euccid.City,
                                                     euccid.CurrentCountry),
         Gender = euccid.Gender
     });
 }
Esempio n. 5
0
        public static EUCCID CdmToEuccid(CDM cdm)
        {
            var children = new List <string>();

            EUCCID euccid = new EUCCID()
            {
                EuccidNo           = cdm.EuccidNo,
                ChristianName      = cdm.ChristianName,
                FamilyName         = cdm.FamilyName,
                Gender             = cdm.Gender,
                StreetAndHouseNo   = String.Format($"{cdm.Street} {cdm.HouseNo}"),
                ApartmentNo        = cdm.ApartmentNo,
                County             = cdm.County,
                PostalCode         = cdm.PostalCode,
                City               = cdm.City,
                BirthCountry       = cdm.BirthCountry,
                CountryOfResidence = cdm.CountryOfResidence
            };

            return(euccid);
        }
Esempio n. 6
0
 public static void Save(EUCCID euccid)
 {
     // This is a stub for saving the EU-CCID in the database
 }