package models import "time" // TenantCrmClue 线索表: yz_backend_crm_clue // 线索阶段的「客户名称」不关联客户管理,转化商机时才落地为正式客户。 type TenantCrmClue struct { ID uint64 `orm:"column(id);pk;auto" json:"id"` TenantID string `orm:"column(tenant_id);size(64)" json:"tenant_id"` ClueName string `orm:"column(clue_name);size(100)" json:"clue_name"` // 线索名称 CustomerName string `orm:"column(customer_name);size(100)" json:"customer_name"` // 客户名称(暂不关联客户管理) Source string `orm:"column(source);size(50)" json:"source"` // 客户来源 OwnerUserID string `orm:"column(owner_user_id);size(64)" json:"owner_user_id"` // 负责人 OwnerUserName string `orm:"column(owner_user_name);size(128)" json:"owner_user_name"` Industry string `orm:"column(industry);size(50)" json:"industry"` // 客户行业 Amount float64 `orm:"column(amount);digits(14);decimals(2);default(0)" json:"amount"` // 预计金额(线索阶段预估,用于仪表盘线索金额统计) NextContactTime *time.Time `orm:"column(next_contact_time);type(datetime);null" json:"next_contact_time"` // 下次联系时间 ClueLevel string `orm:"column(clue_level);size(20);default(2)" json:"clue_level"` // 客户级别:1重点/2普通/3非优先 ContactPerson string `orm:"column(contact_person);size(50)" json:"contact_person"` // 客户对接人 ContactPosition string `orm:"column(contact_position);size(50)" json:"contact_position"` // 对接人职位 ContactPhone string `orm:"column(contact_phone);size(20)" json:"contact_phone"` // 对接人手机 ContactWechat string `orm:"column(contact_wechat);size(64)" json:"contact_wechat"` // 对接人微信 ContactQQ string `orm:"column(contact_qq);size(20)" json:"contact_qq"` // 对接人QQ Address string `orm:"column(address);size(255)" json:"address"` // 公司地址 Status int8 `orm:"column(status);default(1)" json:"status"` // 1跟进中/2已转化/3已关闭 Locked int8 `orm:"column(locked);default(0)" json:"locked"` // 0否/1是(转化后锁定不可编辑) BusinessID *uint64 `orm:"column(business_id);null" json:"business_id"` // 转化后的商机ID ConvertTime *time.Time `orm:"column(convert_time);type(datetime);null" json:"convert_time"` // 转化时间 Remark string `orm:"column(remark);type(text);null" json:"remark"` CreateUserID string `orm:"column(create_user_id);size(64)" json:"create_user_id"` CreateTime time.Time `orm:"column(create_time);auto_now_add;type(datetime)" json:"create_time"` UpdateTime time.Time `orm:"column(update_time);auto_now;type(datetime)" json:"update_time"` DeleteTime *time.Time `orm:"column(delete_time);type(datetime);null" json:"delete_time"` } func (m *TenantCrmClue) TableName() string { return "yz_backend_crm_clue" }