GET https://pciservice.fr/api/monday/pointage/rh/summary?employeeId=86049159&periodId=2811271053

Query Metrics

25 Database Queries
6 Different statements
16.20 ms Query time
0 Invalid entities
30 Managed entities

Grouped Statements

Show all queries

Time Count Info
5.56 ms
(34.33%)
8
SELECT c0_.id AS id_0, c0_.monday_item_id AS monday_item_id_1, c0_.monday_board_id AS monday_board_id_2, c0_.monday_group_id AS monday_group_id_3, c0_.monday_item_name AS monday_item_name_4, c0_.personnel_item_id AS personnel_item_id_5, c0_.monday_user_id AS monday_user_id_6, c0_.employee_name AS employee_name_7, c0_.personnel_matricule AS personnel_matricule_8, c0_.employee_status AS employee_status_9, c0_.absence_item_id AS absence_item_id_10, c0_.absence_code AS absence_code_11, c0_.absence_label AS absence_label_12, c0_.start_date AS start_date_13, c0_.start_unit AS start_unit_14, c0_.end_date AS end_date_15, c0_.end_unit AS end_unit_16, c0_.calculated_days AS calculated_days_17, c0_.calculated_hours AS calculated_hours_18, c0_.workflow_status AS workflow_status_19, c0_.operational_status AS operational_status_20, c0_.rh_status AS rh_status_21, c0_.request_comment AS request_comment_22, c0_.operational_comment AS operational_comment_23, c0_.rh_comment AS rh_comment_24, c0_.expected_approver_monday_user_id AS expected_approver_monday_user_id_25, c0_.expected_approver_name AS expected_approver_name_26, c0_.operational_approver_monday_user_id AS operational_approver_monday_user_id_27, c0_.operational_approver_name AS operational_approver_name_28, c0_.rh_validator_monday_user_id AS rh_validator_monday_user_id_29, c0_.rh_validator_name AS rh_validator_name_30, c0_.is_paid AS is_paid_31, c0_.counts_as_absence AS counts_as_absence_32, c0_.counts_in_paid_hours AS counts_in_paid_hours_33, c0_.blocks_overtime AS blocks_overtime_34, c0_.opens_rtt AS opens_rtt_35, c0_.affects_balance AS affects_balance_36, c0_.pointage_impact_status AS pointage_impact_status_37, c0_.payroll_export_status AS payroll_export_status_38, c0_.payroll_code AS payroll_code_39, c0_.payroll_period_code AS payroll_period_code_40, c0_.payroll_exported_at AS payroll_exported_at_41, c0_.sync_status AS sync_status_42, c0_.last_webhook_event AS last_webhook_event_43, c0_.last_error AS last_error_44, c0_.created_at AS created_at_45, c0_.updated_at AS updated_at_46, c0_.submitted_at AS submitted_at_47, c0_.operational_validated_at AS operational_validated_at_48, c0_.rh_validated_at AS rh_validated_at_49, c0_.refused_at AS refused_at_50, c0_.cancelled_at AS cancelled_at_51, c0_.calendar_absence_id AS calendar_absence_id_52 FROM conge_request c0_ WHERE c0_.workflow_status = ? AND c0_.rh_status = ? AND c0_.start_date <= ? AND c0_.end_date >= ? AND c0_.monday_user_id = ? ORDER BY c0_.start_date ASC, c0_.employee_name ASC
Parameters:
[
  "RH_APPROVED"
  "APPROVED"
  "2026-01-25 00:00:00"
  "2026-01-19 00:00:00"
  "86049159"
]
4.11 ms
(25.36%)
8
SELECT p0_.id AS id_0, p0_.type AS type_1, p0_.start_at AS start_at_2, p0_.end_at AS end_at_3, p0_.duration_minutes AS duration_minutes_4, p0_.created_at AS created_at_5, p0_.updated_at AS updated_at_6, p0_.pointage_id AS pointage_id_7 FROM pointage_period p0_ INNER JOIN pointage p1_ ON p0_.pointage_id = p1_.id WHERE p1_.monday_user_id = ? AND p0_.start_at >= ? AND p0_.start_at <= ? ORDER BY p0_.start_at ASC, p0_.type ASC
Parameters:
[
  "86049159"
  "2026-01-19 00:00:00"
  "2026-01-25 23:59:59"
]
2.93 ms
(18.07%)
5
SELECT p0_.id AS id_0, p0_.monday_item_id AS monday_item_id_1, p0_.monday_item_name AS monday_item_name_2, p0_.workflow AS workflow_3, p0_.injection_planning_status AS injection_planning_status_4, p0_.work_date AS work_date_5, p0_.personnel_item_id AS personnel_item_id_6, p0_.monday_user_id AS monday_user_id_7, p0_.affaire_item_id AS affaire_item_id_8, p0_.activite_item_id AS activite_item_id_9, p0_.task_planning_item_id AS task_planning_item_id_10, p0_.absence_code AS absence_code_11, p0_.absence_unit AS absence_unit_12, p0_.worked_hours AS worked_hours_13, p0_.travel_hours AS travel_hours_14, p0_.prime_chantier AS prime_chantier_15, p0_.deplacement_code AS deplacement_code_16, p0_.is_injected AS is_injected_17, p0_.injected_at AS injected_at_18, p0_.last_snapshot AS last_snapshot_19, p0_.created_at AS created_at_20, p0_.updated_at AS updated_at_21, p0_.personnel_matricule AS personnel_matricule_22, p0_.employee_status AS employee_status_23 FROM pointage p0_ WHERE p0_.monday_user_id = ? AND p0_.work_date >= ? AND p0_.work_date <= ? ORDER BY p0_.work_date ASC, p0_.id ASC
Parameters:
[
  "86049159"
  "2026-01-19"
  "2026-02-15"
]
1.54 ms
(9.49%)
2
SELECT p0_.id AS id_0, p0_.type AS type_1, p0_.start_at AS start_at_2, p0_.end_at AS end_at_3, p0_.duration_minutes AS duration_minutes_4, p0_.created_at AS created_at_5, p0_.updated_at AS updated_at_6, p0_.pointage_id AS pointage_id_7 FROM pointage_period p0_ INNER JOIN pointage p1_ ON p0_.pointage_id = p1_.id WHERE p1_.monday_user_id = ? AND p0_.start_at <= ? AND p0_.end_at >= ? AND p1_.workflow IN (?, ?) ORDER BY p0_.start_at ASC, p0_.end_at ASC
Parameters:
[
  "86049159"
  "2026-02-15 23:59:59"
  "2026-01-19 00:00:00"
  "Validé RH"
  "Pré-paie"
]
1.35 ms
(8.34%)
1
SELECT
  p.id,
  p.monday_item_id AS mondayItemId,
  p.monday_item_name AS mondayItemName,
  p.workflow,
  p.injection_planning_status AS injectionPlanningStatus,
  DATE_FORMAT(p.work_date, '%Y-%m-%d') AS workDate,
  ROUND(COALESCE(p.worked_hours, 0), 2) AS pointageWorkedHours,
  ROUND(COALESCE(SUM(CASE WHEN pp.type = 'work' THEN pp.duration_minutes ELSE 0 END), 0) / 60, 2) AS periodWorkHours,
  ROUND(
    COALESCE(p.worked_hours, 0) - COALESCE(SUM(CASE WHEN pp.type = 'work' THEN pp.duration_minutes ELSE 0 END), 0) / 60,
    2
  ) AS deltaWorkHours,
  ROUND(COALESCE(p.travel_hours, 0), 2) AS pointageTravelHours,
  ROUND(COALESCE(SUM(CASE WHEN pp.type = 'travel' THEN pp.duration_minutes ELSE 0 END), 0) / 60, 2) AS periodTravelHours,
  ROUND(
    COALESCE(p.travel_hours, 0) - COALESCE(SUM(CASE WHEN pp.type = 'travel' THEN pp.duration_minutes ELSE 0 END), 0) / 60,
    2
  ) AS deltaTravelHours,
  COUNT(pp.id) AS periodRows,
  GROUP_CONCAT(
    CONCAT(
      pp.id,
      ':',
      pp.type,
      ':',
      DATE_FORMAT(pp.start_at, '%H:%i'),
      '-',
      DATE_FORMAT(pp.end_at, '%H:%i'),
      '=',
      pp.duration_minutes,
      'min'
    )
    ORDER BY pp.start_at, pp.id
    SEPARATOR ' | '
  ) AS periodsDetail
FROM pointage p
LEFT JOIN pointage_period pp ON pp.pointage_id = p.id
WHERE p.monday_user_id = ?
  AND p.work_date >= ?
  AND p.work_date <= ?
  AND p.workflow IN (?, ?, ?, ?)
GROUP BY p.id
HAVING ABS(deltaWorkHours) > ?
    OR ABS(deltaTravelHours) > ?
ORDER BY p.work_date ASC, p.id ASC
Parameters:
[
  "86049159"
  "2026-01-19"
  "2026-02-15"
  "Validé opérationnel"
  "Validé RH"
  "Pré-paie"
  "Exporté paie"
  0.01
  0.01
]
0.71 ms
(4.40%)
1
SELECT p0_.id AS id_0, p0_.type AS type_1, p0_.start_at AS start_at_2, p0_.end_at AS end_at_3, p0_.duration_minutes AS duration_minutes_4, p0_.created_at AS created_at_5, p0_.updated_at AS updated_at_6, p0_.pointage_id AS pointage_id_7 FROM pointage_period p0_ INNER JOIN pointage p1_ ON p0_.pointage_id = p1_.id WHERE p1_.monday_user_id = ? AND p0_.start_at <= ? AND p0_.end_at >= ? AND p1_.workflow IN (?, ?, ?, ?) ORDER BY p0_.start_at ASC, p0_.end_at ASC
Parameters:
[
  "86049159"
  "2026-02-15 23:59:59"
  "2026-01-19 00:00:00"
  "Validé opérationnel"
  "Validé RH"
  "Pré-paie"
  "Exporté paie"
]

Database Connections

Name Service
default doctrine.dbal.default_connection

Entity Managers

Name Service
default doctrine.orm.default_entity_manager

Second Level Cache

Second Level Cache is not enabled.

Managed Entities

default entity manager

Class Amount of managed objects
App\Entity\PointagePeriod 20
App\Entity\Pointage 10

Entities Mapping

Class Mapping errors
App\Entity\PointagePeriod No errors.
App\Entity\Pointage No errors.
App\Entity\PointageSnapshot No errors.
App\Entity\CongeRequest No errors.
App\Entity\CalendarAbsence No errors.