package cmd import ( "fmt" "gitee.com/codinl/erp_server/config" "gitee.com/codinl/erp_server/lib/auth" "gitee.com/codinl/erp_server/lib/log" "gitee.com/codinl/erp_server/model" "gitee.com/codinl/erp_server/router" "github.com/codinl/go-logger" "github.com/gin-gonic/gin" "github.com/urfave/cli/v2" "os" ) func Start() { app := &cli.App{ Commands: []*cli.Command{ { Name: "start", Usage: "启动服务", Action: startService, Flags: []cli.Flag{ &cli.StringFlag{ Name: config.ServiceName, Aliases: []string{"n"}, Usage: "服务名", Value: "erp", }, &cli.StringFlag{ Name: config.STAGE, Aliases: []string{"s"}, Usage: "stage", Value: config.DefaultStage, EnvVars: []string{config.STAGE}, }, }, }, }, } if err := app.Run(os.Args); err != nil { logger.Fatal("err:", err) } } func startService(c *cli.Context) error { err := config.Init(c) if err != nil { fmt.Println("config init err:", err) return err } log.Init(config.ConfigValue.LoggerPath, config.ConfigValue.LoggerFile, config.ConfigValue.LoggerLevel) model.InitDB() auth.Init(config.ConfigValue.JwtKey, int64(config.ConfigValue.JwtExpire)) runServer() return nil } func runServer() { server := gin.Default() gin.SetMode(gin.DebugMode) router.ConfigAppRouter(server) err := server.Run(fmt.Sprintf(":%d", 8030)) if err != nil { logger.Error(err) return } }