diff --git a/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/controller/XhpcHistoryOrderController.java b/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/controller/XhpcHistoryOrderController.java index a7696c48..a9d4d850 100644 --- a/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/controller/XhpcHistoryOrderController.java +++ b/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/controller/XhpcHistoryOrderController.java @@ -244,10 +244,36 @@ public class XhpcHistoryOrderController extends BaseController { List> reatTimeList = xhpcHistoryOrderService.getReatTimeList(startTime, endTime, xhpc.getRateModelId()); for (int i = 0; i map = reatTimeList.get(i); - BigDecimal powerFee =new BigDecimal(map.get("powerFee").toString()); - BigDecimal serviceFee =new BigDecimal(map.get("serviceFee").toString()); - timeInterval =timeInterval.add(new BigDecimal((DateUtil.parse(map.get("endTime").toString()).getTime()-DateUtil.parse(map.get("startTime").toString()).getTime())).divide(new BigDecimal(60000),2, BigDecimal.ROUND_DOWN)); + //่Žทๅ–่ดน็އ + if(reatTimeList.size()==1){ + powerFee =new BigDecimal(map.get("powerFee").toString()); + serviceFee =new BigDecimal(map.get("serviceFee").toString()); + }else if (i==0){ + powerFee =new BigDecimal(map.get("powerFee").toString()); + serviceFee =new BigDecimal(map.get("serviceFee").toString()); + endTime1 = map.get("endTime").toString(); + if("00:00:00".equals(endTime1)){ + endTime1="23:59:59"; + } + }else if(i!=reatTimeList.size()-1){ + powerFee =new BigDecimal(map.get("powerFee").toString()); + serviceFee =new BigDecimal(map.get("serviceFee").toString()); + startTime1 = map.get("startTime").toString(); + endTime1 = map.get("endTime").toString(); + if("00:00:00".equals(endTime1)){ + endTime1="23:59:59"; + } + }else{ + powerFee =new BigDecimal(map.get("powerFee").toString()); + serviceFee =new BigDecimal(map.get("serviceFee").toString()); + startTime1 = map.get("startTime").toString(); + } + timeInterval =timeInterval.add(new BigDecimal((DateUtil.parse(endTime1).getTime()-DateUtil.parse(startTime1).getTime())).divide(new BigDecimal(60000),2, BigDecimal.ROUND_DOWN)); powerPriceTotal1 = powerPriceTotal1.add(powerFee.multiply(divide).setScale(2, BigDecimal.ROUND_DOWN)); servicePriceTotal1 = servicePriceTotal1.add(serviceFee.multiply(divide).setScale(2, BigDecimal.ROUND_DOWN)); chargingDegree2 =chargingDegree2.add(timeInterval.multiply(divide).setScale(2,BigDecimal.ROUND_DOWN));