|
@@ -51,31 +51,19 @@ func List(c *gin.Context) {
|
|
|
locker.RLock()
|
|
|
defer locker.RUnlock()
|
|
|
|
|
|
- dtoNodes := make(map[string][]dto.Node)
|
|
|
+ dtoNodes := make([]dto.Node, 0)
|
|
|
for _, node := range nodes {
|
|
|
- if _, ok := dtoNodes[node.CountryCode]; !ok {
|
|
|
- dtoNodes[node.CountryCode] = make([]dto.Node, 0)
|
|
|
- }
|
|
|
if node.LastUpdateTime.Add(10 * time.Second).After(time.Now()) {
|
|
|
- dtoNodes[node.CountryCode] = append(dtoNodes[node.CountryCode], dto.Node{
|
|
|
- Ip: node.Ip,
|
|
|
+ dtoNodes = append(dtoNodes, dto.Node{
|
|
|
+ Ip: node.Ip,
|
|
|
+ CountryCode: node.CountryCode,
|
|
|
})
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- listResult := make([]dto.ListResult, len(dtoNodes))
|
|
|
- i := 0
|
|
|
- for countryCode, itemNodes := range dtoNodes {
|
|
|
- listResult[i] = dto.ListResult{
|
|
|
- CountryCode: countryCode,
|
|
|
- Nodes: itemNodes,
|
|
|
- }
|
|
|
- i++
|
|
|
- }
|
|
|
-
|
|
|
c.JSON(http.StatusOK, dto.ListResponse{
|
|
|
Response: dto.NewOkResponse(),
|
|
|
- Data: listResult,
|
|
|
+ Data: dtoNodes,
|
|
|
})
|
|
|
}
|
|
|
|