Во-первых, я не программист на полный рабочий день, это просто мое хобби, в котором я хотел бы стать лучше (и, возможно, переключиться на работу программистом), но я извиняюсь, если мой вопрос будет довольно глупым.
Что ж, теперь проблема, которую я пытаюсь решить, в основном о концепции. Я работаю бесплатно для некоммерческой организации на планировщик смены => они работают круглосуточно в приюте для животных с хирургическим вмешательством и т. Д. c.
Пользователи приложения - волонтеры / сотрудники и владелец (и, вероятно, еще один человек, который управляет сменами, скажем, менеджер, но с теми же правами, что и владелец). Итак, в заключение - две роли менеджера и волонтера / сотрудника.
Организация имеет два офиса (один управляется владельцем, а второй - менеджером) => разница в том, что у них разные смены Первый из них имеет 8-часовые смены, а второй - 6-часовые смены.
Итак, я пытаюсь сделать календарь планировщика смен, где каждый волонтер может пометить, когда он доступен, или когда он недоступен, или если можно связаться по телефону для консультации или если они больны или в отпуске. Также у волонтеров есть разные навыки, и они могут указать, что они собираются делать (например, операция или консультация или стрижка волос). Так что несколько вариантов . У каждого варианта будет свой цвет, и я буду волонтером перетаскивать поля дней и смены, чтобы отметить период выбранного варианта. Как с 1-го по 3-е апреля или апреля, я в отпуске, а 4 апреля я буду в смену с 0 до 8 утра, затем с 8 утра до 4 вечера и с 4 вечера до 0 я буду на телефоне или недоступен. Другой пример, например, с 0:00 до 8:00 утра, без консультации с 8:00 до 16:00, с 16:00 до 0:00.
Менеджеры «подтверждают» вариант , запланированный добровольцем / сотрудником, или могут изменить его или может спланировать это для него / нее.
Владелец видел это здесь http://lekari.vesely-web.cz/ - приложение, созданное для больницы, так и не законченное. Ей это очень нравится, и она тоже так хочет.
Я ищу направление к правильному подходу.
Мой подход (высокий уровень)
Важные компоненты
- Волонтер (некоторые основы c информация как name et c., навыки)
- Календарь (параметры - от даты / до даты, дней, выходных)
- День (параметры, показывающие, сколько смен в день, isWeekend, isPublicHoliday)
- Сдвиг (опция добровольца => означает операцию, менеджер, окончательный вариант)
Часть календаря
То, что я действительно не знаю, это часть взаимодействия:
- Я знаю, как сделать часть щелчка (я нажимаю на конкретный c компонент, и я изменяю его с помощью "function" Im дворняжка работает с)
- Я не знаю, как это сделать, щелкните -> перетащите и отметьте часть для указанной c области одного добровольца
Часть обмена данными:
- API от бэкэнда - мой собственный, поэтому я могу получить "все", что мне нужно
- все изменения должны быть подтверждены нажатием кнопки подтверждения
- отчеты по данным не требуются и, вероятно, никогда не будут
Буду признателен за любой совет.