mixed_table.go 4.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. package request
  2. // 单元格的数据类型
  3. const (
  4. DateDT = iota + 1 //日期
  5. EdbDT // 指标类型
  6. CustomTextDT // 自定义文本
  7. InsertDataDT // 插值(插入指标值,表格上,自动判断日期和指标的交集位置,插入值)
  8. PopInsertDataDT // 弹框插值(在表格上选择日期,然后空白单元格选择弹框并选择指标,插入该指标与该日期的值)
  9. InsertEdbCalculateDataDT // 插入指标计算公式生成的值
  10. )
  11. // 单元格的日期类型类型
  12. const (
  13. CustomDateT = iota //手动输入日期
  14. SystemDateT // 系统日期
  15. EdbDateDT // 导入指标日期(指标库的最新日期)
  16. )
  17. // 单元格的日期类型类型
  18. const (
  19. SystemCurrDateT = iota + 1 //系统当前日期
  20. SystemCalculateDateT // 系统日期计算后的日期
  21. SystemFrequencyDateT // 导入系统日期相关的指定频率(所在周/旬/月/季/半年/年的最后/最早一天)
  22. )
  23. // MixedTableReq 混合表格保存请求参数
  24. type MixedTableReq struct {
  25. CellRelation string `description:"单元格关系"`
  26. Data [][]MixedTableCellDataReq `description:"混合表格单元格参数"`
  27. }
  28. // MixedTableCellDataReq 混合表格单元格参数
  29. type MixedTableCellDataReq struct {
  30. Uid string `description:"单元格唯一标识"`
  31. DataType int `description:"数据类型,1:日期,2:指标,3:自定义文本,4:插值"`
  32. DataTime string `description:"所属日期"`
  33. DataTimeType int `description:"日期类型:0:手动输入日期;1:导入系统日期;;3:导入指标日期(指标库的最新日期);"`
  34. EdbInfoId int `description:"指标id"`
  35. ShowValue string `description:"展示值"`
  36. Value string `description:"实际值"`
  37. }
  38. // CellRelationConf
  39. // @Description: 单元格的关系配置结构体
  40. type CellRelationConf struct {
  41. CellRelation
  42. //Type int `json:"type" description:"数据类型,跟MixedTableCellDataReq的DataType保持一致"`
  43. //Key string `json:"key" description:"单元格的唯一标识"`
  44. RelationDate CellRelation `json:"relation_date"`
  45. RelationEdb CellRelation `json:"relation_edb"`
  46. }
  47. // CellRelation
  48. // @Description: 单元格的关系结构体
  49. type CellRelation struct {
  50. Type int `json:"type" description:"数据类型,跟MixedTableCellDataReq的DataType保持一致"`
  51. Key string `json:"key" description:"单元格的唯一标识"`
  52. }
  53. // SystemDateConf
  54. // @Description: 系统导入日期配置
  55. type SystemDateConf struct {
  56. Source int `description:"类型,1:导入系统日期;2:导入系统日期计算后的日期;3:导入系统日期相关的指定频率"`
  57. CalculateNum int `description:"计算频度的数量"`
  58. CalculateFrequency string `description:"计算频度"`
  59. Frequency string `description:"指定频度"`
  60. Day string `description:"指定日期"`
  61. }
  62. // EdbDateConf
  63. // @Description: 导入指标日期配置
  64. type EdbDateConf struct {
  65. EdbInfoId int `description:"指标id"`
  66. }
  67. // CalculateConf
  68. // @Description: 计算公式
  69. type CalculateConf struct {
  70. EdbInfoId int `description:"指标id"`
  71. //DataList []*EdbInfoSearchData
  72. DataTime string `description:"所属日期"`
  73. Frequency string `description:"需要转换的频度"`
  74. Formula string `description:"计算公式,默认是string,实际上还需要转成其他样式"`
  75. Calendar string `description:"公历/农历"`
  76. MoveType int `description:"移动方式:1:领先(默认),2:滞后"`
  77. MoveFrequency string `description:"移动频度"`
  78. Source int `description:"1:累计值转月;2:累计值转季;3:同比值;4:同差值;5:N数值移动平均数计算;6:环比值;7:环差值;8:升频;9:降频;10:时间移位;11:超季节性;12:年化;13:累计值;14:累计值年初至今;15:指数修匀;16:日均值"`
  79. }