I think KQ is proably the best option by far. Discounted tix are available from agents in HK.
If you do CZ from CAN then you have to buy a higher fare ticket to get any miles (depending on the program crediting to), most Skyteam carriers don't give miles for most of CZ's Y class fare classes. This is only compounded by the truly awful CZ Y seating.
(I'm just assuming the OP is flying in Y since nothing else was mentioned)