Не зная вашей модели данных, я собираюсь сделать некоторые предположения о доступных полях. Ограничение может выглядеть следующим образом:
.from(Task.class)
.ifExistsOther(Task.class,
Joiners.equal(Task::getCustomer),
Joiners.equal(Task::getDay))
.penalize("Two tasks for the same customer on the same day", ...)
Вам решать, насколько жестким должно быть наказание. Если вы хотите исключить эту ситуацию, вы должны сделать ее жестким ограничением - решение с нарушенным этим ограничением будет невозможно.
(EDIT) Существует также другой вариант, и он должен сделать ситуацию невозможной. в модели данных. Если вы создадите одну единицу планирования для каждой комбинации клиент + день, для одного клиента будет абсолютно невозможно выполнять больше задач за один день.