| 11 | ) |
| 12 | |
| 13 | func handleEmptyConfig(log zerolog.Logger, cfg *vo.AppConfig) { |
| 14 | currentDir, err := os.Getwd() |
| 15 | if err != nil { |
| 16 | log.Error().Msgf("获取当前工作目录异常:%s", err.Error()) |
| 17 | return |
| 18 | } |
| 19 | log.Debug().Str("数据库[DB]", cfg.DB). |
| 20 | Str("跨域[CORS_ORIGIN]", cfg.CorsOrigin). |
| 21 | Int("端口[PORT]", cfg.Port). |
| 22 | Str("JWT密钥[JWT_KEY]", cfg.JwtKey). |
| 23 | Str("上传目录[UPLOAD_DIR]", cfg.UploadDir). |
| 24 | Str("日志级别[LOG_LEVEL]", cfg.LogLevel). |
| 25 | Bool("是否启用Swagger文档[ENABLE_SWAGGER]", cfg.EnableSwagger). |
| 26 | Bool("是否输出SQL[ENABLE_SQL_OUTPUT]", cfg.EnableSQLOutput). |
| 27 | Msgf("基本信息") |
| 28 | |
| 29 | if cfg.DB == "" { |
| 30 | cfg.DB = filepath.Join(currentDir, "db.sqlite") |
| 31 | if _, err = os.Stat(cfg.DB); err != nil { |
| 32 | log.Debug().Msgf("当前目录[%s]没有[db.sqlite]数据库文件,自动生成成功", currentDir) |
| 33 | } |
| 34 | } |
| 35 | |
| 36 | if cfg.UploadDir == "" { |
| 37 | cfg.UploadDir = filepath.Join(currentDir, "upload") |
| 38 | if _, err = os.Stat(cfg.UploadDir); err != nil { |
| 39 | err = os.MkdirAll(cfg.UploadDir, 0755) |
| 40 | if err != nil { |
| 41 | log.Fatal().Msgf("创建upload文件夹异常:%s", err.Error()) |
| 42 | } else { |
| 43 | log.Debug().Msgf("没有配置[上传目录-upload文件夹],在当前目录[%s]生成[upload]文件夹成功", currentDir) |
| 44 | } |
| 45 | } |
| 46 | } |
| 47 | |
| 48 | if cfg.JwtKey == "" { |
| 49 | cfg.JwtKey = strings.ReplaceAll(uuid.NewString(), "-", "") |
| 50 | log.Debug().Msgf("JWT_KEY没有配置,随机生成为%s,每次重启服务需要重新登录,配置后则不会", cfg.JwtKey) |
| 51 | } |
| 52 | } |