main.go 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. package main
  2. import (
  3. "app.yhyue.com/moapp/jybase/common"
  4. "app.yhyue.com/moapp/jybase/go-xweb/xweb"
  5. "app.yhyue.com/moapp/jybase/log"
  6. "app.yhyue.com/moapp/jybase/mail"
  7. "app.yhyue.com/moapp/jybase/redis"
  8. "cmplatform/client"
  9. _ "cmplatform/filter"
  10. "cmplatform/front"
  11. "cmplatform/history"
  12. "cmplatform/push"
  13. "cmplatform/service"
  14. "cmplatform/util"
  15. "fmt"
  16. "time"
  17. )
  18. func init() {
  19. common.ReadConfig(&util.Sysconfig) //初始化配置
  20. util.InitMgoPool() //初始化连接
  21. util.InitOther()
  22. //xweb框架配置
  23. xweb.Config.RecoverPanic = true
  24. xweb.Config.Profiler = true
  25. xweb.RootApp().AppConfig.TemplateDir = "web/templates"
  26. xweb.RootApp().AppConfig.StaticDir = "web/res"
  27. xweb.RootApp().AppConfig.StaticFileVersion = false
  28. xweb.RootApp().AppConfig.CheckXsrf = false
  29. xweb.RootApp().AppConfig.ReloadTemplates = true
  30. xweb.RootApp().AppConfig.EnableHttpCache = false
  31. xweb.RootApp().AppConfig.Mode = xweb.Product
  32. xweb.RootApp().AppConfig.CacheTemplates = false
  33. xweb.AddAction(&front.Front{})
  34. xweb.AddAction(&service.Rule{})
  35. xweb.AddAction(&service.Feedback{})
  36. xweb.AddAction(&service.Private{})
  37. xweb.AddAction(&service.Customer{})
  38. xweb.AddAction(&service.SecondPush{})
  39. xweb.AddAction(&service.EntData{})
  40. xweb.AddAction(&history.HistoryData{})
  41. xweb.AddAction(&client.Client{})
  42. xweb.AddAction(&client.OwnTag{})
  43. xweb.AddAction(&client.CustomerRule{})
  44. xweb.AddAction(&service.DataStatistics{})
  45. xweb.AddAction(&push.Push{})
  46. xweb.AddAction(&service.Groups{})
  47. xweb.RootApp().AppConfig.SessionTimeout = 24 * time.Hour
  48. xweb.RootApp().Logger.SetOutputLevel(1)
  49. go history.SaveMgo()
  50. go history.SaveUsermailMgo()
  51. mails, _ := util.Sysconfig["mail"].([]interface{})
  52. if len(mails) > 0 {
  53. history.Gmails = make([]*mail.GmailAuth, len(mails))
  54. for k, v1 := range mails {
  55. v, _ := v1.(map[string]interface{})
  56. history.Gmails[k] = &mail.GmailAuth{
  57. SmtpHost: common.ObjToString(v["addr"]),
  58. SmtpPort: common.IntAll(v["port"]),
  59. User: common.ObjToString(v["user"]),
  60. Pwd: common.ObjToString(v["pwd"]),
  61. }
  62. }
  63. }
  64. initOther()
  65. redis.Del("datag", "jyqyfw_es_query")
  66. }
  67. func initOther() {
  68. for _, v := range util.Sysconfig["project_appid"].([]interface{}) {
  69. history.ProjectAppidMap[v.(string)] = true
  70. }
  71. for _, s := range util.Sysconfig["filetext_appid"].([]interface{}) {
  72. history.FileTextAppidMap[s.(string)] = true
  73. }
  74. for _, s := range util.Sysconfig["checkbidopen_appid"].([]interface{}) {
  75. history.CheckBidOpenAppidMap[s.(string)] = true
  76. }
  77. for _, v := range util.Sysconfig["checkbidhref_ruleid"].([]interface{}) {
  78. history.CheckBidHrefRuleIdMap[v.(string)] = true
  79. }
  80. for _, v := range util.Sysconfig["dis_package_appid"].([]interface{}) {
  81. history.DisPackageAppidMap[v.(string)] = true
  82. }
  83. for _, v := range util.Sysconfig["need_projectid_appid"].([]interface{}) {
  84. history.NeedProjectidAppidMap[v.(string)] = true
  85. }
  86. for _, v := range util.Sysconfig["filter_filehref_appid"].([]interface{}) {
  87. history.FilterFilehrefAppidMap[v.(string)] = true
  88. }
  89. for _, v := range util.Sysconfig["need_filehref_appid"].([]interface{}) {
  90. history.NeedFilehrefAppidMap[v.(string)] = true
  91. }
  92. for _, v := range util.Sysconfig["Henan_mobile_winbid"].([]interface{}) {
  93. history.HenanMobileWinbidMap[v.(string)] = true
  94. }
  95. for _, v := range util.Sysconfig["Henan_mobile_bidtype"].([]interface{}) {
  96. history.HenanMobileBidtypeMap[v.(string)] = true
  97. }
  98. for _, v := range util.Sysconfig["filter_file_and_detail"].([]interface{}) {
  99. history.FilterFileAndDetailMap[v.(string)] = true
  100. }
  101. for _, v := range util.Sysconfig["filter_owner_appid"].([]interface{}) {
  102. history.FilterOwnerMap[v.(string)] = true
  103. }
  104. }
  105. func main() {
  106. log.Debug("port:" + fmt.Sprint(util.Sysconfig["port"]))
  107. xweb.Run(":" + common.ObjToString(util.Sysconfig["port"]))
  108. }