52 lines
1.7 KiB
Go
52 lines
1.7 KiB
Go
package searcher
|
|
|
|
import (
|
|
"91porn-server/models/v/locmod"
|
|
|
|
"go.mongodb.org/mongo-driver/bson/primitive"
|
|
)
|
|
|
|
// LocInfo LocInfo
|
|
type LocInfo struct {
|
|
ID *primitive.ObjectID `json:"id" bson:"_id"`
|
|
Longitude *string `json:"longitude,omitempty"` //经度
|
|
Latitude *string `json:"latitude,omitempty"` //纬度
|
|
Country *string `json:"country,omitempty"` //国家
|
|
CountryCode *string `json:"countryCode,omitempty"` //国家编码
|
|
Province *string `json:"province,omitempty"` //省份
|
|
ProvinceCode *string `json:"provinceCode,omitempty"` //省份编码
|
|
City *string `json:"city,omitempty"` //城市
|
|
CityCode *string `json:"cityCode,omitempty"` //城市编码
|
|
Address *string `json:"address,omitempty"` //地址
|
|
Cover *string `json:"cover,omitempty"` //封面
|
|
Visit *int `json:"visit,omitempty"` //访问人数
|
|
}
|
|
|
|
// LocMap LocMap
|
|
func LocMap(lidList []ObjectID) (map[ObjectID]*LocInfo, error) {
|
|
locMap, err := locmod.GetLocationInfoByIDs(lidList)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
m := make(map[ObjectID]*LocInfo, len(locMap))
|
|
for k, v := range locMap {
|
|
loc := v
|
|
lInfo := LocInfo{
|
|
ID: &loc.ID,
|
|
Longitude: &loc.Longitude,
|
|
Latitude: &loc.Latitude,
|
|
Country: &loc.Country,
|
|
CountryCode: &loc.CountryCode,
|
|
Province: &loc.Province,
|
|
ProvinceCode: &loc.ProvinceCode,
|
|
City: &loc.City,
|
|
CityCode: &loc.CityCode,
|
|
Address: &loc.Address,
|
|
Cover: &loc.Cover,
|
|
Visit: &loc.Visit,
|
|
}
|
|
m[k] = &lInfo
|
|
}
|
|
return m, nil
|
|
}
|