休暇申請
休暇申請は、休暇管理ワークフローの中核です。従業員が休暇のリクエストを提出し、承認プロセスを経ます。システムは、提出から承認または却下までの完全なライフサイクルを追跡し、各ステップで自動的に残高を更新します。
休暇申請の提出
従業員として(ポータル)
- サイドバーから休暇申請に移動します。
- 作成をクリックします。
- 休暇タイプを選択します。
- 開始日と終了日を入力します。
- 日数を入力します(半日単位をサポート、例:0.5、1.5)。
- 必要に応じて理由を追加します。
- 保存をクリックします。
従業員フィールドはログイン中の従業員に自動設定されます——フォームには表示されません。
管理者として
管理者は同じフォームを見ますが、申請対象の従業員を選択するための追加の従業員フィールドがあります。また、管理者メモフィールド(従業員には非表示)に入力することもできます。
従業員詳細ビューから
管理者は、従業員の詳細ページから休暇申請を作成アクションを使用して直接休暇申請を作成できます。従業員は事前入力され、便利な半日トグルが利用できます。
バリデーションルール
システムは、休暇申請の提出または編集時に複数のバリデーションルールを適用します:
日数のバリデーション
日数は日付範囲と一致する必要があります:
- 全日:日数は
end_date - start_date + 1と等しくなければなりません - 半日:日数は
(end_date - start_date + 1) * 0.5と等しくなければなりません
その他の値はエラーメッセージとともに拒否されます。
重複検出
システムは同一従業員の重複する休暇申請をチェックします。日付範囲が既存の承認済みまたは保留中の申請と重複する場合、申請はブロックされます。
2つの日付範囲が重複する条件:
start_date_1 <= end_date_2 AND start_date_2 <= end_date_1
既存の申請を編集する場合、重複チェックは現在のレコードを除外します。
申 請ステータス
| ステータス | バッジ | 説明 |
|---|---|---|
| 保留中 | 黄色 | 承認待ち。残高は pending_days に予約されています。 |
| 承認済み | 緑色 | マネージャーにより承認。日数が pending_days から used_days に移動。 |
| 却下済み | 赤色 | マネージャーにより却下。日数が pending_days から削除。 |
| 取消済み | 灰色 | 従業員または管理者により取り消し。日数が復元。 |
承認ワークフロー
標準フロー
従業員が申請を提出
|
ステータス:保留中
(pending_days 増加)
|
マネージャーが申請を確認
|
+--- 承認 ---> ステータス:承認済み
| (pending_days -> used_days)
| 従業員に通知
|
+--- 却下 ---> ステータス:却下済み
| (pending_days 削除)
| 却下理由を記録
| 従業員に通知
|
+--- (従業員) 取消 --> ステータス:取消済み
(pending_days 削除)
自動承認フロー
自動承認に設定された休暇タイプの場合(設定 > 休暇管理内):
従業員が申請を提出
|
オブザーバーが自動承認設定を検出
|
ステータス:即座に承認
(used_days 増加)
マネージャーへの通知なし
承認ワークフロー設定
設定 > HRM設定 > 休暇管理に移動してワークフローを設定します:
| 設定 | オプション | デフォル ト |
|---|---|---|
| 承認ワークフロー | 単一レベル / マルチレベル / 自動承認 | 単一レベル |
| 自動承認休暇タイプ | 特定の休暇タイプを選択 | なし |
休暇申請の承認
approve leave requests 権限が必要です。
- 休暇申請に移動するか、保留中の申請ダッシュボードカードから開きます。
- 1つ以上の保留中の申請を選択します。
- 承認アクションをクリックします。
- 必要に応じて管理者メモを追加します。
- 確認します。
発生する処理:
- ステータスが承認済みに変更
approved_byが現在のユーザーに設定approved_atが現在のタイムスタンプに設定- 休暇残高:
pending_daysが減少、used_daysが増加 - 従業員に通知が送信
休暇申請の却下
approve leave requests 権限が必要です。
- 1つ以上の保留中の申請を選択します。
- 却下アクションをクリックします。
- 却下理由を入力します(必須)。
- 必要に応じて管理者メモを追加します。
- 確認します。
発生する処理:
- ステータスが却下済みに変更
rejection_reasonが記録され、従業員に表示- 休暇残高:
pending_daysが減少 - 従業員に通知が送信
休暇申請の取消
cancel leave requests 権限が必要です。従業員と管理者の両方が申請を取り消せます。
- 保留中または承認済みの申請を選択します。
- 取消アクションをクリックします。
- 確認します。
発生する処理:
- ステータスが取消済みに変更
- 申請が保留中だった場合:
pending_daysが減少 - 申請が承認済みだった場合:
used_daysが減少(日数が返却)
保留中と承認済みの申請のみ取消可能です。却下済みおよび既に取消済みの申請は取り消せません。
テーブルビュー
休暇申請リストには4つの事前設定ビューがあります:
| ビュー | フィルター |
|---|---|
| 全休暇申請 | フィルターなし |
| 保留中の申請 | ステータス = 保留中 |
| 承認済みの申請 | ステータス = 承認済み |
| 却下済みの申請 | ステータス = 却下済み |
利用可能なフィルター
- ステータス — 保留中、承認済み、却下済み、取消済み
- 開始日 — 日付範囲
- 終了日 — 日付範囲
- 日数 — 数値範囲
通知
システムは休暇申請ライフサイクルの重要なポイントでメール通知を送信します:
申請が提出された時
approve leave requests 権限を持つすべてのユーザーに通知が送信されます。メールには以下が含まれます:
- 従業員の名前とメールアドレス
- 休暇タイプ、開始/終了日、合計日数
- 理由(提供された場合)
- 申請を表示するリンク
申請ステータスが変更された時
申請が承認、却下、または取り消された場合、従業員に通知が送信されます。メールには以下が含まれます:
- 休暇タイプ、日付、合計日数
- 新しいステータス
- 却下理由(却下された場合)
- 承認者の名前
- 申請を表示するリンク
メールテンプレートは設定 > メールアカウント > テンプレートからカスタマイズできます。
ダッシュボードカード
休暇管理システムは3つのダッシュボードカードを提供します:
| カード | タイプ | 説明 |
|---|---|---|
| ステータス別休暇申請 | 円グラフ | ステータス別の申請分布 |
| タイプ別休暇申請 | 棒グラフ | 休暇タイプ別にグループ化された申請数 |
| 保留中の休暇申請 | テーブル | アクションが必要な最新の保留中申請15件 |
承認・却下ワークフロー
休暇承認ワークフローは、休暇申請が提出から解決までどのように進むかを制御します。HRMモジュールは、設定ページから構成可能な3つのワークフローモードをサポートしています。
ワークフローモード
設定 > HRM設定 > 休暇管理でワークフローモードを設定します。
単一レベル(デフォルト)
最もシンプルなワークフロー。1人の認可ユーザーが申請を確認し、承認または却下します。
従業員 -> 提出 -> マネージャー/HR が承認または却下 -> 完了
approve leave requests 権限を持つすべてのユーザーが申請を承認または却下できます。
マルチレベル
申請は複数の承認段階を経ます。直属のマネージャーとHRの両方の承認を必要とする組織に適しています。
従業員 -> 提出 -> マネージャーが承認 -> HRが承認 -> 完了
自動承認
すべての休暇申請は提出時に自動的に承認されます。人による確認は不要です。
従業員 -> 提出 -> 自動承認 -> 完了
ワークフローモードと自動承認休暇タイプ設定を組み合わせて、特定のタイプ(例:在宅勤務)を自動承認しながら、他のタイプ(例:年次休暇)には承認を要求でき ます。
特定の休暇タイプの自動承認
すべての申請を自動承認する代わりに、承認をバイパスする特定の休暇タイプを選択できます:
- 設定 > HRM設定 > 休暇管理に移動します。
- 自動承認休暇タイプで、タイプを選択します(例:在宅勤務、代休)。
- 保存します。
従業員が自動承認休暇タイプの申請を提出した場合:
- ステータスは即座に承認済みに設定されます。
- 休暇残高が更新されます(
used_daysが直接増加、pending_daysのステップなし)。 - マネージャーへの通知は送信されません。
- 従業員は承認通知を受け取りません(即時のため)。
自動承認以外の休暇タイプの申請は、この設定に関係なく標準の承認ワークフローに従います。
アクション別残高更新
| アクション | 保留中日数 | 使用済み日数 | 利用可能日数 |
|---|---|---|---|
| 申請提出 | +日数 | — | 減少 |
| 申請承認 | -日数 | +日数 | 変更なし |
| 申請却下 | -日数 | — | 増加 |
| 取消(保留中だった場合) | -日数 | — | 増加 |
| 取消(承認済みだった場合) | — | -日数 | 増加 |
誰が承認できるか
承認アクションは approve leave requests 権限によって制御されます。この権限はロールに明示的に付与する必要があります——デフォルトの従業員ロールには含まれていません。
この権限を持つべき典型的なロール:
- HR マネージャー
- 部門長
- チームリーダー
- 任意の管理者ロール
スーパー管理者は常に申請を承認できます(Gate::before でバイパス)。
却下理由
休暇申請を却下する場合、却下理由は必須です。この理由は:
- 休暇申請レコードに保存されます
- 従業員の休暇申請詳細ビューで従業員に表示されます
- ステータス変更通知メールに含まれます
管理者は承認または却下時に管理者メモを追加することもできます。管理者メモは他の管理者にのみ表示され、従業員には表示されません。
休暇申請の取消
従業員と管理者は、保留中または承認済みステータスの休暇申請を取り消すことができます。取消により、消費済みまたは予約済みの休暇日数が従業員の残高に復元されます。
誰が取り消せるか
取消には cancel leave requests 権限が必要です。デフォルトでは、従業員はこの権限を持ち、自身の申請を取り消すことができます。
| ユーザー | 自分の申請を取消可能 | 他者の申請を取消可能 |
|---|---|---|
| 従業員 | はい(権限あり) | いいえ(データスコープにより他者を閲覧不可) |
| 管理者 | はい | はい(権限がある場合) |
| スーパー管理者 | はい | はい(すべてのチェックをバイパス) |
取消方法
- 休暇申請に移動します。
- 取り消す申請を見つけます(保留中または承認済みである必要があります)。
- 休暇取 消アクションをクリックします(アクション列にインラインで表示)。
- 取消を確認します。
取消時の処理
保留中の申請の取消
取消前:pending_days = 5, used_days = 10, available_days = 3 2日間の保留中申請を取消 取消後:pending_days = 3, used_days = 10, available_days = 5
pending_daysが申請の日数分減少available_daysがそれに応じて増加- 申請ステータスが取消済みに変更
承認済みの申請の取消
取消前:pending_days = 3, used_days = 12, available_days = 3 2日間の承認済み申請を取消 取消後:pending_days = 3, used_days = 10, available_days = 5
used_daysが申請の日数分減少available_daysがそれに応じて増加- 申請ステータスが取消済みに変更