Skip to content

Commit 38945cb

Browse files
committed
fix(Impact\History\NetworkEquipment): update historisable SQL query
1 parent 51311c0 commit 38945cb

2 files changed

Lines changed: 21 additions & 9 deletions

File tree

src/Impact/History/Computer.php

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,6 @@ public function getEvaluableQuery(bool $entity_restrict = true): array
139139
self::$model_itemtype::getTableField('power_consumption') => ['>', 0],
140140
],
141141
],
142-
// TODO : enable this code to check inventory entry date
143142
[
144143
'OR' => [
145144
['NOT' => [Infocom::getTableField('use_date') => null]],
@@ -187,13 +186,6 @@ public static function showHistorizableDiagnosis(CommonDBTM $item)
187186
];
188187
$infocom_table = Infocom::getTable();
189188
$item_table = self::$itemtype::getTable();
190-
$request['INNER JOIN'][$infocom_table] = [
191-
'FKEY' => [
192-
$infocom_table => 'items_id',
193-
$item_table => 'id',
194-
['AND' => ['itemtype' => self::$itemtype]],
195-
]
196-
];
197189
// Change inner joins into left joins to identify missing data
198190
$request['LEFT JOIN'] = $request['INNER JOIN'] + $request['LEFT JOIN'];
199191
unset($request['INNER JOIN']);

src/Impact/History/NetworkEquipment.php

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,8 @@ public function getEvaluableQuery(bool $entity_restrict = true): array
6464
$item_glpitype_table = self::$type_itemtype::getTable();
6565
$item_type_table = NetworkEquipmentType::getTable();
6666
$location_table = Location::getTable();
67+
$infocom_table = Infocom::getTable();
68+
6769
$request = [
6870
'SELECT' => self::$itemtype::getTableField('id'),
6971
'FROM' => self::$itemtype::getTable(),
@@ -86,6 +88,15 @@ public function getEvaluableQuery(bool $entity_restrict = true): array
8688
$item_glpitype_table => 'id',
8789
]
8890
],
91+
$infocom_table => [
92+
'FKEY' => [
93+
$infocom_table => 'items_id',
94+
$item_table => 'id',
95+
['AND' => ['itemtype' => self::$itemtype]],
96+
]
97+
],
98+
],
99+
'LEFT JOIN' => [
89100
$item_type_table => [
90101
'FKEY' => [
91102
$item_type_table => 'networkequipmenttypes_id',
@@ -109,6 +120,15 @@ public function getEvaluableQuery(bool $entity_restrict = true): array
109120
self::$model_itemtype::getTableField('power_consumption') => ['>', 0],
110121
],
111122
],
123+
[
124+
'OR' => [
125+
['NOT' => [Infocom::getTableField('use_date') => null]],
126+
['NOT' => [Infocom::getTableField('delivery_date') => null]],
127+
['NOT' => [Infocom::getTableField('buy_date') => null]],
128+
['NOT' => [Infocom::getTableField('date_creation') => null]],
129+
['NOT' => [Infocom::getTableField('date_mod') => null]],
130+
]
131+
]
112132
]
113133
];
114134

@@ -154,7 +174,7 @@ public static function showHistorizableDiagnosis(CommonDBTM $item)
154174
]
155175
];
156176
// Change inner joins into left joins to identify missing data
157-
$request['LEFT JOIN'] = $request['INNER JOIN'];
177+
$request['LEFT JOIN'] = $request['INNER JOIN'] + $request['LEFT JOIN'];
158178
unset($request['INNER JOIN']);
159179
// remove where criterias
160180
unset($request['WHERE']);

0 commit comments

Comments
 (0)