chart_info_range_analysis.go 3.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. package data_manage
  2. import "time"
  3. type ChartRangeAnalysisExtraConf struct {
  4. EdbInfoMode int `description:"指标模式 0: 单指标,1: 多指标"`
  5. DateRangeType int `description:"区间划分类型 0:智能划分,1:手工划分,2:跨年划分"`
  6. AutoDateConf ChartRangeAnalysisAutoDateConf `description:"智能划分时间区间配置"`
  7. ManualDateConf []ChartRangeAnalysisManualDateConf `description:"手工划分时间区间配置"`
  8. YearDateConf ChartRangeAnalysisYearDateConf `description:"跨年划分时间区间配置"`
  9. CalculateType int `description:"计算类型 0: 区间均值,1: 区间累计值,2:区间涨幅,3:区间年化增长率,4:区间最大值,5:区间最小值"`
  10. UnNormalDataDealType int `description:"异常值处理配置 0:不处理,1:剔除,2替换"`
  11. UnNormalDataConf ChartRangeAnalysisDeleteDataConf
  12. DataConvertType int `description:"数据转换类型 0不转, 1乘 2除 3对数"`
  13. DataConvertConf ChartRangeAnalysisDataConvertConf `description:"数据转换详情"`
  14. SeriesId int `description:"指标系列ID"`
  15. }
  16. type ChartRangeAnalysisAutoDateChangeConf struct {
  17. BaseDateType int `description:"基准日期类型:0指标日期,1系统日期,2固定日期"`
  18. MoveForward int `description:"前移的期数"`
  19. DateChange []*EdbDateConfDateChange
  20. }
  21. type EdbDateConfDateChange struct {
  22. Year int
  23. Month int
  24. Day int
  25. Frequency string `description:"频度变换"`
  26. FrequencyDay string `description:"频度的固定日期"`
  27. ChangeType int `description:"日期变换类型1日期位移,2指定频率"`
  28. }
  29. type ChartRangeAnalysisDeleteDataConf struct {
  30. Formula string
  31. Value float64
  32. }
  33. type ChartRangeAnalysisDataConvertConf struct {
  34. Value float64 `description:"数据转换值"`
  35. Unit string `description:"数据转换单位"`
  36. EnUnit string `description:"数据转换单位"`
  37. }
  38. type ChartRangeAnalysisManualDateConf struct { //手工划分
  39. StartDate string `description:"开始日期"`
  40. EndDate string `description:"结束日期"`
  41. }
  42. type ChartRangeAnalysisAutoDateConf struct { //智能划分
  43. IsAutoStartDate int `description:"起始日期是否是动态设置:0固定,1动态"`
  44. StartDate string `description:"起始日期"` //固定模式下,截止日期为指标的最新日期
  45. StartDateConf ChartRangeAnalysisAutoDateChangeConf `description:"动态起始日期配置"`
  46. EndDateConf ChartRangeAnalysisAutoDateChangeConf `description:"动态截止日期配置"`
  47. }
  48. type ChartRangeAnalysisYearDateConf struct {
  49. StartDay string `description:"开始日"`
  50. EndDay string `description:"结束日"`
  51. }
  52. // ChartRangeAnalysisPreviewReq 相关性图表请求体
  53. type ChartRangeAnalysisPreviewReq struct {
  54. ExtraConf ChartRangeAnalysisExtraConf
  55. EdbInfoIds []int `description:"指标Id"`
  56. }
  57. type ChartRangeAnalysisManualDateConfList []ChartRangeAnalysisManualDateConf
  58. func (a ChartRangeAnalysisManualDateConfList) Len() int { return len(a) }
  59. func (a ChartRangeAnalysisManualDateConfList) Swap(i, j int) { a[i], a[j] = a[j], a[i] }
  60. func (a ChartRangeAnalysisManualDateConfList) Less(i, j int) bool {
  61. return a[i].StartDate < a[j].StartDate
  62. }
  63. type ChartRangeAnalysisDataResp struct { //图表详情返回值
  64. *ChartRangeAnalysisExtraConf
  65. SeriesName string `description:"指标系列名称"`
  66. }
  67. type ChartRangeAnalysisDateDataItem struct {
  68. StartDate time.Time
  69. EndDate time.Time
  70. DataList []*EdbDataList
  71. }