@@ -110,31 +110,32 @@ public function __construct($config = [])
110110 ],
111111 ];
112112 $ this ->criteria_join_gt = [
113- Group_Ticket::getTable () => [
113+ Group_Ticket::getTable () . ' AS gt ' => [
114114 'FKEY ' => [
115- Group_Ticket:: getTable () . ' .tickets_id ' ,
115+ ' gt .tickets_id ' ,
116116 Ticket::getTable () . '.id ' ,
117117 [
118118 'AND ' => [
119- Group_Ticket:: getTable () . ' .type ' => Group_Ticket::ASSIGN ,
119+ ' gt .type ' => Group_Ticket::ASSIGN ,
120120 ],
121121 ],
122122 ],
123123 ],
124124 ];
125125 $ this ->criteria_join_gtr = [
126- Group_Ticket::getTable () => [
126+ Group_Ticket::getTable () . ' AS gtr ' => [
127127 'FKEY ' => [
128- Group_Ticket:: getTable () . ' .tickets_id ' ,
128+ ' gtr .tickets_id ' ,
129129 Ticket::getTable () . '.id ' ,
130130 [
131131 'AND ' => [
132- Group_Ticket:: getTable () . ' .type ' => Group_Ticket::REQUESTER ,
132+ ' gtr .type ' => Group_Ticket::REQUESTER ,
133133 ],
134134 ],
135135 ],
136136 ],
137137 ];
138+
138139 $ this ->criteria_select_sla = new QueryExpression (
139140 "CASE WHEN glpi_slas.definition_time = 'day'
140141 AND glpi_tickets.solve_delay_stat <= glpi_slas.number_time * 86400
@@ -346,16 +347,18 @@ public function reportGlineBacklogs($config = [])
346347 'SELECT ' => [
347348 new QueryExpression ("DATE_FORMAT(list_date.period_l, ' {$ this ->period_sort }') as period " ),
348349 new QueryExpression ("DATE_FORMAT(list_date.period_l, ' {$ this ->period_label }') as period_name " ),
350+ new QueryExpression ("COUNT(DISTINCT " . Ticket::getTable () . ".id) as nb " ),
349351 ],
350- 'COUNT ' => 'nb ' ,
351352 'FROM ' => new QuerySubQuery ($ list_date_table , 'list_date ' ),
352353 'LEFT JOIN ' => array_merge (
353354 [
354355 Ticket::getTable () => [
355- 'OR ' => [
356- Ticket::getTable () . '.solvedate > list_date.period_l ' ,
357- new QueryExpression (Ticket::getTable () . '.solvedate IS NULL ' ),
358- Ticket::getTable () . '.date ' => ['<= ' , 'list_date.period_l ' ],
356+ 'AND ' => [
357+ Ticket::getTable () . '.date ' => ['<= ' , new QueryExpression ('list_date.period_l ' )],
358+ 'OR ' => [
359+ Ticket::getTable () . '.solvedate ' => ['> ' , new QueryExpression ('list_date.period_l ' )],
360+ new QueryExpression (Ticket::getTable () . '.solvedate IS NULL ' ),
361+ ],
359362 ],
360363 ],
361364 ],
0 commit comments