From 95b274d2d563a07fa143fc66738ff5d731ee80e3 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期五, 11 十月 2024 15:12:48 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java |   39 ++++++++++++++++++++++++++++++++++++---
 1 files changed, 36 insertions(+), 3 deletions(-)

diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java
index 11e7230..cf9bb95 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java
@@ -16,7 +16,6 @@
 import com.ruoyi.common.core.dto.ChargingPercentProvinceDto;
 import com.ruoyi.chargingPile.service.*;
 import com.ruoyi.common.core.domain.R;
-import com.ruoyi.common.core.utils.GeodesyUtil;
 import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.common.core.web.page.PageInfo;
@@ -178,9 +177,43 @@
 	@GetMapping("/map/getSiteList")
 	@ApiOperation(value = "获取站点", tags = {"管理后台-数据分析-电站分析"})
 	public R<List<GetSiteListDTO>> getMapSiteList(GetSiteList siteList){
+
 		siteList.setPageCurr(1);
-		siteList.setPageCurr(99999);
+		siteList.setPageSize(99999);
 		PageInfo<GetSiteListDTO> list = siteService.getSiteList(siteList);
+		for (GetSiteListDTO record : list.getRecords()) {
+			Long count = chargingGunService.lambdaQuery().eq(TChargingGun::getChargingPileId, record.getId()).eq(TChargingGun::getChargeMode, 1).eq(TChargingGun::getStatus, new int[]{3, 4, 5, 6}).count();
+			record.setC1(count);
+			Long count1 = chargingGunService.lambdaQuery().eq(TChargingGun::getChargingPileId, record.getId()).eq(TChargingGun::getChargeMode, 1).eq(TChargingGun::getStatus, 2).count();
+			record.setC2(count1);
+			Long count2 = chargingGunService.lambdaQuery().eq(TChargingGun::getChargingPileId, record.getId()).eq(TChargingGun::getChargeMode, 2).eq(TChargingGun::getStatus, new int[]{3, 4, 5, 6}).count();
+			record.setK1(count2);
+			Long count3 = chargingGunService.lambdaQuery().eq(TChargingGun::getChargingPileId, record.getId()).eq(TChargingGun::getChargeMode, 2).eq(TChargingGun::getStatus, 2).count();
+			record.setK2(count3);
+			Long count4 = chargingGunService.lambdaQuery().eq(TChargingGun::getChargingPileId, record.getId()).eq(TChargingGun::getChargeMode, 3).eq(TChargingGun::getStatus, new int[]{3, 4, 5, 6}).count();
+			record.setM1(count4);
+			Long count5 = chargingGunService.lambdaQuery().eq(TChargingGun::getChargingPileId, record.getId()).eq(TChargingGun::getChargeMode, 3).eq(TChargingGun::getStatus, 2).count();
+			record.setM2(count5);
+
+			//利用率
+			BigDecimal bigDecimal = new BigDecimal("0");
+			//获取该站点的总充电度数
+			List<TChargingOrder> chargingOrders = chargingOrderClient.getList(record.getId()).getData();
+			for (TChargingOrder chargingOrder : chargingOrders) {
+				bigDecimal = bigDecimal.add(chargingOrder.getChargingCapacity());
+			}
+			//获取该站点的所有充电桩
+			List<TChargingPile> chargingPiles = chargingPileService.lambdaQuery().eq(TChargingPile::getSiteId, record.getId()).list();
+			BigDecimal bigDecimal1 = new BigDecimal("0");
+			for (TChargingPile chargingPile : chargingPiles) {
+				bigDecimal1 = bigDecimal1.add(chargingPile.getRatedPower());
+			}
+			BigDecimal multiply = bigDecimal1.multiply(new BigDecimal("24"));
+
+			BigDecimal divide = bigDecimal.divide(multiply, 0, BigDecimal.ROUND_HALF_UP);
+			record.setP1(divide);
+
+		}
 		return R.ok(list.getRecords());
 	}
 
@@ -236,7 +269,7 @@
 		List<GetSiteListDTO> records = siteService.getSiteList(siteList).getRecords();
 		List<Integer> collect = records.stream().map(GetSiteListDTO::getId).collect(Collectors.toList());
 		// 通过时间段获取和充电桩id获取各个充电站的充电订单
-		List<ChargingOrderGroup> data = chargingOrderClient.getBySiteIdAndTime(chargingPercentProvinceDto).getData();
+			List<ChargingOrderGroup> data = chargingOrderClient.getBySiteIdAndTime(chargingPercentProvinceDto).getData();
 		// 计算利用率展示
 		for (ChargingOrderGroup datum : data) {
 			List<TChargingPile> chargingPiles = chargingPileService.lambdaQuery().eq(TChargingPile::getSiteId, datum.getSiteId()).list();

--
Gitblit v1.7.1