Skip to content

Hotel Entities - Mapping Documentation

Domain: Hotel Entity Count: 16 Source File: hotel-entities.xml

Table of Contents


Hotel

Entity Class: com.perun.tlinq.entity.hotel.CHotel
ID Field: hotelId
Default Factory: NTSServiceFactory

Factory: NTSServiceFactory

Native Entity: com.perun.tlinq.client.nts.db.hotel.HotelEntity

Services

Service Name Action Return Class Parameters
searchHotels search com.perun.tlinq.entity.hotel.CHotel area (input), name (input)
saveHotel update - -
saveHotel create - -

Field Mappings

Target Field Source Field Mapping Type Reverse Mapping Notes
hotelId hotelId DirectMapping - -
shDes shDes DirectMapping - -
name name DirectMapping - -
shortName shortName DirectMapping - -
hotelDesc hotelDesc DirectMapping - -
productId productId DirectMapping - -
direct direct DirectMapping - -
indirect indirect DirectMapping - -
country country DirectMapping - -
stars stars DirectMapping - -
infant infant DirectMapping - -
child child DirectMapping - -
chkIn chkIn DirectMapping - -
chkOut chkOut DirectMapping - -
fees fees DirectMapping - -
feesDesc feesDesc DirectMapping - -
terms terms DirectMapping - -
area area DirectMapping - -
city city DirectMapping - -
release release DirectMapping - -
reservationContact reservationContact DirectMapping - -

MealPlan

Entity Class: com.perun.tlinq.entity.hotel.CMealPlan
ID Field: planId
Default Factory: NTSServiceFactory

Factory: NTSServiceFactory

Native Entity: com.perun.tlinq.client.nts.db.hotel.MealPlanEntity

Services

Service Name Action Return Class Parameters
listMealPlans search com.perun.tlinq.entity.hotel.CMealPlan -
listAvailableMealPlans listAvailableMealPlans com.perun.tlinq.entity.hotel.CMealPlan hotelId (input)
updateHotelMealPlans updateHotelMealPlans com.perun.tlinq.entity.hotel.CMealPlan hotelId (input), plans (input)

Field Mappings

Target Field Source Field Mapping Type Reverse Mapping Notes
planId planid DirectMapping - -
plan plan DirectMapping - -
name name DirectMapping - -
planDesc desc DirectMapping - -
planOrder order DirectMapping - -
adultCost adultCost DirectMapping - -
childCost childCost DirectMapping - -

HotelRoom

Entity Class: com.perun.tlinq.entity.hotel.CHotelRoom
ID Field: roomId
Default Factory: NTSServiceFactory

Factory: NTSServiceFactory

Native Entity: com.perun.tlinq.client.nts.db.hotel.RoomEntity

Services

Service Name Action Return Class Parameters
searchHotelRooms search com.perun.tlinq.entity.hotel.CHotelRoom -
calculateRoom calculateRoom - searchInput (input), isEmployee (input)
copyRoomCalendar copyRoomCalendar - fromRoom (input), market (input), fromDate (input), toDate (input)
getRoomPromos getRoomPromos - market (input)
saveHotel update - -
saveHotel create - -

Field Mappings

Target Field Source Field Mapping Type Reverse Mapping Notes
hotelId hotelId DirectMapping - -
roomId roomId DirectMapping - -
name name DirectMapping - -
roomDesc roomDesc DirectMapping - -
maxOccupancy maxOccupancy DirectMapping - -
maxAdults maxAdults DirectMapping - -
extraBed extraBed DirectMapping - -
extraBedRequired extraBedRequired DirectMapping - -
bedding bedding DirectMapping - -
notes notes DirectMapping - -

RoomPeriod

Entity Class: com.perun.tlinq.entity.hotel.CRoomPeriod
ID Field: roomId
Default Factory: NTSServiceFactory

Factory: NTSServiceFactory

Native Entity: com.perun.tlinq.client.nts.entity.hotel.NTSRoomPricePeriod

Services

Service Name Action Return Class Parameters
findRoomPeriods findRoomPeriods com.perun.tlinq.entity.hotel.CRoomPeriod -

Field Mappings

