123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- package models
- import (
- "github.com/jinzhu/gorm"
- "time"
- )
- type SendSmsReq struct {
- Mobile string `json:"mobile"`
- Content string `json:"content"`
- }
- type ValidSms struct {
- SmsId int64 `json:"sms_id"`
- Mobile string `json:"mobile"`
- ValidCode string `json:"valid_code"`
- SmsType int `json:"sms_type"`
- CreateAt int64 `json:"create_at"`
- }
- type SmsUser struct {
- isDelete int64 `json:"is_delete"`
- MobilePhone string `json:"mobile_phone"`
- CreateAt int64 `json:"create_at"`
- }
- type RemindSms struct {
- ID int64 `gorm:"column:id"`
- Mobile string
- SmsType int
- Content string
- IpAddr string
- }
- /// 定义腾讯短信模板结构
- type Tel struct {
- Mobile string `json:"mobile"` // 手机号码
- NationCode string `json:"nationcode"` // 国家码
- }
- type SmsTempl struct {
- Ext string `json:"ext"` // 用户的 session 内容,腾讯 server 回包中会原样返回,可选字段,不需要就填空
- Extend string `json:"extend"` // 短信码号扩展号,格式为纯数字串,其他格式无效
- Params []string `json:"params"` // 模板参数,若模板没有参数,请提供为空数组
- Sig string `json:"sig"` // App凭证,sig字段根据公式sha256(appkey=$appkey&random=$random&time=$time&mobile=$mobile)生成
- Sign string `json:"sign"` // 短信签名,如果使用默认签名,该字段可缺省
- Tel Tel `json:"tel"` // 电话号码
- Time int64 `json:"time"` // 请求发起时间,UNIX 时间戳(单位:秒),如果和系统时间相差超过10分钟则会返回失败
- TplID int64 `json:"tpl_id"` // 模板ID,在控制台审核通过的模板ID
- }
- /// 定义腾讯云短信响应内容
- type SmsTemplResp struct {
- Result int `json:"result"` // 0表示成功 非0表示失败
- ErrMsg string `json:"errmsg"` // 错误消息,result 非0时的具体错误信息
- SID string `json:"sid"` // 本次发送标识id,标识一次短信下发记录
- }
- /**
- [数据库操作]插入短信验证码数据
- */
- func (sms *ValidSms) Save(db *gorm.DB) error {
- sql := `INSERT INTO lzyd_sms_valid(mobile_phone, valid_code, sms_type, create_at) VALUES (?,?,?,?)`
- err := db.Exec(sql, sms.Mobile, sms.ValidCode, sms.SmsType, time.Now().Unix()).Error
- return err
- }
- func (sms *RemindSms) Save(db *gorm.DB) error {
- sql := "INSERT INTO sms_remind_info(mobile, sms_type, content, ip_addr) VALUES(?,?,?,?)"
- err := db.Exec(sql, sms.Mobile, sms.SmsType, sms.Content, sms.IpAddr).Error
- return err
- }
|