优化小程序部分
This commit is contained in:
1 parent
727319a6eb
commit
d4e89788c5
46 files changed
+4906
-63
No files matched your search
@@ -26,18 +26,70 @@ func (m *WechatMiniConfig) TableName() string { return "yz_platform_wechat_mini_
|
||||
// WechatMiniApp 微信小程序(多应用) yz_platform_wechat_mini_app
|
||||
// 支持配置多个小程序:认证端登录时按客户端传入的 appid 精确匹配
|
||||
// (未传 appid 时回退第一条启用记录),AppSecret 加密存储不回显。
|
||||
//
|
||||
// 消息推送(小程序后台「开发管理 → 开发设置 → 消息推送」)相关字段:
|
||||
// Token 与后台填写的令牌一致,用于 sha1 签名校验
|
||||
// AESKey 消息加解密密钥(EncodingAESKey,43 位),加密存储不回显
|
||||
// EncryptMode 加解密方式 plain / compatible / safe
|
||||
// DataFormat 推送数据格式 xml / json
|
||||
type WechatMiniApp struct {
|
||||
ID uint64 `orm:"column(id);pk;auto" json:"id"`
|
||||
Name string `orm:"column(name);size(128);default('')" json:"name"`
|
||||
AppID string `orm:"column(app_id);size(64)" json:"app_id"`
|
||||
AppSecret string `orm:"column(app_secret);size(512)" json:"-"` // 加密存储,不回显
|
||||
QrcodeURL string `orm:"column(qrcode_url);size(512);default('')" json:"qrcode_url"` // 小程序码图片地址,供官网 / H5 等其他端调取
|
||||
Token string `orm:"column(token);size(128);default('')" json:"token"` // 消息推送 Token
|
||||
AESKey string `orm:"column(aes_key);size(512);default('')" json:"-"` // 消息推送 EncodingAESKey(加密存储,不回显)
|
||||
EncryptMode string `orm:"column(encrypt_mode);size(16);default('plain')" json:"encrypt_mode"` // plain/compatible/safe
|
||||
DataFormat string `orm:"column(data_format);size(16);default('xml')" json:"data_format"` // xml/json
|
||||
PushReply string `orm:"column(push_reply);size(512);default('')" json:"push_reply"` // 客服消息自动回复文案(空 = 不自动回复)
|
||||
Enabled int8 `orm:"column(enabled);default(0)" json:"enabled"`
|
||||
AutoBind int8 `orm:"column(auto_bind);default(1)" json:"auto_bind"` // 1:手机号命中身份后自动绑定
|
||||
Remark string `orm:"column(remark);size(255)" json:"remark"`
|
||||
CreateTime time.Time `orm:"column(create_time);type(datetime);auto_now_add" json:"create_time"`
|
||||
UpdateTime *time.Time `orm:"column(update_time);type(datetime);null" json:"update_time"`
|
||||
DeleteTime *time.Time `orm:"column(delete_time);type(datetime);null" json:"delete_time"`
|
||||
}
|
||||
|
||||
func (m *WechatMiniApp) TableName() string { return "yz_platform_wechat_mini_app" }
|
||||
|
||||
// WechatMiniTemplate 小程序订阅消息模板 yz_platform_wechat_mini_template
|
||||
//
|
||||
// 一个小程序可配置多个「场景」模板(如站内通知 notice、审批待办 approval)。
|
||||
// Fields 存微信模板字段键 → 语义变量名的映射(JSON),例如:
|
||||
//
|
||||
// {"thing1":"title","phrase2":"content","time3":"time"}
|
||||
//
|
||||
// 推送时按该映射把 title/content/time 填进微信模板的对应字段。
|
||||
type WechatMiniTemplate struct {
|
||||
ID uint64 `orm:"column(id);pk;auto" json:"id"`
|
||||
Name string `orm:"column(name);size(128);default('')" json:"name"`
|
||||
AppID string `orm:"column(app_id);size(64)" json:"app_id"`
|
||||
AppSecret string `orm:"column(app_secret);size(512)" json:"-"` // 加密存储,不回显
|
||||
QrcodeURL string `orm:"column(qrcode_url);size(512);default('')" json:"qrcode_url"` // 小程序码图片地址,供官网 / H5 等其他端调取
|
||||
Enabled int8 `orm:"column(enabled);default(0)" json:"enabled"`
|
||||
AutoBind int8 `orm:"column(auto_bind);default(1)" json:"auto_bind"` // 1:手机号命中身份后自动绑定
|
||||
Code string `orm:"column(code);size(64)" json:"code"` // 场景码:notice / approval / schedule ...
|
||||
TemplateID string `orm:"column(template_id);size(128)" json:"template_id"` // 微信订阅消息模板 ID
|
||||
Title string `orm:"column(title);size(255);default('')" json:"title"`
|
||||
Page string `orm:"column(page);size(255);default('')" json:"page"` // 点击消息跳转的小程序页面
|
||||
Fields string `orm:"column(fields);type(text);null" json:"fields"` // JSON:微信字段键 → 语义变量名
|
||||
Enabled int8 `orm:"column(enabled);default(1)" json:"enabled"`
|
||||
Remark string `orm:"column(remark);size(255)" json:"remark"`
|
||||
CreateTime time.Time `orm:"column(create_time);type(datetime);auto_now_add" json:"create_time"`
|
||||
UpdateTime *time.Time `orm:"column(update_time);type(datetime);null" json:"update_time"`
|
||||
DeleteTime *time.Time `orm:"column(delete_time);type(datetime);null" json:"delete_time"`
|
||||
}
|
||||
|
||||
func (m *WechatMiniApp) TableName() string { return "yz_platform_wechat_mini_app" }
|
||||
func (m *WechatMiniTemplate) TableName() string { return "yz_platform_wechat_mini_template" }
|
||||
|
||||
// WechatMiniSubscribe 小程序订阅授权记录 yz_platform_wechat_mini_subscribe
|
||||
//
|
||||
// 微信一次性订阅消息:用户每次授权 = 1 次发送机会,发送成功即消耗 1 次。
|
||||
// 这里记录每个身份(用户)对某个模板的剩余可发送次数,避免对未授权用户反复调接口。
|
||||
type WechatMiniSubscribe struct {
|
||||
ID uint64 `orm:"column(id);pk;auto" json:"id"`
|
||||
IdentityID uint64 `orm:"column(identity_id)" json:"identity_id"`
|
||||
AppID string `orm:"column(app_id);size(64)" json:"app_id"`
|
||||
TemplateID string `orm:"column(template_id);size(128)" json:"template_id"`
|
||||
Remain int `orm:"column(remain);default(0)" json:"remain"` // 剩余可发送次数
|
||||
UpdateTime *time.Time `orm:"column(update_time);type(datetime);null" json:"update_time"`
|
||||
CreateTime time.Time `orm:"column(create_time);type(datetime);auto_now_add" json:"create_time"`
|
||||
}
|
||||
|
||||
func (m *WechatMiniSubscribe) TableName() string { return "yz_platform_wechat_mini_subscribe" }
|
||||
Reference in new issue
Block a user