Here's the short explanation that should be enough for a person skilled in CakePHP (or any mvc framework).
Currently there is a Deal table that has 2 flags specifying if there are two additional deals. So these share same table field values as original Deal.
1. To have each type of Deal (original, deal2, vip) to be stored as separate `deals` table row.
2. To have a mapper(pivot) table that interconnects 3 types of same deal in `deals` table by storing their respective ids.
3. Adjust the rest of the script code that was relying on old `deals` schema to support new one.