1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- package models
- import (
- "eta_gn/eta_index_lib/global"
- "fmt"
- "time"
- )
- // EdbTerminal 指标终端
- type EdbTerminal struct {
- TerminalId int `gorm:"primaryKey;autoIncrement;column:terminal_id" description:"终端ID"`
- Source int `gorm:"column:source" description:"指标来源类型"`
- Name string `gorm:"column:name" description:"终端别名"`
- TerminalCode string `gorm:"column:terminal_code" description:"终端编码,用于配置在机器上"`
- ServerUrl string `gorm:"column:server_url" description:"终端地址"`
- Num int `gorm:"column:num" description:"终端最大指标数"`
- Status int `gorm:"column:status" description:"状态,1启用,2禁用"`
- Value string `gorm:"column:value" description:"终端相关的凭证"`
- ModifyTime time.Time `gorm:"column:modify_time" description:"修改时间"`
- CreateTime time.Time `gorm:"column:create_time" description:"创建时间"`
- }
- // GetEdbTerminalListBySource 根据指标来源类型获取所有的终端列表
- func GetEdbTerminalListBySource(source int) (items []*EdbTerminal, err error) {
- sql := ` SELECT * FROM edb_terminal WHERE source = ? and status=1 ORDER BY terminal_id ASC `
- err = global.DEFAULT_DmSQL.Raw(sql, source).Scan(&items).Error
- return
- }
- // GetEdbTerminalFirstBySource 根据指标来源类型获取配置的首个终端信息
- func GetEdbTerminalFirstBySource(source int) (item *EdbTerminal, err error) {
- sql := ` SELECT * FROM edb_terminal WHERE source = ? and status=1 ORDER BY terminal_id ASC Limit 1 `
- err = global.DEFAULT_DmSQL.Raw(sql, source).First(&item).Error
- return
- }
- type TerminalCodeCountGroup struct {
- TerminalCode string
- Total int
- }
- // GetEdbTerminalByCode 根据终端编码获取终端信息
- func GetEdbTerminalByCode(terminalCode string) (item *EdbTerminal, err error) {
- sql := ` SELECT * FROM edb_terminal WHERE terminal_code = ? `
- err = global.DEFAULT_DmSQL.Raw(sql, terminalCode).First(&item).Error
- return
- }
- // GetEdbCountGroupByTerminal 获取终端code分组总数
- func GetEdbCountGroupByTerminal(source int) (list []TerminalCodeCountGroup, err error) {
- //sql := `select terminal_code, count(1) as total from edb_info where source = ? AND no_update=0 AND terminal_code != "" AND terminal_code IS NOT NULL GROUP BY terminal_code`
- sql := `SELECT "terminal_code", COUNT(*) AS total
- FROM "eta_index"."edb_info" ei
- WHERE "source" = ?
- AND "no_update" = 0
- AND "terminal_code" IS NOT NULL
- GROUP BY "terminal_code"`
- err = global.DEFAULT_DmSQL.Raw(sql, source).Scan(&list).Error
- return
- }
- type BaseIndexTerminalCode struct {
- TerminalCode string `description:"终端编码,用于配置在机器上"`
- IndexName string
- }
- // GetBaseIndexTerminalCode 获取数据源的终端code
- func GetBaseIndexTerminalCode(edbCode, tableName string) (item BaseIndexTerminalCode, err error) {
- sql := fmt.Sprintf(`select terminal_code, index_name from %s where index_code = ? `, tableName)
- err = global.DEFAULT_DmSQL.Raw(sql, edbCode).First(&item).Error
- return
- }
|