예제 #1
0
        public delegate LibraryBookView Factory();        //autofac uses this

        public LibraryBookView(BookSelection bookSelection,
                               SendReceiver sendReceiver,
                               CreateFromSourceBookCommand createFromSourceBookCommand,
                               EditBookCommand editBookCommand,
                               SelectedTabChangedEvent selectedTabChangedEvent,
                               NavigationIsolator isolator)
        {
            InitializeComponent();
            _previewBrowser.Isolator        = isolator;
            _readmeBrowser.Isolator         = isolator;
            _bookSelection                  = bookSelection;
            _sendReceiver                   = sendReceiver;
            _createFromSourceBookCommand    = createFromSourceBookCommand;
            _editBookCommand                = editBookCommand;
            bookSelection.SelectionChanged += new EventHandler(OnBookSelectionChanged);

            selectedTabChangedEvent.Subscribe(c =>
            {
                _visible = c.To is LibraryView;
                if (_reshowPending)
                {
                    ShowBook();
                }
            });
            _editBookButton.Visible = false;
        }
예제 #2
0
        public delegate EditingModel Factory();        //autofac uses this

        public EditingModel(BookSelection bookSelection, PageSelection pageSelection,
                            LanguageSettings languageSettings,
                            TemplateInsertionCommand templateInsertionCommand,
                            PageListChangedEvent pageListChangedEvent,
                            RelocatePageEvent relocatePageEvent,
                            BookRefreshEvent bookRefreshEvent,
                            DeletePageCommand deletePageCommand,
                            SelectedTabChangedEvent selectedTabChangedEvent,
                            SelectedTabAboutToChangeEvent selectedTabAboutToChangeEvent,
                            LibraryClosing libraryClosingEvent,
                            CollectionSettings collectionSettings,
                            SendReceiver sendReceiver)
        {
            _bookSelection      = bookSelection;
            _pageSelection      = pageSelection;
            _languageSettings   = languageSettings;
            _deletePageCommand  = deletePageCommand;
            _collectionSettings = collectionSettings;
            _sendReceiver       = sendReceiver;

            bookSelection.SelectionChanged      += new EventHandler(OnBookSelectionChanged);
            pageSelection.SelectionChanged      += new EventHandler(OnPageSelectionChanged);
            templateInsertionCommand.InsertPage += new EventHandler(OnInsertTemplatePage);

            bookRefreshEvent.Subscribe((book) => OnBookSelectionChanged(null, null));
            selectedTabChangedEvent.Subscribe(OnTabChanged);
            selectedTabAboutToChangeEvent.Subscribe(OnTabAboutToChange);
            deletePageCommand.Implementer = OnDeletePage;
            pageListChangedEvent.Subscribe(x => _view.UpdatePageList(false));
            relocatePageEvent.Subscribe(OnRelocatePage);
            libraryClosingEvent.Subscribe(o => SaveNow());
            _contentLanguages = new List <ContentLanguage>();
        }
예제 #3
0
        public delegate EditingModel Factory();        //autofac uses this

        public EditingModel(BookSelection bookSelection, PageSelection pageSelection,
                            LanguageSettings languageSettings,
                            TemplateInsertionCommand templateInsertionCommand,
                            PageListChangedEvent pageListChangedEvent,
                            RelocatePageEvent relocatePageEvent,
                            BookRefreshEvent bookRefreshEvent,
                            DuplicatePageCommand duplicatePageCommand,
                            DeletePageCommand deletePageCommand,
                            SelectedTabChangedEvent selectedTabChangedEvent,
                            SelectedTabAboutToChangeEvent selectedTabAboutToChangeEvent,
                            LibraryClosing libraryClosingEvent,
                            LocalizationChangedEvent localizationChangedEvent,
                            CollectionSettings collectionSettings,
                            SendReceiver sendReceiver,
                            EnhancedImageServer server)
        {
            _bookSelection        = bookSelection;
            _pageSelection        = pageSelection;
            _languageSettings     = languageSettings;
            _duplicatePageCommand = duplicatePageCommand;
            _deletePageCommand    = deletePageCommand;
            _collectionSettings   = collectionSettings;
            _sendReceiver         = sendReceiver;
            _server = server;

            bookSelection.SelectionChanged      += new EventHandler(OnBookSelectionChanged);
            pageSelection.SelectionChanged      += new EventHandler(OnPageSelectionChanged);
            templateInsertionCommand.InsertPage += new EventHandler(OnInsertTemplatePage);

            bookRefreshEvent.Subscribe((book) => OnBookSelectionChanged(null, null));
            selectedTabChangedEvent.Subscribe(OnTabChanged);
            selectedTabAboutToChangeEvent.Subscribe(OnTabAboutToChange);
            duplicatePageCommand.Implementer = OnDuplicatePage;
            deletePageCommand.Implementer    = OnDeletePage;
            pageListChangedEvent.Subscribe(x => _view.UpdatePageList(false));
            relocatePageEvent.Subscribe(OnRelocatePage);
            libraryClosingEvent.Subscribe(o => SaveNow());
            localizationChangedEvent.Subscribe(o =>
            {
                //this is visible was added for https://jira.sil.org/browse/BL-267, where the edit tab has never been
                //shown so the view has never been full constructed, so we're not in a good state to do a refresh
                if (Visible)
                {
                    SaveNow();
                    _view.UpdateButtonLocalizations();
                    RefreshDisplayOfCurrentPage();
                    //_view.UpdateDisplay();
                    _view.UpdatePageList(false);
                    _view.UpdateTemplateList();
                }
                else if (_view != null)
                {
                    // otherwise changing UI language in Publish tab (for instance) won't update these localizations
                    _view.UpdateButtonLocalizations();
                }
            });
            _contentLanguages = new List <ContentLanguage>();
            _server.CurrentCollectionSettings = _collectionSettings;
            _server.CurrentBook = CurrentBook;
        }
예제 #4
0
        public LibraryModel(string pathToLibrary, CollectionSettings collectionSettings,
                            SendReceiver sendReceiver,
                            BookSelection bookSelection,
                            SourceCollectionsList sourceCollectionsList,
                            BookCollection.Factory bookCollectionFactory,
                            EditBookCommand editBookCommand,
                            CreateFromSourceBookCommand createFromSourceBookCommand,
                            BookServer bookServer,
                            CurrentEditableCollectionSelection currentEditableCollectionSelection)
        {
            _bookSelection         = bookSelection;
            _pathToLibrary         = pathToLibrary;
            _collectionSettings    = collectionSettings;
            _sendReceiver          = sendReceiver;
            _sourceCollectionsList = sourceCollectionsList;
            _bookCollectionFactory = bookCollectionFactory;
            _editBookCommand       = editBookCommand;
            _bookServer            = bookServer;
            _currentEditableCollectionSelection = currentEditableCollectionSelection;

            createFromSourceBookCommand.Subscribe(CreateFromSourceBook);
        }
