Сегодня произошел интересный случай. Клиент случайно удалил сделки (сделки плотно взаимодействовали с элементами списка), так вот после удаления сделок, элементы все отвязались, все связи развалились. Считаю в корень не правильный алгоритм. Связи снимать нужно только после очистки корзины.
В итоге восстановили сделки из корзины, у сделок новые ID!!! считаю это тоже неправильным, ведь на ID может быть многое завязано. ID менять нельзя (присваивать новые нельзя) после восстановления из корзины.
В общем идея в том, чтобы адекватно сделать работу корзины. Удалять связи только после того как очистится полностью сделка из корзины!!! Просьба проголосовать т.к. это сегодня доставило огромную кучу проблем нашему клиенту(
или как вариант: переписывать ид привязанной сущности в списке при восстановлении из корзины
Также проблема, что удаляется абсолютно вся история. НЕДОПУСТИМО! Необходимо записать в историю, что сделка удалилась и после восстановления, добавить информацию, что сделка восстановилась!!!