index.go 3.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. package request
  2. import (
  3. "database/sql"
  4. )
  5. // HandleTaskRecordFailReq
  6. // @Description: 任务处理失败
  7. type HandleTaskRecordFailReq struct {
  8. IndexTaskRecordId int `description:"子任务id"`
  9. FailMsg string `description:"失败原因"`
  10. }
  11. // HandleTaskRecordSuccessReq
  12. // @Description: 任务处理成功
  13. type HandleTaskRecordSuccessReq struct {
  14. IndexTaskRecordId int `gorm:"primaryKey;column:ai_predict_model_index_config_id" description:"子任务记录id"`
  15. Data AiPredictModelImportData `description:"导入的指标"`
  16. }
  17. // AiPredictModelIndex AI预测模型标的
  18. type AiPredictModelIndex struct {
  19. AiPredictModelIndexId int `orm:"column(ai_predict_model_index_id);pk" gorm:"primaryKey"`
  20. IndexName string `description:"标的名称"`
  21. IndexCode string `description:"自生成的指标编码"`
  22. ClassifyId int `description:"分类ID"`
  23. ModelFramework string `description:"模型框架"`
  24. PredictDate string `description:"预测日期"`
  25. PredictValue float64 `description:"预测值"`
  26. PredictFrequency string `description:"预测频度"`
  27. DirectionAccuracy string `description:"方向准确度"`
  28. AbsoluteDeviation string `description:"绝对偏差"`
  29. ExtraConfig string `description:"模型参数"`
  30. Sort int `description:"排序"`
  31. SysUserId int `description:"创建人ID"`
  32. SysUserRealName string `description:"创建人姓名"`
  33. LeftMin string `description:"图表左侧最小值"`
  34. LeftMax string `description:"图表左侧最大值"`
  35. AiPredictModelIndexConfigId int `gorm:"column:ai_predict_model_index_config_id" description:"标的当前的配置id"`
  36. ScriptPath string `gorm:"column:script_path" description:"脚本的路径"`
  37. TrainStatus string `gorm:"column:train_status" description:"训练状态,枚举值:待训练,训练中,训练成功,训练失败"`
  38. RunStatus string `gorm:"column:run_status" description:"运行状态,枚举值:待运行,运行中,运行成功,运行失败"`
  39. }
  40. // AiPredictModelData AI预测模型标的数据
  41. type AiPredictModelData struct {
  42. DataTime string `description:"数据日期"`
  43. Value sql.NullFloat64 `description:"实际值"`
  44. PredictValue sql.NullFloat64 `description:"预测值"`
  45. Direction string `description:"方向"`
  46. DeviationRate string `description:"偏差率"`
  47. DataTimestamp int64 `description:"数据日期时间戳"`
  48. Source int `description:"来源:1-月度预测(默认);2-日度预测"`
  49. }
  50. type AiPredictModelImportData struct {
  51. Index *AiPredictModelIndex
  52. Data []*AiPredictModelData
  53. TrainData TrainData
  54. }
  55. // TrainData
  56. // @Description: 训练结果
  57. type TrainData struct {
  58. TrainMse float64
  59. TrainR2 float64
  60. TestMse float64
  61. TestR2 float64
  62. }
  63. type AiPredictModelIndexExtraConfig struct {
  64. MonthlyChart MonthlyChartConfig
  65. DailyChart DailyChartConfig
  66. }
  67. type MonthlyChartConfig struct {
  68. LeftMin string `description:"图表左侧最小值"`
  69. LeftMax string `description:"图表左侧最大值"`
  70. Unit string `description:"单位"`
  71. }
  72. type DailyChartConfig struct {
  73. LeftMin string `description:"图表左侧最小值"`
  74. LeftMax string `description:"图表左侧最大值"`
  75. Unit string `description:"单位"`
  76. PredictLegendName string `description:"预测图例的名称(通常为Predicted)"`
  77. }