From 97fab9cc2e0f2e54fa202fe5a94dbd8fbd82b66c Mon Sep 17 00:00:00 2001 From: Lemon Date: Mon, 9 Sep 2024 21:08:21 +0800 Subject: [PATCH] update --- .../api/uniapp/customer/PileController.java | 26 ++++++++++++++++--- .../pile/dto/QueryConnectorListDTO.java | 4 ++- 2 files changed, 25 insertions(+), 5 deletions(-) diff --git a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/PileController.java b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/PileController.java index 881163696..bc0eb488a 100644 --- a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/PileController.java +++ b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/PileController.java @@ -13,6 +13,7 @@ import com.jsowell.pile.dto.QueryStationDTO; import com.jsowell.pile.dto.RemoteGroundLockDTO; import com.jsowell.pile.service.*; import com.jsowell.pile.vo.base.ConnectorInfoVO; +import com.jsowell.pile.vo.base.MerchantInfoVO; import com.jsowell.pile.vo.uniapp.customer.BillingPriceVO; import com.jsowell.pile.vo.web.ThirdPartySnRelationVO; import com.jsowell.web.controller.pile.PileConnectorInfoController; @@ -24,6 +25,7 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import java.util.ArrayList; import java.util.List; +import java.util.concurrent.CompletableFuture; /** * 充电桩相关接口 @@ -219,12 +221,28 @@ public class PileController extends BaseController { - @GetMapping("/selectConnectorInfoList/{pileSn}") - public RestApiResponse selectConnectorInfoList(@PathVariable("pileSn") String pileSn) { + @PostMapping("/selectConnectorInfoList") + public RestApiResponse selectConnectorInfoList(@RequestBody QueryConnectorListDTO dto) { RestApiResponse response = null; try { - List connectorInfoVOS = pileConnectorInfoService.selectConnectorInfoList(pileSn); - response = new RestApiResponse<>(connectorInfoVOS); + // List connectorInfoVOS = pileConnectorInfoService.selectConnectorInfoList(pileSn); + CompletableFuture> connectorInfoListFuture = CompletableFuture.supplyAsync(() -> pileConnectorInfoService.selectConnectorInfoList(dto.getPileSn())); + logger.info("查询充电枪口详情-supplyAsync-selectConnectorInfoList:{}", connectorInfoListFuture); + + // 查计费模板信息 + CompletableFuture> billingPriceFuture = CompletableFuture.supplyAsync(() -> pileBillingTemplateService.queryBillingPrice(dto.getStationId())); + logger.info("查询充电枪口详情-supplyAsync-queryBillingPrice:{}", billingPriceFuture); + + // 查询运营商信息 + CompletableFuture merchantInfoVOFuture = CompletableFuture.supplyAsync(() -> pileMerchantInfoService.getMerchantInfoVO(dto.getMerchantId())); + logger.info("查询充电枪口详情-supplyAsync-getMerchantInfoVO:{}", merchantInfoVOFuture); + + CompletableFuture all = CompletableFuture.allOf(connectorInfoListFuture, merchantInfoVOFuture, billingPriceFuture); + // .join()和.get()都会阻塞并获取线程的执行情况 + // .join()会抛出未经检查的异常,不会强制开发者处理异常 .get()会抛出检查异常,需要开发者处理 + all.join(); + all.get(); + response = new RestApiResponse<>(connectorInfoListFuture.get()); }catch (Exception e) { logger.error("查询充电枪口详情 error", e); response = new RestApiResponse<>(e); diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/dto/QueryConnectorListDTO.java b/jsowell-pile/src/main/java/com/jsowell/pile/dto/QueryConnectorListDTO.java index 5db718411..363483209 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/dto/QueryConnectorListDTO.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/dto/QueryConnectorListDTO.java @@ -27,7 +27,9 @@ public class QueryConnectorListDTO { * 运营商id */ private String merchantId; - + private String stationId; + private String pileSn; + /** * 站点 */