wuKong 5242e6a228 feat(mp): 新增公众号消息模板管理功能
- 新增消息模板、模板配置、发送记录的完整CRUD功能
- 实现消息模板同步、批量删除、消息推送等核心操作
- 支持模板变量动态提取与颜色配置
- 提供Excel导出和数据筛选功能
- 集成微信公众号模板消息发送能力
- 完善表单验证和用户交互体验
2025-11-05 14:07:01 +08:00

159 lines
5.1 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import request from '@/config/axios'
// 消息模板 VO
export interface MsgTemplateVO {
id: number // 主键
appId: string // appid
templateId: string // 公众号模板ID
name: string // 模版名称
title: string // 标题
content: string // 模板内容
data: string // 消息内容
url: string // 链接
//miniprogram: string // 小程序信息
miniProgramAppId: string
miniProgramPagePath: string
isRemoved: number
configId: number
templateType: number
status: number // 是否有效
}
// 消息模板 API
export const MsgTemplateApi = {
// 查询消息模板分页
getMsgTemplatePage: async (params: any) => {
return await request.get({ url: `/mp/template/page`, params })
},
// 查询消息模板详情
getMsgTemplate: async (id: number) => {
return await request.get({ url: `/mp/template/get?id=` + id })
},
// 新增消息模板
createMsgTemplate: async (data: MsgTemplateVO) => {
return await request.post({ url: `/mp/template/create`, data })
},
// 修改消息模板
updateMsgTemplate: async (data: MsgTemplateVO) => {
return await request.put({ url: `/mp/template/update`, data })
},
// 删除消息模板
deleteMsgTemplate: async (id: number) => {
return await request.delete({ url: `/mp/template/delete?id=` + id })
},
// 导出消息模板 Excel
exportMsgTemplate: async (params) => {
return await request.download({ url: `/mp/template/export-excel`, params })
},
// 同步公众号模板
syncMsgTemplate: async (params: any) => {
return await request.get({ url: `/mp/template/syncMsgTemplate`,params})
},
// 同步公众号模板
sendMsgBatch: async (data: any) => {
return await request.post({ url: `/mp/template/sendMsgBatch`,data})
},
deleteList: async (data: any) => {
return await request.delete({ url: `/mp/template/delete-list`,data})
},
}
// 模板消息配置 VO
export interface MsgTemplateConfigVO {
id: number // 主键
appId: string // appId
templateId: string // 公众号模板ID
templateType: string // 模板类型
title: string // 标题
status: number // 是否有效 0有效,1无效
remark: string // 备注
}
// 模板消息配置 API
export const MsgTemplateConfigApi = {
// 查询模板消息配置分页
getMsgTemplateConfigPage: async (params: any) => {
return await request.get({ url: `/mp/template/config/page`, params })
},
// 查询模板消息配置详情
getMsgTemplateConfig: async (id: number) => {
return await request.get({ url: `/mp/template/config/get?id=` + id })
},
// 新增模板消息配置
createMsgTemplateConfig: async (data: MsgTemplateConfigVO) => {
return await request.post({ url: `/mp/template/config/create`, data })
},
// 修改模板消息配置
updateMsgTemplateConfig: async (data: MsgTemplateConfigVO) => {
return await request.put({ url: `/mp/template/config/update`, data })
},
// 删除模板消息配置
deleteMsgTemplateConfig: async (id: number) => {
return await request.delete({ url: `/mp/template/config/delete?id=` + id })
},
// 导出模板消息配置 Excel
exportMsgTemplateConfig: async (params) => {
return await request.download({ url: `/mp/template/config/export-excel`, params })
},
}
// 微信模版消息发送记录 VO
export interface MsgTemplateLogVO {
id: number // 主键
appId: string // appId
toUser: string // 用户openid
templateId: string // 公众号模板ID
data: string // 消息内容
url: string // 链接
miniProgramAppId: string // 小程序appid
miniProgramPagePath: string // 小程序页面路径
sendTime: Date // 发送时间
sendStatus: string // 发送状态 0成功1失败
sendResult: string // 发送结果
}
// 微信模版消息发送记录 API
export const MsgTemplateLogApi = {
// 查询微信模版消息发送记录分页
getMsgTemplateLogPage: async (params: any) => {
return await request.get({ url: `/mp/template/log/page`, params })
},
// 查询微信模版消息发送记录详情
getMsgTemplateLog: async (id: number) => {
return await request.get({ url: `/mp/template/log/get?id=` + id })
},
// 新增微信模版消息发送记录
createMsgTemplateLog: async (data: MsgTemplateLogVO) => {
return await request.post({ url: `/mp/template/log/create`, data })
},
// 修改微信模版消息发送记录
updateMsgTemplateLog: async (data: MsgTemplateLogVO) => {
return await request.put({ url: `/mp/template/log/update`, data })
},
// 删除微信模版消息发送记录
deleteMsgTemplateLog: async (id: number) => {
return await request.delete({ url: `/mp/template/log/delete?id=` + id })
},
// 导出微信模版消息发送记录 Excel
exportMsgTemplateLog: async (params) => {
return await request.download({ url: `/mp/template/log/export-excel`, params })
},
}