db.go 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  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(EdbAdjustConf), // 数据调整的配置
  47. new(EdbDataInsertConfig),
  48. new(BaseFromMysteelChemicalClassify),
  49. new(ExcelEdbMapping), //excel与指标的关系表
  50. )
  51. // 注册期货数据 数据表
  52. initFutureGood()
  53. // 供应分析 数据表
  54. initSupplyAnalysis()
  55. // 基础指标表
  56. initBaseIndex()
  57. // Eta表格相关
  58. initExcel()
  59. // 初始化部分数据表变量(直接init会有顺序问题=_=!)
  60. InitEdbSource()
  61. }
  62. // initFutureGood 注册期货数据 数据表
  63. func initFutureGood() {
  64. //注册对象
  65. orm.RegisterModel(
  66. new(future_good.FutureGoodEdbInfo), //期货指标表
  67. new(future_good.FutureGoodEdbData), //期货指标数据表
  68. new(future_good.ChartInfoFutureGoodProfit), //商品期货利润图表相关的信息
  69. )
  70. }
  71. // initSupplyAnalysis 供应分析
  72. func initSupplyAnalysis() {
  73. orm.RegisterModel(
  74. new(supply_analysis.Variety),
  75. new(supply_analysis.VarietyAdminPermission),
  76. new(supply_analysis.VarietyEdbInfo),
  77. new(supply_analysis.VarietyPlant),
  78. new(supply_analysis.BaseFromStockPlantData),
  79. )
  80. }
  81. // initBaseIndex 基础指标表
  82. func initBaseIndex() {
  83. orm.RegisterModel(
  84. new(BaseFromSciIndex),
  85. new(BaseFromSciData),
  86. new(BaseFromBaiinfoIndex),
  87. new(BaseFromBaiinfoData),
  88. new(BaseFromSmmIndex),
  89. new(BaseFromSmmData),
  90. new(BaseFromMysteelChemicalIndex),
  91. new(BaseFromMysteelChemicalData),
  92. new(BaseFromTradeShanghaiIndex),
  93. new(BaseFromTradeIneIndex),
  94. new(BaseFromSmmClassify),
  95. )
  96. }
  97. // initExcel Excel
  98. func initExcel() {
  99. orm.RegisterModel(
  100. new(excel.ExcelInfo),
  101. new(excel.ExcelClassify),
  102. new(excel.ExcelEdbMapping),
  103. )
  104. }