qiwei.routes.ts 1.4 KB

123456789101112131415161718192021222324252627282930
  1. import { Router, type Router as RouterType } from 'express';
  2. import { asyncHandler } from '../http/async-handler.js';
  3. import { handleWebhook } from '../controllers/webhook.controller.js';
  4. import { handleSyncGroups } from '../controllers/sync.controller.js';
  5. import { handleTestAccount } from '../controllers/account.controller.js';
  6. import { handleModifyGroupName, handleInviteMembers, handleRemoveMembers } from '../controllers/groups.controller.js';
  7. import { handleSyncMessages, handleSendText } from '../controllers/messages.controller.js';
  8. import { handleConfirmRiskEvent } from '../controllers/risk-event.controller.js';
  9. const router: RouterType = Router();
  10. // Webhook & 同步
  11. router.post('/webhook', asyncHandler(handleWebhook));
  12. router.post('/sync-groups', asyncHandler(handleSyncGroups));
  13. router.post('/sync-messages', asyncHandler(handleSyncMessages));
  14. // 企微账号
  15. router.post('/accounts/:id/test', asyncHandler(handleTestAccount));
  16. // 群操作(调企微 API)
  17. router.put('/groups/:roomId/name', asyncHandler(handleModifyGroupName));
  18. router.post('/groups/:roomId/invite', asyncHandler(handleInviteMembers));
  19. router.post('/groups/:roomId/remove', asyncHandler(handleRemoveMembers));
  20. // 发送消息
  21. router.post('/messages/send-text', asyncHandler(handleSendText));
  22. // 接单确认(阻断升级 + 批量标记已读)
  23. router.post('/risk-event/:id/confirm', asyncHandler(handleConfirmRiskEvent));
  24. export default router;