integracija sustava enaručivanje s g2 aplikacijama · 2012-02-03 · aplikacijama informacijskog...

31
Integracija sustava eNaručivanje s G2 aplikacijama

Upload: others

Post on 21-Jan-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Integracija sustava eNaručivanje s G2 aplikacijama

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 2 (31)

Revizije

Revizija Datum Pripremio Opis revizija i/ili promjene

PA1 2010-01-25 EPETLAZ Inicijalna verzija

PA2 2010-02-20 EPETLAZ Doradio opis

PA3 2010-02-21 ETKIVBE Dorada nakon interne inspekcije

PA4 2010-02-26 EPETLAZ Dorada nakon interne inspekcije

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 3 (31)

Sadržaj 1. UVOD ................................................................................................................................................................... 4

1.1. SAŽETAK FUNKCIONALNOSTI SUSTAVA ENARUČIVANJA ............................................................................. 4 1.2. INTEGRACIJA S G2 APLIKACIJAMA ............................................................................................................... 5 1.3. NAZIVLJE ..................................................................................................................................................... 6 1.4. KRATICE ...................................................................................................................................................... 7

2. POSLOVNI PROCESI NARUČIVANJA ......................................................................................................... 8 2.1. NARUČIVANJEM PUTEM G2 APLIKACIJE ....................................................................................................... 8 2.2. OTKAZIVANJE IZ ORDINACIJE PZZA PUTEM INTEGRIRANE G2 APLIKACIJE .................................................. 9

3. PROGRAMSKA SUČELJA SUSTAVA ENARUČIVANJA ........................................................................ 10 3.1. PRIJAVA NA SUSTAV .................................................................................................................................. 10 3.2. DOHVATI SLOBODNE TERMINE ZA PZZ NARUDŽBE .................................................................................... 11 3.3. KREIRANJE PZZ NARUDŽBE ....................................................................................................................... 14 3.4. OTKAZIVANJE NARUDŽBE .......................................................................................................................... 16 3.5. DOHVAĆANJE POSTOJEĆIH NARUDŽBI KOJE JE KREIRAO LIJEČNIK PZZ-A .................................................. 17 3.6. LISTE KODOVA I STATUSA .......................................................................................................................... 19

4. SIGURNOSNA OKOLINA .............................................................................................................................. 22 4.1. POLICY AGENT .......................................................................................................................................... 22 4.2. ACCESS MANAGER .................................................................................................................................... 22 4.3. PRIJAVA I KORIŠTENJE WEB SERVISA ......................................................................................................... 22

5. DODATAK – WSDL OPISI PROGRAMSKIH SUČELJA .......................................................................... 25 5.1. LOGIN ........................................................................................................................................................ 25 5.2. SUČELJA ZA PROGRAMSKO NARUČIVANJE IZ G2 APLIKACIJA ..................................................................... 26

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 4 (31)

1. Uvod Namjena ovog dokumenta je specificirati programska sučelja sustava eNaručivanja prema G2

aplikacijama informacijskog sustava PZZ-a. Dokument ukratko opisuje sustav eNaručivanja, te detaljno

specificira sintaksu i semantiku poruka koje sustav eNaručivanja razmjenjuje sa G2 aplikacijama.

1.1. Sažetak funkcionalnosti sustava eNaručivanja

Sustav eNaručivanja proširenje je postojećeg informacijskog sustava PZZa koje omogućuje

ostvarivanje naručivanja iz ordinacija obiteljske medicine u bolnice, centralno naručivanje za bolnice koje

nemaju vlastiti sustav bolničkog naručivanja, te objedinjavanje podataka o narudžbama iz bolnica koje

imaju vlastiti bolnički sustav naručivanja. Ovaj dokument opisuje dio sustava eNaručivanje koji se odnosi

na integraciju s liječničkim G2 aplikacijama. Slika 1 prikazuje model sustava eNaručivanja integriranog u

sustav PZZa. Posebno je plavom bojom označen dio sustava koji se odnosi na integraciju s G2

aplikacijama. Sustav eNaručivanja ugrađuje se u već postojeći središnji informacijski sustav PZZa te

koristi postojeću infrastrukturu ISPZZa na četiri razine: razini računalne opreme, razini programske

potpore, razini sigurnosne okoline te razini podatka:

• Sustav eNaručivanja izvodi se na istom računalnoj opremi (eng. hardware) na kojoj se izvode i

ostale funkcionalnosti središnjeg informacijskog sustava.

• Sustav eNaručivanja koristi istu osnovnu programsku potporu (eng. middleware) kao i ostale

funkcionalnosti ISPZZa.

• Sustav eNaručivanja iskorištava već izgrađenu potporu za sigurnosnu okolinu i osnovno praćenje

rada (eng. auditing) središnjeg informacijskog sustava primarne zdravstvene zaštite.

• Sustav eNaručivanja iskorištava već postojeće registre i šifrarnike ISPZZa, poput elektroničkog

populacijskog registra, registra resurasa u zdravstvu, te šifrarnika medicinskih djelatnosti i postupaka.

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 5 (31)

Bolnički Informacijski Sustav

Bolnički Informacijski Sustav

Ordinacija opće/obiteljske medicine

Središnji Informacijski sustav PZZa

Arhiva elektroničkih zdravstvenih

kartona

Elektronički Populacijski

Registar

Registar resurasa u zdravstvu

Registar termina i narudžbi

Bolnički sustav naručivanja

Bez internog sustava

naručivanja

Informacijski Sustav Min. Zdr. i Soc. Skrbi

Komunikacijskamreža ISPZZ

12

34

5

Portal PZZa

Sustav upravljanja porukama

Sustav eNaručivanja

Slika 1: Elementi cjelokupnog sustava naručivanja pacijenta

1.2. Integracija s G2 aplikacijama

Integracija sustava eNaručivanje s G2 aplikacijama podrazumijeva razmjenu i sinkronizaciju

relevantnih podataka između navedenih sustava. Podaci obuhvaćaju raspoložive termine zdravstvenih

postupaka i pretraga, informacije o kreiranim narudžbama, pacijentima i zdravstvenim djelatnicima koji

sudjeluju u procesu naručivanja te administrativne podatke o ustanovama i radnim skupinama odnosno

mjestima na kojima je narudžbe moguće realizirati.

Kao integracijska tehnologija odabrani su SOAP Web servisi. Sučelja i poruke poslovne logike sustava

eNaručivanje, koja su otvorena prema G2 aplikacijama sintakso su opisana WSDL, dok se značenje

