Files
platform/cmd/fill/main.go

113 lines
2.3 KiB
Go

package main
import (
"log/slog"
"platform/pkg/env"
"platform/pkg/logs"
"platform/pkg/orm"
m "platform/web/models"
q "platform/web/queries"
"time"
"golang.org/x/crypto/bcrypt"
)
func main() {
env.Init()
logs.Init()
orm.Init()
err := q.Q.Transaction(func(tx *q.Query) error {
q.User.
Select(q.User.Phone).
Save(&m.User{
Phone: "12312341234",
})
var user, _ = q.User.First()
q.Resource.
Select(q.Resource.UserID, q.Resource.Active).
Create(&m.Resource{
UserID: user.ID,
Active: true,
})
var resource, _ = q.Resource.First()
q.ResourcePss.
Select(
q.ResourcePss.ResourceID,
q.ResourcePss.Live,
q.ResourcePss.Type,
q.ResourcePss.Expire,
q.ResourcePss.DailyLimit,
).
Create(&m.ResourcePss{
ResourceID: resource.ID,
Live: 180,
Type: 1,
Expire: time.Now().Add(24 * time.Hour * 1000),
DailyLimit: 300000,
})
q.Proxy.
Select(q.Proxy.Version, q.Proxy.Name, q.Proxy.Host, q.Proxy.Type, q.Proxy.Secret).
Create(&m.Proxy{
Version: 1,
Name: "7a17e8b4-cdc3-4500-bf16-4a665991a7f6",
Host: "110.40.82.248",
Type: 1,
Secret: "api:123456",
})
q.Node.
Select(
q.Node.Version,
q.Node.Name,
q.Node.Host,
q.Node.Isp,
q.Node.Prov,
q.Node.City,
q.Node.Status).
Create(&m.Node{
Version: 1,
Name: "test-node",
Host: "123",
Isp: "test-isp",
Prov: "test-prov",
City: "test-city",
Status: 1})
var testSecret, _ = bcrypt.GenerateFromPassword([]byte("test"), bcrypt.DefaultCost)
var tasksSecret, _ = bcrypt.GenerateFromPassword([]byte("tasks"), bcrypt.DefaultCost)
q.Client.
Select(
q.Client.ClientID,
q.Client.ClientSecret,
q.Client.GrantClient,
q.Client.GrantRefresh,
q.Client.Spec,
q.Client.Name).
Create(&m.Client{
ClientID: "test",
ClientSecret: string(testSecret),
GrantClient: true,
GrantRefresh: true,
Spec: 0,
Name: "默认客户端",
}, &m.Client{
ClientID: "tasks",
ClientSecret: string(tasksSecret),
GrantClient: true,
GrantRefresh: true,
Spec: 0,
Name: "异步任务处理服务",
})
return nil
})
if err != nil {
panic(err)
}
slog.Info("✔ Data inserted successfully")
}