Я реализовал проект в Laravel.Ниже приведена схема моей базы данных.
У пользователя много служб, а у службы много задач.У меня есть таблица "service_tasks" с полями task_id (автоинкремент), service_id и task_order.
Теперь, когда создается новая задача, порядок задач должен автоматически увеличиваться в соответствии с полем service_id.
Так, например, вот так.
id service_id task_order
1 101 1
2 101 2
3 102 1
4 102 2
5 103 1
Я реализовал следующее решение.
Сначала я считаю общее задание для услуги и добавляю плюс один для поля заказа, ноКогда два или более пользователя одновременно добавляют задачу для одной и той же службы, заказ для службы не работает (один и тот же пользователь зарегистрирован на нескольких устройствах и работает на одной и той же службе).
Обновлено
$task = new ServiceTask();
$task->service_id = 139;
$task->task_order = ServiceTask::where('service_id',139)->count()+1;
$task->save();
Обратите внимание, что я не могу изменить структуру таблицы.