Skip to content
Snippets Groups Projects
Verified Commit b5c95719 authored by Damien's avatar Damien
Browse files

FEAT #9156 List display multiples values

parent f5db958e
No related branches found
No related tags found
No related merge requests found
...@@ -100,16 +100,15 @@ class ResourceListController ...@@ -100,16 +100,15 @@ class ResourceListController
$select = [ $select = [
'res_letterbox.res_id', 'res_letterbox.subject', 'res_letterbox.barcode', 'mlb_coll_ext.alt_identifier', 'res_letterbox.res_id', 'res_letterbox.subject', 'res_letterbox.barcode', 'mlb_coll_ext.alt_identifier',
'status.label_status AS "status.label_status"', 'status.img_filename AS "status.img_filename"' 'status.label_status AS "status.label_status"', 'status.img_filename AS "status.img_filename"', 'priorities.color AS "priorities.color"',
'mlb_coll_ext.closing_date'
]; ];
$tableFunction = ['status', 'mlb_coll_ext']; $tableFunction = ['status', 'mlb_coll_ext', 'priorities'];
$leftJoinFunction = ['res_letterbox.status = status.id', 'res_letterbox.res_id = mlb_coll_ext.res_id']; $leftJoinFunction = ['res_letterbox.status = status.id', 'res_letterbox.res_id = mlb_coll_ext.res_id', 'res_letterbox.priority = priorities.id'];
foreach ($listDisplay as $value) { foreach ($listDisplay as $value) {
$value = (array)$value; $value = (array)$value;
if ($value['value'] == 'getPriority') { if ($value['value'] == 'getPriority') {
$select[] = 'priorities.label AS "priorities.label"'; $select[] = 'priorities.label AS "priorities.label"';
$tableFunction[] = 'priorities';
$leftJoinFunction[] = 'res_letterbox.priority = priorities.id';
} elseif ($value['value'] == 'getCategory') { } elseif ($value['value'] == 'getCategory') {
$select[] = 'mlb_coll_ext.category_id'; $select[] = 'mlb_coll_ext.category_id';
} elseif ($value['value'] == 'getDoctype') { } elseif ($value['value'] == 'getDoctype') {
...@@ -119,6 +118,8 @@ class ResourceListController ...@@ -119,6 +118,8 @@ class ResourceListController
} elseif ($value['value'] == 'getCreationAndProcessLimitDates') { } elseif ($value['value'] == 'getCreationAndProcessLimitDates') {
$select[] = 'res_letterbox.creation_date'; $select[] = 'res_letterbox.creation_date';
$select[] = 'mlb_coll_ext.process_limit_date AS "mlb_coll_ext.process_limit_date"'; $select[] = 'mlb_coll_ext.process_limit_date AS "mlb_coll_ext.process_limit_date"';
} elseif ($value['value'] == 'getModificationDate') {
$select[] = 'res_letterbox.modification_date';
} }
} }
...@@ -144,6 +145,8 @@ class ResourceListController ...@@ -144,6 +145,8 @@ class ResourceListController
$formattedResources[$key]['subject'] = $resource['subject']; $formattedResources[$key]['subject'] = $resource['subject'];
$formattedResources[$key]['statusLabel'] = $resource['status.label_status']; $formattedResources[$key]['statusLabel'] = $resource['status.label_status'];
$formattedResources[$key]['statusImage'] = $resource['status.img_filename']; $formattedResources[$key]['statusImage'] = $resource['status.img_filename'];
$formattedResources[$key]['priorityColor'] = $resource['priorities.color'];
$formattedResources[$key]['closing_date'] = $resource['closing_date'];
$formattedResources[$key]['countAttachments'] = 0; $formattedResources[$key]['countAttachments'] = 0;
foreach ($attachments as $attachment) { foreach ($attachments as $attachment) {
if ($attachment['res_id_master'] == $resource['res_id']) { if ($attachment['res_id_master'] == $resource['res_id']) {
...@@ -178,7 +181,10 @@ class ResourceListController ...@@ -178,7 +181,10 @@ class ResourceListController
$display[] = $value; $display[] = $value;
} elseif ($value['value'] == 'getOpinionWorkflow') { } elseif ($value['value'] == 'getOpinionWorkflow') {
} elseif ($value['value'] == 'getCreationAndProcessLimitDates') { } elseif ($value['value'] == 'getCreationAndProcessLimitDates') {
$value['displayValue'] = "{$resource['creation_date']} - {$resource['process_limit_date']}"; $value['displayValue'] = ['creationDate' => $resource['creation_date'], 'processLimitDate' => $resource['process_limit_date']];
$display[] = $value;
} elseif ($value['value'] == 'getModificationDate') {
$value['displayValue'] = $resource['modification_date'];
$display[] = $value; $display[] = $value;
} }
} }
...@@ -563,17 +569,22 @@ class ResourceListController ...@@ -563,17 +569,22 @@ class ResourceListController
ValidatorModel::notEmpty($args, ['resId']); ValidatorModel::notEmpty($args, ['resId']);
ValidatorModel::intVal($args, ['resId']); ValidatorModel::intVal($args, ['resId']);
$res = ResModel::getById(['select' => ['destination'], 'resId' => $args['resId']]);
$listInstances = ListInstanceModel::get([ $listInstances = ListInstanceModel::get([
'select' => ['item_id'], 'select' => ['item_id'],
'where' => ['difflist_type = ?', 'res_id = ?', 'item_mode = ?'], 'where' => ['difflist_type = ?', 'res_id = ?', 'item_mode = ?'],
'data' => ['entity_id', $args['resId'], 'dest'] 'data' => ['entity_id', $args['resId'], 'dest']
]); ]);
if (empty($listInstances[0])) { $assignee = '';
return ''; if (!empty($listInstances[0])) {
$assignee .= UserModel::getLabelledUserById(['login' => $listInstances[0]['item_id']]);
}
if (!empty($res['destination'])) {
$assignee .= (empty($assignee) ? "({$res['destination']})" : " ({$res['destination']})");
} }
return UserModel::getLabelledUserById(['login' => $listInstances[0]['item_id']]); return $assignee;
} }
private static function getVisaWorkflow(array $args) private static function getVisaWorkflow(array $args)
...@@ -589,12 +600,17 @@ class ResourceListController ...@@ -589,12 +600,17 @@ class ResourceListController
]); ]);
$users = []; $users = [];
$currentFound = false;
foreach ($listInstances as $listInstance) { foreach ($listInstances as $listInstance) {
$users[] = [ $users[] = [
'user' => UserModel::getLabelledUserById(['login' => $listInstance['item_id']]), 'user' => UserModel::getLabelledUserById(['login' => $listInstance['item_id']]),
'mode' => $listInstance['requested_signature'] ? 'Signataire' : 'Viseur', 'mode' => $listInstance['requested_signature'] ? 'sign' : 'visa',
'date' => TextFormatModel::formatDate($listInstance['process_date']), 'date' => TextFormatModel::formatDate($listInstance['process_date']),
'current' => empty($listInstance['process_date']) && !$currentFound
]; ];
if (empty($listInstance['process_date']) && !$currentFound) {
$currentFound = true;
}
} }
return $users; return $users;
...@@ -644,8 +660,7 @@ class ResourceListController ...@@ -644,8 +660,7 @@ class ResourceListController
]); ]);
if (isset($contact[0])) { if (isset($contact[0])) {
$contact = AutoCompleteController::getFormattedContact(['contact' => $contact[0]]); $contact = AutoCompleteController::getFormattedContact(['contact' => $contact[0]]);
$senders[] = $contact['contact']['restrictedFormat']; $senders[] = $contact['contact']['contact'];
} }
} else { } else {
$senders[] = UserModel::getLabelledUserById(['login' => $rawContact['login']]); $senders[] = UserModel::getLabelledUserById(['login' => $rawContact['login']]);
...@@ -696,8 +711,7 @@ class ResourceListController ...@@ -696,8 +711,7 @@ class ResourceListController
]); ]);
if (isset($contact[0])) { if (isset($contact[0])) {
$contact = AutoCompleteController::getFormattedContact(['contact' => $contact[0]]); $contact = AutoCompleteController::getFormattedContact(['contact' => $contact[0]]);
$recipients[] = $contact['contact']['restrictedFormat']; $recipients[] = $contact['contact']['contact'];
} }
} else { } else {
$recipients[] = UserModel::getLabelledUserById(['login' => $rawContact['login']]); $recipients[] = UserModel::getLabelledUserById(['login' => $rawContact['login']]);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment