安全设置增加允许访问的国家地区、省份、是否局域网访问

This commit is contained in:
GoEdgeLab
2020-11-20 21:59:16 +08:00
parent bda3391c42
commit 84156e31d6
5 changed files with 71 additions and 9 deletions

View File

@@ -178,11 +178,24 @@ func (this *IPLibraryService) LookupIPRegion(ctx context.Context, req *pb.Lookup
if result == nil {
return &pb.LookupIPRegionResponse{Region: nil}, nil
}
countryId, err := models.SharedRegionCountryDAO.FindCountryIdWithCountryName(result.Country)
if err != nil {
return nil, err
}
provinceId, err := models.SharedRegionProvinceDAO.FindProvinceIdWithProvinceName(result.Province)
if err != nil {
return nil, err
}
return &pb.LookupIPRegionResponse{Region: &pb.IPRegion{
Country: result.Country,
Region: result.Region,
Province: result.Province,
City: result.City,
Isp: result.ISP,
Country: result.Country,
Region: result.Region,
Province: result.Province,
City: result.City,
Isp: result.ISP,
CountryId: countryId,
ProvinceId: provinceId,
}}, nil
}

View File

@@ -47,3 +47,26 @@ func (this *RegionCountryService) FindAllEnabledRegionCountries(ctx context.Cont
Countries: result,
}, nil
}
// 查找单个国家信息
func (this *RegionCountryService) FindEnabledRegionCountry(ctx context.Context, req *pb.FindEnabledRegionCountryRequest) (*pb.FindEnabledRegionCountryResponse, error) {
// 校验请求
_, _, err := rpcutils.ValidateRequest(ctx, rpcutils.UserTypeAdmin, rpcutils.UserTypeNode)
if err != nil {
return nil, err
}
country, err := models.SharedRegionCountryDAO.FindEnabledRegionCountry(req.CountryId)
if err != nil {
return nil, err
}
if country == nil {
return &pb.FindEnabledRegionCountryResponse{Country: nil}, nil
}
return &pb.FindEnabledRegionCountryResponse{Country: &pb.RegionCountry{
Id: int64(country.Id),
Name: country.Name,
Codes: country.DecodeCodes(),
}}, nil
}

View File

@@ -36,3 +36,27 @@ func (this *RegionProvinceService) FindAllEnabledRegionProvincesWithCountryId(ct
Provinces: result,
}, nil
}
// 查找单个省份信息
func (this *RegionProvinceService) FindEnabledRegionProvince(ctx context.Context, req *pb.FindEnabledRegionProvinceRequest) (*pb.FindEnabledRegionProvinceResponse, error) {
// 校验请求
_, _, err := rpcutils.ValidateRequest(ctx, rpcutils.UserTypeAdmin, rpcutils.UserTypeNode)
if err != nil {
return nil, err
}
province, err := models.SharedRegionProvinceDAO.FindEnabledRegionProvince(req.ProvinceId)
if err != nil {
return nil, err
}
if province == nil {
return &pb.FindEnabledRegionProvinceResponse{Province: nil}, nil
}
return &pb.FindEnabledRegionProvinceResponse{
Province: &pb.RegionProvince{
Id: int64(province.Id),
Name: province.Name,
Codes: province.DecodeCodes(),
},
}, nil
}