20260411:LBS获取经纬度后调用地图服务获取设备详细地址
This commit is contained in:
parent
f176f765ab
commit
9f2f4f3ee3
@ -13,6 +13,10 @@ import com.fastbee.common.utils.DateUtils;
|
|||||||
import com.fastbee.common.utils.StringUtils;
|
import com.fastbee.common.utils.StringUtils;
|
||||||
import com.fastbee.common.utils.dtu.ATCommandParserUtils;
|
import com.fastbee.common.utils.dtu.ATCommandParserUtils;
|
||||||
import com.fastbee.common.utils.gateway.mq.TopicsUtils;
|
import com.fastbee.common.utils.gateway.mq.TopicsUtils;
|
||||||
|
import com.fastbee.http.map.ILocationService;
|
||||||
|
import com.fastbee.http.map.LocationServiceFactory;
|
||||||
|
import com.fastbee.http.model.AddressInfo;
|
||||||
|
import com.fastbee.http.model.Coordinate;
|
||||||
import com.fastbee.iot.domain.Device;
|
import com.fastbee.iot.domain.Device;
|
||||||
import com.fastbee.iot.domain.Product;
|
import com.fastbee.iot.domain.Product;
|
||||||
import com.fastbee.iot.domain.ProductAuthorize;
|
import com.fastbee.iot.domain.ProductAuthorize;
|
||||||
@ -75,6 +79,9 @@ public class DeviceDebugLogAspect {
|
|||||||
@Resource
|
@Resource
|
||||||
private DeviceMapper deviceMapper;
|
private DeviceMapper deviceMapper;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private LocationServiceFactory locationServiceFactory;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 拦截数据解析方法
|
* 拦截数据解析方法
|
||||||
*/
|
*/
|
||||||
@ -331,6 +338,14 @@ public class DeviceDebugLogAspect {
|
|||||||
if (lbsArray.length == 2) {
|
if (lbsArray.length == 2) {
|
||||||
updateDevice.setLongitude(lbsArray[0]);
|
updateDevice.setLongitude(lbsArray[0]);
|
||||||
updateDevice.setLatitude(lbsArray[1]);
|
updateDevice.setLatitude(lbsArray[1]);
|
||||||
|
// 工厂模式获取定位服务
|
||||||
|
long startTime = System.currentTimeMillis();
|
||||||
|
ILocationService service = locationServiceFactory.getLocationService();
|
||||||
|
Coordinate platformCoordinate = service.convertPlatformCoordinateFromWgs84(new Coordinate(lbsArray[0], lbsArray[1]));
|
||||||
|
AddressInfo addressInfo = service.getAddressByCoordinate(platformCoordinate);
|
||||||
|
String networkAddress = StringUtils.isEmpty(addressInfo.getBuilding()) ? addressInfo.getFormattedAddress() : addressInfo.getBuilding();
|
||||||
|
updateDevice.setNetworkAddress(networkAddress);
|
||||||
|
log.debug("设备:{},刷新地址:{},耗时:{}", serialNumber, networkAddress, System.currentTimeMillis() - startTime);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
updateDevice.setDeviceId(device.getDeviceId());
|
updateDevice.setDeviceId(device.getDeviceId());
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user