The graphical place picker in yoyaku_placement prices each category from the slot-category price override, or the category price, in VenueMapBuilder::categoriesByGrade(). The cart and checkout resolve the price through PaymentPolicyResolver, which honors the category payment_inherit flag and reads the price from the resource when the category inherits.

When a category has payment_inherit enabled and the resource carries a different price, the two surfaces disagree on the price of the same booking.

Example: a category with its own price of 60 EUR but payment_inherit enabled, on a resource priced at 0.00. The place picker shows the category at 60 EUR and a total of 120 EUR for two places, while the same two bookings show no price in the cart, because the resolved policy price is 0.00.

Steps to reproduce:

  1. Give a resource a placement venue with places, and a category whose own price is non-zero.
  2. Enable inherit payment on the category, and leave the resource price at 0.00.
  3. Pick a place on the graphical map: the selection shows the category price.
  4. Open the cart: the line shows no price and the total does not match the picker.

Expected: the price shown when picking a place and the price charged in the cart are the same. The place picker should resolve prices through the same PaymentPolicyResolver the cart uses, so payment_inherit is honored in one place.

Issue fork yoyaku-3612687

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

mably created an issue. See original summary.

  • mably committed 0a5079aa on 1.x
    fix: #3612687 Seat-map place picker prices ignore payment_inherit and...
mably’s picture

Status: Active » Fixed

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.