Несколько условий шага, объединяемых через И/ИЛИ (#16)
Tests / frontend-test (push) Successful in 47s
Tests / backend-test (push) Successful in 2m12s

<html>
<body>
<!--StartFragment-->
GetEmployeeByEmailAsync возвращает массив; новый HeadType.CompanyDirectors
--

<!--EndFragment-->
</body>
</html>[GetEmployeeByEmailAsync возвращает массив; новый HeadType.CompanyDirectors](http://git.tnsu.kz/gorbenko.pavel/tnsu-approval-route/commit/572749b4d7cc11bc8e1ef4184a93f18a14b710ab)

---------

Co-authored-by: gorbenko.pavel <gorbenko.pavel@tansu.kz>
Reviewed-on: http://git.tnsu.kz/gorbenko.pavel/tnsu-approval-route/pulls/16
This commit was merged in pull request #16.
This commit is contained in:
2026-08-25 07:04:44 +00:00
parent e4a6cb8167
commit ba48ed1a0e
27 changed files with 1622 additions and 413 deletions
@@ -26,7 +26,11 @@ export enum HeadType {
// Резолвится по departmentId из запроса на resolve (см. ResolveTemplateRouteQuery),
// а не по цепочке подчинённости инициатора, как остальные типы, — поэтому на
// экране «Проверка маршрута» появляется отдельное поле выбора отдела.
DepartmentHead = 'DepartmentHead'
DepartmentHead = 'DepartmentHead',
// Единственное значение, которое резолвится в НЕСКОЛЬКО строк результата — по
// директору на каждую компанию инициатора (сотрудник может числиться в
// нескольких), все с одним и тем же orderNo (см. TemplateRouteService.ResolveStepAsync).
CompanyDirectors = 'CompanyDirectors'
}
export enum ComparisonOperator {
@@ -40,3 +44,9 @@ export enum ComparisonOperator {
Contains = 'Contains',
NotContains = 'NotContains'
}
/** Как объединяются условия шага между собой — не действует, если условие одно или их нет. */
export enum ConditionsLogic {
And = 'And',
Or = 'Or'
}