Andelme / cmc-web-2020

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Структура БД

Структура БД

Базовый адрес

localhost:8080/personnel/

Описание набора страниц

  1. Верхнее меню (на каждой странице)
    • Кнопка 'Домашняя страница' -> Домашняя страница
    • Кнопка 'Вакансии' -> Страница вакансий
    • Кнопка 'Работники' -> Общая страница работников
    • Кнопка 'Должности' -> Страница должностей
  2. Домашняя страница
    • Дерево структуры компании (имя + кликабельная ссылка) -> Страница подразделения
    • Кнопка 'Добавить подразделение' -> Cтраница для изменения (добавления) подразделения

Рекурсивный SELECT - запрос из таблицы DEPARTMENT

  1. Страница подразделения
    • Имя подразделения
    • Головное подразделение (имя + кликабельная ссылка) -> Страница подразделения
    • Список дочерних подразделений (имя + кликабельная ссылка) -> Страница подразделения
    • Список всех работников подразделения (ФИО + кликабельная ссылка) -> Страница работника
    • Кнопка 'Уволить' рядом с каждым работником
    • Кнопка 'Назначить' рядом с каждой вакансией
    • Кнопка 'Удалить' рядом с каждой вакансией
    • Форма добавления новой вакансии
    • Кнопка 'Изменить' -> Cтраница для изменения (добавления) подразделения
    • Кнопка 'Удалить'

DEPARTMENT <=> WORK_POSITION (retire_date = NULL) <=> WORKER

  1. Страница вакансий
    • Должность
    • Подразделение
    • Рабочая ставка
    • Оклад
    • Форма добавления новой вакансии
    • Кнопка 'Удалить' рядом с каждой вакансией

WORK_POSITION (worker_id = NULL) <=> POSITION_TYPE <=> DEPARTMENT

  1. Общая страница работников
    • Общий список всех работников, как работающих, так и не работающих
    • ФИО + кликабельная ссылка -> Страница работника
    • Текущие должность и подразделение
    • Дата найма
    • Фильтрация работников по имени, дате найма, образованию, должности и подразделению
    • Кнопка 'Добавить данные работника' -> Страница для изменения (добавления) работника

WORKER <== WORK_POSITION (retire_date = NULL)<== DEPARTMENT

  1. Страница работника
    • ФИО
    • Дата рождения
    • Дата найма
    • Образование
    • Номер телефона
    • Место жительства
    • Текущее место работы
    • История занимаемых должностей (если есть)
    • Кнопка 'Изменить' -> Страница для изменения (добавления) работника
    • Кнопка 'Удалить'

WORKER <== WORK_POSITION <== DEPARTMENT

  1. Страница должностей

    • Список должностей (Имя + кликабельная ссылка) -> Страница должности
  2. Страница должности

    • Наименование должности
    • Обязанности
    • Оклад
    • Кнопка 'Изменить' -> Cтраница для изменения (добавления) должности
    • Кнопка 'Удалить'

POSITION_TYPE

  1. Страница для изменения (добавления) работника (А)

    • Редактируемые поля:
      • ФИО
      • Дата рождения
      • Дата найма (Проставляется автоматически)
      • Учёная степень (выпадающий список)
      • Номер телефона
      • Место жительства
    • Кнопка 'Применить'
  2. Cтраница для изменения (добавления) должности (А)

    • Редактируемые поля:
      • Наименование должности
      • Обязанности
      • Оклад
    • Кнопка 'Применить'
  3. Cтраница для изменения (добавления) подразделения (А)

    • Редактируемые поля:
      • Имя подразделения
      • Головное подразделение (выпадающий список)
    • Кнопка 'Применить'

Сценарии использования

  1. Получение структуры компании и её редактирование
    • Просмотр структуры компании
      • Главная страница
    • Просмотр информации о подразделении
      • Главная страница --'Имя подразделения'-> Страница подразделения
    • Добавление подразделения в компанию
      • Главная страница --'Добавить подразделение'-> Cтраница для изменения (добавления) подразделения
    • Изменение / удаление информации о подразделении
      • Главная страница --'Имя подразделения'-> Страница подразделения --'Изменить / удалить'~> Cтраница для изменения (добавления) подразделения
  2. Управление рабочими местами и вакансиями
    • Просмотр вакансий
      • Главная страница --'Вакансии'-> Страница вакансий
    • Добавление / удаление вакансии
      • Главная страница --'Вакансии'-> Страница вакансий --'Добавить / удалить'
    • Назначение работника на данное место
      • Главная страница --'Имя подразделения'-> Страница подразделения --'Назначить работника'
    • Просмотр должностей
      • Главная страница --'Должности'-> Страница должностей
    • Добавление / удаление / изменение должности
      • Главная страница --'Должности'-> Страница должностей --'Добавить'~>Cтраница для изменения (добавления) должности
      • --...-> Страница должности --'Изменить / удалить'~>Cтраница для изменения (добавления) должности
  3. Управление списком работников
    • Получение списка работников с фильтрацией по дате найма, подразделению и должности
      • Главная страница --'Работники'-> Общая страница работников -> Выбор фильтра
    • Получение истории должностей данного работника
      • Главная страница --'Работники'-> Общая страница работников --'Имя работника'-> Страница работника
      • Главная страница --'Имя подразделения'-> Страница подразделения --'Имя работника'-> Страница работника
    • Изменение / удаление информации о работнике
      • --...-> Страница работника --'Изменить / удалить'~> Страница для изменения (добавления) работника
    • Добавление нового работника в список
      • --...-> Общая страница работников --'Добавить'-> Страница для изменения (добавления) работника
    • Назначение работника на новую должность
      • Делается через назначение работника на вакансию, либо через страницу создания новой вакансии
    • Увольнение работника
      • Главная страница --'Имя подразделения'-> Страница подразделения --'Уволить'->

About


Languages

Language:Java 70.8%Language:HTML 22.3%Language:CSS 4.4%Language:JavaScript 2.5%Language:TSQL 0.1%