diff --git a/src/app/document/controllers/DocumentController.php b/src/app/document/controllers/DocumentController.php index 12132c82a4dd28dabd7fd7b7026a6771aececb2d..3ebee913c515a5b3d82e1df143a981d28c81d7d6 100755 --- a/src/app/document/controllers/DocumentController.php +++ b/src/app/document/controllers/DocumentController.php @@ -1051,7 +1051,7 @@ class DocumentController if ($currentStep['user_id'] == $args['userId']) { return true; } else { - $user = UserModel::getById(['id' => $currentStep['user_id'], 'select' => ['substitute']]); + $user = UserModel::getById(['id' => $args['userId'], 'select' => ['substitute']]); return $currentStep['user_id'] == $user['substitute']; } } @@ -1062,12 +1062,11 @@ class DocumentController 'main_document_id = ?', '(process_date IS NOT NULL AND user_id = ?) OR ( - process_date IS NULL - AND user_id IN ( + user_id IN ( SELECT (SELECT ?::int) UNION (SELECT id FROM users WHERE substitute = ?) ) AND "order" = ( - SELECT min(ws2."order") FROM workflows ws2 WHERE ws2.main_document_id = main_document_id + SELECT min(ws2."order") FROM workflows ws2 WHERE ws2.process_date IS NULL AND ws2.main_document_id = main_document_id ) )' ], diff --git a/src/app/search/controllers/SearchController.php b/src/app/search/controllers/SearchController.php index 5c329c1091a23768a4d117c2f579cc6124f1d711..3afeec3106ecb51f667ff9236008807b764ed70f 100755 --- a/src/app/search/controllers/SearchController.php +++ b/src/app/search/controllers/SearchController.php @@ -43,12 +43,11 @@ class SearchController WHERE typist = ? OR (ws1.process_date IS NOT NULL AND ws1.user_id = ?) OR ( - ws1.process_date IS NULL - AND ws1.user_id IN ( + ws1.user_id IN ( SELECT (SELECT ?::int) UNION (SELECT id FROM users WHERE substitute = ?) ) AND ws1."order" = ( - SELECT min(ws2."order") FROM workflows ws2 WHERE ws2.main_document_id = ws1.main_document_id + SELECT min(ws2."order") FROM workflows ws2 WHERE ws2.process_date IS NULL AND ws2.main_document_id = ws1.main_document_id ) ) )'];