예제 #5
0
 public PRPM_IN401031UV01(IAI_ORGANIZATION result, string requestId)
 {
     id = new IDwithRootExtendsion()
     {
         root      = "240CD76A-ED0E-400B-9FD3-60387BCDE0EB",
         extension = "3D73520B-D489-4B70-8F4B-7B5C2D7961B5",
     };
     creationTime = new Time
     {
         value = "20070803130624",
     };
     interactionId = new IDwithRootExtendsion()
     {
         root      = "2.16.840.1.113883.1.6",
         extension = "PRPM_IN401031UV01",
     };
     processingCode = new Code()
     {
         code = "P",
     };
     processingModeCode = new Code()
     {
         code = "I",
     };
     acceptAckCode = new Code()
     {
         code = "AL",
     };
     receiver = new SendReceiver()
     {
         typeCode = "RCV",
         device   = new Device()
         {
             classCode      = "DEV",
             determinerCode = "INSTANCE",
             id             = new IDwithRootExtendsion()
             {
                 root = "1.2.840.114350.1.13.999.234",
                 //extension = "2.16.156.10011.0.1.2",
             },
         },
     };
     sender = new SendReceiver()
     {
         typeCode = "SND",
         device   = new Device()
         {
             classCode      = "DEV",
             determinerCode = "INSTANCE",
             id             = new IDwithRootExtendsion()
             {
                 root = "1.2.840.114350.1.13.999.567",
                 //extension = "2.16.156.10011.0.1.1",
             },
         },
     };
     acknowledgement = new CommonAcknowledgement()
     {
         typeCode      = "AA",
         targetMessage = new CommonTargetMessage()
         {
             id = new IDwithRootExtendsion()
             {
                 root      = "040CD76A-ED0E-400B-9FD3-60387BCDE0EB",
                 extension = requestId,
             },
         },
         acknowledgementDetail = new CommonAcknowledgementDetail()
         {
             text = "处理成功",
         },
     };
     controlActProcess = new Response()
     {
         classCode = "CACT",
         moodCode  = "EVN",
         code      = new CodeSystem()
         {
             code       = "PRPM_TE401011UV01",
             codeSystem = "2.16.840.1.113883.1.6",
         },
         subject = new controlActProcessSubjectofResponse()
         {
             typeCode            = "SUBJ",
             registrationRequest = new RegistrationRequestofResponse()
             {
                 classCode  = "REG",
                 moodCode   = "RQO",
                 statusCode = new StatusCode()
                 {
                     code = "active",
                 },
                 subject1 = new Subject1ofResponse()
                 {
                     typeCode       = "SBJ",
                     assignedEntity = new AssignedEntityofResponse()
                     {
                         classCode = "ASSIGNED",
                         id        = new IDwithRootExtendsion()
                         {
                             root      = "2.16.156.10011.1.26",
                             extension = result.organization_id,
                         },
                         code = new CodeSystem()
                         {
                             code           = result.organization_code,
                             codeSystem     = "2.16.156.10011.2.3.2.62",
                             codeSystemName = "医疗卫生机构业务科室分类与代码表",
                             displayName    = "呼吸内科专业",
                         },
                         name = "",
                         assignedPrincipalOrganization = new AffiliatedPrincipalOrganization()
                         {
                             classCode      = "ORG",
                             determinerCode = "INSTANCE",
                             name           = result.name,
                         },
                     },
                 },
                 author = new Author()
                 {
                     typeCode       = "AUT",
                     assignedEntity = new Entity.AssignedEntity()
                     {
                         classCode = "ASSIGNED",
                         id        = new IDwithRootExtendsion()
                         {
                             root      = "2.16.156.10011.1.4",
                             extension = "120109197706015518",
                         },
                         assignedPerson = new Person()
                         {
                             classCode      = "PSN",
                             determinerCode = "INSTANCE",
                             name           = new Name()
                             {
                                 Value = "-"
                             },
                         },
                         representedOrganization = new RepresentedOrganization()
                         {
                             classCode      = "ORG",
                             determinerCode = "INSTANCE",
                             id             = new IDwithRootExtendsion()
                             {
                                 root      = "2.16.156.10011.1.26",
                                 extension = "xxx12345-X",
                             },
                             name         = "人事科",
                             contactParty = new ContactParty()
                             {
                                 classCode     = "CON",
                                 contactPerson = new Person()
                                 {
                                     classCode      = "PSN",
                                     determinerCode = "INSTANCE",
                                     name           = new Name()
                                     {
                                         Value = "-",
                                     },
                                 },
                             },
                         },
                     },
                 },
             },
         },
     };
 }
예제 #6
0
 public PRPM_IN401031UV01(string message, IAI_ORGANIZATION result, string requestId)
 {
     id = new IDwithRootExtendsion()
     {
         root      = "240CD76A-ED0E-400B-9FD3-60387BCDE0EB",
         extension = "3D73520B-D489-4B70-8F4B-7B5C2D7961B5",
     };
     creationTime = new Time
     {
         value = "20070803130624",
     };
     interactionId = new IDwithRootExtendsion()
     {
         root      = "2.16.840.1.113883.1.6",
         extension = "PRPM_IN401031UV01",
     };
     processingCode = new Code()
     {
         code = "P",
     };
     processingModeCode = new Code()
     {
         code = "I",
     };
     acceptAckCode = new Code()
     {
         code = "AL",
     };
     receiver = new SendReceiver()
     {
         typeCode = "RCV",
         device   = new Device()
         {
             classCode      = "DEV",
             determinerCode = "INSTANCE",
             id             = new IDwithRootExtendsion()
             {
                 root = "1.2.840.114350.1.13.999.567",
                 //extension = "2.16.156.10011.0.1.2",
             },
         },
     };
     sender = new SendReceiver()
     {
         typeCode = "SND",
         device   = new Device()
         {
             classCode      = "DEV",
             determinerCode = "INSTANCE",
             id             = new IDwithRootExtendsion()
             {
                 root = "1.2.840.114350.1.13.999.234",
                 //extension = "2.16.156.10011.0.1.1",
             },
         },
     };
     acknowledgement = new CommonAcknowledgement()
     {
         typeCode      = "AE",
         targetMessage = new CommonTargetMessage()
         {
             id = new IDwithRootExtendsion()
             {
                 //root = "040CD76A-ED0E-400B-9FD3-60387BCDE0EB",
                 extension = requestId,
             },
         },
         acknowledgementDetail = new CommonAcknowledgementDetail()
         {
             text = message,
         },
     };
     controlActProcess = new Response()
     {
         classCode = "CACT",
         moodCode  = "EVN",
         code      = new CodeSystem()
         {
             code       = "PRPM_TE401011UV01",
             codeSystem = "2.16.840.1.113883.1.6",
         },
         subject = new controlActProcessSubjectofResponse()
         {
             typeCode            = "SUBJ",
             registrationRequest = new RegistrationRequestofResponse()
             {
                 classCode  = "REG",
                 moodCode   = "RQO",
                 statusCode = new StatusCode()
                 {
                     //code = "active",
                 },
                 subject1 = new Subject1ofResponse()
                 {
                     typeCode       = "SBJ",
                     assignedEntity = new AssignedEntityofResponse()
                     {
                         classCode = "ASSIGNED",
                     },
                 },
                 author = new Author()
                 {
                     typeCode       = "AUT",
                     assignedEntity = new Entity.AssignedEntity()
                     {
                         classCode = "ASSIGNED",
                         id        = new IDwithRootExtendsion()
                         {
                         },
                     },
                 },
             },
         },
     };
 }
예제 #7
0
        /// <summary>
        /// 成功构造方法
        /// </summary>
        /// <param name="result"></param>
        public PRPM_IN301011UV01(IAI_PROVIDER result, string requestId)
        {
            id = new IDwithRootExtendsion()
            {
                root      = "240CD76A-ED0E-400B-9FD3-60387BCDE0EB",
                extension = "3D73520B-D489-4B70-8F4B-7B5C2D7961B5",
            };
            creationTime = new Time
            {
                value = "20130116112855",
            };
            interactionId = new IDwithRootExtendsion()
            {
                root      = "2.16.840.1.113883.1.6",
                extension = "PRPM_IN301011UV01",
            };
            processingCode = new Code()
            {
                code = "P",
            };
            processingModeCode = new Code()
            {
                code = "I",
            };
            acceptAckCode = new Code()
            {
                code = "AL",
            };
            receiver = new SendReceiver()
            {
                typeCode = "RCV",
                device   = new Device()
                {
                    classCode      = "DEV",
                    determinerCode = "INSTANCE",
                    id             = new IDwithRootExtendsion()
                    {
                        root = "1.2.840.114350.1.13.999.234",
                        //extension = "2.16.156.10011.0.1.2",
                    },
                },
            };
            sender = new SendReceiver()
            {
                typeCode = "SND",
                device   = new Device()
                {
                    classCode      = "DEV",
                    determinerCode = "INSTANCE",
                    id             = new IDwithRootExtendsion()
                    {
                        root = "1.2.840.114350.1.13.999.567",
                        //extension = "2.16.156.10011.0.1.1",
                    },
                },
            };
            acknowledgement = new CommonAcknowledgement()
            {
                typeCode      = "AA",
                targetMessage = new CommonTargetMessage()
                {
                    id = new IDwithRootExtendsion()
                    {
                        root      = "040CD76A-ED0E-400B-9FD3-60387BCDE0EB",
                        extension = requestId,
                    },
                },
                acknowledgementDetail = new CommonAcknowledgementDetail()
                {
                    text = "操作成功",
                },
            };
            controlActProcess = new Response()
            {
                classCode = "CACT",
                moodCode  = "EVN",
                code      = new CodeSystem()
                {
                    code       = "PRPA_TE201306UV02",
                    codeSystem = "2.16.840.1.113883.1.6",
                },
                subject = new controlActProcessSubjectofResponse()
                {
                    typeCode            = "SUBJ",
                    registrationRequest = new RegistrationRequestofResponse()
                    {
                        classCode  = "REG",
                        moodCode   = "RQO",
                        statusCode = new StatusCode()
                        {
                            code = "active",
                        },
                        subject1 = new Subject1ofResponse()
                        {
                            typeCode = "SBJ",

                            healthCareProvider = new HealthCareProvider()
                            {
                                classCode = "PROV",
                                id        = new IDwithRootExtendsion()
                                {
                                    root      = "2.16.156.10011.1.4",
                                    extension = result?.healthcareprovider_id,
                                },
                                code = new CodeSystem()
                                {
                                    code           = result?.healthcareprovider_code,
                                    codeSystem     = "2.16.156.10011.2.3.3.10",
                                    codeSystemName = "专业技术职务代码( GB/T 8561)",
                                    displayName    = "主任医师",
                                },
                                healthCarePrincipalPerson = new HealthCarePrincipalPerson()
                                {
                                    classCode      = "PSN",
                                    determinerCode = "INSTANCE",
                                    id             = new IDwithRootExtendsion()
                                    {
                                        root      = "2.16.156.10011.1.3",
                                        extension = result?.id_number,
                                    },
                                    name = new Name()
                                    {
                                        use   = "L",
                                        Value = result?.name,
                                    },
                                    //asAffiliate= new AsAffiliate {
                                    //    affiliatedPrincipalOrganization = new AffiliatedPrincipalOrganization {
                                    //        id = new IDwithRootExtendsion {
                                    //            extension=result.healthcareprovider_code,
                                    //        },
                                    //        name =result.name
                                    //    },
                                    //},
                                    administrativeGenderCode = new CodeSystem()
                                    {
                                        code           = result?.gender_code,
                                        codeSystem     = "2.16.156.10011.2.3.3.4",
                                        codeSystemName = "生理性别代码表(GB/T 2261.1)",
                                        displayName    = "男性",
                                    },
                                    birthTime = new Value()
                                    {
                                        value = result?.birth_time,
                                    },
                                    birthplace = new Birthplace()
                                    {
                                        classCode = "BIRTHPL",
                                        addr      = "",//result?.birth_place,
                                    },
                                },
                            },
                            //assignedEntity = acknowledgement.Success ? null : new assignedEntity
                            //{
                            //    classCode = "ASSIGNED",
                            //},
                        },
                        author = new Author()
                        {
                            typeCode       = "AUT",
                            assignedEntity = new AssignedEntity()
                            {
                                classCode = "ASSIGNED",
                                id        = new IDwithRootExtendsion()
                                {
                                    root      = "2.16.156.10011.1.4",
                                    extension = "120109197706015518",
                                },
                                assignedPerson = new Person()
                                {
                                    classCode      = "PSN",
                                    determinerCode = "INSTANCE",
                                    name           = new Name()
                                    {
                                        Value = "李人事"
                                    },
                                },
                                representedOrganization = new RepresentedOrganization()
                                {
                                    classCode      = "ORG",
                                    determinerCode = "INSTANCE",
                                    id             = new IDwithRootExtendsion()
                                    {
                                        root      = "2.16.156.10011.1.26",
                                        extension = "xxx12345-X",
                                    },
                                    name         = "人事科",
                                    contactParty = new ContactParty()
                                    {
                                        classCode     = "CON",
                                        contactPerson = new Person()
                                        {
                                            classCode      = "PSN",
                                            determinerCode = "INSTANCE",
                                            name           = new Name()
                                            {
                                                Value = "王联系",
                                            },
                                        },
                                    },
                                },
                            },
                        },
                    },
                },
            };
        }
예제 #8
0
        public PRPA_IN900350UV02(IAI_MEDICAL_REGISTRATION result, string requestId)
        {
            id = new IDwithRootExtendsion()
            {
                root      = "2.16.156.10011.0",
                extension = "22a0f9e0-4454-11dc-a6be-3603d6866807",
            };
            creationTime = new Time()
            {
                value = "20130101",
            };
            interactionId = new IDwithRootExtendsion()
            {
                root      = "2.16.840.1.113883.1.6",
                extension = "PRPA_IN900350UV02",
            };
            processingCode = new Code()
            {
                code = "P",
            };
            processingModeCode = new Code()
            {
                code = "R",
            };
            acceptAckCode = new Code()
            {
                code = "AL",
            };
            receiver = new SendReceiver()
            {
                typeCode = "RCV",
                device   = new Device
                {
                    classCode      = "DEV",
                    determinerCode = "INSTANCE",
                    id             = new IDwithRootExtendsion()
                    {
                        root      = "2.16.156.10011.0.1.2",
                        extension = "2.16.156.10011.0.1.2",
                    }
                    //id=new ReceiverDeviceID() { },
                },
            };
            sender = new SendReceiver()
            {
                typeCode = "SND",
                device   = new Device
                {
                    classCode      = "DEV",
                    determinerCode = "INSTANCE",
                    id             = new IDwithRootExtendsion()
                    {
                        root      = "2.16.156.10011.0.1.1",
                        extension = "2.16.156.10011.0.1.1",
                    }
                    //id=new ReceiverDeviceID() { },
                },
            };

            controlActProcess = new Response()
            {
                classCode = "ACTN",
                moodCode  = "PRMS",
                subject   = new controlActProcessSubject()
                {
                    typeCode       = "SUBJ",
                    encounterEvent = new controlActProcessSubjectEncounterEvent()
                    {
                        classCode = "ENC",
                        moodCode  = "EVN",
                        id        = new IDwithRootExtendsion()
                        {
                            root      = "2.16.156.10011.0.5.1",
                            extension = result.encounterevent_id,
                        },
                        code = new CodeSystem()
                        {
                            code           = result.type_code,
                            codeSystem     = "2.16.156.10011.2.3.1.271",
                            codeSystemName = "患者类型代码表",
                            displayName    = "门诊",
                        },
                        statusCode = new StatusCode()
                        {
                            code = "active",
                        },
                        effectiveTime = new EffectiveTime()
                        {
                            value = "20130101",
                        },
                        subject = new controlActProcessSubjectEncounterEventSubject()
                        {
                            typeCode = "SBJ",
                            patient  = new controlActProcessSubjectEncounterEventSubjectPatient()
                            {
                                classCode = "PAT",
                                id        = new IDwithCode()
                                {
                                    code = result.patient_id,
                                },
                                patientPerson = new Person()
                                {
                                    name = new Name()
                                    {
                                        use   = "L",
                                        Value = result.patient_name,
                                    },
                                },
                            },
                        },
                        admitter = new controlActProcessSubjectEncounterEventAdmitter()
                        {
                            time           = "",
                            typeCode       = "ADM",
                            assignedPerson = new AssignedPerson()
                            {
                                classCode = "ASSIGNED",
                                id        = new IDwithRootExtendsion()
                                {
                                    root      = "2.16.156.10011.0.3.2",
                                    extension = result.consultant_id,
                                },
                                assignedPerson = new Person()
                                {
                                    classCode      = "PSN",
                                    determinerCode = "INSTANCE",
                                    name           = new Name()
                                    {
                                        Value = result.consultant_name,
                                    },
                                },
                                //representedOrganization = new RepresentedOrganization()
                                //{
                                //    classCode = "ORG",
                                //    determinerCode = "INSTANCE",
                                //    id = new IDwithRootExtendsion()
                                //    {
                                //        root = "2.16.156.10011.1.5",
                                //        extension = result.organization_id,
                                //    },
                                //    asOrganizationPartOf = new asOrganizationPartOf()
                                //    {
                                //        classCode = "PART",
                                //        id = new IDwithRootExtendsion()
                                //        {
                                //            root = "2.16.156.10011.0.4.2",
                                //            extension = result.location_id,
                                //        },
                                //    },
                                //},
                            },
                        },
                    },
                },
                queryAck = new QueryAck()
                {
                    queryResponseCode = new Code()
                    {
                        code = "OK",
                    },
                },
            };
        }
예제 #9
0
 public MCCI_IN000002UV01(IAI_MEDICAL_REGISTRATION result, string requestId, string message)
 {
     id = new IDwithRootExtendsion()
     {
         //root = "2.16.156.10011.0",
         extension = requestId,
     };
     creationTime = new Time
     {
         value = "20070803130624",
     };
     interactionId = new IDwithRootExtendsion()
     {
         root      = "2.16.840.1.113883.1.6",
         extension = "MCCI_IN000002UV01",
     };
     processingCode = new Code()
     {
         code = "P",
     };
     processingModeCode = new Code()
     {
         code = "R",
     };
     acceptAckCode = new Code()
     {
         code = "NE",
     };
     receiver = new SendReceiver()
     {
         typeCode = "RCV",
         device   = new Device()
         {
             classCode      = "DEV",
             determinerCode = "INSTANCE",
             id             = new IDwithRootExtendsion()
             {
                 root = "1.2.840.114350.1.13.99998.8734",
                 //extension = "2.16.156.10011.0.1.2",
             },
         },
     };
     sender = new SendReceiver()
     {
         typeCode = "SND",
         device   = new Device()
         {
             classCode      = "DEV",
             determinerCode = "INSTANCE",
             id             = new IDwithRootExtendsion()
             {
                 root = "1.2.840.114350.1.13.99999.4567",
                 //extension = "2.16.156.10011.0.1.1",
             },
         },
     };
     acknowledgement = new CommonAcknowledgement()
     {
         typeCode      = "AE",
         targetMessage = new CommonTargetMessage()
         {
             id = new IDwithRootExtendsion()
             {
                 root      = "2.16.156.10011.0",
                 extension = requestId,
             },
         },
         acknowledgementDetail = new CommonAcknowledgementDetail()
         {
             text = message,
         },
     };
 }
