jiangping
2025-02-28 43a53e5a46ba45a6d35e3913fdfdd6f82a84a038
server/web/src/main/java/com/doumee/jtt808/web/service/Jtt808Service.java
@@ -237,7 +237,7 @@
            if(array == null || array.size() ==0){
                continue;
            }
            if(PositionUtil.isInPolygon(lat,lng,array)){
            if(PositionUtil.isInPolygon(lng,lat,array)){
                //如果在停车点范围内;
                site = sites;
                break;
@@ -330,6 +330,7 @@
            if(m.getLongitude()!=0){
                bike.setLongitude(new BigDecimal(m.getLongitude()).divide(new BigDecimal(1000000),8,BigDecimal.ROUND_HALF_UP));
            }
            updateMapLocation(bike);
            bike.setHeartDate(DateUtil.getDateFromLocalDateTime(m.getDeviceTime()));
            if(m.getAttributes()!=null ){
                Battery battery= (Battery) m.getAttributes().get(AttributeKey.Battery);
@@ -375,6 +376,15 @@
        }
    }
    private void updateMapLocation(Bikes bike) {
        if(bike.getLatitude() == null || bike.getLongitude() == null){
            return;
        }
        PositionUtil.AMap aMap =PositionUtil.transform(bike.getLongitude().doubleValue() ,bike.getLatitude().doubleValue());
        bike.setLatitude(new BigDecimal(aMap.getLatitude()));
        bike.setLongitude(new BigDecimal(aMap.getLongitude()));
    }
    public ConcurrentMap<String,Integer> cacheOpenLock = new ConcurrentReferenceHashMap<>();