示例#1
0
        /// <inheritdoc/>
        public string ToDelimitedString()
        {
            CultureInfo culture = CultureInfo.CurrentCulture;

            return(string.Format(
                       culture,
                       StringHelper.StringFormatSequence(0, 48, Configuration.FieldSeparator),
                       Id,
                       SequenceNumberTestObservationMasterFile.HasValue ? SequenceNumberTestObservationMasterFile.Value.ToString(Consts.NumericFormat, culture) : null,
                       ProducersServiceTestObservationId?.ToDelimitedString(),
                       PermittedDataTypes != null ? string.Join(Configuration.FieldRepeatSeparator, PermittedDataTypes) : null,
                       SpecimenRequired,
                       ProducerId?.ToDelimitedString(),
                       ObservationDescription?.ToDelimitedString(),
                       OtherServiceTestObservationIdsForTheObservation?.ToDelimitedString(),
                       OtherNames != null ? string.Join(Configuration.FieldRepeatSeparator, OtherNames) : null,
                       PreferredReportNameForTheObservation,
                       PreferredShortNameOrMnemonicForTheObservation,
                       PreferredLongNameForTheObservation,
                       Orderability,
                       IdentityOfInstrumentUsedToPerformThisStudy != null ? string.Join(Configuration.FieldRepeatSeparator, IdentityOfInstrumentUsedToPerformThisStudy.Select(x => x.ToDelimitedString())) : null,
                       CodedRepresentationOfMethod != null ? string.Join(Configuration.FieldRepeatSeparator, CodedRepresentationOfMethod.Select(x => x.ToDelimitedString())) : null,
                       PortableDeviceIndicator,
                       ObservationProducingDepartmentSection != null ? string.Join(Configuration.FieldRepeatSeparator, ObservationProducingDepartmentSection.Select(x => x.ToDelimitedString())) : null,
                       TelephoneNumberOfSection?.ToDelimitedString(),
                       NatureOfServiceTestObservation,
                       ReportSubheader?.ToDelimitedString(),
                       ReportDisplayOrder,
                       DateTimeStampForAnyChangeInDefinitionForTheObservation.HasValue ? DateTimeStampForAnyChangeInDefinitionForTheObservation.Value.ToString(Consts.DateTimeFormatPrecisionSecond) : null,
                       EffectiveDateTimeOfChange.HasValue ? EffectiveDateTimeOfChange.Value.ToString(Consts.DateTimeFormatPrecisionSecond) : null,
                       TypicalTurnAroundTime.HasValue ? TypicalTurnAroundTime.Value.ToString(Consts.NumericFormat) : null,
                       ProcessingTime.HasValue ? ProcessingTime.Value.ToString(Consts.NumericFormat) : null,
                       ProcessingPriority != null ? string.Join(Configuration.FieldRepeatSeparator, ProcessingPriority) : null,
                       ReportingPriority,
                       OutsideSitesWhereObservationMayBePerformed != null ? string.Join(Configuration.FieldRepeatSeparator, OutsideSitesWhereObservationMayBePerformed.Select(x => x.ToDelimitedString())) : null,
                       AddressOfOutsideSites != null ? string.Join(Configuration.FieldRepeatSeparator, AddressOfOutsideSites.Select(x => x.ToDelimitedString())) : null,
                       PhoneNumberOfOutsideSite?.ToDelimitedString(),
                       ConfidentialityCode?.ToDelimitedString(),
                       ObservationsRequiredToInterpretThisObservation?.ToDelimitedString(),
                       InterpretationOfObservations?.ToDelimitedString(),
                       ContraindicationsToObservations?.ToDelimitedString(),
                       ReflexTestsObservations != null ? string.Join(Configuration.FieldRepeatSeparator, ReflexTestsObservations.Select(x => x.ToDelimitedString())) : null,
                       RulesThatTriggerReflexTesting?.ToDelimitedString(),
                       FixedCannedMessage?.ToDelimitedString(),
                       PatientPreparation?.ToDelimitedString(),
                       ProcedureMedication?.ToDelimitedString(),
                       FactorsThatMayAffectTheObservation?.ToDelimitedString(),
                       ServiceTestObservationPerformanceSchedule != null ? string.Join(Configuration.FieldRepeatSeparator, ServiceTestObservationPerformanceSchedule) : null,
                       DescriptionOfTestMethods?.ToDelimitedString(),
                       KindOfQuantityObserved?.ToDelimitedString(),
                       PointVersusInterval?.ToDelimitedString(),
                       ChallengeInformation?.ToDelimitedString(),
                       RelationshipModifier?.ToDelimitedString(),
                       TargetAnatomicSiteOfTest?.ToDelimitedString(),
                       ModalityOfImagingMeasurement?.ToDelimitedString()
                       ).TrimEnd(Configuration.FieldSeparator.ToCharArray()));
        }
