main.go 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. package main
  2. import (
  3. "context"
  4. "lims_adapter/handler"
  5. "lims_adapter/handler/feedback"
  6. "lims_adapter/handler/learning"
  7. "lims_adapter/service/timers"
  8. "net/http"
  9. "github.com/golang/glog"
  10. _ "lims_adapter/boot"
  11. _ "lims_adapter/valid"
  12. "dashoo.cn/micro_libary/micro_srv"
  13. "github.com/gogf/gf/frame/g"
  14. "github.com/robfig/cron"
  15. "github.com/smallnest/rpcx/protocol"
  16. )
  17. func main() {
  18. go swaggerui()
  19. // 定时任务
  20. c := cron.New()
  21. spec := "0 0 1 * * ?" // 每日1点执行
  22. if err := c.AddJob(spec, timers.Timer{}); err != nil {
  23. glog.Error(err.Error())
  24. }
  25. c.Start()
  26. srvAddr := g.Config().GetString("setting.bind-addr")
  27. basePath := g.Config().GetString("setting.srv-name")
  28. // 创建总服务包
  29. s := micro_srv.CreateAndInitService(basePath)
  30. // 注册服务对象
  31. s.RegisterName("Meeting",
  32. new(handler.Meeting), "")
  33. s.RegisterName("Reservation",
  34. new(handler.Reservation), "")
  35. s.RegisterName("Equipment",
  36. new(handler.Equipment), "")
  37. s.RegisterName("System",
  38. new(handler.System), "")
  39. s.RegisterName("Result",
  40. new(handler.Result), "")
  41. s.RegisterName("Account",
  42. new(handler.Account), "")
  43. s.RegisterName("SettleAccountBill",
  44. new(handler.SettleAccountBillController), "")
  45. s.RegisterName("SettleAccountMain",
  46. new(handler.SettleAccountMainController), "")
  47. s.RegisterName("SettleAccountDetail",
  48. new(handler.SettleAccountDetailController), "")
  49. s.RegisterName("InstrumentSurcharge",
  50. new(handler.InstrumentSurchargeController), "")
  51. s.RegisterName("Test",
  52. new((handler.TestController)), "")
  53. s.RegisterName("LearningSkill",
  54. new((learning.LearningSkill)), "")
  55. s.RegisterName("LearningMaterial",
  56. new((learning.LearningMaterial)), "")
  57. s.RegisterName("LearningQuestion",
  58. new((learning.LearningQuestion)), "")
  59. s.RegisterName("LearningExamRecord",
  60. new((learning.LearningExamRecord)), "")
  61. s.RegisterName("LearningLearningRecord",
  62. new((learning.LearningLearningRecord)), "")
  63. s.RegisterName("LearningTestpaper",
  64. new((learning.LearningTestpaper)), "")
  65. s.RegisterName("LearningMaterialPublishRecord",
  66. new((learning.LearningMaterialPublishRecord)), "")
  67. s.RegisterName("Feedback",
  68. new((feedback.Feedback)), "")
  69. // 注册auth处理
  70. s.AuthFunc = handleAuth
  71. // 运行服务
  72. if err := s.Serve("tcp", srvAddr); err != nil {
  73. g.Log().Fatal(err)
  74. }
  75. }
  76. // AuthExcludePaths 设定不需要认证的路径
  77. //var AuthExcludePaths = []string{}
  78. // 处理Auth
  79. func handleAuth(ctx context.Context, req *protocol.Message, token string) error {
  80. return micro_srv.HandleAuth(ctx, req, token, nil)
  81. }
  82. func swaggerui() {
  83. defer func() {
  84. if r := recover(); r != nil {
  85. glog.Error(r)
  86. }
  87. }()
  88. glog.Error(http.ListenAndServe(":8080",
  89. http.FileServer(http.Dir("./swaggerui/"))))
  90. }