edb_terminal.go 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. package data_manage
  2. import (
  3. "eta_gn/eta_api/global"
  4. "fmt"
  5. "time"
  6. )
  7. type EdbTerminal struct {
  8. TerminalId int `orm:"column(terminal_id);pk" gorm:"primaryKey" `
  9. Source int `orm:"column(source)" description:"指标来源类型"`
  10. Name string `description:"终端名称"`
  11. TerminalCode string `description:"终端编码,用于配置在机器上"`
  12. ServerUrl string `description:"终端地址"`
  13. DirPath string `description:"终端存放的文件夹路径"`
  14. Num int `description:"终端最大指标数"`
  15. Status int `description:"状态,1启用,2禁用"`
  16. Value string `description:"终端相关的token"`
  17. ModifyTime time.Time `description:"修改时间"`
  18. CreateTime time.Time `description:"创建时间"`
  19. }
  20. type EdbTerminalItem struct {
  21. TerminalId int `orm:"column(terminal_id);pk" gorm:"primaryKey" `
  22. Source int `description:"指标来源类型"`
  23. Name string `description:"终端别名"`
  24. TerminalCode string `description:"终端编码,用于配置在机器上"`
  25. ServerUrl string `description:"终端地址"`
  26. DirPath string `description:"终端存放的文件夹路径"`
  27. Num int `description:"终端最大指标数"`
  28. Status int `description:"状态,1启用,2禁用"`
  29. Value string `description:"终端相关的token"`
  30. ModifyTime string `description:"修改时间"`
  31. CreateTime string `description:"创建时间"`
  32. }
  33. type EdbTerminalCode struct {
  34. TerminalCode string `description:"终端编码,用于配置在机器上"`
  35. Source int `description:"指标来源类型"`
  36. Name string `description:"终端别名"`
  37. }
  38. func GetEdbTerminalListBySource(source int) (items []*EdbTerminal, err error) {
  39. o := global.DmSQL["data"]
  40. sql := ` SELECT * FROM edb_terminal WHERE source = ? and status=1 ORDER BY terminal_id ASC `
  41. err = o.Raw(sql, source).Find(&items).Error
  42. return
  43. }
  44. type BaseIndexTerminalCode struct {
  45. TerminalCode string `description:"终端编码,用于配置在机器上"`
  46. IndexName string
  47. }
  48. type EdbTerminalListResp struct {
  49. List []*EdbTerminalItem `description:"列表数据"`
  50. }
  51. type EdbTerminalCodeResp struct {
  52. List []*EdbTerminalCode `description:"终端编码列表"`
  53. }
  54. type AddEdbTerminalListReq struct {
  55. TerminalId int `description:"终端id"`
  56. Source int `description:"指标来源类型"`
  57. Name string `description:"终端别名"`
  58. ServerUrl string `description:"终端地址"`
  59. DirPath string `description:"终端存放的文件夹路径"`
  60. Num int `description:"终端最大指标数"`
  61. Value string `description:"终端相关的token"`
  62. }
  63. type SetEdbTerminalStatusReq struct {
  64. TerminalId int `description:"终端id"`
  65. Status int `description:"状态,1启用,2禁用"`
  66. }
  67. func GetBaseIndexTerminalCode(edbCode, tableName string) (item BaseIndexTerminalCode, err error) {
  68. o := global.DmSQL["data"]
  69. sql := fmt.Sprintf(`select terminal_code, index_name from %s where index_code = ? `, tableName)
  70. err = o.Raw(sql, edbCode).Scan(&item).Error
  71. return
  72. }
  73. func GetEdbTerminalById(id int) (item *EdbTerminal, err error) {
  74. sql := `SELECT * FROM edb_terminal WHERE terminal_id = ? LIMIT 1`
  75. err = global.DmSQL["data"].Raw(sql, id).First(&item).Error
  76. return
  77. }
  78. func GetEdbTerminalByTerminalCode(terminalCode string) (item *EdbTerminal, err error) {
  79. sql := `SELECT * FROM edb_terminal WHERE terminal_code = ? LIMIT 1`
  80. err = global.DmSQL["data"].Raw(sql, terminalCode).First(&item).Error
  81. return
  82. }
  83. func GetEdbTerminalList() (item []*EdbTerminalItem, err error) {
  84. o := global.DmSQL["data"]
  85. sql := ` SELECT * FROM edb_terminal ORDER BY terminal_id ASC`
  86. err = o.Raw(sql).Scan(&item).Error
  87. return
  88. }
  89. func GetEdbTerminalBySource(source int) (item []*EdbTerminalItem, err error) {
  90. o := global.DmSQL["data"]
  91. sql := ` SELECT * FROM edb_terminal where source=? ORDER BY terminal_id ASC`
  92. err = o.Raw(sql, source).Scan(&item).Error
  93. return
  94. }
  95. func (item *EdbTerminal) Add() (err error) {
  96. err = global.DmSQL["data"].Create(item).Error
  97. return
  98. }
  99. func (item *EdbTerminal) Update(cols []string) (err error) {
  100. o := global.DmSQL["data"]
  101. err = o.Select(cols).Updates(item).Error
  102. return
  103. }
  104. func GetEdbTerminalByCode(terminalCode string) (item *EdbTerminal, err error) {
  105. sql := ` SELECT * FROM edb_terminal WHERE terminal_code = ? `
  106. err = global.DmSQL["data"].Raw(sql, terminalCode).First(&item).Error
  107. return
  108. }
  109. type TerminalCodeCountGroup struct {
  110. TerminalCode string
  111. Total int
  112. }
  113. func GetEdbCountGroupByTerminal(source int) (list []TerminalCodeCountGroup, err error) {
  114. o := global.DmSQL["data"]
  115. sql := `select terminal_code,count(1) total from edb_info where source = ? AND no_update=0 AND terminal_code != "" group by terminal_code; `
  116. err = o.Raw(sql, source).Scan(&list).Error
  117. return
  118. }