Changed ORDER BY in SQL query - #3044

This commit is contained in:
tatiana.llorente@artica.es 2018-11-07 10:34:14 +01:00
parent c7a54182a3
commit aa19640497

View File

@ -474,16 +474,17 @@ if ($list_modules) {
$sort = get_parameter('sort', 'none'); $sort = get_parameter('sort', 'none');
$selected = 'border: 1px solid black;'; $selected = 'border: 1px solid black;';
$order[] = array('field' => 'tmodule_group.name', 'order' => 'ASC');
switch ($sortField) { switch ($sortField) {
case 'type': case 'type':
switch ($sort) { switch ($sort) {
case 'up': case 'up':
$selectTypeUp = $selected; $selectTypeUp = $selected;
$order = array('field' => 'tagente_modulo.id_modulo', 'order' => 'ASC'); $order[] = array('field' => 'tagente_modulo.id_modulo', 'order' => 'ASC');
break; break;
case 'down': case 'down':
$selectTypeDown = $selected; $selectTypeDown = $selected;
$order = array('field' => 'tagente_modulo.id_modulo', 'order' => 'DESC'); $order[] = array('field' => 'tagente_modulo.id_modulo', 'order' => 'DESC');
break; break;
} }
break; break;
@ -491,11 +492,11 @@ if ($list_modules) {
switch ($sort) { switch ($sort) {
case 'up': case 'up':
$selectNameUp = $selected; $selectNameUp = $selected;
$order = array('field' => 'tagente_modulo.nombre', 'order' => 'ASC'); $order[] = array('field' => 'tagente_modulo.nombre', 'order' => 'ASC');
break; break;
case 'down': case 'down':
$selectNameDown = $selected; $selectNameDown = $selected;
$order = array('field' => 'tagente_modulo.nombre', 'order' => 'DESC'); $order[] = array('field' => 'tagente_modulo.nombre', 'order' => 'DESC');
break; break;
} }
break; break;
@ -503,11 +504,11 @@ if ($list_modules) {
switch ($sort) { switch ($sort) {
case 'up': case 'up':
$selectStatusUp = $selected; $selectStatusUp = $selected;
$order = array('field' => 'tagente_estado.estado=0 DESC,tagente_estado.estado=3 DESC,tagente_estado.estado=2 DESC,tagente_estado.estado=1 DESC', 'order' => ''); $order[] = array('field' => 'tagente_estado.estado=0 DESC,tagente_estado.estado=3 DESC,tagente_estado.estado=2 DESC,tagente_estado.estado=1 DESC', 'order' => '');
break; break;
case 'down': case 'down':
$selectStatusDown = $selected; $selectStatusDown = $selected;
$order = array('field' => 'tagente_estado.estado=1 DESC,tagente_estado.estado=2 DESC,tagente_estado.estado=3 DESC,tagente_estado.estado=0 DESC', 'order' => ''); $order[] = array('field' => 'tagente_estado.estado=1 DESC,tagente_estado.estado=2 DESC,tagente_estado.estado=3 DESC,tagente_estado.estado=0 DESC', 'order' => '');
break; break;
} }
break; break;
@ -515,11 +516,11 @@ if ($list_modules) {
switch ($sort) { switch ($sort) {
case 'up': case 'up':
$selectLastContactUp = $selected; $selectLastContactUp = $selected;
$order = array('field' => 'tagente_estado.utimestamp', 'order' => 'ASC'); $order[] = array('field' => 'tagente_estado.utimestamp', 'order' => 'ASC');
break; break;
case 'down': case 'down':
$selectLastContactDown = $selected; $selectLastContactDown = $selected;
$order = array('field' => 'tagente_estado.utimestamp', 'order' => 'DESC'); $order[] = array('field' => 'tagente_estado.utimestamp', 'order' => 'DESC');
break; break;
} }
break; break;
@ -535,7 +536,7 @@ if ($list_modules) {
$selectLastContactUp = ''; $selectLastContactUp = '';
$selectLastContactDown = ''; $selectLastContactDown = '';
$order = array('field' => 'tagente_modulo.nombre', 'order' => 'ASC'); $order[] = array('field' => 'tagente_modulo.nombre', 'order' => 'ASC');
break; break;
} }
@ -590,7 +591,20 @@ if ($list_modules) {
} }
//Count monitors/modules //Count monitors/modules
$order_sql = $order['field'] . " " . $order['order'];
// Build the order sql
$first = true;
foreach ($order as $ord) {
if ($first) {
$first = false;
}
else {
$order_sql .= ',';
}
$order_sql .= $ord['field'].' '.$ord['order'];
}
$sql_condition = "FROM tagente_modulo $sql_condition = "FROM tagente_modulo
$tags_join $tags_join
INNER JOIN tagente_estado INNER JOIN tagente_estado