Maker-Checker-Approver в приложении Java

1

Это в основном вопрос дизайна. Мне хотелось бы знать, что является лучшим способом реализации этого.

Мне нужно внедрить функциональные возможности для проверки-проверки. Один общий способ выглядит следующим образом:

Если есть Employee entity, то employee_mk и employee_app - это две таблицы, которые являются структурно идентичными. Поэтому, когда создается новый сотрудник, он переходит в таблицу employee_mk и ждет утверждения. После того, как он одобрен пользователем более высокого уровня, он удаляет из таблицы employee_mk и переходит к таблице employee_app. Короче говоря, если есть изменения, он переходит в таблицу customer_temp, а другой пользователь не может видеть изменения до тех пор, пока он не будет проверен авторизованным пользователем.

есть ли другой способ реализовать это? в основном в один момент времени будут два значения полей объекта. Какими могут быть другие способы, кроме упомянутых выше, реализовать и спроектировать это.

Теги:
design-patterns
java-ee
design-principles

1 ответ

1

Пока в обеих таблицах не будет двух одинаковых экземпляров, вы можете заменить его столбцом состояния.

Вы можете создавать виды, которые будут использоваться, которые фильтруют состояние. Недавно добавленные строки получают состояние по умолчанию "для утверждения".

Таким образом, у вас будет возможность сохранить ссылочную целостность и т.д.

Если вы хотите иметь возможность обрабатывать обновления таким же образом, как у вас будет больше работы, состояние должно быть частью первичного ключа.

  • 0
    Спасибо за ваш ответ. Но похоже, что при таком подходе нужно приложить немало усилий. Я имею в виду, что средство проверки создателей - это обычная функциональность в различных приложениях.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню