main.go 2.5 KB

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