ai_predict_model_index.go 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. package data_manage
  2. import (
  3. "fmt"
  4. "github.com/beego/beego/v2/client/orm"
  5. "time"
  6. )
  7. // AiPredictModelIndex AI预测模型标的
  8. type AiPredictModelIndex struct {
  9. AiPredictModelIndexId int `orm:"column(ai_predict_model_index_id);pk" gorm:"primaryKey"`
  10. IndexName string `description:"标的名称"`
  11. IndexCode string `description:"自生成的指标编码"`
  12. ClassifyId int `description:"分类ID"`
  13. ModelFramework string `description:"模型框架"`
  14. PredictDate time.Time `description:"预测日期"`
  15. PredictValue float64 `description:"预测值"`
  16. PredictFrequency string `description:"预测频度"`
  17. DirectionAccuracy string `description:"方向准确度"`
  18. AbsoluteDeviation string `description:"绝对偏差"`
  19. ExtraConfig string `description:"模型参数"`
  20. Sort int `description:"排序"`
  21. SysUserId int `description:"创建人ID"`
  22. SysUserRealName string `description:"创建人姓名"`
  23. LeftMin string `description:"图表左侧最小值"`
  24. LeftMax string `description:"图表左侧最大值"`
  25. CreateTime time.Time `description:"创建时间"`
  26. ModifyTime time.Time `description:"修改时间"`
  27. }
  28. func (m *AiPredictModelIndex) TableName() string {
  29. return "ai_predict_model_index"
  30. }
  31. type AiPredictModelIndexCols struct {
  32. PrimaryId string
  33. IndexName string
  34. IndexCode string
  35. ClassifyId string
  36. ModelFramework string
  37. PredictDate string
  38. PredictValue string
  39. DirectionAccuracy string
  40. AbsoluteDeviation string
  41. ExtraConfig string
  42. Sort string
  43. SysUserId string
  44. SysUserRealName string
  45. LeftMin string
  46. LeftMax string
  47. CreateTime string
  48. ModifyTime string
  49. }
  50. func (m *AiPredictModelIndex) Cols() AiPredictModelIndexCols {
  51. return AiPredictModelIndexCols{
  52. PrimaryId: "ai_predict_model_index_id",
  53. IndexName: "index_name",
  54. IndexCode: "index_code",
  55. ClassifyId: "classify_id",
  56. ModelFramework: "model_framework",
  57. PredictDate: "predict_date",
  58. PredictValue: "predict_value",
  59. DirectionAccuracy: "direction_accuracy",
  60. AbsoluteDeviation: "absolute_deviation",
  61. ExtraConfig: "extra_config",
  62. Sort: "sort",
  63. SysUserId: "sys_user_id",
  64. SysUserRealName: "sys_user_real_name",
  65. LeftMin: "left_min",
  66. LeftMax: "left_max",
  67. CreateTime: "create_time",
  68. ModifyTime: "modify_time",
  69. }
  70. }
  71. func (m *AiPredictModelIndex) GetItemById(id int) (item *AiPredictModelIndex, err error) {
  72. o := orm.NewOrmUsingDB("data")
  73. sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.Cols().PrimaryId)
  74. err = o.Raw(sql, id).QueryRow(&item)
  75. return
  76. }
  77. type AiPredictModelIndexExtraConfig struct {
  78. MonthlyChart struct {
  79. LeftMin string `description:"图表左侧最小值"`
  80. LeftMax string `description:"图表左侧最大值"`
  81. Unit string `description:"单位"`
  82. }
  83. DailyChart struct {
  84. LeftMin string `description:"图表左侧最小值"`
  85. LeftMax string `description:"图表左侧最大值"`
  86. Unit string `description:"单位"`
  87. PredictLegendName string `description:"预测图例的名称(通常为Predicted)"`
  88. }
  89. }