Browse Source

Added Docs/technicaltask.md

Vsevolod Levitan 1 year ago
parent
commit
26273d427a
2 changed files with 100 additions and 1 deletions
  1. 99 0
      Docs/technicaltask.md
  2. 1 1
      settings.json

+ 99 - 0
Docs/technicaltask.md

@@ -0,0 +1,99 @@
+# Техническое задание
+Редакция: 2023-11-28
+
+## Цель
+Требуется разработать программное обеспечение для осуществления набора автоматизаций в сети ресторанов `Ромашка`.
+Программное обеспечение должно осуществлять следующие операции:
+1. Складской учет продукции;
+2. Производственный учет;
+3. Сопровождение курьерской службы;
+4. Финансовый учет. Взаиморасчеты;
+5. Учет персонала; 
+6. Оперативный контроль;
+
+## Описание
+Компания `ООО Ромашка` насчитывает **10** ресторанов расположенных в разных частях города. Часть ресторанов
+работает только на доставку, часть - комбинировано, а часть: только с посетителями. В компании есть отдельный
+производственный цех для приготовления различных `заготовок` которые к началу рабочего дня привозят  по всем 
+рестораном в зависимости  от заявок полученных ранее от администраторов ресторана.
+Все рестораны работаю  в режиме с `10 утра - 10 вечера`. Производственный цех работает `круглосуточно`.
+Так же, часть продукции закупается организацией центролизовано: `мясные` и `молочные` продукты. Эти продукты 
+храняться  в специализированных холодильниках в производственном цеху и доставляются в каждый ресторан 
+ежедневно. Сотрудники в компании разделены на три категории по направлениям:
+> - Производство
+> - Обслуживание
+> - Управление
+
+Сотрудники, работающие в категории `производство`, работают посменно. У каждого сотрудника может быть устанолен
+собственный график работы длительностью каждой смены не более **8-ми** часов. Сотрудниеи из других
+категорий работают ежеденевно по **8 часов в день**, кроме выходных и праздников.
+
+## Общие требования
+1. Программное обеспечение должно работать на следующем оборудовании:
+> -  ОС Linux
+> -  ОЗУ: 32 ГГб
+> -  Процессор: 12 ядер
+> -  Диск: SSD
+2. Стек: `Python 3.x`, `SQLite`, `swagger`, `HTML`, `JavaScript`
+
+### Требования к складскому учету
+* `1.1.` Учет ведется в разрезе номенклатуры. Каждый элемент номенклатуры включен в группу. 
+* `1.2.` Учет остатков номенклатуры ведется в разрезе склада. Каждый склад связан с помещением.
+* `1.3.` Каждый месяц проводится плановая инвентаризация для всех номенклатуры для каждого склада.
+* `1.4.` Несколько раз в месяц, проводится частичная инвентаризация на определенную группу номенклатуры.
+
+
+### Требования к производственному учету
+* `2.1.` В системе должен быть реализованы следующие операции:
+	- `Технологическая карта`
+	- `Приготовление полуфабриката`
+	- `Приготовление блюда`
+	- `Выпуск продукции`
+	- `Утилизация продукции`
+* `2.2.` В системе необходимо предусмотреть два варианта списания номенклатуры:
+	- `С блокировкой в случае недостатка остатков`
+	- `Под сальдо`
+* `2.3.` Блокировка при списании осуществляется в случае, если остаток номенклатуры на складе отсутсвует.
+* `2.4.` Вариант `Под  сальдо` - списание осуществляется без блокировки. Остаток на складе меняется.
+* `2.5.` `Технологическая карта` может быть  составной. Допускается включение одной технологической карты в 
+состав другой.
+
+
+### Требования к курьерской службе
+* `3.1.` Доставка осуществляется  в строго определенные районы. Доставка в каждый район имеет свою стоимость.
+* `3.2.` Заказ должен поступать к ближайшему ресторану который работает на доставку с тем, чтобы
+минимизировать расcтояние на доставку.
+* `3.3.` Для доставки используется отдельное меню. В каждое блюдо включается упаковка.
+
+### Требование к финансовому учету
+* `4.1.` Учет денежных средств ведется в разрезе `Контрагентов`. Контрагентами могут выступать 
+отдельные юридические лица. Каэжый контрагент включается в группу.
+* `4.2.` Денежные средства учитываются в разрезе типа оплаты: `наличные`, `банковский перевод` и прочее.
+* `4.3.` Денежные средства учитываются документов: `Поступление`, `Списание`. 
+
+### Требование к учету персонала
+* `5.1.` В системе необходимо обеспечить  различные графики работ.
+* `5.2.` Каждый сотрудник работает в рамках графика работ. Система должна обеспечить начало и завершения работы
+по каждому сотруднику. В случае, если время работы превышает согласно графику, необходимо начислять
+денежное вознагрождение по `двойному тарифу`, согласно графика работы.
+* `5.3.` Все операции с данными по складскому, финансовому и оперативному учету должны фиксироваться с учетом
+ответственного сотрудника.
+
+### Требования к оперативному учету
+* `6.1.` Необходимо вести учет по следующим направлениям:
+	- `Заказ на доставку`;
+	- `Заказ на пополнение склада в ресторане`;
+	- `Заказ на производство`
+* `6.2.` Удаление номенклатуры, группы номенклатуры должно блокироваться если номенклатура включена
+в складской учет.
+* `6.3.` Удаление карточки сотрудника должно блокироваться если карточка сотрудника учавствовала
+в складской, оперативном или финансовом учете.
+
+
+ 
+
+  
+
+  
+
+

+ 1 - 1
settings.json

@@ -1,3 +1,3 @@
 {
-    "first_name" :"Volovikov Alexander"
+    "first_name": "Volovikov Alexander"
 }