| | |
| | | import org.springframework.data.mongodb.core.query.Update; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | | import java.time.LocalDateTime; |
| | | |
| | | @Component |
| | | @Slf4j |
| | | public class PositionMsgHandler implements BusinessMsgHandler{ |
| | |
| | | vehiclePosition.setLatitude(latitude); |
| | | vehiclePosition.setLongitude(longitude); |
| | | vehiclePosition.setLocation(location); |
| | | vehiclePosition.setUpdateTime(System.currentTimeMillis()); |
| | | mongoTemplate.save(vehiclePosition); |
| | | }else{ |
| | | Update update = new Update() |
| | | .set("id", Long.parseLong(uid)) |
| | | .set("latitude", latitude) |
| | | .set("longitude", longitude); |
| | | .set("longitude", longitude) |
| | | .set("updateTime", System.currentTimeMillis()); |
| | | GeoJsonPoint location = new GeoJsonPoint(longitude, latitude); |
| | | update.set("location", location); |
| | | mongoTemplate.updateFirst(new Query(Criteria.where("id").is(Long.parseLong(uid))), update, XpOperationsUserPositionDTO.class); |