excel_chart_edb.go 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. package excel
  2. import (
  3. "eta/eta_chart_lib/utils"
  4. "github.com/beego/beego/v2/client/orm"
  5. "time"
  6. )
  7. type ExcelChartEdb struct {
  8. ExcelChartEdbId int `orm:"column(excel_chart_edb_id);pk"`
  9. ExcelInfoId int `description:"表格id"`
  10. ChartInfoId int `description:"图表id"`
  11. EdbCode string `description:"指标编码"`
  12. EdbName string `description:"指标名称"`
  13. DateSequence string `description:"日期序列选区"`
  14. DataSequence string `description:"数据序列选区"`
  15. SysUserId int `description:"创建人"`
  16. SysUserRealName string `description:"创建人姓名"`
  17. MaxData float64 `description:"上限"`
  18. MinData float64 `description:"下限"`
  19. IsOrder bool `description:"true:正序,false:逆序"`
  20. IsAxis int `description:"true:左轴,false:右轴"`
  21. EdbInfoType int `description:"true:标准指标,false:领先指标"`
  22. LeadValue int `description:"领先值"`
  23. LeadUnit string `description:"领先单位"`
  24. FromTag string `description:"标签"`
  25. ModifyTime time.Time `description:"修改时间"`
  26. CreateTime time.Time `description:"创建时间"`
  27. ChartWidth float64 `description:"线条大小"`
  28. }
  29. type ExcelChartEdbView struct {
  30. ExcelChartEdbId int
  31. ExcelInfoId int `description:"表格id"`
  32. ChartInfoId int `description:"图表id"`
  33. EdbCode string `description:"指标编码"`
  34. EdbName string `description:"指标名称"`
  35. DateSequenceStr string `description:"日期序列选区"`
  36. DataSequenceStr string `description:"数据序列选区"`
  37. /*MaxData float64 `description:"上限"`
  38. MinData float64 `description:"下限"`
  39. IsOrder bool `description:"true:正序,false:逆序"`
  40. IsAxis int `description:"true:左轴,false:右轴"`
  41. EdbInfoType int `description:"true:标准指标,false:领先指标"`
  42. LeadValue int `description:"领先值"`
  43. LeadUnit string `description:"领先单位"`*/
  44. FromTag string `description:"标签"`
  45. }
  46. type BalanceTableChart struct {
  47. ChartInfoId int `description:"图表id,新增时传0"`
  48. ChartName string `description:"图表名称"`
  49. ChartType int `description:"生成样式:1:曲线图,2:季节性图,3:面积图,4:柱状图,5:散点图,6:组合图,7:柱方图"`
  50. Calendar string `description:"公历/农历"`
  51. LeftMin string `description:"图表左侧最小值"`
  52. LeftMax string `description:"图表左侧最大值"`
  53. RightMin string `description:"图表右侧最小值"`
  54. RightMax string `description:"图表右侧最大值"`
  55. Right2Min string `description:"图表右侧2最小值"`
  56. Right2Max string `description:"图表右侧2最大值"`
  57. MinMaxSave int `description:"是否手动保存过上下限:0-否;1-是"`
  58. ExtraConfig string `description:"图表额外配置信息,json字符串"`
  59. ChartImage string `description:"封面图" json:"-"`
  60. SeasonExtraConfig string `description:"季节性图表中的配置,json数据"`
  61. SourcesFrom string `description:"图表来源"`
  62. // ChartEdbInfoList []ExcelChartEdbView
  63. }
  64. func (e *ExcelChartEdb) TableName() string {
  65. return "excel_chart_edb"
  66. }
  67. // 新增
  68. func (e *ExcelChartEdb) Add() (err error) {
  69. o := orm.NewOrmUsingDB("data")
  70. _, err = o.Insert(e)
  71. return
  72. }
  73. // 修改
  74. func (e *ExcelChartEdb) Update(cols []string) (err error) {
  75. o := orm.NewOrmUsingDB("data")
  76. _, err = o.Update(e, cols...)
  77. return
  78. }
  79. // 删除
  80. func (e *ExcelChartEdb) Delete() (err error) {
  81. o := orm.NewOrmUsingDB("data")
  82. _, err = o.Delete(e)
  83. return
  84. }
  85. type AddChartEdbAndDataItem struct {
  86. ChartEdb *ExcelChartEdb
  87. DateList []string `description:"日期列表"`
  88. ValList []float64 `description:"数据列表"`
  89. }
  90. func GetExcelChartEdbMappingByExcelInfoId(excelInfoId int) (list []*ExcelChartEdb, err error) {
  91. o := orm.NewOrmUsingDB("data")
  92. sql := ` SELECT *
  93. FROM excel_chart_edb
  94. WHERE excel_info_id=?
  95. ORDER BY excel_chart_edb_id ASC `
  96. _, err = o.Raw(sql, excelInfoId).QueryRows(&list)
  97. return
  98. }
  99. func GetExcelChartEdbMappingByExcelInfoIds(excelInfoIds []int) (list []*ExcelChartEdb, err error) {
  100. o := orm.NewOrmUsingDB("data")
  101. sql := ` SELECT *
  102. FROM excel_chart_edb
  103. WHERE excel_info_id in (` + utils.GetOrmInReplace(len(excelInfoIds)) + `)`
  104. _, err = o.Raw(sql, excelInfoIds).QueryRows(&list)
  105. return
  106. }
  107. func GetExcelChartEdbById(id int) (item *ExcelChartEdb, err error) {
  108. o := orm.NewOrmUsingDB("data")
  109. sql := ` SELECT * FROM excel_chart_edb WHERE excel_chart_edb_id=? `
  110. err = o.Raw(sql, id).QueryRow(&item)
  111. return
  112. }
  113. func GetExcelChartEdbMappingByChartInfoId(chartInfoId int) (list []*ExcelChartEdb, err error) {
  114. o := orm.NewOrmUsingDB("data")
  115. sql := ` SELECT *
  116. FROM excel_chart_edb
  117. WHERE chart_info_id=?
  118. ORDER BY excel_chart_edb_id ASC `
  119. _, err = o.Raw(sql, chartInfoId).QueryRows(&list)
  120. return
  121. }
  122. func GetExcelInfoByChartInfoId(chartInfoId int) (item *ExcelInfo, err error) {
  123. o := orm.NewOrmUsingDB("data")
  124. sql := ` SELECT i.*
  125. FROM excel_chart_edb e left join excel_info i on e.excel_info_id=i.excel_info_id
  126. WHERE e.chart_info_id=? limit 1`
  127. err = o.Raw(sql, chartInfoId).QueryRow(&item)
  128. return
  129. }