修复更新通道是更新各个坐标系的位置信息

pull/751/head
648540858 2023-02-16 14:01:09 +08:00
parent 7be636f8b8
commit 842f40df34
2 changed files with 16 additions and 3 deletions

View File

@ -19,6 +19,7 @@ import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.concurrent.CopyOnWriteArrayList;
/**
* @author lin
@ -179,11 +180,13 @@ public class DeviceChannelServiceImpl implements IDeviceChannelService {
@Override
public boolean updateAllGps(Device device) {
List<DeviceChannel> deviceChannels = channelMapper.getChannelsWithoutTransform(device.getDeviceId());
List<DeviceChannel> result = new ArrayList<>();
List<DeviceChannel> result = new CopyOnWriteArrayList<>();
if (deviceChannels.size() == 0) {
return true;
}
String now = DateUtil.getNow();
deviceChannels.parallelStream().forEach(deviceChannel -> {
deviceChannel.setUpdateTime(now);
result.add(updateGps(deviceChannel, device));
});
int limitCount = 300;

View File

@ -358,7 +358,17 @@ public interface DeviceChannelMapper {
@Select("select count(1) as total, sum(status) as online from device_channel")
ResourceBaceInfo getOverview();
@Select("select * from device_channel where deviceId = #{deviceId} " +
"and latitude * longitude > 0 and latitudeGcj02 * latitudeWgs84 * longitudeWgs84 * longitudeGcj02 = 0")
@Select("select channelId" +
", deviceId" +
", latitude" +
", longitude" +
", latitudeWgs84" +
", longitudeWgs84" +
", latitudeGcj02" +
", longitudeGcj02 " +
"from device_channel where deviceId = #{deviceId} " +
"and latitude != 0 " +
"and longitude != 0 " +
"and (latitudeGcj02 = 0 or latitudeWgs84 = 0 or longitudeWgs84 = 0 or longitudeGcj02 = 0)")
List<DeviceChannel> getChannelsWithoutTransform(String deviceId);
}