Target Field Source Field Mapping Type Reverse Mapping Notes
roomId roomId DirectMapping - -
market market DirectMapping - -
periodStart periodStart DirectMapping - -
periodEnd periodEnd DirectMapping - -
baseRate baseRate DirectMapping - -
specDayRate specDayRate DirectMapping - -

RoomCalendarEntry

Entity Class: com.perun.tlinq.entity.hotel.CRoomCalendarEntry
ID Field: calendarEntryId
Default Factory: NTSServiceFactory

Factory: NTSServiceFactory

Native Entity: com.perun.tlinq.client.nts.db.hotel.RoomPriceEntity

Services

Service Name Action Return Class Parameters
listRoomCalendar listRoomCalendar com.perun.tlinq.entity.hotel.CRoomCalendarEntry hotelId (input), roomId (input), fromDate (input), toDate (input), market (input)
createRoomCalendar createRoomCalendar com.perun.tlinq.entity.hotel.CRoomCalendarEntry stayTo (input), specDays (input)
updateRoomCalendar updateRoomCalendar com.perun.tlinq.entity.hotel.CRoomCalendarEntry roomId (input), stayFrom (input), stayTo (input), market (input)

Field Mappings

Target Field Source Field Mapping Type Reverse Mapping Notes
calendarEntryId roomPriceId DirectMapping - -
roomId roomId DirectMapping - -
market market DirectMapping - -
vendorId vendorId DirectMapping - -
promo promo DirectMapping - -
bookFrom bookFrom DirectMapping - -
bookTo bookTo DirectMapping - -
stayDate stayDate DirectMapping - -
baseRate baseRate DirectMapping - -
specDayRate specDayRate DirectMapping - -
specialDay specialDay DirectMapping - -
sdRateType sdRateType DirectMapping - -
adultRate adultRate DirectMapping - -
adultRateType adultRateType DirectMapping - -
childRate childRate DirectMapping - -
childRateType childRateType DirectMapping - -
extraBedRate extraBedRate DirectMapping - -
rateBase rateBase DirectMapping - -
mealBase mealBase DirectMapping - -
mealSupplements mealSupplements DirectMapping - -
stopSale stopSale DirectMapping - -
available available DirectMapping - -
onRequest onRequest DirectMapping - -
mlos mlos DirectMapping - -
sdmlos sdMlos DirectMapping - -
mlosDesc mlosDesc DirectMapping - -
notes notes DirectMapping - -
adultSdRate adultSdRate DirectMapping - -
childSdRate childSdRate DirectMapping - -
breakdown breakdown ArrayMapping - -
calculatedCost calculatedCost DirectMapping - -

HotelSearchInput

Entity Class: com.perun.tlinq.entity.hotel.CHotelSearchInput
ID Field: namePart
Default Factory: NTSServiceFactory

Factory: NTSServiceFactory

Native Entity: com.perun.tlinq.client.nts.entity.hotel.NTSHotelSearchInput

Field Mappings

Target Field Source Field Mapping Type Reverse Mapping Notes
country country DirectMapping - -
namePart namePart DirectMapping - -
minRating minRating DirectMapping - -
maxRating maxRating DirectMapping - -
adults adults DirectMapping - -
children children DirectMapping - -
checkIn checkIn DirectMapping - -
checkOut checkOut DirectMapping - -
mealPlans mealPlans DirectMapping - -
extraBed extraBed DirectMapping - -
maxBudget maxBudget DirectMapping - -
area area DirectMapping - -
market market DirectMapping - -
hotelId hotelId DirectMapping - -
roomId roomId DirectMapping - -

MealSupplement

Entity Class: com.perun.tlinq.entity.hotel.CMealSupplement
ID Field: mealPlanId
Default Factory: NTSServiceFactory

Factory: NTSServiceFactory

Native Entity: com.perun.tlinq.client.nts.entity.hotel.NTSMealSupplement

Field Mappings

Target Field Source Field Mapping Type Reverse Mapping Notes
mealPlanId mealPlanId DirectMapping - -
mealPlan mealPlan DirectMapping - -
mealPlanDesc mealPlanDesc DirectMapping - -
adultSupplement adultSupplement DirectMapping - -
childSupplement childSupplement DirectMapping - -

