From 046b45b3f45430101fdfb9ee71ab8510ab5a8010 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期四, 10 四月 2025 17:17:15 +0800
Subject: [PATCH] 监管平台

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java |   53 ++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 38 insertions(+), 15 deletions(-)

diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
index faa6696..06e5acf 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
@@ -36,6 +36,7 @@
 import com.ruoyi.integration.api.feignClient.UploadRealTimeMonitoringDataClient;
 import com.ruoyi.integration.api.model.ChargingOrderAndUploadRealTimeMonitoringDataDto;
 import com.ruoyi.integration.api.model.UploadRealTimeMonitoringPageData;
+import com.ruoyi.order.api.dto.ChargingStatisticeDTO;
 import com.ruoyi.order.api.model.*;
 import com.ruoyi.order.api.query.ChargingOrderQuery;
 import com.ruoyi.common.core.dto.MongoChargingOrderQuery;
@@ -54,6 +55,7 @@
 import com.ruoyi.order.service.*;
 import com.ruoyi.order.util.PreviousSixMonths;
 import com.ruoyi.order.vo.EndOfChargePageInfo;
+import com.ruoyi.order.vo.WatchChargingOrderVo;
 import com.ruoyi.other.api.feignClient.RoleSiteClient;
 import com.ruoyi.other.api.feignClient.UserSiteClient;
 import com.ruoyi.payment.api.feignClient.AliPaymentClient;
@@ -63,14 +65,11 @@
 import com.ruoyi.system.api.feignClient.SysUserClient;
 import com.ruoyi.system.api.feignClient.SysUserRoleClient;
 import com.ruoyi.system.api.model.SysUserRoleVo;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiImplicitParam;
-import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.*;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
-import io.swagger.annotations.ApiOperation;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
@@ -159,10 +158,20 @@
     private RoleSiteClient roleSiteClient;
     @Resource
     private SysUserRoleClient sysUserRoleClient;
-    
-    
-    
-    
+
+
+
+    /**
+     * 远程调用 监管平台查询前一天用能统计
+     * @return
+     */
+    @ResponseBody
+    @PostMapping(value = "/getChargingStatistics")
+    public R<List<TChargingOrder>> getChargingStatistics(@RequestBody ChargingStatisticeDTO dto) {
+        List<TChargingOrder> list = chargingOrderService.lambdaQuery()
+                .between(TChargingOrder::getEndTime, dto.getStartTime(), dto.getEndTime()).list();
+        return R.ok(list);
+    }
 
     /**
      * 远程调用 增加管理后台赠送会员记录
@@ -1175,23 +1184,37 @@
         PageInfo<TChargingOrder> orderPageInfo = chargingOrderService.page(pageInfo, queryWrapper.orderByDesc(TChargingOrder::getCreateTime));
         List<Site> siteList = siteClient.getSiteAll().getData();
         
+        List<WatchChargingOrderVo> list = new ArrayList<>();
         for (TChargingOrder record : orderPageInfo.getRecords()) {
-            record.setIdStr(record.getId().toString());
+            WatchChargingOrderVo vo = new WatchChargingOrderVo();
+            BeanUtils.copyProperties(record, vo);
+            vo.setIdStr(record.getId().toString());
             Site site = siteList.stream().filter(s->s.getId().equals(record.getSiteId())).findFirst().get();
-            record.setSiteName(site.getName());
+            vo.setSiteName(site.getName());
             TChargingPile chargingPile = chargingPileClient.getChargingPileById(record.getChargingPileId()).getData();
-            record.setTerminalName(chargingPile.getName());
+            vo.setTerminalName(chargingPile.getName());
             TChargingGun chargingGun = chargingGunClient.getChargingGunById(record.getChargingGunId()).getData();
-            record.setTerminalCode(chargingGun.getName());
+            vo.setTerminalCode(chargingGun.getName());
             
             if(null != record.getStartTime() && null != record.getEndTime()){
                 long time = record.getEndTime().toEpochSecond(ZoneOffset.UTC) - record.getStartTime().toEpochSecond(ZoneOffset.UTC);
-                record.setChargingTime(time + "");
+                vo.setChargingTime(time + "");
             }
             long count = chargingOrderAccountingStrategyService.count(new LambdaQueryWrapper<TChargingOrderAccountingStrategy>().eq(TChargingOrderAccountingStrategy::getChargingOrderId, record.getId()));
-            record.setTimeFrame(count);
+            vo.setTimeFrame(count);
+    
+            vo.setAuthInfo(roleType == 1 ? true : partnerClient.authMenu(objectId, record.getSiteId(), SiteMenu.CHARGING_PILE_ORDER_MONITORING_RECORD_INFO.getValue()));
+            vo.setAuthDelete(roleType == 1 ? true : partnerClient.authMenu(objectId, record.getSiteId(), SiteMenu.CHARGING_PILE_ORDER_MONITORING_RECORD_DEL.getValue()));
+            list.add(vo);
         }
-        return R.ok(orderPageInfo);
+        PageInfo<WatchChargingOrderVo> pageInfos = new PageInfo<>(query.getPageCurr(), query.getPageSize());
+        pageInfos.setRecords(list);
+        pageInfos.setCurrent(pageInfo.getCurrent());
+        pageInfos.setPages(pageInfo.getPages());
+        pageInfos.setSize(pageInfo.getSize());
+        pageInfos.setStartIndex(pageInfo.getStartIndex());
+        pageInfos.setTotal(pageInfo.getTotal());
+        return R.ok(pageInfos);
     }
     
     

--
Gitblit v1.7.1