fix: getCustomerAgents liefert status + agent_version
This commit is contained in:
parent
4a79305eee
commit
20a976767b
@ -1098,19 +1098,19 @@ func (d *Database) UnassignAgentCustomer(agentID string) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (d *Database) GetAgentsByCustomer(customerID int) ([]models.Agent, error) {
|
func (d *Database) GetAgentsByCustomer(customerID int) ([]models.AgentResponse, error) {
|
||||||
rows, err := d.db.Query("SELECT id, name, hostname, ip, opnsense_version, registered_at, last_heartbeat, customer_id FROM agents WHERE customer_id = $1 ORDER BY name", customerID)
|
rows, err := d.db.Query("SELECT id, name, hostname, ip, opnsense_version, registered_at, last_heartbeat, customer_id, agent_version FROM agents WHERE customer_id = $1 ORDER BY name", customerID)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
defer rows.Close()
|
defer rows.Close()
|
||||||
|
|
||||||
var agents []models.Agent
|
var agents []models.AgentResponse
|
||||||
for rows.Next() {
|
for rows.Next() {
|
||||||
var a models.Agent
|
var a models.Agent
|
||||||
var lastHB sql.NullTime
|
var lastHB sql.NullTime
|
||||||
var custID sql.NullInt64
|
var custID sql.NullInt64
|
||||||
if err := rows.Scan(&a.ID, &a.Name, &a.Hostname, &a.IP, &a.OPNsenseVersion, &a.RegisteredAt, &lastHB, &custID); err != nil {
|
if err := rows.Scan(&a.ID, &a.Name, &a.Hostname, &a.IP, &a.OPNsenseVersion, &a.RegisteredAt, &lastHB, &custID, &a.AgentVersion); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
if lastHB.Valid {
|
if lastHB.Valid {
|
||||||
@ -1120,10 +1120,13 @@ func (d *Database) GetAgentsByCustomer(customerID int) ([]models.Agent, error) {
|
|||||||
cid := int(custID.Int64)
|
cid := int(custID.Int64)
|
||||||
a.CustomerID = &cid
|
a.CustomerID = &cid
|
||||||
}
|
}
|
||||||
agents = append(agents, a)
|
agents = append(agents, models.AgentResponse{
|
||||||
|
Agent: a,
|
||||||
|
Status: models.CalculateAgentStatus(a.LastHeartbeat),
|
||||||
|
})
|
||||||
}
|
}
|
||||||
if agents == nil {
|
if agents == nil {
|
||||||
agents = []models.Agent{}
|
agents = []models.AgentResponse{}
|
||||||
}
|
}
|
||||||
return agents, rows.Err()
|
return agents, rows.Err()
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user