예제 #10
0
 public PRPA_IN201315UV02(IAI_PATIENT patient, string requestId)
 {
     id = new IDwithRootExtendsion()
     {
         root      = "2.16.156.10011.0",
         extension = "22a0f9e0-4454-11dc-a6be-3603d686680R",
     };
     creationTime = new Time
     {
         value = "20070803130624",
     };
     interactionId = new IDwithRootExtendsion()
     {
         root      = "2.16.840.1.113883.1.6",
         extension = "PRPA_IN201315UV02",
     };
     processingCode = new Code()
     {
         code = "P",
     };
     processingModeCode = new Code()
     {
         code = "R",
     };
     acceptAckCode = new Code()
     {
         code = "NE",
     };
     receiver = new SendReceiver()
     {
         typeCode = "RCV",
         device   = new Device()
         {
             classCode      = "DEV",
             determinerCode = "INSTANCE",
             id             = new IDwithRootExtendsion()
             {
                 root      = "2.16.156.10011.0.1.2",
                 extension = "2.16.156.10011.0.1.2",
             },
         },
     };
     sender = new SendReceiver()
     {
         typeCode = "SND",
         device   = new Device()
         {
             classCode      = "DEV",
             determinerCode = "INSTANCE",
             id             = new IDwithRootExtendsion()
             {
                 root      = "2.16.156.10011.0.1.1",
                 extension = "2.16.156.10011.0.1.1",
             },
         },
     };
     acknowledgement = new CommonAcknowledgement
     {
         typeCode      = "AA",
         targetMessage = new CommonTargetMessage()
         {
             id = new IDwithRootExtendsion()
             {
                 root      = "2.16.156.10011.0",
                 extension = requestId,
             },
         },
         acknowledgementDetail = new CommonAcknowledgementDetail()
         {
             text = "处理成功",
         },
     };
     controlActProcess = new Response()
     {
         classCode = "CACT",
         moodCode  = "EVN",
         subject   = new controlActProcessSubjectReponse()
         {
             typeCode          = "SUBJ",
             registrationEvent = new controlActProcessSubjectRegistrationEvent()
             {
                 classCode  = "REG",
                 moodCode   = "EVN",
                 statusCode = new StatusCode()
                 {
                     code = "active"
                 },
                 subject1 = new Subject1Response()
                 {
                     typeCode = "SBJ",
                     patient  = new Patient()
                     {
                         classCode = "PAT",
                         id        = new IDwithRootExtendsion()
                         {
                             root      = "2.16.156.10011.0.2.1",
                             extension = patient.patient_id,
                         },
                         statusCode = new StatusCode()
                         {
                             code = "active",
                         },
                         patientPerson = new Person()
                         {
                             name = new Name()
                             {
                                 use   = "L",
                                 Value = patient.name,
                             },
                         },
                     },
                 },
                 custodian = new controlActProcessSubjectRegistrationEventCustodian()
                 {
                     typeCode       = "CST",
                     assignedEntity = new controlActProcessSubjectRegistrationEventCustodianAssignedEntity()
                     {
                         classCode = "ASSIGNED",
                         id        = new IDwithRootExtendsion()
                         {
                             root      = "2.16.156.10011.0.3.2",
                             extension = "修改人ID",
                         },
                         assignedPerson = new Person()
                         {
                             classCode      = "PSN",
                             determinerCode = "INSTANCE",
                             name           = new Name()
                             {
                                 use   = "L",
                                 Value = "-",
                             },
                         },
                     },
                 },
             },
         },
     };
 }
예제 #11
0
        public PRPM_IN406110UV01(string message, IAI_ORGANIZATION result, string requestId)
        {
            id = new IDwithRootExtendsion()
            {
                root      = "140CD76A-ED0E-400B-9FD3-60387BCDE0EB",
                extension = "8D73520B-D489-4B70-8F4B-7B5C2D7961B5",
            };
            creationTime = new Time
            {
                value = "20070803130624",
            };
            interactionId = new IDwithRootExtendsion()
            {
                root      = "2.16.840.1.113883.1.6",
                extension = "PRPM_IN406110UV01",
            };
            processingCode = new Code()
            {
                code = "P",
            };
            processingModeCode = new Code()
            {
                code = "I",
            };
            acceptAckCode = new Code()
            {
                code = "AL",
            };
            receiver = new SendReceiver()
            {
                typeCode = "RCV",
                device   = new Device()
                {
                    classCode      = "DEV",
                    determinerCode = "INSTANCE",
                    id             = new IDwithRootExtendsion()
                    {
                        root = "1.2.840.114350.1.13.999.234",
                        //extension = "2.16.156.10011.0.1.2",
                    },
                },
            };
            sender = new SendReceiver()
            {
                typeCode = "SND",
                device   = new Device()
                {
                    classCode      = "DEV",
                    determinerCode = "INSTANCE",
                    id             = new IDwithRootExtendsion()
                    {
                        root = "1.2.840.114350.1.13.999.567",
                        //extension = "2.16.156.10011.0.1.1",
                    },
                },
            };
            acknowledgement = new CommonAcknowledgement()
            {
                typeCode      = "AE",
                targetMessage = new CommonTargetMessage()
                {
                    id = new IDwithRootExtendsion()
                    {
                        root      = "140CD76A-ED0E-400B-9FD3-60387BCDE0EQ",
                        extension = requestId,
                    },
                },
                acknowledgementDetail = new CommonAcknowledgementDetail()
                {
                    text = message,
                },
            };
            controlActProcess = new Response()
            {
                classCode = "CACT",
                moodCode  = "EVN",
                code      = new CodeSystem()
                {
                    code       = "PRPM_TE406110UV01",
                    codeSystem = "2.16.840.1.113883.1.6",
                },
                subject = new controlActProcessSubject()
                {
                    typeCode          = "SUBJ",
                    registrationEvent = new controlActProcessSubjectRegistrationEvent()
                    {
                        classCode  = "REG",
                        moodCode   = "EVN",
                        statusCode = new StatusCode()
                        {
                            code = "active",
                        },
                        subject1 = new controlActProcessSubjectRegistrationEventSubject1()
                        {
                            typeCode       = "SBJ",
                            assignedEntity = new AssignedEntityofOrganization()
                            {
                                classCode = "ASSIGNED",
                                id        = new IDwithRootExtendsion()
                                {
                                    root      = "2.16.156.10011.1.26",
                                    extension = result?.organization_id,
                                },
                                code = new CodeSystem()
                                {
                                    code           = result?.organization_code,
                                    codeSystem     = "2.16.156.10011.2.3.2.62",
                                    codeSystemName = "医疗卫生机构业务科室分类与代码表",
                                    displayName    = "呼吸内科专业",
                                },
                                name    = "",
                                addr    = "",
                                telecom = new Telecom()
                                {
                                },
                                statusCode = new StatusCode()
                                {
                                    code = "active"
                                },
                                assignedPrincipalOrganization = new AssignedPrincipalOrganization()
                                {
                                    classCode      = "ORG",
                                    determinerCode = "INSTANCE",
                                    name           = result?.name
                                },
                            },
                        },
                        custodian = new Custodian()
                        {
                            typeCode       = "CST",
                            assignedEntity = new AssignedEntity()
                            {
                                classCode = "ASSIGNED",

                                id = new IDwithRootExtendsion()
                                {
                                    root      = "2.16.156.10011.1.4",
                                    extension = "120109197706015518",
                                },
                                assignedPerson = new Person()
                                {
                                    classCode      = "PSN",
                                    determinerCode = "INSTANCE",
                                    name           = new Name()
                                    {
                                        use   = "L",
                                        Value = "-",
                                    },
                                },
                                representedOrganization = new RepresentedOrganization()
                                {
                                    classCode      = "ORG",
                                    determinerCode = "INSTANCE",
                                    id             = new IDwithRootExtendsion()
                                    {
                                        root      = "2.16.156.10011.1.26",
                                        extension = "xxx12345-X",
                                    },
                                    name         = "人事科",
                                    contactParty = new ContactParty()
                                    {
                                        classCode     = "CON",
                                        contactPerson = new Person()
                                        {
                                            classCode      = "PSN",
                                            determinerCode = "INSTANCE",
                                            name           = new Name()
                                            {
                                                Value = "-",
                                            },
                                        },
                                    },
                                },
                            },
                        },
                    },
                },
                queryAck = new QueryAck()
                {
                    queryResponseCode = new Code()
                    {
                        code = "OK"
                    },
                },
                queryByParameterPayload = new QueryByParameterPayload
                {
                    statusCode = new StatusCode
                    {
                        code = "new",
                    },
                    organizationID = new ValueSemanticsText <ValuewithRootExtension>
                    {
                        value = new ValuewithRootExtension
                        {
                            root      = "2.16.156.10011.1.26",
                            extension = result?.organization_id,
                        },
                        semanticsText = "AssignedEntity.id",
                    },
                    //organizationName = new ValueSemanticsText<string>
                    //{
                    //    value = result?.name,
                    //    //semanticsText = "PrincipalOrganization.name",
                    //},
                    status = new status
                    {
                        value = new statusValue
                        {
                            code = "active"
                        },
                    },
                },
            };
        }
