Example #1
0
        /// <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 );
        }