chart_info_range_analysis.go 3.4 KB

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