pojedinih polja detaljno opisano u ovome dokumentu. Komunikacija se između sustava odvija se

razmjenom SOAP XML poruka putem ugniježđenih unutar poruka HTTPa. Na ovaj način omogućena je

interoperabilnost između sustava razvijenih na različitim programskim platformama.

U nastavku dokumenta opisani su poslovni procese i scenariji naručivanja prilikom kojih dolazi do

razmjene podataka između eNaručivanja i G2 liječničkih aplikacija.

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 6 (31)

1.3. Nazivlje

Tabela 1 Nazivlje korišteno u dokumentu

Hrvatski naziv Engleski naziv Opis

Termin Slot Vremenski odsječak u kojemu je moguće obaviti specijalistički pregled odnosno postupak.

Termini pregleda

Exam slots Skup svih vremenskih odsječaka unutar kojih je moguće obavljati specijalističke preglede odnosno postupke. Na primjer: prvi pregled u kardiološkoj ambulanti obavlja se ponedjeljkom i srijedom od 10 do 14 sati.

PZZ termini pregleda

PZZ exam slots Svi termini pregleda koje je moguće rezervirati izravno iz ordinacija primarne zdravstvene zaštite. Naručivanje u PZZ termine obavlja se ili Web sučeljem sustava eNaručivanja ili putem G2 aplikacije s ugrađenom potporom za eNaručivanje.

Sustav eNaručivanja

eNaručivanje booking system

Središnji sustav elektroničkog naručivanja pacijenata u HR. Omogućuje naručivanje pacijenata na preglede iz primarne zdravstvene zaštite, te objedinjuje podatke iz svih bolničkih sustava naručivanja.

G2 aplikacija za ugrađenom potporom za eNaručivanje

G2 application with eNaručivanje support

Liječnička G2 aplikacija koja ostvaruje grafička sučelja za prikaz PZZ termina u bolnicama i omogućuje naručivanje u iste. Aplikacija pronalazi PZZ termine i obavlja naručivanje putem API-a središnjeg sustava eNaručivanja.

Status pregleda Exam status Definira status pojedine narudžbe za pregled odnosno postupak. Status pregleda može biti na primjer: naručen, otkazan, ostvaren, neostvaren jer pacijent nije došao, neostvaren jer nisu ispunjeni uvjeti pregleda...

Radna skupina Work group Radna skupina je grupa ljudi koja obavlja medicinski pregled/postupak. Prilikom naručivanja na pregled, pacijent se naručuje na pregled kod pojedine radne skupine. Radna skupina u pojedinoj bolnici može biti odjel, zavod ili grupa liječnika.

Identifikator narudžbe

Booking ID Broj koji jedinstveno određuje narudžbu unutar pojedinog sustava naručivanja. Pošto više sustava naručivanja može istovremeno izdavati narudžbe svaki identifikator narudžbe vrijedi samo unutar onog sustava naručivanja koji ga je izdao. Središnji sustav naručivanja prati koji sustav je uz svaki identifikator narudžbe

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 7 (31)

1.4. Kratice

Tabela 2 Popis kratica korištenih u dokumentu

MBO MATIČNI BROJ OSIGURANIKA (HZZO broj ima 9 znamenaka)

PZZ PRIMARNA ZDRAVSTVENA ZAŠTITA

SKZZ SPECIJALISTIČKO-KONZILIJARNA ZDRAVSTVENA ZAŠTITA

MZSS MINISTARSTVO ZDRAVSTVA I SOCIJALNE SKRBI

BIS Bolnički informacijski sustav

BSN Bolnički sustav naručivanja

GWT Google Web Toolkit – sustav izgradnje Web aplikacija

ORM Object Relation mapping

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 8 (31)

2. Poslovni procesi naručivanja Poslovni procesi naručivanja obuhvaćaju definicije zadataka i redoslijede izvođenja zadataka u

postupku naručivanja pacijenta na pregled u bolnici. Poslovni procesi definiraju ulaze i izlaze pojedinih

zadataka te preduvjete koji su potrebni da bi se pojedini zadaci u postupku naručivanja izveli.

U nastavku su opisani procesi prilikom kojih dolazi do integracije sustava eNaručivanje s G2

aplikacijama. Za svaki proces navedena su imena Web servisa koji se pozivaju prilikom integracije.

Detaljan opis sučelja Web servisa naveden je u sljedećem poglavlju.

2.1. Naručivanjem putem G2 aplikacije

Slika 2 definira proces naručivanja pacijenta iz ordinacije PZZa na pregled u PZZ terminu korištenjem

integrirane G2 aplikacije. G2 aplikacija predstavlja sučelje prema liječniku. G2 aplikacija prosljeđuje upite

za pretragu dostupnih termina i rezervaciju termina programskom sučelju sustava eNaručivanje.

Slika 2: Proces naručivanja pacijenta iz ordinacije PZZa putem integrirane G2 aplikacije

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 9 (31)

2.2. Otkazivanje iz ordinacije PZZa putem integrirane G2

aplikacije

Proces otkazivanja iz ordinacije PZZa putem sučelja G2 aplikacije koristi se u ordinacijama PZZa koje

imaju G2 aplikaciju integriranu sa sustavom eNaručivanja. Osnovna namjena procesa je omogućiti

liječnicima PZZa da u dogovoru s pacijentom otkažu narudžbu koju su sami zadali.

Slika 3 prikazuje proces otkazivanja iz ordinacije PZZa putem G2 aplikacije. Akcije za pretraživanje i

otkazivanje narudžbe ostvaruju se pute G2 sučelja. G2 sučelje zadane akcije prosljeđuje sustavu

eNaručivanja putem programskih sučelja za pronalaženje narudžbe i otkazivanje narudžbe.

Slika 3: Proces otkazivanja pacijenta naručenog u PZZ termin iz ordinacije PZZa putem Web sučelja eNaručivanja

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 10 (31)

3. Programska sučelja sustava eNaručivanja Namjena ovog poglavlja je definirati programska sučelja sustava eNaručivanja na funkcijskoj razini.

Definiranjem na funkcijskoj razini određuju se preduvjeti poziva programskog sučelja, osnovni ulazni i

izlazni parametri poziva sučelja, te posljedice pozive sučelja. Ne definira se sintaksa poziva, već samo

značenje parametara. Točna sintaksna građa poruka iznesena je u dodatku priloženom ovome

dokumentu. Nazivi elemenata poruka navedeni u ovome poglavlju izravno se mogu pronaći u

