import { Module } from '@nestjs/common';
import { TimeTrackingController } from './time-tracking.controller';
import { TimeTrackingService } from './time-tracking.service';
import { EmployeesModule } from '../employees/employees.module';

/**
 * Time Tracking Module
 *
 * Handles employee time tracking including:
 * - Clock-in/clock-out functionality
 * - Break tracking
 * - Manual entry corrections
 * - Monthly summaries with overtime calculation
 *
 * Features:
 * - Automatic break calculation per German labor law (ArbZG)
 *   - > 6 hours: minimum 30 min break
 *   - > 9 hours: minimum 45 min break
 * - Overtime calculation based on employee's contracted hours
 * - Audit trail for all corrections
 * - Entry locking for payroll finalization
 */
@Module({
  imports: [EmployeesModule],
  controllers: [TimeTrackingController],
  providers: [TimeTrackingService],
  exports: [TimeTrackingService],
})
export class TimeTrackingModule {}
