feat: 管理端推送 Webhook 配置与出站推送链路接入
1、修复了管理端设置在推送开关/配置项上的联动与保存问题。 2、新增 OutboundPushHookService、PushHook/InternalPushHook 接口、前端 PushHookConfigPanel 与小程序 pushHook 工具。 3、优化 Analyze/Auth/Test/支付回调触发路径,补充去重迁移脚本与实施文档。 Made-with: Cursor
This commit is contained in:
45
miniprogram/utils/pushHook.js
Normal file
45
miniprogram/utils/pushHook.js
Normal file
@@ -0,0 +1,45 @@
|
||||
const { request } = require('./request')
|
||||
|
||||
function triggerPushHook(event, payload = {}) {
|
||||
if (!event) return Promise.resolve(false)
|
||||
|
||||
return new Promise((resolve) => {
|
||||
request({
|
||||
url: '/api/push-hook/trigger',
|
||||
method: 'POST',
|
||||
data: {
|
||||
event,
|
||||
...payload
|
||||
},
|
||||
success(res) {
|
||||
const ok = !!(res && res.statusCode === 200 && res.data && res.data.code === 200)
|
||||
if (!ok) {
|
||||
console.warn('[PushHook] trigger rejected', event, res && res.data)
|
||||
}
|
||||
resolve(ok)
|
||||
},
|
||||
fail(err) {
|
||||
console.warn('[PushHook] trigger failed', event, err)
|
||||
resolve(false)
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
function triggerTestResultCompleted(testResultId) {
|
||||
const id = Number(testResultId || 0)
|
||||
if (id <= 0) return Promise.resolve(false)
|
||||
return triggerPushHook('test.result_completed', { testResultId: id })
|
||||
}
|
||||
|
||||
function triggerOrderPaid(orderId) {
|
||||
const no = String(orderId || '').trim()
|
||||
if (!no) return Promise.resolve(false)
|
||||
return triggerPushHook('lead.order_paid', { orderId: no })
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
triggerPushHook,
|
||||
triggerTestResultCompleted,
|
||||
triggerOrderPaid
|
||||
}
|
||||
Reference in New Issue
Block a user