Files
soul-yongping/soul-api/internal/model/ckb_lead.go

31 lines
2.3 KiB
Go
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.

package model
import "time"
// CkbLeadRecord 链接卡若留资记录(独立表,便于后续链接其他用户等扩展)
type CkbLeadRecord struct {
ID int64 `gorm:"column:id;primaryKey;autoIncrement" json:"id"`
Action string `gorm:"column:action;size:20;not null;default:'lead';index" json:"action"` // lead | join | match
UserID string `gorm:"column:user_id;size:50;index" json:"userId"`
Nickname string `gorm:"column:nickname;size:100" json:"nickname"`
Phone string `gorm:"column:phone;size:20" json:"phone"`
WechatID string `gorm:"column:wechat_id;size:100" json:"wechatId"`
Name string `gorm:"column:name;size:100" json:"name"` // 用户填的姓名/昵称
TargetPersonID string `gorm:"column:target_person_id;size:100" json:"targetPersonId"` // 被@的人物 personId
Source string `gorm:"column:source;size:50" json:"source"` // 来源index_link_button / article_mention / join_team / match_partner ...
PlanAPIKey string `gorm:"column:plan_api_key;size:100;default:''" json:"planApiKey"` // 本次命中的获客计划 apiKey 快照
Params string `gorm:"column:params;type:json" json:"params"` // 完整传参 JSON
PushStatus string `gorm:"column:push_status;size:64;default:'pending';index" json:"pushStatus"` // pending/success/failed/pending_verify/expired 等
RetryCount int `gorm:"column:retry_count;default:0" json:"retryCount"`
LastPushAt *time.Time `gorm:"column:last_push_at" json:"lastPushAt,omitempty"`
NextRetryAt *time.Time `gorm:"column:next_retry_at" json:"nextRetryAt,omitempty"`
// 存客宝响应快照:用于后台展示排障(不依赖「推断状态」)
CkbCode int `gorm:"column:ckb_code;default:0" json:"ckbCode"`
CkbMessage string `gorm:"column:ckb_message;size:500;default:''" json:"ckbMessage"`
CkbData string `gorm:"column:ckb_data;type:text" json:"ckbData"`
CkbError string `gorm:"column:ckb_error;size:500" json:"ckbError"` // 存客宝请求失败时写入错误信息,便于运营排查
CreatedAt time.Time `gorm:"column:created_at" json:"createdAt"`
}
func (CkbLeadRecord) TableName() string { return "ckb_lead_records" }