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); }
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 }); }
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); }
public static void Save(EUCCID euccid) { // This is a stub for saving the EU-CCID in the database }