v2
This commit is contained in:
80
cmd/erp.go
Normal file
80
cmd/erp.go
Normal file
@@ -0,0 +1,80 @@
|
||||
package cmd
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"log"
|
||||
|
||||
"management/internal/config"
|
||||
db "management/internal/db/sqlc"
|
||||
"management/internal/erpserver"
|
||||
"management/internal/erpserver/biz"
|
||||
"management/internal/erpserver/handler"
|
||||
"management/internal/pkg/logger"
|
||||
"management/internal/pkg/middleware"
|
||||
"management/internal/pkg/redis"
|
||||
"management/internal/pkg/session"
|
||||
"management/internal/pkg/snowflake"
|
||||
"management/internal/pkg/tpl"
|
||||
|
||||
"github.com/spf13/cobra"
|
||||
)
|
||||
|
||||
var erpCmd = &cobra.Command{
|
||||
Use: "erp",
|
||||
Short: "Start erp management server",
|
||||
Long: `A Service to erp management`,
|
||||
Run: func(cmd *cobra.Command, args []string) {
|
||||
err := runErp(cmd.Context())
|
||||
if err != nil {
|
||||
log.Fatalf("run erp failed: %v", err)
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
func init() {
|
||||
erpCmd.Flags().StringVarP(&configPath, "config", "c", "", "Custom config file path")
|
||||
rootCmd.AddCommand(erpCmd)
|
||||
}
|
||||
|
||||
func runErp(ctx context.Context) error {
|
||||
conf, err := config.New(configPath)
|
||||
checkError(err)
|
||||
|
||||
logger.New(conf.App.Prod)
|
||||
|
||||
store, err := db.NewIStore(ctx, conf.DB)
|
||||
checkError(err)
|
||||
|
||||
// 初始化数据
|
||||
// dbinit.InitSeed()
|
||||
|
||||
// mustInit(redis.Init)
|
||||
|
||||
redis, err := redis.New(conf.Redis)
|
||||
checkError(err)
|
||||
|
||||
session := session.New(store.Pool(), conf.App.Prod)
|
||||
|
||||
mustInit(snowflake.Init)
|
||||
|
||||
biz := biz.NewBiz(store, redis, session)
|
||||
|
||||
middleware := middleware.New(biz.SystemV1(), session)
|
||||
|
||||
rander, err := tpl.New(session, biz.SystemV1().MenuBiz())
|
||||
checkError(err)
|
||||
|
||||
handler := handler.NewHandler(conf, rander, session, biz)
|
||||
|
||||
address := fmt.Sprintf("%s:%d", conf.App.Host, conf.App.Port)
|
||||
log.Printf("Starting erp manage server on %s", address)
|
||||
server := InitServer(address, erpserver.NewRouter(handler, middleware))
|
||||
return server.ListenAndServe()
|
||||
}
|
||||
|
||||
func checkError(err error) {
|
||||
if err != nil {
|
||||
log.Fatalf("init failed: %v", err)
|
||||
}
|
||||
}
|
||||
@@ -7,10 +7,7 @@ import (
|
||||
|
||||
"management/internal/config"
|
||||
"management/internal/pkg/logger"
|
||||
"management/internal/pkg/redis"
|
||||
"management/internal/pkg/session"
|
||||
"management/internal/pkg/snowflake"
|
||||
"management/internal/tpl"
|
||||
|
||||
dbinit "management/internal/db/init"
|
||||
db "management/internal/db/sqlc"
|
||||
@@ -43,12 +40,12 @@ func runManage(ctx context.Context) error {
|
||||
mustInitAny(ctx, db.NewStore)
|
||||
// 初始化数据
|
||||
dbinit.InitSeed()
|
||||
mustInit(redis.Init)
|
||||
session.Init()
|
||||
// mustInit(redis.Init)
|
||||
// session.Init()
|
||||
mustInit(snowflake.Init)
|
||||
// mustInit(token.NewPasetoMaker)
|
||||
// mustInit(tencentoss.Init)
|
||||
mustInit(tpl.Init)
|
||||
// mustInit(tpl.Init)
|
||||
|
||||
address := fmt.Sprintf("%s:%d", config.File.App.Host, config.File.App.Port)
|
||||
log.Printf("Starting manage server on %s", address)
|
||||
|
||||
Reference in New Issue
Block a user