Про отпуска ... не очень понял. Технический вопрос "остаток отпуска у сотрудника" - легко автоматизируется. Сделать планы отпусков , править их и публиковать после согласования - тоже.
Учесть "даем ли лишние дни авансом" тоже. А вот учесть видение менеджера кому нельзя пересекаться, кому "совсем нельзя", кому "нельзя но на n дней можно" гораздо сложнее.
Оттого простой итог - таблица, где сотрудник предлагает время а ответственный(ные) согласует.
к моему удивлению, тут получилось наоборот :) В технической части определения "сколько у меня есть отпуска" оказалось достаточно много нюансов, просто перечислю несколько, чтобы дать представление:
- поддержка любых правил формирования отпусков для любых стран мира; - если во время отпуска случается государственный выходной, то он не должен уменьшать дни отпуска, соответственно программа должна знать когда случаются праздники во всех странах мира; - у организации могут быть собственные правила, какие праздники она считает выходными, а какие нет. У некоторых организаций есть собственные праздники, типа "день рождения компании"; - у организации помимо штатных сотрудников могут быть внешние контракторы, для которых действуют отдельные правила; - помимо отпусков, мы хотим также учитывать ограничения на другие типы дней, например, у компании может быть политика, сколько дней в неделю можно работать удаленно; - правила начисления отпусков и других видов дней могут меняться с течением времени, и нам надо сохранять историю, какие когда правила действовали;
... и так далее, это неполный список нюансов. Большую часть из этого мы уже реализовали, остальное на подходе - будет в самом ближайшем будущем.
А вот момент с определением кому можно пересекаться, а кому нет, как ни странно выглядит проще. В нашей компании это описано в корпоративной вики https://github.com/ivelum/job/wiki/Отпуск, и люди просто соблюдают это сами, не требуется никакого особого надзора. Разумеется, не у всех это так, поэтому для тех у кого правила более сложные, есть опция "статус требует утверждения" - если она включена, то менеджерам приходит уведомление о запросе отпуска или другого вида нерабочего дня с кнопками "разрешить" и "отклонить", и дальше они уже могут зайти в систему, там будут видны пересечения на графике, и принять решение.
Про отпуска ... не очень понял.
Технический вопрос "остаток отпуска у сотрудника" - легко автоматизируется.
Сделать планы отпусков , править их и публиковать после согласования - тоже.
Учесть "даем ли лишние дни авансом" тоже.
А вот учесть видение менеджера кому нельзя пересекаться, кому "совсем нельзя", кому "нельзя но на n дней можно" гораздо сложнее.
Оттого простой итог - таблица, где сотрудник предлагает время а ответственный(ные) согласует.
к моему удивлению, тут получилось наоборот :) В технической части определения "сколько у меня есть отпуска" оказалось достаточно много нюансов, просто перечислю несколько, чтобы дать представление:
- поддержка любых правил формирования отпусков для любых стран мира;
- если во время отпуска случается государственный выходной, то он не должен уменьшать дни отпуска, соответственно программа должна знать когда случаются праздники во всех странах мира;
- у организации могут быть собственные правила, какие праздники она считает выходными, а какие нет. У некоторых организаций есть собственные праздники, типа "день рождения компании";
- у организации помимо штатных сотрудников могут быть внешние контракторы, для которых действуют отдельные правила;
- помимо отпусков, мы хотим также учитывать ограничения на другие типы дней, например, у компании может быть политика, сколько дней в неделю можно работать удаленно;
- правила начисления отпусков и других видов дней могут меняться с течением времени, и нам надо сохранять историю, какие когда правила действовали;
... и так далее, это неполный список нюансов. Большую часть из этого мы уже реализовали, остальное на подходе - будет в самом ближайшем будущем.
А вот момент с определением кому можно пересекаться, а кому нет, как ни странно выглядит проще. В нашей компании это описано в корпоративной вики https://github.com/ivelum/job/wiki/Отпуск, и люди просто соблюдают это сами, не требуется никакого особого надзора. Разумеется, не у всех это так, поэтому для тех у кого правила более сложные, есть опция "статус требует утверждения" - если она включена, то менеджерам приходит уведомление о запросе отпуска или другого вида нерабочего дня с кнопками "разрешить" и "отклонить", и дальше они уже могут зайти в систему, там будут видны пересечения на графике, и принять решение.