Skip to main content

Leave Validation Reference

Summary

Validation spans client forms, application orchestration, domain transitions/calculation, tenant/employee context, and Attendance dependency checks.

Audience

Developers, QA, support, administrators, and product owners.

Reference Content

AreaRuleLayerError categorySourceMaturity
TenantPositive/resolved tenant requiredContext/domainContext/validationLeaveWorkflows, domain factoriesImplemented
EmployeeResolved active profile and joining contextApplicationNot found/validationLeaveWorkflows, EmployeeProfileImplemented with projection dependency
DatesEnd is not before startUI/application/domainValidationEssPages, PayrollFeaturePages, LeaveRequestImplemented
Joining dateRequest cannot precede confirmed joining dateUI/applicationValidationPayrollFeaturePages, LeaveWorkflowsImplemented
Day countCalculated days must be positiveApplication/calculatorValidationLeaveDayCalculator, LeaveWorkflowsImplemented
AttendanceConflicting attendance blocks confirmed pathsDependency/applicationConflictAttendanceServiceConflictClient, LeaveWorkflowsTransitional dependency
Approved overlapOverlapping approved Leave is rejectedUI/applicationConflictPayrollFeaturePages, LeaveWorkflowsImplemented
Leave typeValid type/policy selectionApplicationValidation/not foundLeaveWorkflows, LeaveConfigTransitional
BalanceApply usage on decisions; sufficiency guard absentApplication/domainBusiness ruleLeaveWorkflows, LeaveBalancePartial
StateOnly source-defined transitionsDomain/applicationConflict/validationLeaveRequest, LeaveWorkflowsImplemented
RejectionReason captured in confirmed flowsUI/applicationValidationApprovalActionModal, LeaveWorkflowsParity requires confirmation
WorkflowManaged decisions depend on workflow state/callbackApplication/integrationConflict/dependencyWorkflowIntegrationTransitional
CancellationState/ownership restrictions vary by pathUI/application/domainConflict/permissionPayrollFeaturePages, LeaveRequest, LeaveWorkflowsTransitional

Source References

  • microservices/src/leave-service/Application/LeaveWorkflows.cs
  • microservices/src/leave-service/Domain/Leave/LeaveRequest.cs
  • microservices/src/leave-service/Domain/Leave/LeaveDayCalculator.cs
  • microservices/src/leave-service/Domain/Leave/LeaveBalance.cs
  • microservices/src/leave-service/Domain/Leave/LeaveConfig.cs
  • microservices/src/leave-service/Infrastructure/AttendanceServiceConflictClient.cs
  • microservices/src/leave-service/Application/WorkflowIntegration.cs
  • UI/salary-ui/apps/client-hrms-portal/src/ess/EssPages.tsx
  • UI/salary-ui/apps/client-hrms-portal/src/pages/hr/PayrollFeaturePages.tsx
  • UI/salary-ui/apps/client-hrms-portal/src/components/ApprovalActionModal.tsx

See Also

Keywords

  • Leave reference
  • Leave Validation Reference
  • Workforce management

Revision Information

  • Status: Draft
  • Last reviewed: 2026-07-15
  • Review cycle: Quarterly