Files
goodBaby/handler/db/account.go
T

29 lines
709 B
Go
Raw Normal View History

2026-07-26 22:19:41 +08:00
package db
import (
"fmt"
"github.com/ssdomei232/goodBaby/model"
)
2026-09-12 15:32:27 +08:00
// GetAccount 读取一个账号,返回数据库里的原始记录。
2026-07-26 22:19:41 +08:00
//
2026-09-12 15:32:27 +08:00
// 规则执行需要的账号凭据由上层(handler/runner)在这里取好再传给 driver,
// driver 自己不碰数据库。accountID 为 0 表示该规则不需要账号,返回 (nil, nil)。
func GetAccount(accountID uint) (*model.Account, error) {
2026-07-26 22:19:41 +08:00
if accountID == 0 {
2026-09-12 15:32:27 +08:00
return nil, nil
2026-07-26 22:19:41 +08:00
}
gormDB, err := GetGormDB()
if err != nil {
2026-09-12 15:32:27 +08:00
return nil, err
2026-07-26 22:19:41 +08:00
}
var account model.Account
if err := gormDB.First(&account, accountID).Error; err != nil {
2026-09-12 15:32:27 +08:00
return nil, fmt.Errorf("获取账号(ID: %d)失败: %w", accountID, err)
2026-07-26 22:19:41 +08:00
}
2026-09-12 15:32:27 +08:00
return &account, nil
2026-07-26 22:19:41 +08:00
}