db.go 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. package models
  2. import (
  3. "eta/eta_index_lib/models/excel"
  4. "eta/eta_index_lib/models/future_good"
  5. "eta/eta_index_lib/models/supply_analysis"
  6. "eta/eta_index_lib/utils"
  7. "github.com/beego/beego/v2/client/orm"
  8. _ "github.com/go-sql-driver/mysql"
  9. "time"
  10. )
  11. func init() {
  12. _ = orm.RegisterDataBase("default", "mysql", utils.MYSQL_URL)
  13. orm.SetMaxIdleConns("default", 50)
  14. orm.SetMaxOpenConns("default", 100)
  15. db, _ := orm.GetDB("default")
  16. db.SetConnMaxLifetime(10 * time.Minute)
  17. _ = orm.RegisterDataBase("edb", "mysql", utils.MYSQL_URL_EDB)
  18. orm.SetMaxIdleConns("edb", 50)
  19. orm.SetMaxOpenConns("edb", 100)
  20. edb_db, _ := orm.GetDB("edb")
  21. edb_db.SetConnMaxLifetime(10 * time.Minute)
  22. _ = orm.RegisterDataBase("gl", "mysql", utils.MYSQL_URL_GL)
  23. orm.SetMaxIdleConns("gl", 50)
  24. orm.SetMaxOpenConns("gl", 100)
  25. gl, _ := orm.GetDB("gl")
  26. gl.SetConnMaxLifetime(10 * time.Minute)
  27. orm.Debug = true
  28. orm.DebugLog = orm.NewLog(utils.Binlog)
  29. //注册对象
  30. orm.RegisterModel(
  31. new(EdbDataCalculateZjpj),
  32. new(EdbDataCalculateLjztbpj),
  33. new(EdbInfo),
  34. new(EdbInfoCalculateMapping),
  35. new(EdbPythonCode),
  36. new(EdbDataPython),
  37. new(ChartEdbMapping),
  38. new(PredictEdbConf),
  39. new(EdbClassify),
  40. new(PredictEdbConfCalculateMapping),
  41. new(PredictEdbRuleData),
  42. new(EdbDataCalculateNhcc),
  43. new(EdbDataPredictCalculateLjztbpj),
  44. new(EdbDataPredictCalculateNhcc),
  45. new(EdbDataPredictCalculateZjpj),
  46. new(EdbDataInsertConfig),
  47. new(EdbAdjustConf), // 数据调整的配置
  48. new(BaseFromMysteelChemicalClassify),
  49. )
  50. // 注册期货数据 数据表
  51. initFutureGood()
  52. // 供应分析 数据表
  53. initSupplyAnalysis()
  54. // 基础指标表
  55. initBaseIndex()
  56. // Eta表格相关
  57. initExcel()
  58. // 初始化部分数据表变量(直接init会有顺序问题=_=!)
  59. InitEdbSource()
  60. }
  61. // initFutureGood 注册期货数据 数据表
  62. func initFutureGood() {
  63. //注册对象
  64. orm.RegisterModel(
  65. new(future_good.FutureGoodEdbInfo), //期货指标表
  66. new(future_good.FutureGoodEdbData), //期货指标数据表
  67. new(future_good.ChartInfoFutureGoodProfit), //商品期货利润图表相关的信息
  68. )
  69. }
  70. // initSupplyAnalysis 供应分析
  71. func initSupplyAnalysis() {
  72. orm.RegisterModel(
  73. new(supply_analysis.Variety),
  74. new(supply_analysis.VarietyAdminPermission),
  75. new(supply_analysis.VarietyEdbInfo),
  76. new(supply_analysis.VarietyPlant),
  77. new(supply_analysis.BaseFromStockPlantData),
  78. )
  79. }
  80. // initBaseIndex 基础指标表
  81. func initBaseIndex() {
  82. orm.RegisterModel(
  83. new(BaseFromSciIndex),
  84. new(BaseFromSciData),
  85. new(BaseFromBaiinfoIndex),
  86. new(BaseFromBaiinfoData),
  87. new(BaseFromSmmIndex),
  88. new(BaseFromSmmData),
  89. new(BaseFromMysteelChemicalIndex),
  90. new(BaseFromMysteelChemicalData),
  91. new(BaseFromTradeShanghaiIndex),
  92. new(BaseFromTradeIneIndex),
  93. new(BaseFromSmmClassify),
  94. )
  95. }
  96. // initExcel Excel
  97. func initExcel() {
  98. orm.RegisterModel(
  99. new(excel.ExcelInfo),
  100. new(excel.ExcelClassify),
  101. new(excel.ExcelEdbMapping), //excel与指标的关系表
  102. )
  103. }