query.go 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. package chart_edb_mapping
  2. import "hongze/hongze_yb/global"
  3. type ChartEdbInfoMapping struct {
  4. EdbInfoId int `description:"指标id"`
  5. SourceName string `description:"来源名称"`
  6. Source int `description:"来源id"`
  7. EdbCode string `description:"指标编码"`
  8. EdbName string `description:"指标名称"`
  9. EdbType int `description:"指标类型:1:基础指标,2:计算指标"`
  10. Frequency string `description:"频率"`
  11. Unit string `description:"单位"`
  12. StartDate string `description:"起始日期"`
  13. EndDate string `description:"终止日期"`
  14. ModifyTime string `description:"指标最后更新时间"`
  15. ChartEdbMappingId int `description:"图表指标id"`
  16. ChartInfoId int `description:"图表id"`
  17. MaxData float64 `description:"上限"`
  18. MinData float64 `description:"下限"`
  19. IsOrder bool `description:"true:正序,false:逆序"`
  20. IsAxis int `description:"1:左轴,0:右轴"`
  21. EdbInfoType int `description:"1:标准指标,0:领先指标"`
  22. LeadValue int `description:"领先值"`
  23. LeadUnit string `description:"领先单位"`
  24. ChartStyle string `description:"图表类型"`
  25. ChartColor string `description:"颜色"`
  26. ChartWidth float64 `description:"线条大小"`
  27. LatestDate string `description:"数据最新日期"`
  28. LatestValue float64 `description:"数据最新值"`
  29. UniqueCode string `description:"指标唯一编码"`
  30. MinValue float64 `json:"-" description:"最小值"`
  31. MaxValue float64 `json:"-" description:"最大值"`
  32. }
  33. type ChartEdbInfoMappingList struct {
  34. ChartEdbInfoMapping
  35. DataList interface{}
  36. }
  37. // GetMappingListByChartInfoId 根据图表ID获取指标映射列表
  38. func GetMappingListByChartInfoId(chartInfoId int) (list []*ChartEdbInfoMapping, err error) {
  39. sql := ` SELECT a.*,b.source_name,b.source,b.edb_code,b.edb_name,b.frequency,b.unit,b.start_date,b.end_date,b.modify_time,b.latest_date,b.latest_value,b.unique_code
  40. FROM chart_edb_mapping AS a
  41. INNER JOIN edb_info AS b ON a.edb_info_id=b.edb_info_id
  42. WHERE chart_info_id=?
  43. ORDER BY chart_edb_mapping_id ASC `
  44. err = global.MYSQL["data"].Raw(sql, chartInfoId).Scan(&list).Error
  45. return
  46. }
  47. // GetMappingListByEdbInfoId 根据指标ID获取指标映射列表
  48. func GetMappingListByEdbInfoId(edbInfoStr string) (list []*ChartEdbInfoMapping, err error) {
  49. sql := ` SELECT * FROM edb_info WHERE edb_info_id IN(` + edbInfoStr + `) ORDER BY FIELD(edb_info_id,` + edbInfoStr + `) `
  50. err = global.MYSQL["data"].Raw(sql).Scan(&list).Error
  51. return
  52. }