示例#2
0
        /// <inheritdoc/>
        public string ToDelimitedString()
        {
            CultureInfo culture = CultureInfo.CurrentCulture;

            return(string.Format(
                       culture,
                       StringHelper.StringFormatSequence(0, 39, Configuration.FieldSeparator),
                       Id,
                       OrderControl,
                       PlacerOrderNumber?.ToDelimitedString(),
                       FillerOrderNumber?.ToDelimitedString(),
                       PlacerGroupNumber?.ToDelimitedString(),
                       OrderStatus,
                       ResponseFlag,
                       QuantityTiming != null ? string.Join(Configuration.FieldRepeatSeparator, QuantityTiming) : null,
                       ParentOrder != null ? string.Join(Configuration.FieldRepeatSeparator, ParentOrder.Select(x => x.ToDelimitedString())) : null,
                       DateTimeOfTransaction.HasValue ? DateTimeOfTransaction.Value.ToString(Consts.DateTimeFormatPrecisionSecond, culture) : null,
                       EnteredBy != null ? string.Join(Configuration.FieldRepeatSeparator, EnteredBy.Select(x => x.ToDelimitedString())) : null,
                       VerifiedBy != null ? string.Join(Configuration.FieldRepeatSeparator, VerifiedBy.Select(x => x.ToDelimitedString())) : null,
                       OrderingProvider != null ? string.Join(Configuration.FieldRepeatSeparator, OrderingProvider.Select(x => x.ToDelimitedString())) : null,
                       EnterersLocation?.ToDelimitedString(),
                       CallBackPhoneNumber != null ? string.Join(Configuration.FieldRepeatSeparator, CallBackPhoneNumber.Select(x => x.ToDelimitedString())) : null,
                       OrderEffectiveDateTime.HasValue ? OrderEffectiveDateTime.Value.ToString(Consts.DateTimeFormatPrecisionSecond, culture) : null,
                       OrderControlCodeReason?.ToDelimitedString(),
                       EnteringOrganization?.ToDelimitedString(),
                       EnteringDevice?.ToDelimitedString(),
                       ActionBy != null ? string.Join(Configuration.FieldRepeatSeparator, ActionBy.Select(x => x.ToDelimitedString())) : null,
                       AdvancedBeneficiaryNoticeCode?.ToDelimitedString(),
                       OrderingFacilityName != null ? string.Join(Configuration.FieldRepeatSeparator, OrderingFacilityName.Select(x => x.ToDelimitedString())) : null,
                       OrderingFacilityAddress != null ? string.Join(Configuration.FieldRepeatSeparator, OrderingFacilityAddress.Select(x => x.ToDelimitedString())) : null,
                       OrderingFacilityPhoneNumber != null ? string.Join(Configuration.FieldRepeatSeparator, OrderingFacilityPhoneNumber.Select(x => x.ToDelimitedString())) : null,
                       OrderingProviderAddress != null ? string.Join(Configuration.FieldRepeatSeparator, OrderingProviderAddress.Select(x => x.ToDelimitedString())) : null,
                       OrderStatusModifier?.ToDelimitedString(),
                       AdvancedBeneficiaryNoticeOverrideReason?.ToDelimitedString(),
                       FillersExpectedAvailabilityDateTime.HasValue ? FillersExpectedAvailabilityDateTime.Value.ToString(Consts.DateTimeFormatPrecisionSecond, culture) : null,
                       ConfidentialityCode?.ToDelimitedString(),
                       OrderType?.ToDelimitedString(),
                       EntererAuthorizationMode?.ToDelimitedString(),
                       ParentUniversalServiceIdentifier?.ToDelimitedString(),
                       AdvancedBeneficiaryNoticeDate.HasValue ? AdvancedBeneficiaryNoticeDate.Value.ToString(Consts.DateFormatPrecisionDay, culture) : null,
                       AlternatePlacerOrderNumber != null ? string.Join(Configuration.FieldRepeatSeparator, AlternatePlacerOrderNumber.Select(x => x.ToDelimitedString())) : null,
                       OrderWorkflowProfile != null ? string.Join(Configuration.FieldRepeatSeparator, OrderWorkflowProfile.Select(x => x.ToDelimitedString())) : null,
                       ActionCode,
                       OrderStatusDateRange?.ToDelimitedString(),
                       OrderCreationDateTime.HasValue ? OrderCreationDateTime.Value.ToString(Consts.DateTimeFormatPrecisionSecond, culture) : null,
                       FillerOrderGroupNumber?.ToDelimitedString()
                       ).TrimEnd(Configuration.FieldSeparator.ToCharArray()));
        }