odgovarajućim porukama u Dodatku.

3.1. Prijava na sustav

Omogućuje prijavu korisnika na sustav.

Preduvjeti Izdan certifikat G2 aplikaciji ili korisniku G2 aplikacije. Uspostavljena VPN veza između G2 aplikacije i sustava eNaručivanja.

Ulazi Login Request – Prazan element. Sadržaj poruke nije bitan budući da se provjerava korisnički certifikat koji se nalazi u zaglavlju HTTP zahtjeva.

Izlazi Login Response

Opis Naziv elementa Tip podatka

Status operacije operationStatus operationStatus

Status kod statusCode int (moguće vrijednosti definirane u Tablici 4)

Poruka o statusu statusMessage String (moguće vrijednosti definirane u Tablici 4)

Posljedice Ako sustav uspješno autenticira korisnika vratiti će uspješan status kod operacije. Nadalje vraća se i session cookie prema kojem će sustav u narednim pozivima prepoznati da je korisnik autenticiran te se uspostavlja SSL konekcija (vidjeti poglavlje Sigurnosna okolina). Session coockie spremljen je unutar zaglavlja HTTP odgovora, te zato nije naveden među parametrima odgovora.

Iznimke U slučaju da sustav ne prepozna vjerodostojnost klijenta baciti će iznimku i neće uspostaviti SSL konekciju.

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 11 (31)

3.2. Dohvati slobodne termine za PZZ narudžbe

Omogućuje dohvaćanje slobodnih termina u koje je moguće naručiti pacijenta.

Preduvjeti Izdan certifikat liječniku PZZ koji koristi G2 aplikaciju. Liječnik je prethodno uspostavio VPN vezu između računala na kojem izvodi G2 aplikaciju i sustava eNaručivanja. Pridjeljene ovlasti za izvođenje naručivanja iz PZZ-a certifikatu djelatnika PZZ-a koji koristi G2 aplikaciju. Polja označena zvjezdicom (*) su obavezna.

Ulazi GetFreePZZTimeSlotsRequest

Opis Naziv elementa Tip podatka

Šifra djelatnosti – jedinstveno određuje djelatnost za koju se traže slobodni termini.

djelatnostSifra* String

Šifra postupka – jedinstveno određuje postupak za koji se traže slobodni termini.

postupakSifra* String

Šifra radne skupine – jedinstveno određuje radnu skupinu unutar ustanove u kojoj se traže slobodni termini. Kako bi se pretražili slobodni termini u svim radnim skupinama, za šifru radne skupine unosi se „0“ ili se element ostavlja prazan.

radnaSkupinaSifra String

Početak razdoblja dohvata – određuje početni datum vremenskog razdoblja unutar kojeg se traže slobodni termini.

periodStartDate* String (Format: dd.MM.yyyy)

Kraj razdoblja dohvata – određuje završni datum vremenskog razdoblja unutar kojeg se traže slobodni termini.

periodEndDate String (Format: dd.MM.yyyy)

Vrijeme od – određuje vrijeme u satima, odnosno početak dijela dana unutar kojega se traže slobodni termini.

periodStartTime* String (Format: HH:mm)

Vrijeme do – određuje vrijeme u satima, odnosno kraj dijela dana unutar kojega se traže slobodni termini.

periodEndTime* String (Format: HH:mm)

Broj zapisa – određuje maksimalan broj slobodnih termina koji će se vratiti kao rezultat poziva.

numOfRecords* int

Matični broj zdravstvenog djelatnika – određuje zdravstvenog djelatnika koji dohvaća valjane narudžbe.

zdrdjeMatBr* String

Izlazi GetFreePZZTimeSlotsResponse (U slučaju kada je vraćen prazan element nije pronađen niti jedan slobodan termin koja zadovoljava kriterije zadane ulaznim parametrima)

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 12 (31)

Opis Naziv elementa Tip podatka

Status. Svaki izvještaj sadrži sljedeće podatke.

operationStatus operationStatus

Status Kod – Sadrži poruku koja definira uspješnost izvođenja narudžbe. Lista mogućih statusa navedena je Tablici 4.

statusCode int (Tabela 4)

Poruka o statusu – Poruka o statusu (Tabela 4).

statusMessage String (Tabela 4)

Lista slobodnih termina – sadrži popis svih narudžbi u zadanom vremenskom razdoblju. Svaka narudžba sadrži sljedeće podatke:

terminiPeriodDisplay List<terminiPeriodDispaly>

Slobodni termin enarTerminDisplay List<enarTerminDisplay>

Datum – datum i vrijeme slobodnog termina

