Sobes.tech
Middle

Үй тапшырмаларын башкаруу системасы үчүн физикалык маалымат моделин долбоорлоо. Бардык физикалык таблицаларды негизги (PK) жана четки (FK) ачкычтарды белгилеп белгилеңиз. Модель алдын ала аныктаган бардык колдонуу учурларын камтышы керек.

sobes.tech AI

AIден жооп

Для системы управления задачами можно выделить следующие основные таблицы:

  1. Users — пользователи системы
  • PK: user_id
  • Поля: username, email, password_hash, created_at
  1. Tasks — задачи
  • PK: task_id
  • FK: assigned_to (user_id из Users) — пользователь, которому назначена задача
  • FK: created_by (user_id из Users) — пользователь, создавший задачу
  • Поля: title, description, status, priority, due_date, created_at, updated_at
  1. Projects — проекты, объединяющие задачи
  • PK: project_id
  • FK: owner_id (user_id из Users) — владелец проекта
  • Поля: name, description, created_at
  1. Task_Comments — комментарии к задачам
  • PK: comment_id
  • FK: task_id (из Tasks)
  • FK: author_id (user_id из Users)
  • Поля: content, created_at
  1. Task_History — история изменений задач
  • PK: history_id
  • FK: task_id (из Tasks)
  • FK: changed_by (user_id из Users)
  • Поля: change_type, old_value, new_value, changed_at
  1. Project_Members — участники проекта
  • PK: (project_id, user_id)
  • FK: project_id (из Projects)
  • FK: user_id (из Users)
  • Поля: role

Эта модель покрывает основные use case:

  • Создание и назначение задач
  • Управление проектами и участниками
  • Комментирование задач
  • Отслеживание истории изменений

Пример определения таблицы Tasks:

CREATE TABLE Tasks (
    task_id SERIAL PRIMARY KEY,
    title VARCHAR(255) NOT NULL,
    description TEXT,
    status VARCHAR(50) NOT NULL,
    priority INT,
    due_date DATE,
    assigned_to INT REFERENCES Users(user_id),
    created_by INT REFERENCES Users(user_id),
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    updated_at TIMESTAMP
);