Details
Description
Example:
We have a configurable option with three pricing terms and we'll give them arbitrary IDs:
- 1 Month - ID 240
- 3 Months - ID 241
- 1 Year - ID 242
Then by clicking the add button on the 3 Months term and adding another term for 6 Months we get a new list:
- 1 Month - ID 240
- 3 Months - ID 241
- 6 Months - ID 242
- 1 Year - ID 243
We can see that the ID 242 has moved from the 1 Year term to the 6 Month term. Any one year services are will now be charged the 6 Month config option pricing.
This should be updated so that terms keep their IDs. So we would get this:
- 1 Month - ID 240
- 3 Months - ID 241
- 1 Year - ID 242
- 6 Months - ID 243
Secondly we should create a migration to update services that have the wrong config option pricing because of this issue. We would search the database for services with config option pricing terms that do not match the service pricing term. Then we would update those options to have a pricing that does match the service pricing. In the case that there is more than one option pricing for the given term we should leave it alone so it can be manually resolved.