IxcIntegrador.Rotas.js 1.8 KB

123456789101112131415161718192021222324252627282930
  1. import { Router } from "express";
  2. import { IxcIntegradorController } from "../controllers/IxcIntegrador.Controller.js";
  3. import { ixcBiRouter } from "./IxcBi.Rotas.js";
  4. import { requireUser } from "../middleware/RequireUser.js";
  5. import { requireAdmin } from "../middleware/RequireAdmin.js";
  6. import { parseId } from "../middleware/ParseId.js";
  7. import { validate } from "../middleware/Validate.js";
  8. import { ixcClienteBuscaSchema, ixcContratoDetalhesQuerySchema, ixcOsBuscaAvancadaSchema } from "../middleware/schemas/IxcIntegrador.Schema.js";
  9. export const ixcIntegradorRouter = Router();
  10. ixcIntegradorRouter.use(requireUser, requireAdmin);
  11. ixcIntegradorRouter.post("/clientes/buscar", validate({ body: ixcClienteBuscaSchema }), IxcIntegradorController.BuscarClientes);
  12. ixcIntegradorRouter.get("/clientes/:id", parseId, IxcIntegradorController.ObterCliente);
  13. ixcIntegradorRouter.get("/clientes/:id/base", parseId, IxcIntegradorController.ObterClienteBase);
  14. ixcIntegradorRouter.get("/clientes/:id/contratos", parseId, IxcIntegradorController.ListarContratosCliente);
  15. ixcIntegradorRouter.get("/clientes/:id/possui-contrato-telefonia", parseId, IxcIntegradorController.PossuiContratoTelefonia);
  16. ixcIntegradorRouter.get("/contratos/:id", parseId, validate({ query: ixcContratoDetalhesQuerySchema }), IxcIntegradorController.ObterDetalhesContrato);
  17. ixcIntegradorRouter.post("/os/buscar", validate({ body: ixcOsBuscaAvancadaSchema }), IxcIntegradorController.BuscarOsAvancado);
  18. ixcIntegradorRouter.get("/os/assuntos", IxcIntegradorController.ListarAssuntosOs);
  19. ixcIntegradorRouter.get("/os/atendimento/:id", parseId, IxcIntegradorController.ObterAtendimentoOs);
  20. ixcIntegradorRouter.get("/os/:id", parseId, IxcIntegradorController.ObterOs);
  21. ixcIntegradorRouter.use("/bi", ixcBiRouter);
  22. export default ixcIntegradorRouter;