/// <summary> /// Gets the HL7 message. /// </summary> /// <param name="keyValues">The key values.</param> /// <returns>A <see cref="System.String"/></returns> public string GetHl7Message(Dictionary <string, long> keyValues) { var activityKey = keyValues[HttpHandlerQueryStrings.ActivityKey]; var activity = GetActivityForHl7Download(activityKey); if (activity == null) { throw new ArgumentException("Unable to retrieve activity to create HL7 message"); } var rootDto = new HL7Generator.Infrastructure.Message.ImmunizationDto { MshDto = GetMshDto(activity), PidDto = GetPidDto(activity), Orders = GetOrderDtos(activity) }; var helper = IoC.CurrentContainer.Resolve <IMessageHelper <VXU_V04, HL7Generator.Infrastructure.Message.ImmunizationDto> >(); var factory = IoC.CurrentContainer.Resolve <MessageFactoryBase <VXU_V04, HL7Generator.Infrastructure.Message.ImmunizationDto> >(); AbstractMessage message; if (helper != null && factory != null) { message = factory.CreateMessage(rootDto); } else { throw new ArgumentException("Unable to get helper/factory instance to create HL7 message"); } return((new PipeParser()).Encode(message)); }
/// <summary> /// Gets the HL7 message. /// </summary> /// <param name="keyValues">The key values.</param> /// <returns>A <see cref="System.String"/></returns> public string GetHl7Message( Dictionary<string, long> keyValues ) { var activityKey = keyValues[HttpHandlerQueryStrings.ActivityKey]; var activity = GetActivityForHl7Download ( activityKey ); if ( activity == null ) { throw new ArgumentException ( "Unable to retrieve activity to create HL7 message" ); } var rootDto = new HL7Generator.Infrastructure.Message.ImmunizationDto { MshDto = GetMshDto ( activity ), PidDto = GetPidDto ( activity ), Orders = GetOrderDtos ( activity ) }; var helper = IoC.CurrentContainer.Resolve<IMessageHelper<VXU_V04, HL7Generator.Infrastructure.Message.ImmunizationDto>>(); var factory = IoC.CurrentContainer.Resolve<MessageFactoryBase<VXU_V04, HL7Generator.Infrastructure.Message.ImmunizationDto>>(); AbstractMessage message; if ( helper != null && factory != null ) { message = factory.CreateMessage ( rootDto ); } else { throw new ArgumentException ( "Unable to get helper/factory instance to create HL7 message" ); } return ( new PipeParser () ).Encode ( message ); }