@z_a_p_a_r_a

Как правильно построить структуру БД?

Есть следующие модели:
  • Duty
public class Duty
    {
        public int DutyId { get; set; }

        public int dateId { get; set; }
        public Date DateOfDuty { get; set; }

        public int typeOfDutyId { get; set; }
        public TypeOfDuty typeOfDuty { get; set; }

        public List<DutyOfPerson> DutyPerson { get; set; }
    }

TypeOfDuty
public class TypeOfDuty
    {
        public int typeOfDutyId { get; set; }
        public string Name { get; set; }
        public List<RoleInDuty> rolesInDuty { get; set; }
    }

RoleInDuty
public class RoleInDuty
    {
        public int roleInDutyId { get; set; }
        public string Name { get; set; }
        public int typeOfDutyId { get; set; }
    }

Person
public class Person
    {
        public int PersonId { get; set; }
        public string Name { get; set; }
    
        public List<DutyOfPerson> DutyPerson{ get; set; }
    }


Cоздаю связной класc Person-Duty:
public class DutyPerson
    {
        public int DutyId { get; set; }
        public Duty Duty { get; set; }
        public int PersonId { get; set; }
        public Person Person { get; set; }
    }

Теперь есть возможность установить дежурство, его тип и назначить людей в дежурство, но как теперь приписать роль человеку в данном дежурстве?
Примерная схема БД5c315a7d6a9ac810726328.png
И ещё установить, в каком дежурстве может участвовать человек и какие роли может выполнять (это второстепенно). Первое понятно как выполнить=> создать связную таблицу типа PersonTypeOfDuty, но опять же как установить какие роли он может выполнять в данных дежурствах?
  • Вопрос задан
  • 65 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
SLC7 Екатеринбург
от 50 000 до 90 000 руб.
LC Group Новосибирск
от 90 000 до 160 000 руб.
Email Soldiers Рязань
от 60 000 до 100 000 руб.