diff --git a/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/EbikeBikeOrderService.java b/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/EbikeBikeOrderService.java index 95cd9eef..97884efd 100644 --- a/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/EbikeBikeOrderService.java +++ b/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/EbikeBikeOrderService.java @@ -22,5 +22,5 @@ public interface EbikeBikeOrderService extends IService { * @param bikeId 车辆ID * @param receiverId 处理人ID */ - void doneChangeBattery(String bikeId,String receiverId); + String doneChangeBattery(String bikeId,String receiverId); } diff --git a/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/impl/EbikeBikeInfoServiceImpl.java b/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/impl/EbikeBikeInfoServiceImpl.java index fce3f4e3..8334e782 100644 --- a/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/impl/EbikeBikeInfoServiceImpl.java +++ b/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/impl/EbikeBikeInfoServiceImpl.java @@ -750,13 +750,14 @@ public class EbikeBikeInfoServiceImpl extends ServiceImpl list = new ArrayList<>(); //是否在运营区内 boolean pointInOperation = bikeInOperation(resGpsDto.getLongitude(), resGpsDto.getLatitude(), regionDto.getOrgId(), regionDto.getRegionId()); @@ -384,6 +384,11 @@ public class UserOrdersServiceImpl extends ServiceImpl defaultCostCalculation(list, userOrders, feignEbikeSysRcostsetDto, userOrders.getOrderId()); }; totalAmount = totalAmount.add(decimal); + BigDecimal cappedAmount = feignEbikeSysRcostsetDto.getCappedAmount(); + int result = cappedAmount.compareTo(totalAmount); + if (result == 1){ + totalAmount = cappedAmount; + } userOrders.setStatus(OrderStatus.PENDING_PAYMENT); userOrders.setTotalAmount(totalAmount); orderDetailsMapper.insertBatch(list); @@ -417,7 +422,7 @@ public class UserOrdersServiceImpl extends ServiceImpl list, long orderId) { + BigDecimal timeFee(TimeSegment timeSegment, ResFeignEbikeSysRcostsetDto feignEbikeSysRcostsetDto, List list, long orderId) { BigDecimal decimal = BigDecimal.ZERO; // LocalDateTime start = timeSegment.getStart(); // LocalDateTime end = timeSegment.getEnd();