datum String (Format: yyyy-MM-dd HH:mm:ss

Napomena za djelatnika PZZ-a

napomena-primarac String

Napomena za pacijenta

napomenta-pacijent String

Lista vremenskih odsječaka terminSlotDisplay List<terminSlotDislpay>

Jedinstveni identifikacijski broj vremenskog odsječka

terminSlotId int

Redni broj vremenskog odsječka – za termine koji imaju više vremenskih odsječaka

sequenceNumber int

Slobodan – označava broj slobodnih mjesta unutar termina

free int

Početak – označava početak vremenskog odsječka

startTime String (Format: HH:mm)

Radna skupina orgjedDisplay int

orgjedId int

nadorgjedId int

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 13 (31)

superOrgjedId int

company String

name String

streetName String

streetNumber String

Posljedice Poziv sučelja nema drugih posljedica osim vraćanja liste slobodnih termina za željenu djelatnost i postupak u određenoj ustanovi ili u svim ustanovama unutar zadanog vremensko razdoblje. U slučaju da nije pronađena niti jedna narudžba vraća se jedino poruka o uspješno izvršenoj operaciji bez podataka o narudžbama. Ovisno o konfiguraciji eNaručivanja zapisani su audit podaci o pozivu sučelja.

Iznimke U slučaju neovlaštenog pristupa odgovor je Http status kod 403 Frobidden. U slučaju iznimke sustav šalje SOAP iznimku koja sadrži poruku o pogrešci.

Tip iznimke Uzrok iznimke

Soap fault Fault code: Server Fault message: Server error

Došlo je do pogreške na poslužitelju

Soap fault Fault code: Client Fault message: Invalid arguments exception. Make sure that mandatory parameters are set

Nisu uneseni obavezni ulazni parametri

Soap fault Fault code: Client Fault string: Invalid message received

Poruka sadrži pogrešne elemente, atribute ili tipove podataka

Soap fault Fault code: Client Fault string: Invalid date format

Datum je pogrešno formatiran

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 14 (31)

3.3. Kreiranje PZZ narudžbe

Omogućuje kreiranje narudžbe djelatniku liječniku PZZ-a korištenjem G2 aplikacije.

Preduvjeti Izdan certifikat liječniku PZZ koji koristi G2 aplikaciju. Liječnik je prethodno uspostavio VPN vezu između računala na kojem izvodi G2 aplikaciju i sustava eNaručivanja. Pridjeljene ovlasti za izvođenje naručivanja iz PZZ-a certifikatu djelatnika PZZ-a koji koristi G2 aplikaciju. Polja označena zvjezdicom (*) su obavezna.

Ulazi BookFromPZZ Request

Opis Naziv elementa Tip podatka

Podaci o narudžbi BookFromPZZRequest*

BookFromPZZRequest

Šifra djelatnosti – jedinstveno određuje djelatnost na koju se kreira narudžba.

djelatnostSifra* String

Šifra postupka – jedinstveno određuje postupak na koji se kreira narudžba.

postupakSifra* String

Tip narudžbe – opcionalni parametar - rezervirano za buduću upotrebu

orderStatusType int

Matični broj zdravstvenog djelatnika– određuje zdravstvenog djelatnika koji obavlja promjenu statusa.

zdrdjeMatBr* String

Napomena za liječnika specijalista – ovo polje se koristi ukoliko liječnik PZZ-a želi prilikom kreiranja narudžbe napisati komentar za liječnika specijalista koji će izvesti naručeni medicinski postupak

commentForDoctorSpecialist

String

Jedinstveni identifikacijski broj vremenskog odsječka – ovaj broj je tipično dohvaćen iz poziva za dohvat slobodnih termina (poglavlje 3.2)

terminSlotId* int

Podaci o pacijentu Patient* Patient

Matični broj osigurane osobe (MBO)

mbo* String

Ime pacijenta name* String

Prezime pacijenta

surname* String

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 15 (31)

Kontakt telefon contactTel* String

Izlazi BookFromPZZResponse

Opis Naziv elementa Tip podatka

Status. Svaki izvještaj sadrži sljedeće podatke. operationStatus operationStatus

Status Kod – Sadrži poruku koja definira uspješnost izvođenja narudžbe. Lista mogućih statusa navedena je Tablici 4.

statusCode int (Tabela 4)

Poruka o statusu – Poruka o statusu (Tabela 4).

statusMessage String (Tabela 4)

Lokalna šifra narudžbe – u slučaju uspješnog kreiranja narudžbe vraća se jedinstvena šifra koja je pridružena narudžbi generirana od sustava.

orderLocalCode String

Posljedice Nakon uspješno izvedenog poziva nova narudžba pohranjena je u bazi podatka središnjeg sustava eNaručivanja. Ovisno o konfiguraciji eNaručivanja zapisani su audit podaci o pozivu sučelja.

Iznimke U slučaju neovlaštenog pristupa odgovor je Http status kod 403 Frobidden. U slučaju iznimke sustav šalje SOAP iznimku koja sadrži poruku o pogrešci.

Tip iznimke Uzrok iznimke

Soap fault Fault code: Client Fault message: Invalid message received

Poruka sadrži pogrešne elemente, atribute ili tipove podataka

Soap fault Fault code: Server Fault message: Time slot has already been reserved

Netko je prethodno ili istodobno pristupio vremenskom odsječku

Soap fault Fault code: Server Fault message: Data access exception

Došlo je do pogreške prilikom pristupa bazi podataka

Soap fault Fault code: Server Fault message: Server error

Došlo je do pogreške na poslužitelju

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 16 (31)

3.4. Otkazivanje narudžbe

Omogućuje otkazivanje narudžbe liječniku PZZ-a korištenjem G2 aplikacije. Liječnik može otkazati

samo one narudžbe koje je sam prethodno kreirao.

Preduvjeti Izdan certifikat liječniku PZZ koji koristi G2 aplikaciju. Liječnik je prethodno uspostavio VPN vezu između računala na kojem izvodi G2 aplikaciju i sustava eNaručivanja. Pridjeljene ovlasti za izvođenje naručivanja iz PZZ-a certifikatu djelatnika PZZ-a koji koristi G2 aplikaciju. Polja označena zvjezdicom (*) su obavezna.

Ulaz CancelFromPZZ Request

Opis Naziv elementa Tip podatka

Lokalna šifra narudžbe – jedinstveni broj koji jednoznačno određuje narudžbu koju se želi otkazati

orderLocalCode* String

Matični broj zdravstvenog djelatnika– određuje zdravstvenog djelatnika koji obavlja ažuriranje statusa narudžbe.

zdrdjeMatBr* String

Izlazi CancelFromPZZ Response

Opis Naziv elementa Tip podatka

Status otkazivanja – Određuje da li je otkazivanje narudžbe uspjelo ili nije. Eventualno sadrži statusnu poruku o uzroku greške.

operationStatus operationStatus

Status Kod – Sadrži poruku koja potvrđuje da je status pregleda promijenjen. U slučaju pogreške umjesto potvrde upisa stavlja se statusna poruka s uzrokom greške (Tabela 4).

statusCode int (Tabela 4)

Poruka o statusu – Poruka o statusu (Tabela 4).

statusMessage String (Tabela 4)

Posljedice Ako je otkazivanje narudžbe uspješno izvršeno, u središnjoj bazi eNaručivanja narudžbi je promijenjen status u CANCELED. Ovisno o konfiguraciji eNaručivanja zapisani su audit podaci o pozivu sučelja.

Iznimke U slučaju neovlaštenog pristupa odgovor je Http status kod 403 Frobidden. U slučaju iznimke sustav šalje SOAP iznimku koja sadrži poruku o pogrešci.

Tip iznimke Uzrok iznimke

Soap fault Poruka sadrži pogrešne elemente, atribute ili tipove podataka

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 17 (31)

Fault code: Client Fault message: Invalid message received

Soap fault Fault code: Server Fault message: Time slot has already been reserved

Netko je prethodno ili istodobno već otkazao traženu narudžbu

Soap fault Fault code: Server Fault message: Data access exception

Došlo je do pogreške prilikom pristupa bazi podataka

Soap fault Fault code: Server Fault message: Server error

Došlo je do pogreške na poslužitelju

3.5. Dohvaćanje postojećih narudžbi koje je kreirao liječnik

PZZ-a

Omogućuje dohvaćanje prethodno kreiranih narudžbi korištenjem G2 aplikacije. Liječnik PZZ-a može

dohvatiti samo one narudđbe koje je sam prethodno kreirao.

Preduvjeti Izdan certifikat liječniku PZZ koji koristi G2 aplikaciju. Liječnik je prethodno uspostavio VPN vezu između računala na kojem izvodi G2 aplikaciju i sustava eNaručivanja. Pridjeljene ovlasti za izvođenje naručivanja iz PZZ-a certifikatu djelatnika PZZ-a koji koristi G2 aplikaciju. Obavezan je unos barem jednog ulaznog podatka (kriterija pretraživanja) uz zdrdjeMatBr.

Ulaz GetPZZBookingsMadeByZdrdje Request

Opis Naziv elementa Tip podatka

Početak vremenskog perioda unutar kojega se traže narudžbe

startDate String (Format: dd.MM.yyyy)

Kraj vremenskog perioda unutar kojega se traže narudžbe

endDate String (Format: dd.MM.yyyy)

Početak vremenskog perioda unutar kojeg je bila kreirana narudžba koja se traži

startDateCreation String (Format: dd.MM.yyyy)

Kraj vremenskog perioda unutar kojeg je bila kreirana narudžba koja se traži

endDateCreation String (Format: dd.MM.yyyy)

Podaci o pacijentu Patient Patient

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 18 (31)

Matični broj osigurane osobe (MBO)

mbo String

Ime pacijenta name String Prezime pacijenta surname String Kontakt telefon contactTel String Matični broj zdravstvenog djelatnika– određuje zdravstvenog djelatnika koji obavlja ažuriranje statusa narudžbe.

zdrdjeMatBr* String

Izlazi GetPZZBookingsMadeByZdrdje Response

Opis Naziv elementa Tip podatka

Lista narudžbi – Sadrži sve narudžbe koje je kreirao liječnik PZZ-a koji dohvaća narudžbe, a koje zadovoljavaju navedene uvjete pretraživanja

narudzba List<narudzba>

Šifra djelatnosti – jedinstveno određuje djelatnost naručenog postupka.

djelatnostSifra String

Šifra postupka – jedinstveno određuje postupak iz n arudžbe.

postupakSifra String

Komentar - koji je liječnik PZZa upisao prilikom zadavanja narudžbe

commentDoctorPzz String

Zadano vrijeme pregleda startDate String

Vrijeme kreiranja narudžbe creationDate String

Podaci o pacijentu patient Patient

Matični broj osigurane osobe (MBO)

mbo String

Ime pacijenta name String

Prezime pacijenta surname String

Kontakt telefon contactTel String

Posljedice Poruka u odgovoru sadrži sve narudžbe koje zadovoljavaju navedene uvjete pretraživanja. Ovisno o konfiguraciji eNaručivanja zapisani su audit podaci o pozivu sučelja.

Iznimke U slučaju neovlaštenog pristupa odgovor je Http status kod 403 Frobidden. U slučaju iznimke sustav šalje SOAP iznimku koja sadrži poruku o pogrešci.

Tip iznimke Uzrok iznimke

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 19 (31)

Soap fault Fault code: Client Fault message: Invalid message received

Poruka sadrži pogrešne elemente, atribute ili tipove podataka

Soap fault Fault code: Server Fault message: Data access exception

Došlo je do pogreške prilikom pristupa bazi podataka

Soap fault Fault code: Server Fault message: Server error

Došlo je do pogreške na poslužitelju

Sustav eNaručivanje ne odgovara za integritet podataka. Vjerodostojnost podataka poslanih u poruci odgovornost je proizvođača G2 aplikacije s kojom se aplikacija eNaručivanje integrira.

3.6. Liste kodova i statusa

Skup konstanti koje definiraju status narudžbe.

Tabela 3 Popis konstanti koje definiraju status narudžbe Naziv Opis Vrijednost

SCHEDULED Narudžba je kreirana 1

DONE Narudžba je uspješno

obavljena

2

NO_SHOW Narudžba nije obavljena. 3

RESCHEDULED Narudžba je prebačena u drugi

termin

4

CANCELED Narudžba je otkazana 5

Skup statusnih kodova i poruka

Tabela 4 Popis statusnih kodova poruka Status kod Status poruka Opis

200 Operation completed successfully Operacija je uspješno obavljena

400 Missing mandatory parameters Operacija nije uspješno obavljena

jer nisu uneseni svi obavezni

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 20 (31)

parametri

401 Invalid orderLocalCode - booking

with that code does not exist in

database

Otkazivanje narudžbe nije

uspjelo. Narudžba sa zadanom

šifrom ne postoji.

402 Invalid date format Datum je zadan u pogrešnom

formatu

403 Input dates are not valid Datum početka ili kraja perioda je

pogrešno zadan. Datum kojim se

zadaje kraj perioda ne smije biti

prije datuma početka perioda.

Također period ne smije

obuhvaćati datume u prošlosti.

503 Database error Došlo je do pogreške prilikom

pristupa bazi podataka

601 Requested resource is already in

transaction. Try again when

resource is unlocked.

Došlo je do nedozvoljenog

istovremenog pristupa određenim

podacima

602 Time slot has already been

reserved.

Pogreška prilikom spremanja

PZZ narudžbe. Vremenski

odsječak u koji se pokušava

spremiti narudžba već je

prethodno zauzet.

603 Time slot with requested id does

not exist.

Vremenski odsječak s traženim

jedinstvenim identifikacijskim

brojem ne postoji.

631 Failed to save pzz order. PZZ

order with requested Order local

code already exists in a database

Pogreška prilikom spremanja

PZZ narudžbe. Narudžba sa

zatraženim jedinstvenim brojem

narudžbe već postoji u bazi

632 Failed to update pzz order. PZZ

order with requested Order local

code does not exist in a database

Pogreška prilikom ažuriranja PZZ

narudžbe. Narudžba sa

zatraženim jedinstvenim brojem

narudžbe ne postoji u bazi

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 21 (31)

633 Failed to change status. New

status is unknown or it is not

allowed

Pogreška prilikom promjene

statusa narudžbe. Nova

vrijednost statusa ne postoji ili

nije dozvoljena.

634 Failed to change status. Status

was previously changed

Pogreška prilikom promjene

statusa. Status je već prethodno

promijenjen.

635 Failed to cancel order. Order has

already been canceled

Pogreška prilikom otkazivanja

narudžbe. Narudžba je prethodno

već otkazana.

701 Invalid zdravstveni postupak sifra Zdravstveni postupak s traženom

šifrom ne postoji u bazi podataka.

702 Invalid zdravstvena djelatnost

sifra

Zdravstvena djelatnost s

traženom šifrom ne postoji u bazi

podataka.

703 Invalid patient MBO Zadan je pogrešan matični broj

osigurane osobe (MBO)

704 Invalid zdrdjeMatBr Zadan je pogrešan matični broj

zdravstvenog djelatnika.

705 Invalid terminSlotId, djelatnostId,

postupakId parameters

combination

Ne postoji termin sa zadanim

jedinstvenim identifikacijskim

brojem za traženu djelatnost i

postupak.

706 Invalid radna skupina and/or user

is not allowed to manage it

Ne postoji tražena radna skupina

ili prijavljeni korisnik nema ovlasti

za njeno administriranje.

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 22 (31)

4. Sigurnosna okolina Sigurnosna okolina sustava eNaručivanja istovjetna je sigurnosnoj okolini ostalih funkcionalnosti

sustava HNIS-a, ali se zbog modela razmjene poruka korištenog u sustavu eNaručivanja način korištenja

sigurnosne okoline kod sustava eNaručivanja neznatno razlikuje od načina korištenje kod drugih

funkcionalnosti ISPZZa. U ostatku poglavlja opisane su dvije osnovne komponente sigurnosne okoline

sustava eNaručivanja te je iznesen način sigurnosnog povezivanja G2 aplikacija sa sustavom

eNaručivanja.

4.1. Policy Agent

SUN Policy Agent je sustav koji omogućuje automatiziranu provjeru prava pristupa korisnika. Navedeni

sustav sastavni je dio JAVA SUN Enterprise Servera. Konfiguracija Policy agenta naslijeđena je iz prve

faze ISPZZa, te je podešena na taj način da Policy Agent u suradnji sa Access Managerom dopušta

pristup programskim sučeljima eNaručivanja samo za one HTTPS zahtjeve koji su autenticirani na

klijentskoj strani privatnim ključem korisnika (cezih smart card). Dodatno, autenticirani korisnik mora imati

ovlasti pristupa određenoj Web adresi, a time i programskom sučelju. Policy Agent je uključen u obradu

svakog zahtjeva koji se prosljeđuje ISPZZ sustavu. Odnosno, on djeluje poput filtera koji 'skenira' sve

zahtjeve koji dolaze u sustav.

4.2. Access Manager

SUN Access Manager je sustav koji omogućuje autentikaciju i autorizaciju pristupa korisnika. Navedeni

sustav sastavni je dio Java Sun Enterprise Servera. Konfiguracija Access Managera naslijeđena je iz prve

faze postavljanja ISPZZa. Access Manager na osnovi sigurnosnih podataka dostavljenih od Policy Agenta

prepoznaje/autenticira korisnika te i dozvoljava otvaranje novih sjednica prema sustavu ISPZZa, a time i

sustavu eNaručivanja.

4.3. Prijava i korištenje Web servisa

Kako bi bio u mogućnosti koristiti Web servise G2 korisnik ili sustav prethodno se moraju prijaviti na

sustav eNaručivanja. Klijentski certifikat korisnika ili sustava preko čitača kartice pohranjuje se u zaštićenu

datoteku (key store) operacijskog sustava računala na kojem se izvodi G2 aplikacija. Certifikat je zatim

potrebno programski učitati iz zaštićene datoteke u zaglavlje HTTPS zahtjeva. Slika 4 prikazuje proces

autentikacije.

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 23 (31)

Slika 4: Prijava na sustav

Kako bi se autenticirao klijent prvo mora pozvati Web servis LoginRequest (WSDL opis servisa

iznesen je u dodatku dokumenta). Poziv Web servisa LoginRequest presreće Policy Agent te ga

preusmjerava (engl. redirect) prema Access Manager-u. Access Manager zatim provjerava korisnički

certifikat te odobrava odnosno odbija pristup. Ukoliko je klijent uspješno autenticiran Access Manager

šalje još jedan zahtjev za preusmjeravanjem prema adresi na poslužitelju na kojem se nalazi aplikacija.

Prilikom narednih poziva Web servisa u poruku je potrebno programski uključiti cookie koji je raspoloživ u

slučaju prethodne uspješne autentikacije LoginRequest Web servisom. Policy agent prepoznaje da je

klijent od kojega je došao zahtjev koji sadrži cookie prethodno uspješno prijavljen te mu dozvoljava

izvršavanje Web servisa za koji je autoriziran. Dužnost je proizvođača G2 aplikacije da ispravno odradi

slijed preusmjeravanja poziva prilikom pozivanja Web servisa eNaručivanja.

Primjer poziva Web servisa za integraciju s G2 aplikacijom prikazan je na Slici 6, koja prikazuje

izvršavanje operacije GetPZZOrders nakon uspješne autentikacije Login Web servisom.

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 24 (31)

Slika 5: Izvršavanje GetPZZOrder web servisa nakon uspješne autentikacije

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 25 (31)

5. Dodatak – WSDL opisi programskih sučelja U ovome odjeljku navedeni su WSDL opisi web servisa Login koji je predstavlja sigurnosnu osnovu za

izvođenje integracije za G2 aplikacijama, te samog web servisa za integraciju sa G2 aplikacijama. Oba

WSDL dokumenta sadrže ispravnu sintaksu poruka koje se izmjenjuju između G2 aplikacija i sustava

eNaručivanja. Web adrese na kojima se servisi nalaze istaknute u dokumentima su adrese iz

certifikacijske okoline. Inačice dokumenta sa adresama iz produkcijske okoline biti će objavljenje nakon

postavljanja aplikacije na produkcijsku okolinu.

5.1. Login

<?xml version="1.0" encoding="UTF-8" standalone="no"?> <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:schema="http://enar.cezih.hr/cfremoting/schemas" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" targetNamespace="http://enar.cezih.hr/cfremoting/schemas"> <wsdl:types> <xs:schema xmlns:schemas="http://enar.cezih.hr/cfremoting/schemas" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://enar.cezih.hr/cfremoting/schemas"> <xs:element name="LoginResponse"> <xs:complexType> <xs:sequence> <xs:element ref="schemas:operationStatus"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="operationStatus"> <xs:complexType> <xs:sequence> <xs:element ref="schemas:statusCode"/> <xs:element ref="schemas:statusMessage"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="statusCode" type="xs:int"/> <xs:element name="statusMessage" type="xs:string"/> <xs:element name="LoginRequest"> </xs:element> </xs:schema> </wsdl:types> <wsdl:message name="LoginResponse"> <wsdl:part name="LoginResponse" element="schema:LoginResponse"> </wsdl:part> </wsdl:message> <wsdl:message name="LoginRequest"> <wsdl:part name="LoginRequest" element="schema:LoginRequest"> </wsdl:part> </wsdl:message> <wsdl:portType name="Login"> <wsdl:operation name="Login"> <wsdl:input name="LoginRequest" message="schema:LoginRequest"> </wsdl:input> <wsdl:output name="LoginResponse" message="schema:LoginResponse"> </wsdl:output> </wsdl:operation>

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 26 (31)

</wsdl:portType> <wsdl:binding name="LoginBinding" type="schema:Login"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <wsdl:operation name="Login"> <soap:operation soapAction=""/> <wsdl:input name="LoginRequest"> <soap:body use="literal"/> </wsdl:input> <wsdl:output name="LoginResponse"> <soap:body use="literal"/> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="LoginService"> <wsdl:port name="LoginPort" binding="schema:LoginBinding"> <soap:address location="https://testweb.cezih.hr:444/eNarucivanjeSI/login"/> </wsdl:port> </wsdl:service> </wsdl:definitions>

5.2. Sučelja za programsko naručivanje iz G2 aplikacija

<?xml version="1.0" encoding="UTF-8" standalone="no"?> <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:schema="http://enar.cezih.hr/cfremoting/schemas" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" targetNamespace="http://enar.cezih.hr/cfremoting/schemas"> <wsdl:types> <xs:schema xmlns:schemas="http://enar.cezih.hr/cfremoting/schemas" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://enar.cezih.hr/cfremoting/schemas"> <xs:element name="GetFreePZZTimeSlotsRequest"> <xs:complexType> <xs:sequence> <xs:element ref="schemas:djelatnostSifra"/> <xs:element ref="schemas:postupakSifra"/> <xs:element ref="schemas:radnaSkupinaSifra"/> <xs:element ref="schemas:periodStartDate"/> <xs:element ref="schemas:periodEndDate"/> <xs:element ref="schemas:periodStartTime"/> <xs:element ref="schemas:periodEndTime"/> <xs:element ref="schemas:numOfRecords"/> <xs:element ref="schemas:zdrdjeMatBr"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="djelatnostSifra" type="xs:string"/> <xs:element name="postupakSifra" type="xs:string"/> <xs:element name="radnaSkupinaSifra" type="xs:string"/> <!-- format: dd.MM.yyy --> <xs:element name="periodStartDate" type="xs:string"/> <xs:element name="periodEndDate" type="xs:string"/> <!-- format: HH:mm:ss --> <xs:element name="periodStartTime" type="xs:string"/> <xs:element name="periodEndTime" type="xs:string"/> <xs:element name="numOfRecords" type="xs:int"/> <xs:element name="zdrdjeMatBr" type="xs:string"/> <xs:element name="GetFreePZZTimeSlotsResponse"> <xs:complexType> <xs:sequence> <xs:element ref="schemas:operationStatus"/>

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 27 (31)

<xs:element maxOccurs="unbounded" ref="schemas:terminiPeriodDisplay"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="terminiPeriodDisplay"> <xs:complexType> <xs:sequence> <xs:element ref="schemas:enarTerminDisplay"/> <xs:element maxOccurs="unbounded" ref="schemas:terminSlotDisplay"/> <xs:element ref="schemas:orgjedDisplay"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="enarTerminDisplay"> <xs:complexType> <xs:sequence> <xs:element name="enarTerminId" type="xs:int"/> <xs:element name="occupiedCapacity" type="xs:int"/> <xs:element name="startDate" type="xs:string"/> <xs:element name="startTime" type="xs:string"/> <xs:element name="commentPZZDoctor" type="xs:string"/> <xs:element name="commentPatient" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="terminSlotDisplay"> <xs:complexType> <xs:sequence> <xs:element name="terminSlotId" type="xs:int"/> <xs:element name="sequenceNumber" type="xs:short"/> <xs:element name="free" type="xs:short"/> <xs:element name="startTime" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="orgjedDisplay"> <xs:complexType> <xs:sequence> <xs:element name="orgjedId" type="xs:int"/> <xs:element name="nadorgjedId" type="xs:int"/> <xs:element name="superOrgjedId" type="xs:int"/> <xs:element name="description" type="xs:string"/> <xs:element name="company" type="xs:string"/> <xs:element name="name" type="xs:string"/> <xs:element name="streetName" type="xs:string"/> <xs:element name="streetNumber" type="xs:string"/> <xs:element name="naseljeId" type="xs:int"/> <xs:element name="tipdzuId" type="xs:int"/> <xs:element name="validThroughStartTime" type="xs:string"/> <xs:element name="validThroughEndTime" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="BookFromPZZRequest"> <xs:complexType> <xs:sequence> <xs:element ref="schemas:djelatnostSifra"/> <xs:element ref="schemas:postupakSifra"/> <xs:element ref="schemas:patient"/> <xs:element ref="schemas:orderStatusType"/>

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 28 (31)

<xs:element ref="schemas:zdrdjeMatBr"/> <xs:element ref="schemas:commentForDoctorSpecialist"/> <xs:element name="terminSlotId" type="xs:int"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="orderStatusType" type="xs:int"/> <xs:element name="commentForDoctorSpecialist" type="xs:string"/> <xs:element name="patient"> <xs:complexType> <xs:sequence> <xs:element name="mbo" type="xs:int"/> <xs:element name="name" type="xs:string"/> <xs:element name="surname" type="xs:string"/> <xs:element name="contactTel" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="BookFromPZZResponse"> <xs:complexType> <xs:sequence> <xs:element ref="schemas:operationStatus"/> <xs:element ref="schemas:orderLocalCode"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="operationStatus"> <xs:complexType> <xs:sequence> <xs:element ref="schemas:statusCode"/> <xs:element ref="schemas:statusMessage"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="statusCode" type="xs:int"/> <xs:element name="statusMessage" type="xs:string"/> <xs:element name="orderLocalCode" type="xs:string"/> <xs:element name="CancelFromPZZRequest"> <xs:complexType> <xs:sequence> <xs:element ref="schemas:orderLocalCode"/> <xs:element ref="schemas:zdrdjeMatBr"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="CancelFromPZZResponse"> <xs:complexType> <xs:sequence> <xs:element ref="schemas:operationStatus"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="GetPZZBookingsMadeByZdrdjeRequest"> <xs:complexType> <xs:sequence> <xs:element minOccurs="0" name="startDate" type="xs:string"/> <xs:element name="endDate" type="xs:string"/> <xs:element name="startDateCreation" type="xs:string"/> <xs:element name="endDateCreation" type="xs:string"/> <xs:element ref="schemas:patient"/> <xs:element ref="schemas:zdrdjeMatBr"/> <xs:element ref="schemas:orderLocalCode"/>

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 29 (31)

</xs:sequence> </xs:complexType> </xs:element> <xs:element name="GetPZZBookingsMadeByZdrdjeResponse"> <xs:complexType> <xs:sequence> <xs:element ref="schemas:operationStatus"/> <xs:element maxOccurs="unbounded" ref="schemas:narudzba"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="narudzba"> <xs:complexType> <xs:sequence> <xs:element ref="schemas:djelatnostSifra"/> <xs:element ref="schemas:postupakSifra"/> <xs:element name="startDate" type="xs:string"/> <xs:element name="creationDate" type="xs:string"/> <xs:element name="commentDoctorPzz" type="xs:string"/> <xs:element ref="schemas:patient"/> <xs:element ref="schemas:orderLocalCode"/> </xs:sequence> </xs:complexType> </xs:element> </xs:schema> </wsdl:types> <wsdl:message name="CancelFromPZZRequest"> <wsdl:part name="CancelFromPZZRequest" element="schema:CancelFromPZZRequest"> </wsdl:part> </wsdl:message> <wsdl:message name="BookFromPZZResponse"> <wsdl:part name="BookFromPZZResponse" element="schema:BookFromPZZResponse"> </wsdl:part> </wsdl:message> <wsdl:message name="GetPZZBookingsMadeByZdrdjeResponse"> <wsdl:part name="GetPZZBookingsMadeByZdrdjeResponse" element="schema:GetPZZBookingsMadeByZdrdjeResponse"> </wsdl:part> </wsdl:message> <wsdl:message name="CancelFromPZZResponse"> <wsdl:part name="CancelFromPZZResponse" element="schema:CancelFromPZZResponse"> </wsdl:part> </wsdl:message> <wsdl:message name="GetFreePZZTimeSlotsResponse"> <wsdl:part name="GetFreePZZTimeSlotsResponse" element="schema:GetFreePZZTimeSlotsResponse"> </wsdl:part> </wsdl:message> <wsdl:message name="GetFreePZZTimeSlotsRequest"> <wsdl:part name="GetFreePZZTimeSlotsRequest" element="schema:GetFreePZZTimeSlotsRequest"> </wsdl:part> </wsdl:message> <wsdl:message name="BookFromPZZRequest"> <wsdl:part name="BookFromPZZRequest" element="schema:BookFromPZZRequest"> </wsdl:part> </wsdl:message> <wsdl:message name="GetPZZBookingsMadeByZdrdjeRequest"> <wsdl:part name="GetPZZBookingsMadeByZdrdjeRequest" element="schema:GetPZZBookingsMadeByZdrdjeRequest"> </wsdl:part>

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 30 (31)

</wsdl:message> <wsdl:portType name="G2Booking"> <wsdl:operation name="CancelFromPZZ"> <wsdl:input name="CancelFromPZZRequest" message="schema:CancelFromPZZRequest"> </wsdl:input> <wsdl:output name="CancelFromPZZResponse" message="schema:CancelFromPZZResponse"> </wsdl:output> </wsdl:operation> <wsdl:operation name="GetFreePZZTimeSlots"> <wsdl:input name="GetFreePZZTimeSlotsRequest" message="schema:GetFreePZZTimeSlotsRequest"> </wsdl:input> <wsdl:output name="GetFreePZZTimeSlotsResponse" message="schema:GetFreePZZTimeSlotsResponse"> </wsdl:output> </wsdl:operation> <wsdl:operation name="BookFromPZZ"> <wsdl:input name="BookFromPZZRequest" message="schema:BookFromPZZRequest"> </wsdl:input> <wsdl:output name="BookFromPZZResponse" message="schema:BookFromPZZResponse"> </wsdl:output> </wsdl:operation> <wsdl:operation name="GetPZZBookingsMadeByZdrdje"> <wsdl:input name="GetPZZBookingsMadeByZdrdjeRequest" message="schema:GetPZZBookingsMadeByZdrdjeRequest"> </wsdl:input> <wsdl:output name="GetPZZBookingsMadeByZdrdjeResponse" message="schema:GetPZZBookingsMadeByZdrdjeResponse"> </wsdl:output> </wsdl:operation> </wsdl:portType> <wsdl:binding name="G2BookingBinding" type="schema:G2Booking"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <wsdl:operation name="CancelFromPZZ"> <soap:operation soapAction=""/> <wsdl:input name="CancelFromPZZRequest"> <soap:body use="literal"/> </wsdl:input> <wsdl:output name="CancelFromPZZResponse"> <soap:body use="literal"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="GetFreePZZTimeSlots"> <soap:operation soapAction=""/> <wsdl:input name="GetFreePZZTimeSlotsRequest"> <soap:body use="literal"/> </wsdl:input> <wsdl:output name="GetFreePZZTimeSlotsResponse"> <soap:body use="literal"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="BookFromPZZ"> <soap:operation soapAction=""/> <wsdl:input name="BookFromPZZRequest"> <soap:body use="literal"/> </wsdl:input> <wsdl:output name="BookFromPZZResponse"> <soap:body use="literal"/> </wsdl:output>

18/00021-FCPBA 101 24/1-5 Rev PA4 © Ericsson Nikola Tesla d. d. 31 (31)

</wsdl:operation> <wsdl:operation name="GetPZZBookingsMadeByZdrdje"> <soap:operation soapAction=""/> <wsdl:input name="GetPZZBookingsMadeByZdrdjeRequest"> <soap:body use="literal"/> </wsdl:input> <wsdl:output name="GetPZZBookingsMadeByZdrdjeResponse"> <soap:body use="literal"/> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="G2BookingService"> <wsdl:port name="G2BookingPort" binding="schema:G2BookingBinding"> <soap:address location="https://testweb.cezih.hr:444/eNarucivanjeSI/services/wsG2Booking"/> </wsdl:port> </wsdl:service> </wsdl:definitions>