Hi folks,
I'm currently negotiating a project for a client that sells steel plate in custom sizes. The exact price depends on the size that the customer chooses, so it's not practical to pre-calculate it and store it in the DB. A custom module will read the customer's inputs for length and width, and then alter the :price field in the BasketItem that the store creates. I have a number of other modules out there that do similar things, and I think some other free-lancers do too.
I'm wondering how this will interact with the new discount features in v9, which seem to do things like create new BasketItems, or change the line_id values of existing ones. I want to find out if a conflict could occur, e.g. if a customer has one of these custom items in the basket, and then applies a coupon or Buy X Get Y discount.
My specific question is: in managing discounts, will the store ever (1) alter the :price field of a BasketItem by overwriting it with a value from the Products table, or (2) create a new BasketItem from scratch, and use a price from the Products table instead of copying it from an existing BasketItem?
Thanks --
I'm currently negotiating a project for a client that sells steel plate in custom sizes. The exact price depends on the size that the customer chooses, so it's not practical to pre-calculate it and store it in the DB. A custom module will read the customer's inputs for length and width, and then alter the :price field in the BasketItem that the store creates. I have a number of other modules out there that do similar things, and I think some other free-lancers do too.
I'm wondering how this will interact with the new discount features in v9, which seem to do things like create new BasketItems, or change the line_id values of existing ones. I want to find out if a conflict could occur, e.g. if a customer has one of these custom items in the basket, and then applies a coupon or Buy X Get Y discount.
My specific question is: in managing discounts, will the store ever (1) alter the :price field of a BasketItem by overwriting it with a value from the Products table, or (2) create a new BasketItem from scratch, and use a price from the Products table instead of copying it from an existing BasketItem?
Thanks --
Comment