Jockeys should not offer to work for users if there is already a non canceled offer with higher salary to that user and jockey.
It makes sense: if user has offered lower, jockey can make a counter offer and cancel the previous. If user has offered higher, why would jockey suggest lower salary? =)
At the same time: if there is ANY accepted offer for jockey, jockeys should NOT apply for jobs (check this is the case)! Contract is signed. Once job starts, jockey can apply for other jobs again.