enqueueLepaoSyncAccountInfo.js 826 B

123456789101112131415161718192021222324
  1. const mq = require('./index')
  2. const { assertRunforgeTaskIngress, publishRunforgeTask } = require('./runforgeTaskMq')
  3. async function enqueueLepaoSyncAccountInfo(studentNum, logger) {
  4. if (!studentNum) return
  5. try {
  6. const channel = await mq.getChannel('lepao_account_sync')
  7. await assertRunforgeTaskIngress(channel, logger)
  8. const taskId = `lepao:sync-account:${Date.now()}:${studentNum}`
  9. publishRunforgeTask(channel, {
  10. id: taskId,
  11. type: 'lepao.syncAccountInfo',
  12. data: {
  13. taskId,
  14. student_num: studentNum
  15. },
  16. retry: 0
  17. })
  18. } catch (e) {
  19. logger?.error?.(`投递乐跑账号同步任务失败 ${studentNum}: ${e.message || e}`)
  20. }
  21. }
  22. module.exports = { enqueueLepaoSyncAccountInfo }