예제 #12
0
        public PRPM_IN306011UV01(string message, IAI_PROVIDER result, string requestId)
        {
            id = new IDwithRootExtendsion()
            {
                root      = "240CD76A-ED0E-400B-9FD3-60387BCDE0EB",
                extension = "3D73520B-D489-4B70-8F4B-7B5C2D7961B5",
            };
            creationTime = new Time
            {
                value = "20070803130624",
            };
            interactionId = new IDwithRootExtendsion()
            {
                root      = "2.16.840.1.113883.1.6",
                extension = "PRPM_IN306011UV01",
            };
            processingCode = new Code()
            {
                code = "P",
            };
            processingModeCode = new Code()
            {
                code = "I",
            };
            acceptAckCode = new Code()
            {
                code = "AL",
            };
            receiver = new SendReceiver()
            {
                typeCode = "RCV",
                device   = new Device()
                {
                    classCode      = "DEV",
                    determinerCode = "INSTANCE",
                    id             = new IDwithRootExtendsion()
                    {
                        root = "1.2.840.114350.1.13.999.567",
                        //extension = "2.16.156.10011.0.1.2",
                    },
                },
            };
            sender = new SendReceiver()
            {
                typeCode = "SND",
                device   = new Device()
                {
                    classCode      = "DEV",
                    determinerCode = "INSTANCE",
                    id             = new IDwithRootExtendsion()
                    {
                        root = "1.2.840.114350.1.13.999.234",
                        //extension = "2.16.156.10011.0.1.1",
                    },
                },
            };
            acknowledgement = new CommonAcknowledgement()
            {
                typeCode      = "AE",
                targetMessage = new CommonTargetMessage()
                {
                    id = new IDwithRootExtendsion()
                    {
                        //root = "s1ee83ff1-08ab-4fe7-b573-ea777e9bad51",
                        extension = requestId,
                    },
                },
                acknowledgementDetail = new CommonAcknowledgementDetail()
                {
                    text = message,
                },
            };
            controlActProcess = new Response()
            {
                classCode = "CACT",
                moodCode  = "EVN",
                code      = new CodeSystem()
                {
                    code       = "PRPM_TE306110UV01",
                    codeSystem = "2.16.840.1.113883.1.6",
                },

                queryAck = new QueryAck()
                {
                    queryResponseCode = new Code()
                    {
                        code = "error"
                    },
                },
                queryByParameterPayload = new QueryByParameterPayload()
                {
                    statusCode = new StatusCode()
                    {
                        code = "new",
                    },

                    providerID = new ValueSemanticsText <IDwithRootExtendsion>()
                    {
                        value = new IDwithRootExtendsion()
                        {
                            root      = "2.16.156.10011.1.4",
                            extension = "120109197706015518",
                        },
                        semanticsText = "HealthCareProvider.id",
                    },
                },
            };
        }
예제 #13
0
        public PRPM_IN306011UV01(IAI_PROVIDER result, string requestId)
        {
            id = new IDwithRootExtendsion()
            {
                root      = "040CD76A-ED0E-400B-9FD3-60387BCDE0EB",
                extension = "8D73520B-D489-4B70-8F4B-7B5C2D7961B5",
            };
            creationTime = new Time
            {
                value = "20070803130624",
            };
            interactionId = new IDwithRootExtendsion()
            {
                root      = "2.16.840.1.113883.1.6",
                extension = "PRPM_IN306011UV01",
            };
            processingCode = new Code()
            {
                code = "P",
            };
            processingModeCode = new Code()
            {
                code = "I",
            };
            acceptAckCode = new Code()
            {
                code = "AL",
            };
            receiver = new SendReceiver()
            {
                typeCode = "RCV",
                device   = new Device()
                {
                    classCode      = "DEV",
                    determinerCode = "INSTANCE",
                    id             = new IDwithRootExtendsion()
                    {
                        root = "1.2.840.114350.1.13.999.234",
                        //extension = "2.16.156.10011.0.1.2",
                    },
                },
            };
            sender = new SendReceiver()
            {
                typeCode = "SND",
                device   = new Device()
                {
                    classCode      = "DEV",
                    determinerCode = "INSTANCE",
                    id             = new IDwithRootExtendsion()
                    {
                        root = "1.2.840.114350.1.13.999.567",
                        //extension = "2.16.156.10011.0.1.1",
                    },
                },
            };
            acknowledgement = new CommonAcknowledgement()
            {
                typeCode      = "AA",
                targetMessage = new CommonTargetMessage()
                {
                    id = new IDwithRootExtendsion()
                    {
                        root      = "s1ee83ff1-08ab-4fe7-b573-ea777e9bad51",
                        extension = requestId,
                    },
                },
            };
            controlActProcess = new Response()
            {
                classCode = "CACT",
                moodCode  = "EVN",
                code      = new CodeSystem()
                {
                    code       = "PRPM_TE306110UV01",
                    codeSystem = "2.16.840.1.113883.1.6",
                },
                subject = new controlActProcessSubject()
                {
                    typeCode          = "SUBJ",
                    registrationEvent = new controlActProcessSubjectRegistrationEvent()
                    {
                        classCode  = "REG",
                        moodCode   = "EVN",
                        statusCode = new StatusCode()
                        {
                            code = "active",
                        },
                        subject1 = new controlActProcessSubjectRegistrationEventSubject1()
                        {
                            typeCode           = "SBJ",
                            healthCareProvider = new HealthCareProvider()
                            {
                                classCode = "PROV",
                                id        = new IDwithRootExtendsion()
                                {
                                    root      = "2.16.156.10011.1.4",
                                    extension = result?.id_number,
                                },
                                code = new CodeSystem()
                                {
                                    code           = result?.healthcareprovider_code,
                                    codeSystem     = "2.16.156.10011.2.3.3.10",
                                    codeSystemName = "专业技术职务代码( GB/T 8561)",
                                    displayName    = "主任医师",
                                },
                                addr       = "",
                                telecom    = new Telecom {
                                },
                                statusCode = new StatusCode {
                                    code = "active"
                                },
                                effectiveTime = new EffectiveTimewithLowHigh
                                {
                                    low = new Value {
                                        value = result?.effectivetime_low
                                    },
                                    high = new Value {
                                        value = result?.effectivetime_high
                                    },
                                },
                                healthCarePrincipalPerson = new HealthCarePrincipalPerson()
                                {
                                    classCode      = "PSN",
                                    determinerCode = "INSTANCE",
                                    id             = new IDwithRootExtendsion()
                                    {
                                        root      = "2.16.156.10011.1.3",
                                        extension = result?.id_number,
                                    },
                                    name = new Name()
                                    {
                                        use   = "L",
                                        Value = result?.name,
                                    },
                                    administrativeGenderCode = new CodeSystem()
                                    {
                                        code           = result?.gender_code,
                                        codeSystem     = "2.16.156.10011.2.3.3.4",
                                        codeSystemName = "生理性别代码表(GB/T 2261.1)",
                                        displayName    = "男性",
                                    },
                                    birthTime = new Value()
                                    {
                                        value = result?.birth_time,
                                    },
                                    asAffiliate = new AsAffiliate()
                                    {
                                        classCode     = "AFFL",
                                        code          = "",
                                        effectiveTime = new EffectiveTime(),
                                        affiliatedPrincipalOrganization = new AffiliatedPrincipalOrganization()
                                        {
                                            classCode      = "ORG",
                                            determinerCode = "INSTANCE",
                                            id             = new IDwithRootExtendsion()
                                            {
                                                root      = "2.16.156.10011.1.26",
                                                extension = "xxx12345-X",
                                            },
                                            name = result?.organization_name,
                                        },
                                    },
                                    birthplace = new Birthplace()
                                    {
                                        classCode = "BIRTHPL",
                                        addr      = "",//new PatientPersonAddr() { },
                                    },
                                },
                            },
                        },
                        custodian = new Custodian()
                        {
                            typeCode       = "CST",
                            assignedEntity = new AssignedEntity()
                            {
                                classCode = "ASSIGNED",

                                id = new IDwithRootExtendsion()
                                {
                                    root      = "2.16.156.10011.1.4",
                                    extension = "120109197706015518",
                                },
                                assignedPerson = new Person()
                                {
                                    classCode      = "PSN",
                                    determinerCode = "INSTANCE",
                                    name           = new Name()
                                    {
                                        Value = "-",
                                    },
                                },
                                representedOrganization = new RepresentedOrganization()
                                {
                                    classCode      = "ORG",
                                    determinerCode = "INSTANCE",
                                    id             = new IDwithRootExtendsion()
                                    {
                                        root      = "2.16.156.10011.1.26",
                                        extension = "xxx12345-X",
                                    },
                                    name         = "人事科",
                                    contactParty = new ContactParty()
                                    {
                                        classCode     = "CON",
                                        contactPerson = new Person()
                                        {
                                            classCode      = "PSN",
                                            determinerCode = "INSTANCE",
                                            name           = new Name()
                                            {
                                                Value = "-",
                                            },
                                        },
                                    },
                                },
                            },
                        },
                    },
                },
                queryAck = new QueryAck()
                {
                    queryResponseCode = new Code()
                    {
                        code = "OK"
                    },
                },
                queryByParameterPayload = new QueryByParameterPayload()
                {
                    statusCode = new StatusCode()
                    {
                        code = "new",
                    },
                    administrativeGender = new ValueSemanticsText <CodeSystem>()
                    {
                        value = new CodeSystem()
                        {
                            code           = "1",
                            codeSystem     = "2.16.156.10011.2.3.3.4",
                            displayName    = "男性",
                            codeSystemName = "生理性别代码表(GB/T 2261.1)",
                        },
                        semanticsText = "PrincipalPerson.administrativeGenderCode",
                    },
                    dOB = new ValueSemanticsText <Value>()
                    {
                        value = new Value()
                        {
                            value = "20010101"
                        },
                        semanticsText = "PrincipalPerson.birthDate",
                    },
                    providerID = new ValueSemanticsText <IDwithRootExtendsion>()
                    {
                        value = new IDwithRootExtendsion()
                        {
                            root      = "2.16.156.10011.1.4",
                            extension = "120109197706015518",
                        },
                        semanticsText = "HealthCareProvider.id",
                    },
                    providerName = new ValueSemanticsText <string>()
                    {
                        value         = "李医生",
                        semanticsText = "PrincipalPerson.name",
                    },
                },
            };
        }
