main.go 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. package main
  2. import (
  3. "context"
  4. "github.com/robfig/cron/v3"
  5. "project_management/app"
  6. "project_management/app/model"
  7. "project_management/database"
  8. "project_management/global"
  9. "project_management/nats"
  10. "project_management/simple_zap"
  11. )
  12. func init() {
  13. err := global.SetupSetting()
  14. if err != nil {
  15. simple_zap.WithCtx(context.Background()).Sugar().Warn(err, "配置文件读取失败")
  16. }
  17. err = global.SetupDBLink()
  18. if err != nil {
  19. simple_zap.WithCtx(context.Background()).Sugar().Warn(err, "数据库连接失败")
  20. }
  21. // 数据库迁移
  22. database.Migrate(global.DBLink)
  23. //nats
  24. nats.SetupNats()
  25. //redis
  26. global.SetupRedisLink()
  27. c := cron.New()
  28. _, err = c.AddFunc("0 0 0 * * ?", func() {
  29. check := model.Apply{}.Check()
  30. if !check {
  31. simple_zap.WithCtx(context.Background()).Sugar().Warn("项目初始化失败")
  32. return
  33. }
  34. })
  35. if err != nil {
  36. simple_zap.WithCtx(context.Background()).Sugar().Warn(err, "项目初始化失败")
  37. return
  38. }
  39. c.Start()
  40. select {}
  41. }
  42. // @title 项目管理
  43. // @version 1.0
  44. // @description 项目管理
  45. // @Host 127.0.0.1:9999
  46. // @BasePath /api
  47. //
  48. //go:generate swag init --parseDependency --parseDepth=6
  49. func main() {
  50. err := app.InitRouter()
  51. if err != nil {
  52. simple_zap.WithCtx(context.Background()).Sugar().Warn(err, "项目初始化失败")
  53. return
  54. }
  55. }