So when I add a Combo item, I want the waitress to be able to add a small juice for no charge. The way I am handling Juice size is through portions. So when order (Combo #1) is added waitress will go to beverages and add a small juice, I want that to be free, but if she adds a large juice there needs to be a charge for it.
Would I put in a custom constraint for order added to ticket: Portion equals small?
Sorry if im asking an already existing question I seen JohnS’s solution but his and the others did not require portions like mine.
To be able to check if a combo added to ticket you can create a specific ticket state for it. For example when order added you can check if it is a combo and update ticket’s Free Drink (or whatever else) state to Active.
So when a juice order added you can check Free Drink state with a constraint (eg. {TICKET STATE:FreeDrink}, Equals, Active) and mark it as free.
Also you can check Order Portion Changed event to remove gift when portion becomes Large.
@emre would that feature we talked about yesterday help me in this case also? Restaurants around my area are extremely competitive since there are so many so they all have some type of promotion combos.
@ okay, I got it partly working last night and I learned alot about states and actions :). However, it wasn’t working the best way.
@Jesse I got the state to change when I add a combo. So I add Combo item, now the state for FreeDrink Is active.
Now I got another rule if orange juice is added launch action update order with price 0.01 for orange juice. And also actions to change the state back to unactive.
Well now the flaw in that setup is that I can add the small juice after the combo is added and it will work but say the waiter accidently adds the wrong juice and she changes it, since the state is no longer active it will be full price.
Do you think I should try some type of counter method to count how many combos there is and then allow that many small juices?