更新首页逻辑以支持动态标题生成,优化用户体验。调整管理后台资源文件,替换旧的 JavaScript 和 CSS 文件,提升页面性能和样式一致性。同时,更新数据库结构以支持更细粒度的推送状态。
This commit is contained in:
@@ -86,9 +86,6 @@ func Init(dsn string) error {
|
||||
if err := db.AutoMigrate(&model.AdminUser{}); err != nil {
|
||||
log.Printf("database: admin_users migrate warning: %v", err)
|
||||
}
|
||||
if err := db.AutoMigrate(&model.CkbSubmitRecord{}); err != nil {
|
||||
log.Printf("database: ckb_submit_records migrate warning: %v", err)
|
||||
}
|
||||
if err := db.AutoMigrate(&model.CkbLeadRecord{}); err != nil {
|
||||
log.Printf("database: ckb_lead_records migrate warning: %v", err)
|
||||
}
|
||||
@@ -158,6 +155,36 @@ func ensureCkbLeadSchema(db *gorm.DB) {
|
||||
log.Printf("database: ckb_lead_records schema ensure warning: %v; action=add push_status", err)
|
||||
}
|
||||
}
|
||||
if !m.HasColumn(&model.CkbLeadRecord{}, "action") {
|
||||
if err := db.Exec("ALTER TABLE ckb_lead_records ADD COLUMN action VARCHAR(20) NOT NULL DEFAULT 'lead' COMMENT '记录类型: lead/join/match'").Error; err != nil {
|
||||
log.Printf("database: ckb_lead_records schema ensure warning: %v; action=add action", err)
|
||||
}
|
||||
}
|
||||
if !m.HasColumn(&model.CkbLeadRecord{}, "plan_api_key") {
|
||||
if err := db.Exec("ALTER TABLE ckb_lead_records ADD COLUMN plan_api_key VARCHAR(100) NOT NULL DEFAULT '' COMMENT '本次命中的获客计划 apiKey 快照'").Error; err != nil {
|
||||
log.Printf("database: ckb_lead_records schema ensure warning: %v; action=add plan_api_key", err)
|
||||
}
|
||||
}
|
||||
if !m.HasIndex(&model.CkbLeadRecord{}, "idx_ckb_lead_action") {
|
||||
if err := db.Exec("CREATE INDEX idx_ckb_lead_action ON ckb_lead_records(action)").Error; err != nil {
|
||||
log.Printf("database: ckb_lead_records schema ensure warning: %v; action=create idx_ckb_lead_action", err)
|
||||
}
|
||||
}
|
||||
if !m.HasColumn(&model.CkbLeadRecord{}, "ckb_code") {
|
||||
if err := db.Exec("ALTER TABLE ckb_lead_records ADD COLUMN ckb_code INT NOT NULL DEFAULT 0 COMMENT '存客宝响应 code(快照)'").Error; err != nil {
|
||||
log.Printf("database: ckb_lead_records schema ensure warning: %v; action=add ckb_code", err)
|
||||
}
|
||||
}
|
||||
if !m.HasColumn(&model.CkbLeadRecord{}, "ckb_message") {
|
||||
if err := db.Exec("ALTER TABLE ckb_lead_records ADD COLUMN ckb_message VARCHAR(500) NOT NULL DEFAULT '' COMMENT '存客宝响应 message(快照)'").Error; err != nil {
|
||||
log.Printf("database: ckb_lead_records schema ensure warning: %v; action=add ckb_message", err)
|
||||
}
|
||||
}
|
||||
if !m.HasColumn(&model.CkbLeadRecord{}, "ckb_data") {
|
||||
if err := db.Exec("ALTER TABLE ckb_lead_records ADD COLUMN ckb_data TEXT NULL COMMENT '存客宝响应 data(快照 JSON)'").Error; err != nil {
|
||||
log.Printf("database: ckb_lead_records schema ensure warning: %v; action=add ckb_data", err)
|
||||
}
|
||||
}
|
||||
if !m.HasColumn(&model.CkbLeadRecord{}, "retry_count") {
|
||||
if err := db.Exec("ALTER TABLE ckb_lead_records ADD COLUMN retry_count INT NOT NULL DEFAULT 0 COMMENT '重试次数'").Error; err != nil {
|
||||
log.Printf("database: ckb_lead_records schema ensure warning: %v; action=add retry_count", err)
|
||||
@@ -178,4 +205,8 @@ func ensureCkbLeadSchema(db *gorm.DB) {
|
||||
log.Printf("database: ckb_lead_records schema ensure warning: %v; action=create idx_ckb_lead_push_status", err)
|
||||
}
|
||||
}
|
||||
// 放宽 push_status 长度以容纳存客宝细粒度状态(pending_verify、expired 等)
|
||||
if err := db.Exec("ALTER TABLE ckb_lead_records MODIFY COLUMN push_status VARCHAR(64) NOT NULL DEFAULT 'pending' COMMENT '推送状态'").Error; err != nil {
|
||||
log.Printf("database: ckb_lead_records schema ensure warning: %v; action=widen push_status", err)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user