Я работаю над одним приложением HRMS. В приложении есть один рабочий процесс Transfers. В рамках этого сотрудник может быть переведен из одного отдела / офиса в другой отдел / офис. Процесс перевода работает следующим образом: Сотрудник проверяет вакансию в заявке и подает заявку на перевод, если вакансия имеется. Как только сотрудник отправляет форму перевода, он отправляется на утверждение в отдел / офис сотрудника. В потоке утверждений 5 утверждающих. В PostgreSQL для достижения 3NF я решил создать 3 отдельные таблицы, как показано ниже: 1) Одна для запроса на перевод сотрудника 2) Запрос на утверждение запроса на передачу 3) Детали запроса на утверждение запроса на передачу ![enter image description here](https://i.stack.imgur.com/Aw1tO.png)
Таким образом, на изображении выше для запроса на утверждение я создал две отдельные таблицы: Transfer_request_approval и Transfer_request_approval_details . Transfer_request_approval ссылается на Transfer_request_id как FK, а Transfer_request_approval_details содержит Transfer_request_approval_id как FK и все 5 записей утверждающего для этого конкретного запроса на подтверждение.
например, у нас есть запрос на передачу с id = 1, поэтому в таблице Transfer_request_appro для передачи есть запрос на одну строку = 1, Transfer_request_id = 1 как FK). В Transfer_request_approval_details будет 5 строк для 5 записей утверждающего. (Примечание: для параметра application_status выбрано Утверждено, Отклонено или Переработано, примечание - это не что иное, как пользователь может оставить некоторое замечание. Если утверждающий переводит статус восстановления, он снова go возвращается к утверждающему1, например, если утверждающий 5 переводит статус восстановления, он будет go снова утверждать1. для того же процесса. Таким образом, будет 10 записей для всего этого запроса на утверждение в таблице Transfer_request_approval_details).
Вопрос : Мне действительно нужно иметь таблицу Transfer_request_approval_details или я могу включить все эти записи утверждающих в таблице Transfer_request_approval?