Files
iistwin/server/routes/task.routes.ts
Ильяс Султанов 1f5ecb6da4 fix(number-fields): избегаем потери точности длинных чисел
- number-поля теперь рендерятся как text + inputMode=numeric,
  чтобы браузер не округлял значения через input type=number
- пробелы при вставке в number-поля удаляются
- бэкенд нормализует значения number-полей в строку перед сохранением
- добавлен хелпер normalizeFieldValueForStorage

Closes: искажение расчётного счёта и других длинных числовых полей
2026-07-07 21:03:40 +03:00

29 lines
1.2 KiB
TypeScript

import { Router } from "express";
import { authenticateToken } from "../middleware/auth.middleware";
import { tenantIsolation } from "../middleware/tenant.middleware";
import { registerUserRoutes } from "./user.routes";
import { registerFormRoutes } from "./form.routes";
import { registerTaskCrudRoutes } from "./task-crud.routes";
import { registerTaskTransitionRoutes } from "./task-transitions.routes";
import { registerTaskFieldRoutes } from "./task-fields.routes";
import { registerTaskRoleRoutes } from "./task-roles.routes";
const router = Router();
// Global middleware for all protected route prefixes
router.use('/api/users', authenticateToken, tenantIsolation);
router.use('/api/user-statuses', authenticateToken, tenantIsolation);
router.use('/api/organizations', authenticateToken, tenantIsolation);
router.use('/api/forms', authenticateToken, tenantIsolation);
router.use('/api/tasks', authenticateToken, tenantIsolation);
// Register domain route handlers
registerUserRoutes(router);
registerFormRoutes(router);
registerTaskCrudRoutes(router);
registerTaskTransitionRoutes(router);
registerTaskFieldRoutes(router);
registerTaskRoleRoutes(router);
export default router;