From 5af1194755100bd05556a3d7e8a1455c11986dd7 Mon Sep 17 00:00:00 2001
From: longz <longzhaoz@qq.com>
Date: 星期一, 20 七月 2026 16:13:36 +0800
Subject: [PATCH] 修复查询过慢的问题
---
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/SiteServiceImpl.java | 43 ++++++++++++++++++++++++++++++++++++++++---
1 files changed, 40 insertions(+), 3 deletions(-)
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/SiteServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/SiteServiceImpl.java
index a0a1f82..d663f00 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/SiteServiceImpl.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/SiteServiceImpl.java
@@ -967,8 +967,45 @@
if (CollectionUtils.isEmpty(ids)) {
return;
}
- for (Integer id : ids) {
- setAccountingStrategy(id, accountingStrategyId);
- }
+ this.lambdaUpdate()
+ .in(Site::getId, ids)
+ .set(Site::getAccountingStrategyId, accountingStrategyId)
+ .update();
+ chargingGunService.lambdaUpdate()
+ .in(TChargingGun::getSiteId, ids)
+ .eq(TChargingGun::getDelFlag, 0)
+ .set(TChargingGun::getAccountingStrategyId, accountingStrategyId)
+ .update();
+ List<TAccountingStrategyDetail> accountingStrategyDetails = accountingStrategyDetailService.list(new LambdaQueryWrapper<TAccountingStrategyDetail>().eq(TAccountingStrategyDetail::getAccountingStrategyId, accountingStrategyId));
+ List<TChargingPile> chargingPiles = chargingPileService.lambdaQuery().in(TChargingPile::getSiteId, ids).eq(TChargingPile::getDelFlag, 0).list();
+ List<Integer> syncSiteIds = this.lambdaQuery()
+ .select(Site::getId, Site::getIsOpenSynchronization)
+ .in(Site::getId, ids)
+ .eq(Site::getIsOpenSynchronization, 1)
+ .list()
+ .stream()
+ .map(Site::getId)
+ .collect(Collectors.toList());
+ new Thread(() -> {
+ for (TChargingPile chargingPile : chargingPiles) {
+ try {
+ integrationClient.setupBillingModel1(chargingPile.getCode(), JSON.toJSONString(accountingStrategyDetails));
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ try {
+ chengDuJianGuanClient.notificationStationFee(chargingPile.getId());
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ if (!CollectionUtils.isEmpty(syncSiteIds)) {
+ try {
+ tcecClient.notificationStationChange(syncSiteIds);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ }).start();
}
}
--
Gitblit v1.7.1