From 472fc1b5980db8cd69c77a5c1bcb8aded3d3b3a6 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期二, 05 十一月 2024 19:05:48 +0800 Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/mx_charging_pile --- ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/barrierGate/server/ParkingOrderService.java | 24 ++++++++++++++++++++++++ 1 files changed, 24 insertions(+), 0 deletions(-) diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/barrierGate/server/ParkingOrderService.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/barrierGate/server/ParkingOrderService.java index 6628553..613a09e 100644 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/barrierGate/server/ParkingOrderService.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/barrierGate/server/ParkingOrderService.java @@ -1,6 +1,8 @@ package com.ruoyi.integration.barrierGate.server; import com.ruoyi.account.api.feignClient.AppUserCarClient; +import com.ruoyi.account.api.feignClient.AppUserClient; +import com.ruoyi.account.api.model.TAppUser; import com.ruoyi.account.api.model.TAppUserCar; import com.ruoyi.chargingPile.api.feignClient.ParkingLotClient; import com.ruoyi.chargingPile.api.feignClient.ParkingRecordClient; @@ -19,6 +21,7 @@ import java.math.BigDecimal; import java.text.SimpleDateFormat; import java.time.LocalDateTime; +import java.time.ZoneId; import java.time.format.DateTimeFormatter; import java.util.Date; import java.util.List; @@ -41,6 +44,9 @@ @Resource private ChargingOrderClient chargingOrderClient; + + @Resource + private AppUserClient appUserClient; @@ -79,6 +85,7 @@ query.setLicensePlate(order.getPlate()); query.setStatus(1); TParkingRecord parkingRecord = parkingRecordClient.getParkingRecord(query).getData(); + TParkingLot parkingLot = parkingLotClient.getParkingLotByAppKey(order.getAppkey()).getData(); LocalDateTime parse = LocalDateTime.parse(order.getLeaveDateTime(), DateTimeFormatter.ISO_DATE_TIME); parse = parse.plusHours(8); parkingRecord.setOutParkingTime(parse); @@ -98,8 +105,25 @@ TChargingOrder chargingOrder = data.get(0); parkingRecord.setAppUserId(chargingOrder.getAppUserId()); parkingRecord.setChargingOrderId(chargingOrder.getId()); + TAppUser appUser = appUserClient.getUserById(chargingOrder.getAppUserId()).getData(); + parkingRecord.setPhone(appUser.getPhone()); + parkingRecord.setFreeDuration(parkingLot.getChargeFreeDuration()); + //超时占位费 + long out = parkingRecord.getOutParkingTime().atZone(ZoneId.systemDefault()).toEpochSecond(); + long in = parkingRecord.getInParkingTime().atZone(ZoneId.systemDefault()).toEpochSecond(); + long m = (out - in) / 60; + parkingRecord.setTimeoutAmount(m > parkingLot.getChargeFreeDuration() ? new BigDecimal(m - parkingLot.getChargeFreeDuration()).multiply(parkingLot.getChargeRate()) : BigDecimal.ZERO); + + }else{ + parkingRecord.setFreeDuration(parkingLot.getNonChargeFreeDuration()); + //超时占位费 + long out = parkingRecord.getOutParkingTime().atZone(ZoneId.systemDefault()).toEpochSecond(); + long in = parkingRecord.getInParkingTime().atZone(ZoneId.systemDefault()).toEpochSecond(); + long m = (out - in) / 60; + parkingRecord.setTimeoutAmount(m > parkingLot.getNonChargeFreeDuration() ? new BigDecimal(m - parkingLot.getNonChargeFreeDuration()).multiply(parkingLot.getChargeRate()) : BigDecimal.ZERO); } } + parkingRecord.setFreeAmount(parkingRecord.getOrderAmount().subtract(parkingRecord.getPayment())); parkingRecordClient.updateParkingRecord(parkingRecord); } -- Gitblit v1.7.1