# It's Wooble :: Master Bluster ## 1. Цель проекта Цель проекта разработка удобного инструмента для создания карты раскроя (порядок резки стержней), позволяющей оптимизировать расход и снизить количество неделовых остатков. ## 2. Описание системы Система состоит из следующих основных функциональных блоков: 1. Функционал создание карты раскроя 2. Функционал личного кабинета подписчика ### 2.1. Функционал создание карты раскроя Раскрой происходит по алгоритму представленному заказчиком. На сайте представлена возможность либо скачать файл, либо заполнить форму по выбранному материалу. Далее обработка их на сервере. И возвращение ответа либо на сайте, либо в excel файле, на усмотрение пользователя. Также происходит проверка на ограничения для пользователей без подписки (см. 2.2.2). #### 2.1.1. Материал Пользователь имеет возможность выбрать один материал из списка: * арматура * металлический профиль (уголок) * брус * бревно От исполнителя требуется поддержка только арматуры. #### 2.1.2. Данные для работы алгоритма Данные могут быть загруженны в двумя способами, первый форма на сайте, второй excel файл. Шаблон excel файла можно скачать с сайта. Данные для заполнения представляет заказчиком. ##### 2.1.2.1. Данные для заполнения В одном расчёте может быть несколько подобных параметров: * Значения длины заготовки * Диаметра арматуры * Списка позиций, состоящего из: * Названия позиции * Длинны, мм * Количества штук Уточнение: *excel -- В разных вкладках разные диаметры* #### 2.1.3. Обработка данных алгоритмом Обработка данных согласно алгоритму представленному заказчиком. *Во время работы алгоритма пользователь видит анимацию, представленную заказчиком* #### 2.1.4. Представление результата работы алгоритма Во всплывающем окне пользователь видит итог раскроя. Пользователь может скачать результаты excel файлом. Данные отображаемые плользователю для каждого диаметра отдельный список статистики и карты раскроя. Статистика по раскрою состоит из: * Кол-во стержней, требуемых для раскроя * Масса всей арматуры * Масса остатка * Процент остатка от общего количества * Кол-во резов арматуры ### 2.2. Функционал личного кабинета подписчика Особый функционал по подписке. Пользователь может зарегистрироваться на платформе по электронному адресу и паролю. #### 2.2.1. Получение подписки Либо: при регистрации необходимо ввести token, полученный от администрации. Либо: галочка в бд. Либо: После регистрации администратор платформы одобряет пользователю подписку через отдельное меню администратора в личном кабинете. #### 2.2.2. Ограничения У пользователей без подписки имеет ограничение на обработку более 50 позиций или 20 тонн. [Справочник плотности](http://xn----7sbozac4badf.xn--p1ai/armatura_ves.php) #### 2.2.3. Личный кабинет Состоит из нескольких виджетов: * Информация о пользователе * Список проекты ##### 2.2.3.1. Информация о пользователе В неё входит компания, почта, номер телефона. Все поля по желанию. В отдельном окне пользователь может их обновить, а также установить новый пароль. ##### 2.2.3.3. Проекты Кнопка сохраниения расчёта как проект. Каждый проект имеет своё название и описание заданное и обновляемое пользователем. В каждом проект может быть несколько сменных заданий. При нажатии на переменное задание появляется возможность создать сохраняемый фильтр по уже сделанным и выбранным позициям. Также пользователь может обновить данные для перерасчёта. Сменное задание это некоторая выборка из данных расчётов для разделения работы на части. ## 3. Не функциональные требования * Подбор доменного имени * Дизайн в стиле стимпанка * Видеоинструкция использования приложения * SEO для сайта * На сайте должны присутствовать следующие элементы: статья, партнеры проекта и контакты * DevOps ### 3.1. Подбор доменного имени **Требование** доменного имени *созвучность с названием проекта* (Master Bluster) и *смыслом проекта*. ### 3.2. Дизайн в стиле стимпанка Изображений в данной стилистике представлены в [Figma](https://www.figma.com/file/fV3uM1cxZkqWQE0jmEHFeD/Master-Blaster?node-id=0%3A1). ### 3.3. Видеоинструкция Демо видео работы приложения. Показывающее различные сценарии использования функционала создания карты раскроя. Продолжительность не более 2-х минут. ### 3.4. SEO для сайта Поисковая оптимизация в для поисковых роботов Google и Yandex. Требование добавление ключевых слов представленных заказчиком. ### 3.5. DevOps Написание скриптов для подготовки и развёртывание на сервере. И запуск на тестовом и прод сервере. <!-- ?SSR? -->