Здравствуйте.
изменения продолжительности после команды старт: да так как техпроцесс меняется
Изменение объективно, т.е. оператор корректирует именно процесс, или субъективно - просто таблица единственная и при смене продукции приходится её корректировать или оператору надоело?
Изменение продолжительности только в новом рецепте и только технологом. Единственная возможность изменения у оператора - это завершить этап или процесс. Можно ещё добавить возможность приостановить таймер, но зачем? В здравом уме он этой возможностью не воспользуется.
максимальная продолжительность 1го процесса 2ч, но производство работает и в ночную смену,
вопрос индикации и задания продолжительности - стандартная ограничена 24 часами. Таймер работает как разность системных времен и не реагирует на смену суток.
на данный момент реализация следующая ... мы знаем затраченное время. Не знаю как вам ответить.
Вопрос только о необходимости восстанавливать состояние проекта при перезапуске проекта/сервера. Как часто может перезапускаться проект или сервер? Возможен ли перезапуск во время цикла? Без восстановления, после перезапуска проект вернется в начальное состояние. Цикл будет потерян. В данной версии проекта отсутствует.
Сохранять результаты работы (фискальный архив): да
Фискальный архив ведется в БД. Он практически повторяет содержимое таблицы, дополненное названием рецепта, именем и действиями ["противоправными"] оператора. На странице технолога можно посмотреть таблицу досрочно завершенных этапов.
По этим условиям макет/эскиз/черновой вариант/и т.д. (явных ляпов нет, заниматься улучшением/оптимизацией/полным контролем пока смысла нет) проекта на две персоны - оператора и технолога:
- оператор нажимает кнопки и не может менять что-либо в рецепте, но может ускорить процесс - перейти к следующему этапу или завершить;
- технолог готовит рецепты [приготовления блюд] и не нажимает кнопок, но видит ускоренные процессы.
В проекте две таблицы БД - рецептов и накопительная выполнения этапов.
Управление: у оператора - три кнопки (старт, перейти к следующему этапу, завершить процесс. У технолога редактирование рецепта (уникальное имя, последовательное заполнение таблицы с контролем непустого поля этапа и допустимого формата времени, редактирование уже заполненных строк, при успешном контроле можно записать рецепт) и просмотр таблицы ускоренных [оператором] процессов.
Возможно более одного оператора-клиента? Несколько будут "толкаться локтями"(например, перейти к следующему этапу), причем за всё ответит первый оператор - его имя уже навечно внесено в БД после нажатия кнопки "СТАРТ".