db.go 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. package models
  2. import (
  3. _ "github.com/go-sql-driver/mysql"
  4. "hongze/hongze_ETA_mobile_api/models/data_manage"
  5. "hongze/hongze_ETA_mobile_api/models/ppt_english"
  6. "hongze/hongze_ETA_mobile_api/models/sandbox"
  7. "hongze/hongze_ETA_mobile_api/models/system"
  8. "hongze/hongze_ETA_mobile_api/utils"
  9. "time"
  10. "github.com/beego/beego/v2/client/orm"
  11. )
  12. func init() {
  13. _ = orm.RegisterDataBase("default", "mysql", utils.MYSQL_URL)
  14. orm.SetMaxIdleConns("default", 50)
  15. orm.SetMaxOpenConns("default", 100)
  16. db, _ := orm.GetDB("default")
  17. db.SetConnMaxLifetime(10 * time.Minute)
  18. _ = orm.RegisterDataBase("rddp", "mysql", utils.MYSQL_URL_RDDP)
  19. orm.SetMaxIdleConns("rddp", 50)
  20. orm.SetMaxOpenConns("rddp", 100)
  21. report_db, _ := orm.GetDB("rddp")
  22. report_db.SetConnMaxLifetime(10 * time.Minute)
  23. _ = orm.RegisterDataBase("edb", "mysql", utils.MYSQL_URL_EDB)
  24. orm.SetMaxIdleConns("edb", 50)
  25. orm.SetMaxOpenConns("edb", 100)
  26. edb_db, _ := orm.GetDB("edb")
  27. edb_db.SetConnMaxLifetime(10 * time.Minute)
  28. _ = orm.RegisterDataBase("data", "mysql", utils.MYSQL_URL_DATA)
  29. orm.SetMaxIdleConns("data", 50)
  30. orm.SetMaxOpenConns("data", 100)
  31. data_db, _ := orm.GetDB("data")
  32. data_db.SetConnMaxLifetime(10 * time.Minute)
  33. orm.Debug = true
  34. orm.DebugLog = orm.NewLog(utils.Binlog)
  35. //注册对象
  36. orm.RegisterModel(
  37. new(Classify),
  38. new(Resource),
  39. new(Ppt),
  40. new(PptPages),
  41. new(PptPublishRecord),
  42. new(PptV2),
  43. new(PptV2PublishRecord),
  44. new(PptV2SaveLog),
  45. new(PptV2Group),
  46. new(PptV2GroupMapping),
  47. new(PptV2Grant), //ppt授权操作表
  48. )
  49. // 报告相关 数据表
  50. initReport()
  51. initSystem()
  52. initChart()
  53. initEdbData()
  54. // 英文ppt
  55. initPptEnglish()
  56. //多图配置
  57. initMultipleGraphConfig()
  58. // 英文报告
  59. initEnglishReport()
  60. // 沙盘推演
  61. initSandbox()
  62. }
  63. // initSystem 系统表 数据表
  64. func initSystem() {
  65. orm.RegisterModel(
  66. new(system.SysUserLoginRecord),
  67. new(system.SysSession),
  68. new(system.Admin),
  69. new(system.AdminConfig), //系统用户配置表
  70. )
  71. }
  72. // initReport 报告相关 数据表
  73. func initReport() {
  74. orm.RegisterModel(
  75. new(Report),
  76. new(ResearchReport), //日报、周报信息
  77. new(ChartPermissionSearchKeyWordMapping), //报告分类权限表
  78. new(ReportChapter), // 报告章节表
  79. new(ReportChapterTicker), // 晨报章节ticker
  80. new(ReportChapterTypePermission), // 晨周报章节类型权限表
  81. new(YbPcSuncode),
  82. new(YbSuncodePars),
  83. new(ReportAuthor), //报告作者
  84. new(ClassifyMenu), // 报告分类-子目录表
  85. new(ClassifyMenuRelation), // 报告分类-子目录关联表
  86. new(ChartPermissionChapterMapping), // 权限mapping表
  87. new(ReportChapterType), // 报告章节类型表
  88. )
  89. }
  90. // initChart 图表 数据表
  91. func initChart() {
  92. orm.RegisterModel(
  93. new(data_manage.ChartClassify),
  94. new(data_manage.ChartInfo),
  95. new(data_manage.ChartEdbMapping),
  96. new(data_manage.MyChartClassify),
  97. new(data_manage.MyChart),
  98. new(data_manage.MyChartLog),
  99. new(data_manage.MyChartClassifyMapping),
  100. new(data_manage.ChartInfoLog),
  101. new(data_manage.ChartInfoCorrelation),
  102. )
  103. }
  104. // initEdbData 指标服务 数据表
  105. func initEdbData() {
  106. orm.RegisterModel(
  107. new(data_manage.SearchKeyword),
  108. new(data_manage.ExcelClassify), //ETA excel表格分类
  109. )
  110. }
  111. // initPptEnglish ppt英文
  112. func initPptEnglish() {
  113. orm.RegisterModel(
  114. new(ppt_english.PptEnglish),
  115. new(ppt_english.PptEnglishPublishRecord),
  116. new(ppt_english.PptEnglishSaveLog),
  117. new(ppt_english.PptEnglishGroup),
  118. new(ppt_english.PptEnglishGroupMapping),
  119. new(ppt_english.PptEnglishGrant), //ppt授权操作表
  120. new(ppt_english.ReportPptEnglishImg), //Ppt转报告的图片记录表
  121. )
  122. }
  123. // initMultipleGraphConfig 多图配置 数据表
  124. func initMultipleGraphConfig() {
  125. //注册对象
  126. orm.RegisterModel(
  127. new(data_manage.MultipleGraphConfig), //多图配置表
  128. new(data_manage.MultipleGraphConfigChartMapping), //图表与多图配置的关系表
  129. //new(data_manage.MultipleGraphConfigEdbMapping), //指标与多图配置的关系表
  130. )
  131. }
  132. // initEnglishReport 英文报告
  133. func initEnglishReport() {
  134. orm.RegisterModel(
  135. new(EnglishReport),
  136. new(EnglishPolicyReport),
  137. new(EnglishReportEmail),
  138. new(EnglishReportEmailLog),
  139. new(EnglishClassify),
  140. new(EnglishVideo), // 英文研报线上路演
  141. )
  142. }
  143. // initSandbox 注册Edb沙盘 数据表
  144. func initSandbox() {
  145. //注册对象
  146. orm.RegisterModel(
  147. new(sandbox.Sandbox), //沙盘主表
  148. )
  149. }