예제 #14
0
        public MCCI_IN000002UV01(string requestId, string message)
        {
            id = new IDwithRootExtendsion()
            {
                root = "1F1E1169-7205-40F5-8D6D-8BC4B0592030",
                //extension = "22a0f9e0-4454-11dc-a6be-3603d686680R",
            };
            creationTime = new Time
            {
                value = "20070803130624",
            };
            interactionId = new IDwithRootExtendsion()
            {
                root      = "2.16.840.1.113883.1.6",
                extension = "MCCI_IN000002UV01",
            };
            processingCode = new Code()
            {
                code = "P",
            };
            processingModeCode = new Code()
            {
                code = "R",
            };
            acceptAckCode = new Code()
            {
                code = "NE",
            };
            receiver = new SendReceiver()
            {
                typeCode = "RCV",

                device = new Device()
                {
                    classCode      = "DEV",
                    determinerCode = "INSTANCE",
                    id             = new IDwithRootExtendsion()
                    {
                        root = "1.2.840.114350.1.13.99998.8734",
                        //extension = "2.16.156.10011.0.1.2",
                    },
                },
            };
            sender = new SendReceiver()
            {
                typeCode = "SND",
                device   = new Device()
                {
                    classCode      = "DEV",
                    determinerCode = "INSTANCE",
                    id             = new IDwithRootExtendsion()
                    {
                        root = "1.2.840.114350.1.13.99999.4567",
                        //extension = "2.16.156.10011.0.1.1",
                    },
                },
            };
            acknowledgement = new CommonAcknowledgement()
            {
                typeCode      = "AE",
                targetMessage = new CommonTargetMessage()
                {
                    id = new IDwithRootExtendsion()
                    {
                        //root = requestId,
                        extension = requestId,
                    },
                },
                acknowledgementDetail = new CommonAcknowledgementDetail()
                {
                    text = message,
                },
            };
        }
예제 #15
0
        public PRPA_IN201313UV02(string message, IAI_PATIENT patient, string requestId)
        {
            id = new IDwithRootExtendsion()
            {
                root      = "2.16.156.10011.0",
                extension = "22a0f9e0-4454-11dc-a6be-3603d686680R",
            };
            creationTime = new Time
            {
                value = DateTime.Now.ToString("yyyyMMddHHmmss"),
            };
            interactionId = new IDwithRootExtendsion()
            {
                root      = "2.16.840.1.113883.1.6",
                extension = "PRPA_IN201313UV02",
            };
            processingCode = new Code()
            {
                code = "P",
            };
            processingModeCode = new Code()
            {
                code = "R",
            };
            acceptAckCode = new Code()
            {
                code = "NE",
            };
            receiver = new SendReceiver()
            {
                typeCode = "RCV",
                device   = new Device()
                {
                    classCode      = "DEV",
                    determinerCode = "INSTANCE",
                    id             = new IDwithRootExtendsion()
                    {
                        root      = "2.16.156.10011.0.1.2",
                        extension = "2.16.156.10011.0.1.2",
                    },
                },
            };
            sender = new SendReceiver()
            {
                typeCode = "SND",
                device   = new Device()
                {
                    classCode      = "DEV",
                    determinerCode = "INSTANCE",
                    id             = new IDwithRootExtendsion()
                    {
                        root      = "2.16.156.10011.0.1.1",
                        extension = "2.16.156.10011.0.1.1",
                    },
                },
            };
            acknowledgement = new CommonAcknowledgement
            {
                typeCode      = "AE",
                targetMessage = new CommonTargetMessage()
                {
                    id = new IDwithRootExtendsion()
                    {
                        root      = "2.16.156.10011.0",
                        extension = requestId,
                    },
                },
                acknowledgementDetail = new CommonAcknowledgementDetail()
                {
                    text = message,
                },
            };

            controlActProcess = new Failure()
            {
                classCode = "CACT",
                moodCode  = "EVN",
                subject   = new subject_7_1()
                {
                    typeCode            = "SUBJ",
                    registrationRequest = new RegistrationRequest_7_1()
                    {
                        classCode  = "REG",
                        moodCode   = "RQO",
                        statusCode = new StatusCode()
                        {
                            code = "active",
                        },
                        subject1 = new Subject1_7_1()
                        {
                            typeCode = "SBJ",
                            patient  = new Patient_7_1()
                            {
                                classCode = "PAT",
                                id        = new IDwithRootExtendsion()
                                {
                                    root      = "2.16.156.10011.0.2.1",
                                    extension = patient.patient_id,
                                },
                                statusCode = new StatusCode()
                                {
                                    code = "active",
                                },
                                effectiveTime = new EffectiveTime {
                                    value = "20111212141414",
                                },
                                patientPerson = new PatientPerson <AsOtherIDs[]>()
                                {
                                    //classCode = "PSN",
                                    //determinerCode = "INSTANCE",
                                    id = new IDwithRootExtendsion {
                                        root      = "2.16.156.10011.1.3",
                                        extension = "120109197706015516"
                                    },
                                    name = new Name()
                                    {
                                        use   = "L",
                                        Value = patient.name,
                                    },
                                    telecom = new Telecom {
                                        use   = "H",
                                        value = patient.telecom
                                    },
                                    administrativeGenderCode = new CodeSystem {
                                        code        = patient.gender_code,
                                        codeSystem  = "2.16.156.10011.2.3.3.4",
                                        displayName = "男性"
                                    },
                                    birthTime = new Value {
                                        value = patient.birth_time
                                    },
                                    addr = new PatientPersonAddr {
                                        use = "PUB",
                                        streetAddressLine = new StreetAddressLine {
                                            partType = "SAL",
                                            Value    = patient.street_address_line,
                                        },
                                        state = new AddrState {
                                            language = "CH",
                                            Value    = patient.state,
                                        },
                                        city           = patient.city,
                                        county         = patient.county,
                                        streetNameBase = patient.street_name_base,
                                        streetName     = patient.street_name,
                                        houseNumber    = patient.house_number,
                                        postalCode     = patient.postal_code,
                                    },
                                    maritalStatusCode = new CodeSystem {
                                        code        = patient.marital_status_code,
                                        codeSystem  = "2.16.156.10011.2.3.3.5",
                                        displayName = "未婚"
                                    },
                                    ethnicGroupCode = new CodeSystem {
                                        code        = patient.ethnic_group_code,
                                        codeSystem  = "2.16.156.10011.2.3.3.3",
                                        displayName = "汉族"
                                    },
                                    asEmployee = new AsEmployee {
                                        classCode      = "EMP",
                                        occupationCode = new CodeSystem {
                                            code        = patient.occupation_code,
                                            codeSystem  = "2.16.156.10011.2.3.3.7",
                                            displayName = "专业技术人员"
                                        },
                                        employerOrganization = new EmployerOrganization {
                                            classCode      = "ORG",
                                            determinerCode = "INSTANCE",
                                            name           = patient.providerorganization_name,
                                            contactParty   = new ContactParty {
                                                classCode = "CON",
                                                telecom   = new Telecom {
                                                    value = patient.employerorganization_telecom
                                                },
                                            },
                                        },
                                    },
                                    asOtherIDs = new AsOtherIDs[] {
                                        new AsOtherIDs {
                                            classCode = "PAT",
                                            id        = new IDwithRootExtendsion {
                                                root      = "2.16.156.10011.1.19",
                                                extension = patient.asotherids_id1,
                                            },
                                            scopingOrganization = new ScopingOrganization {
                                                classCode      = "ORG",
                                                determinerCode = "INSTANCE",
                                                id             = new IDwithRootExtendsion {
                                                    root      = "2.16.156.10011.1.19",
                                                    extension = patient.scopingorganization_id1,
                                                },
                                            },
                                        },

                                        new AsOtherIDs {
                                            classCode = "PAT",
                                            id        = new IDwithRootExtendsion {
                                                root      = "2.16.156.10011.1.19",
                                                extension = patient.asotherids_id2,
                                            },
                                            scopingOrganization = new ScopingOrganization {
                                                classCode      = "ORG",
                                                determinerCode = "INSTANCE",
                                                id             = new IDwithRootExtendsion {
                                                    root      = "2.16.156.10011.1.19",
                                                    extension = patient.scopingorganization_id2,
                                                },
                                            },
                                        },
                                    },
                                    personalRelationship = new PersonalRelationship {
                                        code    = "",
                                        telecom = new Telecom {
                                            value = patient.personalrelationship_telecom,
                                            use   = "H",
                                        },
                                        relationshipHolder1 = new RelationshipHolder1 {
                                            classCode      = "PSN",
                                            determinerCode = "INSTANCE",
                                            name           = patient.relationshipholder1_name,
                                        },
                                    },
                                },
                                providerOrganization = new ProviderOrganization {
                                    classCode      = "ORG",
                                    determinerCode = "INSTANCE",
                                    id             = new IDwithRootExtendsion {
                                        root      = "2.16.156.10011.1.5",
                                        extension = "XXXXX"
                                    },
                                    name = new Name
                                    {
                                        use   = "L",
                                        Value = "-",//patient.providerorganization_name,
                                    },
                                    contactParty = new ContactParty {
                                        classCode = "CON",
                                    },
                                },
                                coveredPartyOf = new CoveredPartyOf {
                                    typeCode       = "COV",
                                    coverageRecord = new CoverageRecord {
                                        classCode   = "COV",
                                        moodCode    = "EVN",
                                        beneficiary = new BeneficiarywithTypeCode {
                                            typeCode    = "BEN",
                                            beneficiary = new BeneficiarywithClassCode {
                                                classCode = "MBR",
                                                code      = new CodeSystem {
                                                    code           = patient.beneficiary_code,
                                                    codeSystem     = "2.16.156.10011.2.3.1.248",
                                                    codeSystemName = "医疗保险类别代码",
                                                    displayName    = "城镇职工基本医疗保险"
                                                },
                                            },
                                        },
                                    },
                                },
                            },
                        },
                        author = new Author()
                        {
                            typeCode       = "AUT",
                            assignedEntity = new AssignedEntity()
                            {
                                classCode = "ASSIGNED",
                                id        = new IDwithRootExtendsion()
                                {
                                    root      = "2.16.156.10011.0.3.2",
                                    extension = "登记人ID",
                                },
                                assignedPerson = new Person()
                                {
                                    classCode      = "PSN",
                                    determinerCode = "INSTANCE",
                                    name           = new Name()
                                    {
                                        use = "L", Value = "-"
                                    },
                                },
                            },
                        },
                    },
                },
            };
        }
