cbb3efc146
ComparisonOperator дополнен NotEqual, Contains, NotContains. NotEqual — строгое отрицание Equal (текст без учёта регистра + сравнение как чисел), Contains/NotContains — поиск подстроки без учёта регистра. В форме шага набор операторов зависит от типа колонки: для числовой — всё, кроме «содержит»/«не содержит», для текстовой — всё, кроме «больше»/«меньше», для служебного IsManager — только «равно»/«не равно». Недопустимый после смены поля оператор сбрасывается на «равно». Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
43 lines
1.6 KiB
TypeScript
43 lines
1.6 KiB
TypeScript
// Зеркало enum'ов backend (Tnsu.ApprovalRoute.Domain/Enums/*.cs).
|
|
// Значения должны 1:1 соответствовать C#-стороне: они ходят по сети как строки.
|
|
// Человекочитаемые подписи к этим значениям живут не здесь, а в texts.ts.
|
|
|
|
export enum RouteStepStatus {
|
|
None = 'None',
|
|
Approval = 'Approval',
|
|
Execution = 'Execution'
|
|
}
|
|
|
|
export enum ProjectRole {
|
|
None = 'None',
|
|
ProjectManager = 'ProjectManager',
|
|
Planner = 'Planner',
|
|
ManagerHSE = 'ManagerHSE',
|
|
Security = 'Security',
|
|
Keeper = 'Keeper'
|
|
}
|
|
|
|
export enum HeadType {
|
|
None = 'None',
|
|
Chief = 'Chief',
|
|
DirectionHead = 'DirectionHead',
|
|
DirectorTansu = 'DirectorTansu',
|
|
ManagingDirectorTansu = 'ManagingDirectorTansu',
|
|
// Резолвится по departmentId из запроса на resolve (см. ResolveTemplateRouteQuery),
|
|
// а не по цепочке подчинённости инициатора, как остальные типы, — поэтому на
|
|
// экране «Проверка маршрута» появляется отдельное поле выбора отдела.
|
|
DepartmentHead = 'DepartmentHead'
|
|
}
|
|
|
|
export enum ComparisonOperator {
|
|
None = 'None',
|
|
GreaterThan = 'GreaterThan',
|
|
LessThan = 'LessThan',
|
|
Equal = 'Equal',
|
|
NotEqual = 'NotEqual',
|
|
// «Содержит»/«Не содержит» имеют смысл только для текстовых колонок —
|
|
// см. ограничение операторов в RouteStepFormModal.
|
|
Contains = 'Contains',
|
|
NotContains = 'NotContains'
|
|
}
|