Merged in fix/BOOK-121-join-membership-modify-correct-price (pull request #2829)

fix(BOOK-121): clear join only if membership number is valid and calculate correct member price

* fix(BOOK-121): clear join only if membership number is valid and calculate correct member price


Approved-by: Erik Tiekstra
Approved-by: Matilda Landström
This commit is contained in:
Bianca Widstam
2025-09-19 06:20:48 +00:00
parent 08804e8675
commit c791fef2c6
2 changed files with 10 additions and 4 deletions

View File

@@ -39,7 +39,7 @@ export default function MemberPriceModal() {
trigger("membershipNo").then((isValid) => {
const { isDirty } = getFieldState("membershipNo")
updatePriceForMembershipNo(membershipNo, isValid)
if (isValid && isDirty) {
if (isValid && isDirty && !!membershipNo) {
setIsOpen(true)
}
})

View File

@@ -197,13 +197,16 @@ export function createDetailsStore(
produce((state: DetailsState) => {
const currentRoom = state.rooms[idx].room
currentRoom.guest.join = false
currentRoom.guest.membershipNo = isValid ? membershipNo : ""
const isValidMembershipNo = isValid && !!membershipNo
if (isValidMembershipNo) {
currentRoom.guest.join = false
}
currentRoom.roomPrice = getRoomPrice(
currentRoom.roomRate,
isValidMembershipNo
isValidMembershipNo || currentRoom.guest.join
)
const nights = dt(state.booking.toDate).diff(
@@ -235,7 +238,10 @@ export function createDetailsStore(
currentRoom.guest.membershipNo = ""
}
currentRoom.roomPrice = getRoomPrice(currentRoom.roomRate, join)
currentRoom.roomPrice = getRoomPrice(
currentRoom.roomRate,
join || !!currentRoom.guest.membershipNo
)
const nights = dt(state.booking.toDate).diff(
state.booking.fromDate,