Skip to content

Latest commit

 

History

History
63 lines (39 loc) · 5.25 KB

File metadata and controls

63 lines (39 loc) · 5.25 KB

Самостоятельная работа № 1

Создание прототипа приложения "Управление складом"

Цель работы

Необходимо разработать программное обеспечение, позволяющее упростить и сделать более эффективным и надёжным процесс управления небольшим складом товаров. Программное обеспечение (далее "ПО") предлагается разработать в виде Web-приложения на Ruby on Rails c использованием СУБД Postgresql. ПО должно автоматизировать учёт товаров, добавление, удаление товаров на склад, учёт дополнительных свойств товара, формирование списка имеющихся товаров (прайс-листа), а так же разграничение прав доступа для двух групп пользователей: менеджеров и администраторов.

Необходимая функциональность

Пользователи

Необходимо различать две группы пользователей:

  • Менеджеры
  • Администраторы

Товар

Основная сущность: "Партия товара". Свойства:

  • Название товара
  • Количество единиц товара на складе в данный момент
  • Закупочная цена одной единицы товара
  • Стоимость одной единицы товара
  • Дополнительные свойства товара в форме (ключ: значение, например: цвет: белый, вес: 2кг., могут быть любыми)

Заказ

  • Виртуальная сущность, хранит данные о том, какой пользователь осуществил продажу некоторого товара, количество (шт.) товара. Кроме того, вычисляет закупочную цену для проданного товара, стоимость для покупателя и полученную от продажи прибыль (стоимость единицы товары * количество проданных единиц - закупочная стоимость * количество)

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

  1. Менеджер осуществляет поиск по товарам
  • Пользователь с ролью "менеджер" входит в свой аккаунт
  • Пользователь видит каталог товаров
  • Пользователь вводит ключевое слово в форму поиска
  • Пользователь видит товары, в названиях которых есть ключевое слово, причем только те товары, которые есть на складе (количество больше 0 штук)
  • Менеджер не может удалить "партию товара" со склада или изменить закупочную стоимость.
  • Менеджер может изменить стоимость единицы товара.
  1. Менеджер осуществляет продажу
  • Пользователь с ролью "менеджер" входит в свой аккаунт
  • Пользователь выбирает некоторый товар (из каталога или поиском)
  • На странице товара пользователь видит форму "оформление заказа", указывает в ней количество единиц товара и подтверждает, что товар продан.
  • После этого в БД сохраняется новый Заказ. Количество товар на складе соответственно уменьшается.
  1. Администратор управляет партиями товара
  • Администратор входит в свой аккаунт
  • Администратор имеет полный доступ к добавлению, удалению, редактированию партий товара.
  • Администратор не может изменять уже сохранённые заказы, не может удалять заказы.
  1. Администратор просматривает историю заказов
  • Администратор входит в свой аккаунт
  • Администратор выбирает период времени, за который он хочет просмотреть историю заказов.
  • История заказов содержит информацию о товарах, их количестве, общую сумму денег затраченных на закупку этого товара, общую выручку и прибыль от продажи за выбранный период.