chore: init bj_power monorepo (dashboard/mes/wms/wms_client/workstation), clear subproject git metadata and align naming to folder names
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
package svc
|
||||
|
||||
import (
|
||||
"database/sql"
|
||||
"log/slog"
|
||||
|
||||
"bj_power_mes/ent"
|
||||
"bj_power_mes/internal/auth"
|
||||
"bj_power_mes/internal/config"
|
||||
"bj_power_mes/internal/db"
|
||||
"bj_power_mes/internal/plc"
|
||||
)
|
||||
|
||||
type ServiceContext struct {
|
||||
Config config.Config // �典��滨蔭嚗諹圾�𥖹aml�滨蔭��辣
|
||||
TokenStore auth.TokenStore // �瑟鰵隞斤����摮睃�嚗𣬚蒈敶?�瑟鰵�嗉粉�? EntClient *ent.Client // Ent ORM�唳旿摨枏恥�瑞垢嚗峕�雿𨅯極�閧�銝𡁜𦛚銵? DB *sql.DB // �毺�SQL餈墧𦻖�交�嚗𣬚鍂鈭𡒊鸌畾𠰴��𡷑QL�亥砭
|
||||
PLCManager *plc.Manager // PLC蝞∠��剁�蝏煺�蝞∠�PLC餈墧𦻖��縑�瑁粉�?}
|
||||
|
||||
func NewServiceContext(c config.Config) *ServiceContext {
|
||||
// 隞斤�摮睃�嚗帋蝙�典�摮睃��堆��閗�蝔𧢲��� Redis
|
||||
tokenStore := auth.NewInMemoryTokenStore()
|
||||
slog.Info("svc: using in-memory token store")
|
||||
|
||||
// �唳旿摨栞��交����ent ORM �其�蝏𤘪��𡝗䰻霂g��毺� SQL �其�憭齿��𡁜�
|
||||
entClient, dbConn := db.MustNewDB(c.Database)
|
||||
|
||||
// ���� PLC 撌脰��伐��臭��穃極摨誩噡蝑㗇�隞?����
|
||||
var plcManager *plc.Manager
|
||||
if c.Plc.Host != "" {
|
||||
plcManager = plc.Build(c.Plc)
|
||||
} else {
|
||||
slog.Warn("svc: PLC �芷�蝵殷�頝唾�餈墧𦻖")
|
||||
}
|
||||
|
||||
slog.Info("�滚𦛚銝𠹺��? �嘥��硋��?)
|
||||
|
||||
return &ServiceContext{
|
||||
Config: c,
|
||||
TokenStore: tokenStore,
|
||||
EntClient: entClient,
|
||||
DB: dbConn,
|
||||
PLCManager: plcManager,
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user