Files
2019-08-08 17:13:34 +08:00

78 lines
1.6 KiB
Go

package main
//online api
import (
"net/http"
"github.com/julienschmidt/httprouter"
"github.com/snail007/go-activerecord/mysql"
)
type Online struct{}
func NewOnline() *Online {
return &Online{}
}
//get online client
//method : GET
//params : cluster_id
func (online *Online) GetClientByClusterId(responseWrite http.ResponseWriter, request *http.Request, params httprouter.Params) {
clusterId := request.FormValue("cluster_id")
if clusterId == "" {
jsonError(responseWrite, "cluster_id错误!", nil)
return
}
db := G.DB()
var rs *mysql.ResultSet
rs, err := db.Query(db.AR().From("online").Where(map[string]interface{}{
"cluster_id": clusterId,
"cs_type": "client",
}))
if err != nil {
jsonError(responseWrite, err.Error(), nil)
return
}
if rs.Len() == 0 {
jsonError(responseWrite, "client不存在", nil)
return
}
jsonSuccess(responseWrite, "ok", rs.Rows())
}
//get online server
//method : GET
//params : cluster_id
func (online *Online) GetServerByClusterId(responseWrite http.ResponseWriter, request *http.Request, params httprouter.Params) {
clusterId := request.FormValue("cluster_id")
if clusterId == "" {
jsonError(responseWrite, "cluster_id错误!", nil)
return
}
db := G.DB()
var rs *mysql.ResultSet
rs, err := db.Query(db.AR().From("online").Where(map[string]interface{}{
"cluster_id": clusterId,
"cs_type": "server",
}))
if err != nil {
jsonError(responseWrite, err.Error(), nil)
return
}
if rs.Len() == 0 {
jsonError(responseWrite, "server 不存在", nil)
return
}
jsonSuccess(responseWrite, "ok", rs.Rows())
}