NEAXLEAVEREQUEST の休暇申請バリデーションプラグイン

Library

概要

NEAXLEAVEREQUEST は、休暇申請(Leave Request)と代替担当者(Leave Replacement)に関する入力検証ロジックを提供するプラグイン群のアセンブリ概要を示すリポジトリです。プラグインは主に以下のチェックを行い、要件を満たさない場合に例外を投げて保存を阻止します:代替担当者の作成者とオーナーの不一致チェック、開始日/終了日の必須チェック、終了日が開始日より後であることの検証。小規模でドキュメントファイルが2つ含まれるシンプルな構成です。

GitHub

リポジトリの統計情報

  • スター数: 1
  • フォーク数: 0
  • ウォッチャー数: 1
  • コミット数: 2
  • ファイル数: 2
  • メインの言語: 未指定

主な特徴

  • 休暇申請・代替担当者に対する入力検証プラグインをまとめたアセンブリの説明
  • 代替担当者作成者とオーナー重複の禁止チェック(例外を発生)
  • 開始日・終了日の必須チェックと日付順序の検証
  • 軽量なドキュメント(PROJECT_DOCUMENTATION.md と README.md)で実装概要を明示

技術的なポイント

このリポジトリは、Dynamics 365 / Dataverse などのプラットフォーム上で動作する「プラグインアセンブリ」を想定した構成です。プラグインはエンティティの作成・更新イベントに紐づけて同期的に動作し、不整合が検出された場合には InvalidPluginExecutionException 相当の例外を投げてトランザクションをロールバックする設計が想定されます。具体的には、Leave Replacement に対して「作成者とオーナーが同一であってはならない」「開始日と終了日が設定されていること」「終了日が開始日より後であること」を検査し、Leave Request でも同様に日付の存在と順序を確認します。実装言語はリポジトリ上で明示されていませんが、Dynamics プラグインの慣例から .NET / C# での実装が想定され、Assembly としてデプロイされる形が一般的です。軽量なドキュメントと最小限のファイル数から、拡張やローカライズ、詳細なエラーハンドリング、ユニットテストや CI/CD の導入余地が大きく、実運用ではサーバーサイドバリデーションに加えてクライアント側の UI バリデーションや重複チェック、重複ルール・ガバナンスルールの追加が推奨されます。

プロジェクトの構成

主要なファイルとディレクトリ:

  • PROJECT_DOCUMENTATION.md: file
  • README.md: file

まとめ

シンプルな検証ロジックを提供する小規模プラグイン集。拡張とテストの追加で実運用に適応可能。

リポジトリ情報:

READMEの抜粋:

Introduction

Overview over the Plugins contained in this Assembly:

  1. CheckLeaveReplacementFields
    • checks whether Leave Replacement Creator is also the Owner, if so throws an exception
    • checks whether Leave Replacement Start- and Enddate are set, if not throws an exception
    • checks if the Enddate is greater than the Startdate, if not throws an exception
  2. CheckLeaveRequestFields
    • checks whether Leave Request Start- and Enddate are set, if not throws an exception
    • checks if th…