Page History: Web API
Compare Page Revisions
Page Revision: 17.12.2015. 10:57:AM
Korištenje e-Visitor Web API funkcionalnosti
Sučelje je izvedeno kao REST service (root URI: https://www.evisitor.hr/eVisitorRhetos_API/Rest/). Kroz eVisitor Web API sučelje moguće je izvršiti sve operacije koje su dostupne kroz web sučelje same eVisitor aplikacije, pri čemu vrijede ista sigurnosna i poslovna pravila. Primjeri korištenja biti će prikazani u C# programskom jeziku koristeći RestSharp REST klijent. Dozvoljene vrijednosti šifrarnika korištenih u pozivima metoda dostupne su na wiki stranici e-Visitora -
Web API - Lista šifrarnika.
Svi parametri za rest pozive se šalju u JSON formatu.
Za pregled novosti u pojedinim verzijama REST-a posjetite stranicu
WEB API - Novosti
Prijava (login) na e-Visitor Web API
Da bi pristup API-ju bio dozvoljen potrebno se prijaviti (login) u sustav koristeći Authentication service API (URI: https://www.evisitor.hr/eVisitorRhetos_API/Resources/AspNetFormsAuth/Authentication/), koji implementira slijedeće metode:
- Login
- Interface: (string UserName, string Password, bool PersistCookie) -> bool
- Primjer request data: {"UserName":"myusername","Password":"mypassword","PersistCookie":false}
- Odgovor je true pri uspješnom loginu, inače false. Pri uspješnom loginu odgovor servera sadrži i niz cookie-a (authentication, affinity, language) koji se moraju slati prilikom svakog poziva API REST servisa.
- Logout
- Nema nikakvih parametara, potrebno je proslijediti dobivene cookie-e. Odgovor je prazan.
Primjer prijave na sustav se nalazi u datoteci Authentication.cs, u prilogu
Htz.eVisitor.WebApi.Test.zip. Primjer za PHP nalazi se u prilogu
eVisitor.PHP.zip.
Pristupni podaci u primjeru su samo ogledni. Ukoliko želite pristupiti sustavu eVisitor, obratite se korisniku za kojeg programirate informacijski sustav.
Vrste REST resursa
U ovom poglavlju biti će objašnjene sve dostupne vrste REST resursa. Svi konkretni resursi biti će definirani vrstom i specifičnim informacijama za pojedinu vrstu resursa.
Entity
Ovaj resurs podržava čitanje, unos, izmjenu i brisanje podataka. Neki od entity resursa ne podržavaju direktnu izmjenu podataka zbog svoje složenosti i ovisnosti o drugim resursima. Njihova izmjena je podržana posebnim metodama(Action-ima).
Entity resurs biti će opisan relativnim path-om, popisom atributa, http metoda, te parametrima metoda.
Primjer opisa jednog entiteta:
County
- Path: Htz/County
- Atributi:
- ID (guid)
- Name (string)
- OrdinalNumber (int)
- ClusterCountyID (guid)
Entity resurs podržava slijedeće metode:
GET - dohvat podataka
- Parametri:
- page - broj stranice koji se želi dohvatiti
- psize - broj zapisa po stranici
- sort - atribut (ili više njih odvojeni zarezom) po kojem se dohvat sortira (dodaci asc i desc označuju način srotiranja).
- filters - popis uvjeta filtranja. Svaki uvjet mora sadržavati tri podatka: Property, Operation i Value. Podržane su slijedeće operacije: equal, notequal, greater, greaterequal, less, lessequal, startswith, contains, datein (podržanost operacija ovisi o tipu podataka)
- Rezultat:{Records:[]}
- primjer poziva metode:
https://www.evisitor.hr/eVisitorRhetos_API/Rest/Htz/Country/?psize=20&page=1&filters=[{"Property":"Active","Operation":"equal","Value":"true"},{"Property":"CodeTwoLetters","Operation":"startswith","Value":"a"}]&sort=NameNational%20desc
- Uz svaku GET metodu podržana je i metoda TotalRecordsAndCount (entityPath/TotalRecordsAndCount) koja u rezultatu uz Records vraća i TotalCount, te metoda TotalCount koja vraća samo TotalCount. Obje metode podržavaju iste parametre kao i GET metoda. Slijedi primjer poziva RecordsAndTotalCount metode:
https://www.evisitor.hr/eVisitorRhetos_API/Rest/Htz/Country/RecordsAndTotalCount?psize=20&page=1&sort=NameNational%20desc
- primjer poziva metode za dohvat određenog zapisa:
https://www.evisitor.hr/eVisitorRhetos_API/Rest/Htz/Country/e6229d5e-cccc-4477-8206-9f17f95f54b1
POST - unos novog zapisa
- Parametri: kao parametar http requesta potrebno je poslati JSON serijaliziranu instancu novog zapisa
- Rezultat: {ID} id (guid) novog zapisa ukoliko je zapis uspješno snimljen. Ukoliko je došlo do greške tada metoda vraća JSON {SystemMessage, UserMessage} koji sadrže sistemske odnosno validacijske greške zbog kojih snimanje nije uspjelo.
PUT - izmjena zapisa
- na path entiteta potrebno je dodati i njegov id (npr. https://www.evisitor.hr/eVisitorRhetos_API/Rest/Htz/Country/e6229d5e-cccc-4477-8206-9f17f95f54b1)
- Parametri: kao parametar http requesta potrebno je poslati JSON serijaliziranu instancu zapisa
- Rezultat: prazan ukoliko je zapis uspješno snimljen. Ukoliko je došlo do greške tada metoda vraća JSON {SystemMessage, UserMessage} koji sadrže sistemske odnosno validacijske greške zbog kojih snimanje nije uspjelo.
DELETE - brisanje zapisa
- na path entiteta potrebno je dodati i njegov id (npr. https://www.evisitor.hr/eVisitorRhetos_API/Rest/Htz/Country/e6229d5e-cccc-4477-8206-9f17f95f54b1)
- Parametri: nema parametara
- Rezultat: prazan ukoliko je zapis uspješno obrisan. Ukoliko je došlo do greške tada metoda vraća JSON {SystemMessage, UserMessage} koji sadrže sistemske odnosno validacijske greške zbog kojih snimanje nije uspjelo.
Browse
Ovaj resurs podržava čitanje podataka iz entiteta u specifičnom obliku. Metoda koju podržava je
GET čiji interface je identičan interface-u
GET metode opisanom u
Entity resursu.
Action
Ovaj resurs podržava izvršavanje serverske akcije. Metoda koju podržava je POST. Parametar se šalje serijaliziran u JSON i specifičan je za konkretnu akciju. Rezultat je prazan u slučaju uspješnog izvršavanja, inače sadrži grešku zbog kojeg izvršavanje nije uspjelo.
Često korišteni procesi
Prijava turista
Da bi prijavili turista potrebno je pozvati akciju
CheckInTourist. Akcija
ImportTourists još je uvijek dostupna. U prilogu stranice se nalazi Testni projekt u kojem su i primjeri XML-a koji se šalje metodi ImportTourists a ujedno je to i primjer datoteke koja se učitava kroz sučelje aplikacije u slučajevima da korisnik radi prijavu putem datoteke. Primjeri datoteka se nalaze u TestData folderu.
Odjava turista
Da bi odjavili turista potrebno je pozvati akciju
CheckOutTourist. Akcija
ImportTouristCheckOut još je uvijek dostupna.
Izmjena prijave turista
Da bi izmjenili prijavu turista potrebno je pozvati akciju
CheckInTourist s parametrom ID koji je proslijeđen prilikom prijave turista. Moguće je izmjeniti samo aktivne prijave unesene unutar zadnja 24 sata.
Poništanje prijave turista
Da bi poništili prijavu turista potrebno je pozvati akciju
CancelTouristCheckIn s parametrom ID koji je proslijeđen prilikom prijave turista.
Otvaranje novog obveznika
Da bi otvorili novog obveznika potrebno je pozvati slijedeće akcije:
- UploadDocument - upload dokumenta temeljem kojeg se otvara novi obveznik
- ID parametar ćete u pozivu akcije SaveTTPayer proslijediti u parametru OpeningBasisDocumentID
- SaveTTPayer - osnovni podaci obveznika
- SaveTTPayerAdditionalData - dodatni podaci obveznika
- ID parametar pojedinih entiteta koji se prosljeđuju mora biti istovjetan onom koji je proslijeđen u pozivu SaveTTPayer akcije
Otvaranje novog objekta
Da bi otvorili novi objekt potrebno je pozvati slijedeće akcije:
Kreiranje datoteke za MUP
Da bi kreirali datoteku za MUP potrebno je pozvati slijedeće akcije:
- CreateFileForMI - akcija koja generira dataoteku za MUP
- ID parametar ćete iskoristiti prilikom dohvata datoteke u slijedećem koraku
- Pozvati GET na resursu MITTPayerFiles sa id-jem koji je proslijeđen prilikom poziva akcije CreateFileForMI
Resursi
Akcije
CancelTouristCheckIn
- Path: Htz/CancelTouristCheckIn/
- Atributi:
- ID (guid) - obavezan podatak, ID prijave turista
- TTPayerID(guid) - obavezan podatak ako je user koji poziva akciju TZ, ako je user obveznik onda sustav sam postavlja ovaj podatak
CheckInTourist
- Path: Htz/CheckInTourist/
- Atributi:
- ID - guid, identifikator prijave turista, kasnije se koristi za identifikaciju pri izmjeni ili odjavi određene prijave turista
- TTPayerID(guid) - obavezan podatak ako je user koji poziva akciju TZ, ako je user obveznik onda sustav sam postavlja ovaj podatak
- AccommodationUnitType (string) - podatak nije obavezan, naziv vrste smještajne jedinice, vrijednost iz browse-a AccommodationUnitFacilityType filtriran po FacilityCode
- ArrivalOrganisation - šifra (MUP) organizacije dolaska
- BorderCrossing - šifra graničnog prijelaza (obavezno ukoliko je turist iz države koja nije članica EU)
- Citizenship – tro-slovna šifra države (ISO oznaka) čije državljanstvo ima turist (npr. HRV za Hrvatsku ili DEU za Njemačku)
- CityOfBirth – ukoliko je država rođenja Hrvatska, onda ovdje treba staviti naziv grada-naselja rođenja u obliku „grad-naselje“ iz pripremljenog šifrarnika, npr. „Zagreb-Adamovec“. Ukoliko država rođenja nije Hrvatska, onda ovdje treba biti upisan naziv grada iz te države s tim da trenutno sustav prihvaća slobodni unos
- CityOfResidence - ukoliko je država prebivališta Hrvatska, onda ovdje treba staviti naziv grada-naselja prebivališta u obliku „grad-naselje“ iz pripremljenog šifrarnika, npr. „Zagreb-Adamovec“. Ukoliko država prebivališta nije Hrvatska, onda ovdje treba biti upisan naziv grada iz te države s tim da trenutno sustav prihvaća slobodni unos
- CountryOfBirth – tro-slovna šifra države (ISO oznaka) rođenja (npr. HRV za Hrvatsku ili DEU za Njemačku)
- CountryOfResidence – tro-slovna šifra države (ISO oznaka) prebivališta (npr. HRV za Hrvatsku ili DEU za Njemačku)
- DateOfBirth - datum rođenja turista (format: YYYYMMDD, primjer 19760413)
- DocumentNumber - broj isprave kojom turist potvrđuje identitet
- DocumentType - šifra vrste isprave kojom turist potvrđuje identitet
- Facility - šifra objekta u koji se turist prijavljuje. Šifra objekta je objektu dana od sustava e-Visitor.
- ForeseenStayUntil - datum do kojeg turist predviđa boraviti u objektu (format: YYYYMMDD, primjer 20150413)
- Gender - ženski/muški
- IsTTFlatRatePaymentVacationHome (bool) - opcionalno; želi plaćati pristojbu paušalno; polje nije obavezno
- OfferedServiceType - naziv vrste pružene usluge
- PassageDate - datum ulaska u EU (obavezno ukoliko je turist iz države koja nije članica EU)
- ResidenceAddress - ulica i broj prebivališta
- StayFrom - datum od kojeg turist boravi u objektu (format: YYYYMMDD, primjer 20150413)
- TimeEstimatedStayUntil - vrijeme do kojeg turist predviđa boraviti u objektu (format: hh:mm, primjer 09:42)
- TimeStayFrom - vrijeme od kojeg turist boravi u objektu (format: hh:mm, primjer 09:42)
- TouristEmail - e-mail turista, opcionalno (podatak se validira, stoga mora biti validna email adresa)
- TouristMiddleName - srednje ime turista (opcionalno)
- TouristName - ime turista
- TouristSurname - prezime turista
- TouristTelephone - kontakt telefon turista, opcionalno (validan format: +385916655333)
- TTPaymentCategory - šifra kategorije plaćanja boravišne pristojbe
- VisaNumber - broj vize (obavezno ukoliko je turist državljanin države za koje Republika Hrvatska zahtjeva vizu)
- VisaType - naziv vrste vize (obavezno ukoliko je turist državljanin države za koje Republika Hrvatska zahtjeva vizu)
- VisaValidityDate - datum važenja vize (obavezno ukoliko je turist državljanin države za koje Republika Hrvatska zahtjeva vizu)
- Validacija podataka:
- Svi podaci su obavezni osim onih koji su označeni kao neobavezni ili je navedeno poslovno pravilo kad su obavezni
- Upisan datum boravka do je manji od datuma boravka od. (item.StayFrom > item.ForeseenStayUntil)
- Upisano vrijeme odlaska je manje od upisanog vremena dolaska. (item.StayFrom == item.ForeseenStayUntil && item.TimeEstimatedStayUntil <= item.TimeStayFrom)
- Potrebno je upisati granični prijelaz, te datum prijelaza. (item.CountryResidence.IsEUMember == false && (item.BorderCrossingHr == null || item.PassageDate == null)
- Za odabranu zemlju potrebno je unijeti vrstu vize, broj vize i datum važenja vize. (item.CitizenshipCountry.IsVisaRequired == true && (item.VisaType == null || item.VisaNumber == null || item.VisaValidityDate == null))
- Prekoračen je maksimalan broj dana boravka turista. (item.ForeseenStayUntil - item.StayFrom) > MaximumTouristsDaysOfStay)
- Turist je već prijavljen u navedenom objektu. (x.Facility == item.Facility && x.DateOfBirth == item.DateOfBirth && x.DocumentTtype == item.DocumentTtype && x.DocumentNumber == item.DocumentNumber && x.CountryResidence == item.CountryResidence && item. CheckedOutTourist == false && item.TouristCancelled == false)
- Nije dopušten unos datuma boravka od koji ne zadovoljava definirana prava. ( x.StayFrom <= (Today - parameters.AllowedNumberOfDaysToCheckInCheckOut))
- Paušalno plaćanje dozvoljeno je samo za kuće za odmor do 15.7. u godini. (x => x.IsTTFlatRatePaymentVacationHome == true && (x.Facility.FacilitySubcategory.TTCalculationType.IsVacationHomeCalculation == false || x.StayFrom > new DateTime(DateTime.Today.Year, 7, 15))
- Paušalno plaćanje nije dozvoljeno za turiste koji nisu iz europskog gospodarskog pojasa. (item => item.Facility.FacilitySubcategory.TTCalculationType.IsVacationHomeCalculation == true && item.CitizenshipCountry.IsEEAMember == false && item.IsTTFlatRatePaymentVacationHome == true)
- Grad rođenja nije zadan. (item => string.IsNullOrEmpty(item.CityOfBirthAbroad) && item.CityOfBirthSettlementHrID == null)
- Grad prebivališta nije zadan. (item => string.IsNullOrEmpty(item.CityResidenceAbroad) && item.CityOfResidenceSettlementHrID == null)
CheckOutTourist
- Path: Htz/CheckOutTourist/
- Atributi:
- ID (guid) - obavezan podatak, ID prijave turista
- TTPayerID(guid) - obavezan podatak ako je user koji poziva akciju TZ, ako je user obveznik onda sustav sam postavlja ovaj podatak
- CheckOutDate - datum odjave turista (format: YYYYMMDD, primjer 20150413)
- CheckOutTime - vrijeme odjave turista (format: hh:mm, primjer 09:42)
- Validacija podataka:
- Svi podaci su obavezni osim onih koji su označeni kao neobavezni ili je navedeno poslovno pravilo kad su obavezni
- Upisan datum odjave je manji od datuma boravka od. (item.CheckOutDate < item.StayFrom)
- Datum odjave turista ne smije biti veći od današnjeg datuma. (item.CheckOutDate > Today)
- Nije dopušten unos datuma odjave koji ne zadovoljava definirana prava. ( x. CheckOutDate <= (Today - parameters.AllowedNumberOfDaysToCheckInCheckOut))
CreateFileForMI
- Path: Htz/CreateFileForMI/
- Atributi:
- ID (guid) - obavezan podatak
- FileName (string) - obavezan podatak
- TTPayerID (guid) - obavezan podatak ako je user koji poziva akciju TZ, ako je user obveznik onda sustav sam postavlja ovaj podatak
ImportTouristCheckOut
- Path: Htz/ImportTouristCheckOut/
- Atributi:
- ID (guid)
- TTPayerID (guid) - ID obveznika na kojeg se odnosi akcija; ako je trenutni korisnik turistička zajednica onda je podatak obavezan inače se ne proslijeđuje; vrijednost iz browse-a TTPayerLookup filtriranog po Pin (OIB obveznika)
- Xml (string) - obavezan podatak, primjer datoteke nalazi se u prilogu (TestData/TouristCheckIn.xml), opis sadržaja datototeke:
- Svi podaci su obavezni
- Dozvoljene vrijednosti šifrarnika korištenih u pozivima metoda dostupne su ovdje
- ID - guid, identifikator prijave turista, ako je proslijeđen onda nije potrebno proslijeđivati parametre Facility, DocumentType i DocumentNumber
- Facility - šifra objekta u kojem je turist prijavljen
- DocumentType - šifra vrste isprave kojom turist potvrđuje identitet
- DocumentNumber - broj isprave kojom turist potvrđuje identitet
- CheckOutDate - datum odjave turista (format: YYYYMMDD, primjer 20150413)
- CheckOutTime - vrijeme odjave turista (format: hh:mm, primjer 09:42)
- Validacija podataka:
- Upisan datum odjave je manji od datuma boravka od. (item.CheckOutDate < item.StayFrom)
- Datum odjave turista ne smije biti veći od današnjeg datuma. (item.CheckOutDate > Today)
- Nije dopušten unos datuma odjave koji ne zadovoljava definirana prava. ( x. CheckOutDate <= (Today - parameters.AllowedNumberOfDaysToCheckInCheckOut))
ImportTourists
- Path: Htz/ImportTourists/
- Atributi:
- Register (bool) - obavezan podatak, potrebno je slati vrijednost true
- TTPayerID (guid) - ID obveznika na kojeg se odnosi akcija; ako je trenutni korisnik turistička zajednica onda je podatak obavezan inače se ne proslijeđuje; vrijednost iz browse-a TTPayerLookup filtriranog po Pin (OIB obveznika)
- Xml (string) - obavezan podatak, primjer datoteke nalazi se u prilogu (TestData/TouristCheckIn.xml), opis sadržaja datototeke:
- Svi podaci su obavezni osim onih koji su označeni kao opcionalni ili je opisan uvjet kad je podatak obavezan
- Dozvoljene vrijednosti šifrarnika korištenih u pozivima metoda dostupne su ovdje
- ID - guid, identifikator prijave turista, ako se proslijedi onda se može upotrebiti za izmjenu ili odjavu određene prijave turista
- Facility - šifra objekta u koji se turist prijavljuje. Šifra objekta je objektu dana od sustava e-Visitor.
- StayFrom - datum od kojeg turist boravi u objektu (format: YYYYMMDD, primjer 20150413)
- TimeStayFrom - vrijeme od kojeg turist boravi u objektu (format: hh:mm, primjer 09:42)
- ForeseenStayUntil - datum do kojeg turist predviđa boraviti u objektu (format: YYYYMMDD, primjer 20150413)
- TimeEstimatedStayUntil - vrijeme do kojeg turist predviđa boraviti u objektu (format: hh:mm, primjer 09:42)
- DocumentType - šifra vrste isprave kojom turist potvrđuje identitet
- DocumentNumber - broj isprave kojom turist potvrđuje identitet
- TouristName - ime turista
- TouristMiddleName - srednje ime turista (opcionalno)
- TouristSurname - prezime turista
- Gender - ženski/muški
- CountryOfBirth – tro-slovna šifra države (ISO oznaka) rođenja (npr. HRV za Hrvatsku ili DEU za Njemačku)
- CityOfBirth – ukoliko je država rođenja Hrvatska, onda ovdje treba staviti naziv grada-naselja rođenja u obliku „grad-naselje“ iz pripremljenog šifrarnika, npr. „Zagreb-Adamovec“. Ukoliko država rođenja nije Hrvatska, onda ovdje treba biti upisan naziv grada iz te države s tim da trenutno sustav prihvaća slobodni unos
- DateOfBirth - datum rođenja turista (format: YYYYMMDD, primjer 19760413)
- Citizenship – tro-slovna šifra države (ISO oznaka) čije državljanstvo ima turist (npr. HRV za Hrvatsku ili DEU za Njemačku)
- VisaType - naziv vrste vize (obavezno ukoliko je turist državljanin države za koje Republika Hrvatska zahtjeva vizu)
- VisaNumber - broj vize (obavezno ukoliko je turist državljanin države za koje Republika Hrvatska zahtjeva vizu)
- VisaValidityDate - datum važenja vize (obavezno ukoliko je turist državljanin države za koje Republika Hrvatska zahtjeva vizu)
- CountryOfResidence – tro-slovna šifra države (ISO oznaka) prebivališta (npr. HRV za Hrvatsku ili DEU za Njemačku)
- CityOfResidence - ukoliko je država prebivališta Hrvatska, onda ovdje treba staviti naziv grada-naselja prebivališta u obliku „grad-naselje“ iz pripremljenog šifrarnika, npr. „Zagreb-Adamovec“. Ukoliko država prebivališta nije Hrvatska, onda ovdje treba biti upisan naziv grada iz te države s tim da trenutno sustav prihvaća slobodni unos
- ResidenceAddress - ulica i broj prebivališta
- BorderCrossing - šifra graničnog prijelaza (obavezno ukoliko je turist iz države koja nije članica EU)
- PassageDate - datum ulaska u EU (obavezno ukoliko je turist iz države koja nije članica EU)
- TTPaymentCategory - šifra kategorije plaćanja boravišne pristojbe
- TouristEmail - e-mail turista, opcionalno (podatak se validira, stoga mora biti validna email adresa)
- TouristTelephone - kontakt telefon turista, opcionalno (validan format: +385916655333)
- ArrivalOrganisation - šifra (MUP) organizacije dolaska
- OfferedServiceType - naziv vrste pružene usluge
- IsTTFlatRatePaymentVacationHome (bool) - opcionalno; želi plaćati pristojbu paušalno; polje nije obavezno
- AccommodationUnitType (string) - podatak nije obavezan, naziv vrste smještajne jedinice, vrijednost iz browse-a AccommodationUnitFacilityType filtriran po FacilityCode***EditOfExistingCheckIn – opcionalni podatak. Ukoliko želite izmijeniti postojeću prijavu zbog greške u unosu onda u ovom polju šaljite vrijednost true. Postojeća prijava može se izmijeniti unutar 24 sata, a ključ za identifikaciju postojeće prijave (ukoliko nije proslijeđen ID parametar) su slijedeći podaci: DocumentType, DocumentNumber.
- Validacija podataka:
- Upisan datum boravka do je manji od datuma boravka od. (item.StayFrom > item.ForeseenStayUntil)
- Upisano vrijeme odlaska je manje od upisanog vremena dolaska. (item.StayFrom == item.ForeseenStayUntil && item.TimeEstimatedStayUntil <= item.TimeStayFrom)
- Potrebno je upisati granični prijelaz, te datum prijelaza. (item.CountryResidence.IsEUMember == false && (item.BorderCrossingHr == null || item.PassageDate == null)
- Za odabranu zemlju potrebno je unijeti vrstu vize, broj vize i datum važenja vize. (item.CitizenshipCountry.IsVisaRequired == true && (item.VisaType == null || item.VisaNumber == null || item.VisaValidityDate == null))
- Prekoračen je maksimalan broj dana boravka turista. (item.ForeseenStayUntil - item.StayFrom) > MaximumTouristsDaysOfStay)
- Turist je već prijavljen u navedenom objektu. (x.Facility == item.Facility && x.DateOfBirth == item.DateOfBirth && x.DocumentTtype == item.DocumentTtype && x.DocumentNumber == item.DocumentNumber && x.CountryResidence == item.CountryResidence && item. CheckedOutTourist == false && item.TouristCancelled == false)
- Nije dopušten unos datuma boravka od koji ne zadovoljava definirana prava. ( x.StayFrom <= (Today - parameters.AllowedNumberOfDaysToCheckInCheckOut))
- Paušalno plaćanje dozvoljeno je samo za kuće za odmor do 15.7. u godini. (x => x.IsTTFlatRatePaymentVacationHome == true && (x.Facility.FacilitySubcategory.TTCalculationType.IsVacationHomeCalculation == false || x.StayFrom > new DateTime(DateTime.Today.Year, 7, 15))
- Paušalno plaćanje nije dozvoljeno za turiste koji nisu iz europskog gospodarskog pojasa. (item => item.Facility.FacilitySubcategory.TTCalculationType.IsVacationHomeCalculation == true && item.CitizenshipCountry.IsEEAMember == false && item.IsTTFlatRatePaymentVacationHome == true)
- Grad rođenja nije zadan. (item => string.IsNullOrEmpty(item.CityOfBirthAbroad) && item.CityOfBirthSettlementHrID == null)
- Grad prebivališta nije zadan. (item => string.IsNullOrEmpty(item.CityResidenceAbroad) && item.CityOfResidenceSettlementHrID == null)
SaveFacility
- Path: Htz/SaveFacility/
- Atributi:
- ID (guid)
- AccommodationUnits (string) - obavezan podatak, lista entiteta AccommodationUnit serijalizirana u JSON
- AdditionalCategories (string) - lista entiteta FacilityAdditionalCategory serijalizirana u JSON
- Codess (string) - dodatne oznake objekta; lista entiteta FacilityFacilityCode serijalizirana u JSON
- Facility (string) - obavezan podatak, entitet Facility serijaliziran u JSON
- PeriodNote (string) - napomena turističke zajednice vezana za period rada objekta
- WorkPeriod (string) - lista entiteta OpenFacilityPeriod serijalizirana u JSON
SaveFacilityCharacteristics
- Path: Htz/SaveFacilityCharacteristics/
- Atributi:
- ID (guid)
- CheckIn (datetime)
- CheckOut (datetime)
- CodeMI (string)
- Distances (string) - lista entiteta FacilityDistance serijalizirana u JSON
- Email (string)
- Fax (string)
- Lat (decimal)
- Lon (decimal)
- Services (string) - lista entiteta FacilityService serijalizirana u JSON
- Telephone1 (string)
- Telephone2 (string)
- TouristAcceptancePeriod (string) - lista entiteta TouristAcceptancePeriod serijalizirana u JSON
- Web (string)
- AutomaticTouristCheckout (bool)
SaveTTPayer
- Path: Htz/SaveTTPayer/
- Atributi:
- ID (guid) - obavezan podatak
- City (string) - obavezan podatak ako država (CountryID) nije Hrvatska
- CountryID (guid) - obavezan podatak, vrijednost iz browse-a CountryLookup
- FirstName (string) - obavezan podatak ako je obveznik fizička osoba, inače se ne upisuje
- IsFRFOwner (bool) - (vlasnik OPG-a) obavezan podatak ako je obveznik fizička osoba, inače se ne upisuje
- IsNaturalPerson (bool) - (je fizička osoba) obavezan podatak, true ako je obveznik fizička osoba inače false
- IsTradeOwner (bool) - (vlasnik obrta) obavezan podatak ako je obveznik fizička osoba, inače se ne upisuje
- LegalPersonTypeID (guid) - obavezan podatak ako je obveznik pravna osoba, inače se ne upisuje, vrijednost iz browse-a LegalPersonTypeLookup
- Name (string) - obavezan podatak ako je obveznik pravna osoba, inače se ne upisuje
- OpeningBasisID (guid) - obavezan podatak, vrsta dokumenta temelja otvaranja obveznika, vrijednost iz browse-a OpeningBasisLookup
- OpeningBasisDocumentID (guid) - obavezan podatak, vrijednost iz entiteta Document (dokument se dodaje pozivom UploadDocument)
- Pin (string) - obavezan podatak, OIB obveznika
- SettlementHrID (guid) - obavezan podatak ako je država (CountryID) Hrvatska, vrijednost iz browse-a SettlementLookup
- StreetNumber (string) - obavezan podatak, ulica i kućni broj
- Surname (string) - obavezan podatak ako je obveznik fizička osoba, inače se ne upisuje
- ZIPCode (string) - obavezan podatak
SaveTTPayerAdditionalData
- Path: Htz/SaveTTPayerAdditionalData/
- Atributi:
- ContactPerson (string) - obavezan podatak, sadrži JSON objekt entiteta ContactPerson
- Documents (string) - sadrži JSON objekt entiteta Document
- FRFOwner (string) - obavezan podatak ako je obveznik fizička osoba, sadrži JSON objekt entiteta FRFOwner
- IsFRFOwner (bool) - obavezan podatak ako je obveznik fizička osoba
- IsTradeOwner (bool) - obavezan podatak ako je obveznik fizička osoba
- NoteTB (string) - napomena turističke zajednice koja unosi podatke
- TradeOwner (string) - obavezan podatak ako je obveznik fizička osoba, sadrži JSON objekt entiteta TradeOwner
UploadDocument
- Path: Htz/UploadDocument/
- Atributi:
- ID (guid)
- Content (byte[]) - obavezan podatak, sadržaj datoteke
- FileName (string) - obavezan podatak
Entiteti
Svi resursi u ovom poglavlju podržavaju metode opisane u poglavlju
Entity
AccommodationUnit
- Path: Htz/AccommodationUnit/
- Atributi:
- ID (guid)
- CategoryID (guid) - obavezan podatak, vrijednost iz browse-a FacilityCategoryLookup
- FacilityID (guid) - obavezan podatak, veza na entitet Facility
- NumberOfBeds (int) - obavezan podatak
- NumberOfEquivalentUnits (int) - obavezan podatak
- NumberOfExtraBeds (int)
- Sequence (int) - koristi se za sortiranje podataka za prikaz korisniku
- TypeID (guid) - obavezan podatak, vrijednost iz browse-a AccommodationUnitTypePerSubtype (browse se filtrira po atributu FacilitySubcategoryID)
AccommodationUnitCharacteristics
- Path: Htz/AccommodationUnitCharacteristics/
- Atributi:
- ID (guid)
- AccommodationUnitID (guid) - obavezan podatak, veza na entitet AccommodationUnit
- Name (string) - obavezan podatak
- Price (string)
- Sequence (int) - obavezan podatak, koristi se za sortiranje podataka za prikaz korisniku
- TouristAcceptanceFromFacility (bool)
ContactPerson
- Path: Htz/ContactPerson/
- Atributi:
- ID (guid)
- City (string) - ako je IsUser = false obavezan podatak ako država (CountryID) nije Hrvatska
- CountryID (guid) - ako je IsUser = false obavezan podatak, vrijednost iz browse-a CountryLookup
- Email (string)
- Fax (string)
- FirstName (string) - ako je IsUser = false obavezan podatak
- InternetPage (string)
- IsUser (bool) - obavezan podatak
- SettlementHrID (guid) - ako je IsUser = false obavezan podatak ako je država (CountryID) Hrvatska, vrijednost iz browse-a SettlementLookup
- StreetNumber (string) - ako je IsUser = false obavezan podatak
- Surname (string) - ako je IsUser = false obavezan podatak
- Telephone1 (string)
- Telephone2 (string)
- Telephone3 (string)
- ZIPCode (string)
Facility
- Path: Htz/Facility/
- Atributi:
- ID (guid)
- Code (string) - obavezan podatak, ovo je autocode atribut (potrebno je unijeti vrijednost '+' da se automatski generira slijedeća vrijednost)
- DecisionClass (string)
- DecisionDate (date) - obavezan podatak
- DecisionDocumentID (guid) - obavezan podatak, vrijednost ID-a proslijeđenog u ranije pozvanoj akciji UploadDocument
- DecisionFileNumber (string)
- DecisionNumber (string)
- DecisionNumberOfEquivalentFacilities (int)
- FacilityCategoryID (guid) - vrijednost iz browse-a FacilityCategoryLookup
- FacilityLinkToNaturalPersonID (guid) - obavezan podatak ako je obveznik na kojeg ej objekt vezan fizička osoba, vrijednost iz browse-a FacilityLinkToNaturalPersonPerTTPayer
- FacilitySubcategoryID (guid) - obavezan podatak, vrijednost iz browse-a
- Name (string) - obavezan podatak
- Note (string)
- PaysTTFlatAmount (bool)
- SettlementHrID (guid) - obavezan podatak, vrijednost iz browse-a SettlementLookup
- SettlementZoneID (guid) - obvezan podatak ako su definirane zone za naselje, vrijednost iz browse-a SettlementZoneLookup (browse se filtrira po atributu SettlementHrID)
- StreetNumber (string) - obavezan podatak
- TTPayerID (guid) - obavezan podatak, veza na entitet TTPayer
FacilityAdditionalCategory
- Path: Htz/FacilityAdditionalCategory/
- Atributi:
- ID (guid)
- FacilityID (guid) - obavezan podatak, veza na entitet Facility
- FacilityCategoryID (guid) - obavezan podatak, vrijednost iz browse-a FacilityCategoryLookup
FacilityDistance
- Path: Htz/FacilityDistance/
- Atributi:
- ID (guid)
- DistanceID (guid) - obavezan podatak, vrijednost iz browse-a DistanceLookup
- DistanceTypeID (guid) - obavezan podatak, vrijednost iz browse-a DistanceTypeLookup
- FacilityCharacteristicsID (guid) - obavezan podatak, veza na entitet Facility
FacilityService
- Path: Htz/FacilityService/
- Atributi:
- ID (guid)
- FacilityCharacteristicsID (guid) - obavezan podatak, veza na entitet Facility
- HasService (bool) - obavezan podatak
- ServiceTypeID (guid) - obavezan podatak, vrijednost iz browse-a ServiceTypeLookup
FacilityFacilityCode
- Path: Htz/FacilityFacilityCode/
- Atributi:
- ID (guid)
- FacilityID (guid) - obavezan podatak, veza na entitet Facility
- FacilityCodeID (guid) - obavezan podatak, vrijednost iz browse-a FacilityCodeLookup
- Sequence (int) - obavezan podatak, koristi se za sortiranje podataka za prikaz korisniku
FRFOwner
- Path: Htz/FRFOwner/
- Atributi:
- ID (guid)
- BasedOnDocumentsID (guid) - obavezan podatak, vrijednost ID-a proslijeđenog u ranije pozvanoj akciji UploadDocument
- City (string) - obavezan podatak ako država (CountryID) nije Hrvatska
- CountryID (guid) - obavezan podatak, vrijednost iz browse-a CountryLookup
- InternetPage (string)
- Name (string) - obavezan podatak
- SettlementHrID (guid) - obavezan podatak ako je država (CountryID) Hrvatska, vrijednost iz browse-a SettlementLookup
- StreetNumber (string) - obavezan podatak
- ValidityDateFrom (date) - obavezan podatak
- ZIPCode (string) - obavezan podatak
- Podaci o vlasniku OPG-a
MITTPayerFiles
- Path: Htz/MITTPayerFiles/
- Atributi:
OpenFacilityPeriod
- Path: Htz/OpenFacilityPeriod/
- Atributi:
- ID (guid)
- DateFrom (date) - obavezan podatak
- DateUntil (date) - obavezan podatak
- OpenFacilityPeriodInfoID (guid) - obavezan podatak, veza na entitet Facility
TouristAcceptancePeriod
- Path: Htz/TouristAcceptancePeriod/
- Atributi:
- ID (guid)
- DateFrom (date) - obavezan podatak
- DateUntil (date) - obavezan podatak
- FacilityID (guid) - obavezan podatak, veza na entitet Facility
TradeOwner
- Path: Htz/TradeOwner/
- Atributi:
- ID (guid)
- BasedOnDocumentsID (guid) - obavezan podatak, vrijednost ID-a proslijeđenog u ranije pozvanoj akciji UploadDocument
- City (string) - obavezan podatak ako država (CountryID) nije Hrvatska
- CountryID (guid) - obavezan podatak, vrijednost iz browse-a CountryLookup
- InternetPage (string)
- Name (string) - obavezan podatak
- SettlementHrID (guid) - obavezan podatak ako je država (CountryID) Hrvatska, vrijednost iz browse-a SettlementLookup
- StreetNumber (string) - obavezan podatak
- ValidityDateFrom (date) - obavezan podatak
- ZIPCode (string) - obavezan podatak
- Podaci o vlasniku obrta
Browse
Svi resursi u ovom poglavlju podržavaju metode opisane u poglavlju
Browse
AccommodationUnitFacilityType
- Path: Htz/AccommodationUnitFacilityType/
- Atributi:
- ID (guid)
- FacilityID (guid)
- NameCode (string)
- FacilityCode (string)
- Ovaj pregled je osmišljen tako da se filtrira po atributu FacilityID ili FacilityCode
AccommodationUnitTypePerSubtype
- Path: Htz/AccommodationUnitTypePerSubtype/
- Atributi:
- ID (guid)
- Active (bool)
- FacilitySubcategoryID (guid)
- MaximumNumberOfBeds (int)
- MaximumNumberOfExtraBeds (int)
- MaximumNumberOfSameUnits (int)
- Name (string)
- Ovaj pregled je osmišljen tako da se filtrira po atributu FacilitySubcategoryID
CountryLookup
- Path: Htz/CountryLookup/
- Atributi:
- ID (guid)
- Active (bool)
- AlternativeName (string)
- CodeThreeLetters (string)
- CodeTwoLetters (string)
- IsEUMember (bool)
- IsVisaRequired (bool)
- NameCitizenships (string)
- NameNational (string)
- NameNationalAlternative (string)
DistanceLookup
- Path: Htz/DistanceLookup/
- Atributi:
- ID (guid)
- Active (bool)
- Name (string)
- Sequence (int) - koristi se za sortiranje podataka za prikaz korisniku
DistanceTypeLookup
- Path: Htz/DistanceTypeLookup/
- Atributi:
- ID (guid)
- Active (bool)
- Name (string)
- Sequence (int) - koristi se za sortiranje podataka za prikaz korisniku
FacilityCategoryLookup
- Path: Htz/FacilityCategoryLookup/
- Atributi:
- ID (guid)
- Active (bool)
- FacilityCategoryTypeID (guid)
- Name (string)
FacilityCodeLookup
- Path: Htz/FacilityCodeLookup/
- Atributi:
- ID (guid)
- Active (bool)
- FacilitySubcategoryID (guid)
- FacilitySubtypeName (string)
- FacilityTypenName (string)
- Name (string)
FacilityLinkToNaturalPersonPerTTPayer
- Path: Htz/FacilityLinkToNaturalPersonPerTTPayer/
- Atributi:
- ID (guid)
- Name (string)
- TTPayerID (guid)
FacilitySubcategoryLookup
- Path: Htz/FacilitySubcategoryLookup/
- Atributi:
- ID (guid)
- Active (bool)
- FacilityTypeID (guid)
- FacilityTypenName (string)
- HasCodes (bool)
- MandatoryDecisionInput (bool)
- Name (string)
- NecessaryCalculationOfEquivalentUnits (bool)
LegalPersonTypeLookup
- Path: Htz/LegalPersonTypeLookup/
- Atributi:
- ID (guid)
- Active (bool)
- Name (string)
OpeningBasisLookup
- Path: Htz/OpeningBasisLookup/
- Atributi:
- ID (guid)
- Active (bool)
- ForNaturalPerson (bool)
- Name (string)
ServiceTypeLookup
- Path: Htz/ServiceTypeLookup/
- Atributi:
- ID (guid)
- Active (bool)
- Name (string)
- Sequence (int) - koristi se za sortiranje podataka za prikaz korisniku
SettlementLookup
- Path: Htz/SettlementLookup/
- Atributi:
- ID (guid)
- Active (bool)
- CityMunicipalityHrID (guid)
- HasZones (bool)
- Name (string)
- ZIPCode (string)
SettlementZoneLookup
- Path: Htz/SettlementZoneLookup/
- Atributi:
- ID (guid)
- Active (bool)
- BasisAmount (money)
- Name (string)
- Settlement (string)
- SettlementHrID (guid)
- ZoneID (guid)
- Ovaj pregled je osmišljen tako da se filtrira po atributu SettlementHrID
TTPayerFinancialRecord
- Path: Htz/TTPayerFinancialRecord/
- Atributi:
- ID (guid)
- Date (DateTime)
- Payment (decimal)
- Reason (string)
- TTPayerID (guid)
- FacilityID (guid)
- BoolCalculation (bool)
- BoolManualApprovalDebit (bool)
- BoolCashDesk (bool)
- BoolFinalReport (bool)
TTPayerLookup
- Path: Htz/TTPayerLookup/
- Atributi:
- ID (guid)
- Name (string)
- Pin (string)
- RightToTTPayerPrincipalID (guid)
VisaTypeLookup
- Path: Htz/VisaTypeLookup/
- Atributi:
- ID (guid)
- Active (bool)
- Name (string)
Povezane stranice