index.go 3.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  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. Source int `description:"来源:1-月度预测(默认);2-日度预测"`
  48. }
  49. type AiPredictModelImportData struct {
  50. Index *AiPredictModelIndex
  51. Data []*AiPredictModelData
  52. TrainData TrainData
  53. }
  54. // TrainData
  55. // @Description: 训练结果
  56. type TrainData struct {
  57. TrainMse float64
  58. TrainR2 float64
  59. TestMse float64
  60. TestR2 float64
  61. }
  62. type AiPredictModelIndexExtraConfig struct {
  63. MonthlyChart MonthlyChartConfig
  64. DailyChart DailyChartConfig
  65. }
  66. type MonthlyChartConfig struct {
  67. LeftMin string `description:"图表左侧最小值"`
  68. LeftMax string `description:"图表左侧最大值"`
  69. Unit string `description:"单位"`
  70. }
  71. type DailyChartConfig struct {
  72. LeftMin string `description:"图表左侧最小值"`
  73. LeftMax string `description:"图表左侧最大值"`
  74. Unit string `description:"单位"`
  75. PredictLegendName string `description:"预测图例的名称(通常为Predicted)"`
  76. }