RoomSearchResult

Entity Class: com.perun.tlinq.entity.hotel.CRoomSearchResult
ID Field: roomId
Default Factory: NTSServiceFactory

Factory: NTSServiceFactory

Native Entity: com.perun.tlinq.client.nts.entity.hotel.NTSRoomSearchResult

Field Mappings

Target Field Source Field Mapping Type Reverse Mapping Notes
roomId roomId DirectMapping - -
mealPlanId mealPlanId DirectMapping - -
roomName roomName DirectMapping - -
mealPlanName mealPlanName DirectMapping - -
price price DirectMapping - -
mealSupplements mealSupplements ArrayMapping - Target Entity: MealSupplement
calendar calendar ArrayMapping - Target Entity: RoomCalendarEntry
notes notes DirectMapping - -
mlos mlos DirectMapping - -
stopSale stopSale DirectMapping - -
onRequest onRequest DirectMapping - -

HotelSearchResultItem

Entity Class: com.perun.tlinq.entity.hotel.CHotelSearchResultItem
ID Field: hotel
Default Factory: NTSServiceFactory

Factory: NTSServiceFactory

Native Entity: com.perun.tlinq.client.nts.entity.hotel.NTSHotelSearchResultItem

Field Mappings

Target Field Source Field Mapping Type Reverse Mapping Notes
hotel hotel DirectMapping - Target Entity: Hotel
resultSource resultSource DirectMapping - -
rooms rooms ArrayMapping - Target Entity: RoomSearchResult

HotelSearchResult

Entity Class: com.perun.tlinq.entity.hotel.CHotelSearchResult
ID Field: input
Default Factory: NTSServiceFactory

Factory: NTSServiceFactory

Native Entity: com.perun.tlinq.client.nts.entity.hotel.NTSHotelSearchResult

Services

Service Name Action Return Class Parameters
searchAllHotels searchAllHotels com.perun.tlinq.entity.hotel.CHotelSearchResult isEmployee (input)

Field Mappings

Target Field Source Field Mapping Type Reverse Mapping Notes
input input DirectMapping - Target Entity: HotelSearchInput
results results ArrayMapping - Target Entity: HotelSearchResultItem

HotelPromo

Entity Class: com.perun.tlinq.entity.hotel.CHotelPromo
ID Field: promoId
Default Factory: NTSServiceFactory

Factory: NTSServiceFactory

Native Entity: com.perun.tlinq.client.nts.db.hotel.HotelpromoEntity

Services

Service Name Action Return Class Parameters
saveHotelPromo update - -
saveHotelPromo create - -
readHotelPromo read - -
getHotelPromos search - roomId (input)

Field Mappings

Target Field Source Field Mapping Type Reverse Mapping Notes
promoId id DirectMapping - -
promoCode promocode DirectMapping - -
promoName promoname DirectMapping - -
promoDesc promodesc DirectMapping - -
market market DirectMapping - -
stayFrom stayfrom DirectMapping - -
stayTo stayto DirectMapping - -
bookFrom bookfrom DirectMapping - -
booktTo bookto DirectMapping - -
hotelId hotelid DirectMapping - -
mlos mlos DirectMapping - -
valid valid DirectMapping - -
priority priority DirectMapping - -

HotelRoomPromo

Entity Class: com.perun.tlinq.entity.hotel.CHotelRoomPromo
ID Field: roomPromoId
Default Factory: NTSServiceFactory

Factory: NTSServiceFactory

Native Entity: com.perun.tlinq.client.nts.db.hotel.HtlpromoroomEntity

Services

Service Name Action Return Class Parameters
saveHotelPromoRoom update - -
saveHotelPromoRoom create - -
readHotelPromoRoom read - -
readHotelPromoRoom search - -

Field Mappings

Target Field Source Field Mapping Type Reverse Mapping Notes
roomPromoId id DirectMapping - -
promoId promoid DirectMapping - -
roomId roomid DirectMapping - -
hotelId hotelid DirectMapping - -

HotelPromoPrice

Entity Class: com.perun.tlinq.entity.hotel.CHotelPromoPrice
ID Field: promoPriceId
Default Factory: NTSServiceFactory

