Гость
Map
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Алгоритм для реализации событий календаря. / 8 сообщений из 8, страница 1 из 1
10.08.2021, 19:09
    #40089937
NetZee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Алгоритм для реализации событий календаря.
Нужно реализовать календарь с событиями (по типу outlook).

Расписания для событий будут задаваться по типу windows task scheduler.

Храниться расписание будет в БД в виде JSON.

Пользователь должен иметь возможность вручную поменять дату конкретного события.

Вопрос - как лучше это реализовать?

У меня идея следующая, например:

Есть расписание на месяц (Август 2021), события каждую среду - в бд сохраняем 1 тригер (JSON с этим описанием).
[тригер - просто некое описание расписания в json, по триггерам программно генерим евенты]

Потом пользователь решает перенести событие среды 18 числа на 17ое (вторник) - алгоритм вместо одного триггера создаст три,
Первый триггер - от начала месяца (от 1 числа) до 11 числа (предыдущая среда).
Второй триггер от 25 (след. среда после измененной) до конца месяца (до 31ого)
Третий триггер - одиночный на сторник 17.08.2021

Т.е. алгоритм дробит исходное расписание, на новые.

И именно это мне не нравится, думаю что пользователи внесут много изменений и у меня получится миллион отрезков...
...
Рейтинг: 0 / 0
10.08.2021, 20:24
    #40089955
Сон Веры Павловны
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Алгоритм для реализации событий календаря.
NetZee
в бд сохраняем 1 тригер

Зачем изобретать велосипед? Для дотнета же дофига уже написанных шедулеров. Навскидку - Quartz.NET .
...
Рейтинг: 0 / 0
11.08.2021, 08:39
    #40090003
NetZee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Алгоритм для реализации событий календаря.
Сон Веры Павловны,

1 Мне же карточки для календаря нужно нагенерировать.
2 У quartz нет же UI для пользователей.
2 Нет необходимости запускать таску прям в нужное время, в этой задаче можно и ночью проверить кто успел в дедлайн а кто нет
Так что кварц тут не особо нужен
...
Рейтинг: 0 / 0
11.08.2021, 09:09
    #40090005
vb_sub
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Алгоритм для реализации событий календаря.
NetZee,
почему просто не хранить событие в виде
объекта со свойствами

eventID,
eventDateTime,
eventDescription


При изменении даты события просто редактируется свойство eventDateTime.
...
Рейтинг: 0 / 0
11.08.2021, 09:40
    #40090009
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Алгоритм для реализации событий календаря.
NetZee
Нет необходимости запускать таску прям в нужное время
Тогда зачем вообще какие-то триггеры? Ночью запускается задача, которая проверяет все карточки и всё
...
Рейтинг: 0 / 0
11.08.2021, 09:41
    #40090010
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Алгоритм для реализации событий календаря.
NetZee
Т.е. алгоритм дробит исходное расписание, на новые.

И именно это мне не нравится, думаю что пользователи внесут много изменений и у меня получится миллион отрезков...
ты переживаешь, что в таблице БД будет миллион строк? Ничего страшного
...
Рейтинг: 0 / 0
11.08.2021, 10:06
    #40090014
NetZee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Алгоритм для реализации событий календаря.
Shocker.Pro,

Триггеры - это описание расписания. По этому расписанию генеринуются карточки. Например: Еженедельно каждую среду на 2021 год.
Алгоритм нагенерит карточки и потом, для каждой карточки пойдет в БД проверять, все ли сделали пользователи что должны были...
...
Рейтинг: 0 / 0
11.08.2021, 10:10
    #40090015
NetZee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Алгоритм для реализации событий календаря.
vb_sub,

Уже примерно так и хочу сделать, вообще события генерируются автоматом на основе расписания, но те события которые пользователь
изменил вручную будут сохраняться в БД, плюс у события будет свойство SourceDate (связка кастомного события с генеренным)- дата конкретного события из периодической цепочки... Это что бы автогенереное событие убрать а вместо него добавить кастомное
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Алгоритм для реализации событий календаря. / 8 сообщений из 8, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]