示例#3
0
        public string BindHeader(string title, ClinicalDocument clinicalDoc, Factory hl7factory, ICS realmCode)
        {
            string docheader = String.Empty;

            header                     = new CCDAHeader();
            realmCode_code             = new RealmCode();
            typeId                     = new TypeId();
            templateId                 = new TemplateId();
            id                         = new Id();
            code                       = new Code();
            effectiveTime              = new EffectiveTime();
            confidentialityCode        = new ConfidentialityCode();
            languageCode               = new LanguageCode();
            setId                      = new SetId();
            versionNumber              = new VersionNumber();
            header.Id                  = id;
            header.languageCode        = languageCode;
            header.realmCode           = realmCode_code;
            header.code                = code;
            header.effectiveTime       = effectiveTime;
            header.confidentialityCode = confidentialityCode;
            header.setId               = setId;
            header.versionNumber       = versionNumber;
            header.TemplateId          = templateId;
            header.typeId              = typeId;
            header.title               = title;
            realmCode                  = hl7factory.CreateCS();
            realmCode                  = hl7factory.CreateCS();
            realmCode.Code             = header.realmCode.code;
            clinicalDoc.RealmCode.Add(realmCode);
            // Manage Clinical Report Header
            //Manage TypeId
            clinicalDoc.TypeId.Root      = header.typeId.root;
            clinicalDoc.TypeId.Extension = header.typeId.extension;
            //END
            //Manage template Id
            clinicalDoc.TemplateId.Append().Root = header.TemplateId.root;
            //END
            //Manage Header Id
            clinicalDoc.Id.Init(header.Id.root, header.Id.extension);
            //END
            //Manage Header Code
            clinicalDoc.Code.Code           = header.code.code;
            clinicalDoc.Code.CodeSystemName = header.code.codeSystemName;
            clinicalDoc.Code.DisplayName    = header.code.displayName;
            clinicalDoc.Code.CodeSystem     = header.code.codeSystem;
            //END
            //Manage Header Title
            clinicalDoc.Title.Text = header.title;
            //END
            //Manage Header Effective Date
            clinicalDoc.EffectiveTime.AsDateTime = Convert.ToDateTime(header.effectiveTime.value);
            //END
            //Manage Header Confidencial Code
            clinicalDoc.ConfidentialityCode.Code       = header.confidentialityCode.code;
            clinicalDoc.ConfidentialityCode.CodeSystem = header.confidentialityCode.codeSystem;
            //END
            //Manage Header Language Code
            clinicalDoc.LanguageCode.Code = header.languageCode.code;
            //END
            //Manage Header SetId
            clinicalDoc.SetId.Root      = header.setId.root;
            clinicalDoc.SetId.Extension = header.setId.extension;
            //END
            //Manage Header Version
            clinicalDoc.VersionNumber.Value = header.versionNumber.value;
            //END
            //END
            //docheader = "<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet type='text/xsl' href='CDA.xsl'?>"+clinicalDoc.Xml;
            docheader = clinicalDoc.Xml;

            return(docheader.ToString());
        }