feat: 接入商务用户资料和全局统计偏好

This commit is contained in:
Yvan
2026-11-03 17:44:25 +08:00
parent 89cc7761b5
commit ce4b54a2e2
39 changed files with 2562 additions and 17 deletions
@@ -0,0 +1,31 @@
package system
import (
"context"
"testing"
)
func TestBusinessFieldsSurviveMigrationAndIdentityLoad(t *testing.T) {
db, err := openWithDriver("sqlite", "file:"+t.Name()+"?mode=memory&cache=shared")
if err != nil {
t.Fatal(err)
}
if err = migrateAll(db); err != nil {
t.Fatal(err)
}
po := userPO{Username: "business", UUID: "business-uuid", Password: "original-hash", Enable: 1, Level: 2, ParentID: 11, IDPath: "0,11", RealName: "商务姓名", QQNumber: "12345", BusinessStatus: 3, RejectReason: "审核资料"}
if err = db.Create(&po).Error; err != nil {
t.Fatal(err)
}
if err = ensureBusinessUserFields(db); err != nil {
t.Fatal(err)
}
r := NewUserRepo(&Data{gormDB: newReloadableDB(db, nil)})
user, err := r.FindUserByUUID(context.Background(), "business-uuid")
if err != nil {
t.Fatal(err)
}
if user.Level != 2 || user.ParentID != 11 || user.IDPath != "0,11" || user.RealName != "商务姓名" || user.QQNumber != "12345" || user.BusinessStatus != 3 || user.RejectReason != "审核资料" || user.Password != "original-hash" {
t.Fatalf("迁移或身份加载丢失商务字段: %+v", user)
}
}