51 lines
1.3 KiB
Go
51 lines
1.3 KiB
Go
|
package service
|
||
|
|
||
|
import (
|
||
|
"dubbo.apache.org/dubbo-go/v3/common/logger"
|
||
|
service "github.com/fonchain_enterprise/fonchain-main/api"
|
||
|
"github.com/fonchain_enterprise/fonchain-main/pkg/e"
|
||
|
"github.com/fonchain_enterprise/fonchain-main/pkg/serializer"
|
||
|
"github.com/fonchain_enterprise/fonchain-main/pkg/utils/plat"
|
||
|
"github.com/gin-gonic/gin"
|
||
|
"strings"
|
||
|
)
|
||
|
|
||
|
func LatLngToAddress(c *gin.Context) {
|
||
|
req := plat.LatLng{}
|
||
|
if err := c.ShouldBind(&req); err != nil {
|
||
|
logger.Errorf("LatLng ShouldBind err", err)
|
||
|
service.ResponseMsg(c, e.SUCCESS, serializer.Response{
|
||
|
Msg: err.Error(),
|
||
|
Status: e.Failed,
|
||
|
})
|
||
|
return
|
||
|
}
|
||
|
|
||
|
res, err := plat.ExchangeLatLngToAddress(req.Lat, req.Lng)
|
||
|
if err != nil {
|
||
|
service.ResponseMsg(c, e.SUCCESS, serializer.Response{
|
||
|
Msg: err.Error(),
|
||
|
Status: e.Ok,
|
||
|
})
|
||
|
return
|
||
|
}
|
||
|
|
||
|
var address []string
|
||
|
|
||
|
if res.Resp.RespCode == 0 || res.Resp.RespMsg == "ok" {
|
||
|
address = append(address, res.Data.Address)
|
||
|
if res.Data.Reference.LandmarkL1.Name != "" {
|
||
|
address = append(address, res.Data.Reference.LandmarkL1.Name)
|
||
|
}
|
||
|
if res.Data.Reference.LandmarkL2.Name != "" {
|
||
|
address = append(address, res.Data.Reference.LandmarkL2.Name)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
service.ResponseMsg(c, e.SUCCESS, serializer.Response{
|
||
|
Data: strings.Join(address, ""),
|
||
|
Status: e.Ok,
|
||
|
})
|
||
|
|
||
|
}
|