diff --git a/ebike-orders/src/main/java/com/cdzy/orders/model/dto/res/RspBikeDto.java b/ebike-orders/src/main/java/com/cdzy/orders/model/dto/res/RspBikeDto.java index d89a3bdb..80171cc6 100644 --- a/ebike-orders/src/main/java/com/cdzy/orders/model/dto/res/RspBikeDto.java +++ b/ebike-orders/src/main/java/com/cdzy/orders/model/dto/res/RspBikeDto.java @@ -20,11 +20,12 @@ public class RspBikeDto { private Float mileage; private String bikeCode; - public RspBikeDto(String ecuSn, Integer soc, Double longitude, Double latitude, String bikeCode) { + public RspBikeDto(String ecuSn, Integer soc, Double longitude, Double latitude, String bikeCode,Float mileage) { this.ecuSn = ecuSn; this.soc = soc; this.longitude = longitude; this.latitude = latitude; this.bikeCode = bikeCode; + this.mileage = mileage; } } diff --git a/ebike-orders/src/main/java/com/cdzy/orders/service/impl/UserOrdersServiceImpl.java b/ebike-orders/src/main/java/com/cdzy/orders/service/impl/UserOrdersServiceImpl.java index 6b4f4062..7710312b 100644 --- a/ebike-orders/src/main/java/com/cdzy/orders/service/impl/UserOrdersServiceImpl.java +++ b/ebike-orders/src/main/java/com/cdzy/orders/service/impl/UserOrdersServiceImpl.java @@ -35,6 +35,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; +import java.math.RoundingMode; import java.time.LocalDateTime; import java.time.LocalTime; import java.util.ArrayList; @@ -256,7 +257,10 @@ public class UserOrdersServiceImpl extends ServiceImpl { String jsonString = JSONObject.toJSONString(object); ResGPSDto resGpsDto = JSONObject.parseObject(jsonString, ResGPSDto.class); - return new RspBikeDto(resGpsDto.getEcuSn(), resGpsDto.getSoc(), resGpsDto.getLongitude(), resGpsDto.getLatitude(),map.get(resGpsDto.getEcuSn()).getBikeCode()); + BigDecimal number = new BigDecimal(resGpsDto.getSoc()); + BigDecimal hundred = new BigDecimal("100"); + BigDecimal result = number.divide(hundred, 2, RoundingMode.HALF_UP); + return new RspBikeDto(resGpsDto.getEcuSn(), resGpsDto.getSoc(), resGpsDto.getLongitude(), resGpsDto.getLatitude(),map.get(resGpsDto.getEcuSn()).getBikeCode(),result.floatValue()); }).toList(); }