Factory: NTSServiceFactory

Native Entity: com.perun.tlinq.client.nts.db.hotel.HtlpromocalEntity

Services

Service Name Action Return Class Parameters
saveHotelPromoCal update - -
saveHotelPromoCal create - -
readHotelPromoCal read - -
readHotelPromoCal search - -

Field Mappings

Target Field Source Field Mapping Type Reverse Mapping Notes
promoPriceId id DirectMapping - -
htlPromoRoomId hprid DirectMapping - -
baseRate baserate DirectMapping - -
brType brtype DirectMapping - -
sdRate sdrate DirectMapping - -
sdType sdtype DirectMapping - -
mealSupp mealsupp DirectMapping - -
mspType msptype DirectMapping - -
adlRate adlrate DirectMapping - -
arType artype DirectMapping - -
chdRate chdrate DirectMapping - -
crType crtype DirectMapping - -
aebRate aebrate DirectMapping - -
aebType aebtype DirectMapping - -
adlSdRate adlsdrate DirectMapping - -
chdSdRate chdsdrate DirectMapping - -

HotelPackage

Entity Class: com.perun.tlinq.entity.hotel.CHotelPackage ID Field: packageId Default Factory: NTSServiceFactory

Factory: NTSServiceFactory

Native Entity: com.perun.tlinq.client.nts.db.hotel.HtlpackageEntity

Services

Service Name Action Notes
saveHotelPackage create Standard write
saveHotelPackage update Standard write
readHotelPackage read Standard read
searchHotelPackages search Custom: strips photos, JOINs hotel name, eager-loads rooms
deleteHotelPackage delete Standard delete
saveHotelPackageWithRooms saveWithRooms Custom: atomic save of package + rooms
copyHotelPackage copy Custom: copy package as new DRAFT

Key Field Mappings

Target Field Source Field Notes
packageId id PK
hotelId hotelid FK to hotel
status status DRAFT, ACTIVE, RETIRED
hotelName hotelname Transient, populated by search JOIN

HotelPackageRoom

Entity Class: com.perun.tlinq.entity.hotel.CHotelPackageRoom ID Field: packageRoomId Default Factory: NTSServiceFactory

Factory: NTSServiceFactory

Native Entity: com.perun.tlinq.client.nts.db.hotel.HtlpackageroomEntity

Key Field Mappings

Target Field Source Field Notes
packageRoomId id PK
packageId packageid FK to package
roomType roomtype Free text
pricePerNight pricepernight
priceTotal pricetotal
currencyCode currencycode

PackageBooking

Entity Class: com.perun.tlinq.entity.hotel.CPackageBooking ID Field: bookingId Default Factory: NTSServiceFactory

Factory: NTSServiceFactory

Native Entity: com.perun.tlinq.client.nts.db.hotel.PackagebookingEntity

Services

Service Name Action Notes
savePackageBooking create Standard write
savePackageBooking update Standard write
readPackageBooking read Standard read
readPackageBooking search Standard search
deletePackageBooking delete Standard delete

Key Field Mappings

Target Field Source Field Notes
bookingId id PK
packageId packageid FK to package
hotelId hotelid FK to hotel
hotelName hotelname Denormalized
checkIn checkin DATE
checkOut checkout DATE
customerName customername
customerEmail customeremail
odooCustomerId odoocustomerid FK to Odoo customer
passengers passengers JSON TEXT
rooms rooms JSON TEXT
salePrice saleprice Editable total
cartReference cartreference Payment cart reference
odooQuoteId odooquoteid FK to Odoo sale order
invoiceNumber invoicenumber Odoo invoice number
telrPaymentLink telrpaymentlink Payment URL
reservationName reservationname Name on hotel reservation
confirmationNumber confirmationnumber Hotel confirmation number
status status DRAFT, PENDING_PAYMENT, COMPLETED, CANCELLED

Note: passengers and rooms are stored as JSON TEXT columns. Business logic is in PackageBookingFacade, which handles the checkout flow (Odoo quote creation, Telr payment link), payment confirmation (invoice creation, validation, payment registration), voucher PDF generation, and invoice PDF retrieval.


Generated from hotel-entities.xml