diff --git a/src/app/action/controllers/PreProcessActionController.php b/src/app/action/controllers/PreProcessActionController.php index e3f7ef3eff1bda7c64f30f30007fa776c420fa4c..2ec191690b5a653d5ba6cd1326830ed2ee191fd1 100755 --- a/src/app/action/controllers/PreProcessActionController.php +++ b/src/app/action/controllers/PreProcessActionController.php @@ -1052,11 +1052,25 @@ class PreProcessActionController $resourcesInformation = []; foreach ($body['resources'] as $resId) { - $resource = ResModel::getById(['resId' => $resId, 'select' => ['alt_identifier']]); + $resource = ResModel::getById(['resId' => $resId, 'select' => ['alt_identifier', 'opinion_limit_date']]); + if (empty($resource['alt_identifier'])) { $resource['alt_identifier'] = _UNDEFINED; } + if (empty($resource['opinion_limit_date'])) { + return $response->withStatus(400)->withJson(['errors' => 'No opinion limit date for resource ' . $resource['alt_identifier']]); + } + + $opinionNote = NoteModel::get([ + 'where' => ['identifier = ?', "note_text like '[" . _TO_AVIS . "]%'"], + 'data' => [$resId] + ]); + + if (empty($opinionNote)) { + return $response->withStatus(400)->withJson(['errors' => 'No opinion note for resource ' . $resource['alt_identifier']]); + } + $isSignatory = ListInstanceModel::get([ 'select' => [1], 'where' => ['res_id = ?', 'difflist_type = ?', 'process_date is null'],