예제 #16
0
        public PRPA_IN900350UV02(string message, IAI_MEDICAL_REGISTRATION result, string requestId)
        {
            id = new IDwithRootExtendsion()
            {
                //root = "2.16.156.10011.0",
                extension = "22a0f9e0-4454-11dc-a6be-3603d6866807",
            };
            creationTime = new Time()
            {
                value = "20130101",
            };
            interactionId = new IDwithRootExtendsion()
            {
                root      = "2.16.840.1.113883.1.6",
                extension = "PRPA_IN900300UV02",
            };
            processingCode = new Code()
            {
                code = "P",
            };
            processingModeCode = new Code()
            {
                code = "R",
            };
            acceptAckCode = new Code()
            {
                code = "AL",
            };
            receiver = new SendReceiver()
            {
                typeCode = "RCV",
                device   = new Device
                {
                    classCode      = "DEV",
                    determinerCode = "INSTANCE",
                    id             = new IDwithRootExtendsion()
                    {
                        root = "1.2.840.114350.1.13.99999.4567",
                        //extension = "2.16.156.10011.0.1.2",
                    }
                    //id=new ReceiverDeviceID() { },
                },
            };
            sender = new SendReceiver()
            {
                typeCode = "SND",
                device   = new Device
                {
                    classCode      = "DEV",
                    determinerCode = "INSTANCE",
                    id             = new IDwithRootExtendsion()
                    {
                        root = "1.2.840.114350.1.13.99998.8734",
                        //extension = "2.16.156.10011.0.1.1",
                    }
                    //id=new ReceiverDeviceID() { },
                },
            };
            acknowledgement = new CommonAcknowledgement
            {
                typeCode      = "AE",
                targetMessage = new CommonTargetMessage {
                    id = new IDwithRootExtendsion {
                        extension = requestId
                    },
                },
                acknowledgementDetail = new CommonAcknowledgementDetail {
                    text = message
                }
            };
            controlActProcess = new Response()
            {
                classCode = "ACTN",
                moodCode  = "PRMS",

                queryAck = new QueryAck()
                {
                    queryResponseCode = new Code()
                    {
                    },
                },
            };
        }
예제 #17
0
        public PRPA_IN201306UV02(string message, IAI_PATIENT patient, string requestId)
        {
            id = new IDwithRootExtendsion()
            {
                root      = "2.16.156.10011.0",
                extension = "8D73520B-D489-4B70-8F4B-7B5C2D7961B5",
            };
            creationTime = new Time
            {
                value = "2012110911900",
            };
            interactionId = new IDwithRootExtendsion()
            {
                root      = "2.16.840.1.113883.1.6",
                extension = "PRPA_IN201306UV02",
            };
            processingCode = new Code()
            {
                code = "T",
            };
            processingModeCode = new Code()
            {
                code = "I",
            };
            acceptAckCode = new Code()
            {
                code = "AA",
            };
            receiver = new SendReceiver()
            {
                typeCode = "RCV",
                device   = new Device()
                {
                    classCode      = "DEV",
                    determinerCode = "INSTANCE",
                    id             = new IDwithRootExtendsion()
                    {
                        root      = "2.16.156.10011.0.1.2",
                        extension = "2.16.156.10011.0.1.2",
                    },
                },
            };
            sender = new SendReceiver()
            {
                typeCode = "SND",
                device   = new Device()
                {
                    classCode      = "DEV",
                    determinerCode = "INSTANCE",
                    id             = new IDwithRootExtendsion()
                    {
                        root      = "2.16.156.10011.0.1.1",
                        extension = "2.16.156.10011.0.1.1",
                    },
                },
            };
            acknowledgement = new CommonAcknowledgement
            {
                typeCode      = "AA",
                targetMessage = new CommonTargetMessage()
                {
                    id = new IDwithRootExtendsion()
                    {
                        root      = "2.16.156.10011.0",
                        extension = requestId,
                    },
                },
                acknowledgementDetail = new CommonAcknowledgementDetail()
                {
                    text = message,
                },
            };


            controlActProcess = new Response()
            {
                classCode = "CACT",
                moodCode  = "EVN",
                code      = new CodeSystem()
                {
                    code       = "PRPA_TE201306UV02",
                    codeSystem = "2.16.840.1.113883.1.6",
                },
                subject = new controlActProcessSubject()
                {
                    typeCode          = "SUBJ",
                    registrationEvent = new controlActProcessSubjectRegistrationEvent()
                    {
                        classCode  = "REG",
                        moodCode   = "EVN",
                        statusCode = new StatusCode()
                        {
                            code = "active"
                        },
                        subject1 = new controlActProcessSubjectRegistrationEventSubject1()
                        {
                            typeCode = "SBJ",
                            patient  = new controlActProcessSubjectRegistrationEventSubject1Patient()
                            {
                                classCode = "PAT",
                                id        = new IDwithRootExtendsion()
                                {
                                    root      = "2.16.156.10011.0.2.1",
                                    extension = patient?.patient_id,
                                },
                                statusCode = new StatusCode()
                                {
                                    code = "active"
                                },
                                effectiveTime = new EffectiveTime()
                                {
                                    value = "20111212141414",
                                },
                                patientPerson = new PatientPerson <AsOtherIDs[]>
                                {
                                    id = new IDwithRootExtendsion()
                                    {
                                        root      = "2.16.156.10011.1.3",
                                        extension = patient?.id_number,
                                    },
                                    name = new Name()
                                    {
                                        use   = "L",
                                        Value = patient?.name,
                                        //content = patient?.name,
                                    },
                                    telecom = new Telecom()
                                    {
                                        value = patient?.telecom,
                                        use   = "H"
                                    },
                                    administrativeGenderCode = new CodeSystem()
                                    {
                                        code           = patient?.gender_code,
                                        codeSystem     = "2.16.156.10011.2.3.3.4",
                                        displayName    = "男性",
                                        codeSystemName = "生理性别代码表(GB/T 2261.1)"
                                    },
                                    birthTime = new Value()
                                    {
                                        value = patient?.birth_time
                                    },
                                    addr = new PatientPersonAddr()
                                    {
                                        use = "PUB",
                                        streetAddressLine = new StreetAddressLine()
                                        {
                                            partType = "SAL",
                                            Value    = patient?.street_address_line,
                                        },
                                        state = new AddrState()
                                        {
                                            language = "CH", Value = patient?.state
                                        },
                                        city           = patient?.city,
                                        county         = patient?.county,
                                        streetNameBase = patient?.street_name_base,
                                        streetName     = patient?.street_name,
                                        houseNumber    = patient?.house_number,
                                        postalCode     = patient?.postal_code,
                                    },
                                    maritalStatusCode = new CodeSystem()
                                    {
                                        code           = patient?.marital_status_code,
                                        codeSystem     = "2.16.156.10011.2.3.3.5",
                                        displayName    = "未婚",
                                        codeSystemName = "婚姻状况代码表(GB/T 2261.2)",
                                    },
                                    ethnicGroupCode = new CodeSystem()
                                    {
                                        code           = patient?.ethnic_group_code,
                                        codeSystem     = "2.16.156.10011.2.3.3.3",
                                        displayName    = "汉族",
                                        codeSystemName = "民族类别代码表(GB 3304)",
                                    },
                                    asEmployee = new AsEmployee()
                                    {
                                        classCode      = "EMP",
                                        occupationCode = new CodeSystem()
                                        {
                                            code           = patient?.occupation_code,
                                            codeSystem     = "2.16.156.10011.2.3.3.13",
                                            displayName    = "专业技术人员",
                                            codeSystemName = "从业状况(个人身体)代码表(GB/T 2261.4)",
                                        },
                                        employerOrganization = new EmployerOrganization()
                                        {
                                            classCode      = "ORG",
                                            determinerCode = "INSTANCE",
                                            name           = patient?.employerorganization_name,
                                            contactParty   = new ContactParty()
                                            {
                                                classCode = "CON",
                                                telecom   = new Telecom()
                                                {
                                                    value = patient?.employerorganization_telecom,
                                                    use   = "WP",
                                                },
                                            },
                                        },
                                    },
                                    asOtherIDs = new AsOtherIDs[] {
                                        new AsOtherIDs()
                                        {
                                            classCode = "PAT",
                                            id        = new IDwithRootExtendsion()
                                            {
                                                root      = "2.16.156.10011.1.19",
                                                extension = patient?.asotherids_id1,
                                            },
                                            scopingOrganization = new ScopingOrganization()
                                            {
                                                classCode      = "ORG",
                                                determinerCode = "INSTANCE",
                                                id             = new IDwithRootExtendsion()
                                                {
                                                    root      = "2.16.156.10011.1.5",
                                                    extension = patient?.scopingorganization_id1,
                                                },
                                            },
                                        },
                                    },
                                },
                                providerOrganization = new ProviderOrganization()
                                {
                                    classCode      = "ORG",
                                    determinerCode = "INSTANCE",
                                    id             = new IDwithRootExtendsion()
                                    {
                                        root = "2.16.156.10011.1.5",
                                        //extension = "XXXXX"
                                    },
                                    name = new Name()
                                    {
                                        use   = "L",
                                        Value = patient?.providerorganization_name
                                    },
                                    contactParty = new ContactParty()
                                    {
                                        classCode = "CON",
                                    },
                                },
                                subjectOf1 = new SubjectOf1()
                                {
                                    typeCode = "SBJ",
                                    queryMatchObservation = new QueryMatchObservation()
                                    {
                                        classCode = "COND",
                                        moodCode  = "EVN",
                                        code      = new Code()
                                        {
                                            code = "PDQ"
                                        },
                                        value = new ValuewithValueType()
                                        {
                                            value = "100",

                                            type = "INT",
                                        },
                                    },
                                },
                                coveredPartyOf = new CoveredPartyOf()
                                {
                                    typeCode       = "COV",
                                    coverageRecord = new CoverageRecord()
                                    {
                                        classCode   = "COV",
                                        moodCode    = "EVN",
                                        beneficiary = new BeneficiarywithTypeCode()
                                        {
                                            typeCode    = "BEN",
                                            beneficiary = new BeneficiarywithClassCode()
                                            {
                                                classCode = "MBR",
                                                code      = new CodeSystem()
                                                {
                                                    code           = patient?.beneficiary_code,
                                                    codeSystem     = "2.16.156.10011.2.3.1.248",
                                                    codeSystemName = "医疗保险类别代码",
                                                    displayName    = "城镇职工基本医疗保险",
                                                },
                                            },
                                        },
                                    },
                                },
                            },
                        },
                        custodian = new Custodian()
                        {
                            typeCode       = "CST",
                            assignedEntity = new AssignedEntity()
                            {
                                classCode = "ASSIGNED",
                                id        = new IDwithRootExtendsion()
                                {
                                    root      = "2.16.156.10011.0.3.2",
                                    extension = "登记人ID"
                                },
                                assignedPerson = new Person()
                                {
                                    classCode      = "PSN",
                                    determinerCode = "INSTANCE",
                                    name           = new Name()
                                    {
                                        use = "L",
                                        //Value= "赵武"
                                    },
                                },
                            },
                        },
                    },
                },
                queryAck = new QueryAck()
                {
                    queryId = new IDwithRootExtendsion
                    {
                        root      = "2.16.156.10011.0",
                        extension = "22a0f9e0-4454-11dc-a6be-3603d6866807",
                    },
                    queryResponseCode = new Code()
                    {
                        code = "OK"
                    },
                },
            };
        }
예제 #18
0
        public MCCI_IN000002UV01(string requestId)
        {
            id = new IDwithRootExtendsion()
            {
                root = "1F1E1169-7205-40F5-8D6D-8BC4B0592030",
            };
            creationTime = new Time
            {
                value = "20070803130624",
            };
            interactionId = new IDwithRootExtendsion()
            {
                root      = "2.16.840.1.113883.1.6",
                extension = "MCCI_IN000002UV01",
            };
            processingCode = new Code()
            {
                code = "P",
            };
            processingModeCode = new Code()
            {
                code = "R",
            };
            acceptAckCode = new Code()
            {
                code = "NE",
            };
            receiver = new SendReceiver()
            {
                typeCode = "RCV",

                device = new Device()
                {
                    classCode      = "DEV",
                    determinerCode = "INSTANCE",
                    id             = new IDwithRootExtendsion()
                    {
                        root = "1.2.840.114350.1.13.999.234",
                        //extension = "2.16.156.10011.0.1.2",
                    },
                },
            };
            sender = new SendReceiver()
            {
                typeCode = "SND",
                device   = new Device()
                {
                    classCode      = "DEV",
                    determinerCode = "INSTANCE",
                    id             = new IDwithRootExtendsion()
                    {
                        root = "1.2.840.114350.1.13.999.567",
                        //extension = "2.16.156.10011.0.1.1",
                    },
                },
            };
            acknowledgement = new CommonAcknowledgement()
            {
                typeCode      = "AA",
                targetMessage = new CommonTargetMessage()
                {
                    id = new IDwithRootExtendsion()
                    {
                        root      = "040CD76A-ED0E-400B-9FD3-60387BCDE0EB",
                        extension = requestId,
                    },
                },
                acknowledgementDetail = new CommonAcknowledgementDetail()
                {
                    text = "处理成功",
                },
            };
        }