fix: unite all price details modals to one and align on ui
This commit is contained in:
committed by
Michael Zetterberg
parent
8152aea649
commit
1f94c581ae
@@ -1,10 +1,10 @@
|
||||
"use client"
|
||||
import { dt } from "@/lib/dt"
|
||||
import { useMyStayRoomDetailsStore } from "@/stores/my-stay/myStayRoomDetailsStore"
|
||||
import { useMyStayTotalPriceStore } from "@/stores/my-stay/myStayTotalPrice"
|
||||
|
||||
import PriceDetailsModal from "../../PriceDetailsModal"
|
||||
import PriceDetailsTable from "./PriceDetailsTable"
|
||||
import PriceDetailsModal from "@/components/HotelReservation/PriceDetailsModal"
|
||||
|
||||
import { calculateTotalPrice, mapToPrice } from "./mapToPrice"
|
||||
|
||||
import styles from "./priceDetails.module.css"
|
||||
|
||||
@@ -13,27 +13,32 @@ export default function PriceDetails() {
|
||||
const linkedReservationRooms = useMyStayRoomDetailsStore(
|
||||
(state) => state.linkedReservationRooms
|
||||
)
|
||||
const currencyCode = useMyStayTotalPriceStore((state) => state.currencyCode)
|
||||
const totalPrice = useMyStayTotalPriceStore((state) => state.totalPrice)
|
||||
|
||||
const rooms = [bookedRoom, ...linkedReservationRooms]
|
||||
.filter((room) => !room.isCancelled)
|
||||
.map((room) => ({
|
||||
...room,
|
||||
breakfastIncluded: room.rateDefinition.breakfastIncluded,
|
||||
price: mapToPrice(room),
|
||||
roomType: room.roomName,
|
||||
}))
|
||||
|
||||
const bookingCode =
|
||||
rooms.find((room) => room.bookingCode)?.bookingCode ?? undefined
|
||||
const totalPrice = calculateTotalPrice(rooms, bookedRoom.currencyCode)
|
||||
|
||||
const fromDate = dt(bookedRoom.checkInDate).format("YYYY-MM-DD")
|
||||
const toDate = dt(bookedRoom.checkOutDate).format("YYYY-MM-DD")
|
||||
return (
|
||||
<div className={styles.priceDetailsModal}>
|
||||
<PriceDetailsModal>
|
||||
<PriceDetailsTable
|
||||
fromDate={dt(bookedRoom.checkInDate).format("YYYY-MM-DD")}
|
||||
toDate={dt(bookedRoom.checkOutDate).format("YYYY-MM-DD")}
|
||||
linkedReservationRooms={linkedReservationRooms}
|
||||
bookedRoom={bookedRoom}
|
||||
totalPrice={{
|
||||
requested: undefined,
|
||||
local: {
|
||||
currency: currencyCode,
|
||||
price: totalPrice ?? 0,
|
||||
},
|
||||
}}
|
||||
vat={bookedRoom.vatPercentage}
|
||||
/>
|
||||
</PriceDetailsModal>
|
||||
<PriceDetailsModal
|
||||
bookingCode={bookingCode}
|
||||
fromDate={fromDate}
|
||||
rooms={rooms}
|
||||
toDate={toDate}
|
||||
totalPrice={totalPrice}
|
||||
vat={bookedRoom.vatPercentage}
|
||||
/>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user