diff --git a/jsowell-admin/src/main/java/com/jsowell/api/thirdparty/ChargeAlgorithmController.java b/jsowell-admin/src/main/java/com/jsowell/api/thirdparty/ChargeAlgorithmController.java index 7099bcf65..87928fff5 100644 --- a/jsowell-admin/src/main/java/com/jsowell/api/thirdparty/ChargeAlgorithmController.java +++ b/jsowell-admin/src/main/java/com/jsowell/api/thirdparty/ChargeAlgorithmController.java @@ -5,8 +5,7 @@ import com.jsowell.common.core.controller.BaseController; import com.jsowell.common.response.RestApiResponse; import com.jsowell.common.util.StringUtils; import com.jsowell.pile.dto.BatteryChargeReportDTO; -import com.jsowell.thirdparty.platform.service.impl.BatteryChargeReportService; -import com.jsowell.thirdparty.platform.service.impl.ChargeAlgorithmService; +import com.jsowell.pile.service.batteryreport.BatteryChargeReportService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; diff --git a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/OrderController.java b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/OrderController.java index a511a9066..1975ebb97 100644 --- a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/OrderController.java +++ b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/OrderController.java @@ -22,7 +22,7 @@ import com.jsowell.pile.vo.uniapp.customer.ParkingOrderVO; import com.jsowell.pile.vo.uniapp.customer.UniAppOrderVO; import com.jsowell.service.OrderService; import com.jsowell.pile.dto.BatteryChargeReportDTO; -import com.jsowell.thirdparty.platform.service.impl.BatteryChargeReportService; +import com.jsowell.pile.service.batteryreport.BatteryChargeReportService; import com.jsowell.wxpay.dto.WechatSendMsgDTO; import com.jsowell.wxpay.service.WxAppletRemoteService; import org.springframework.beans.factory.annotation.Autowired; diff --git a/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/TransactionRecordsRequestHandler.java b/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/TransactionRecordsRequestHandler.java index 1be69dc92..0a87a1276 100644 --- a/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/TransactionRecordsRequestHandler.java +++ b/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/TransactionRecordsRequestHandler.java @@ -27,7 +27,7 @@ import com.jsowell.pile.service.*; import com.jsowell.pile.service.programlogic.AbstractProgramLogic; import com.jsowell.pile.service.programlogic.ProgramLogicFactory; import com.jsowell.thirdparty.common.CommonService; -import com.jsowell.thirdparty.platform.service.impl.BatteryChargeReportService; +import com.jsowell.pile.service.batteryreport.BatteryChargeReportService; import io.netty.channel.ChannelHandlerContext; import lombok.extern.slf4j.Slf4j; import org.springframework.amqp.rabbit.core.RabbitTemplate; diff --git a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/BatteryChargeReportData.java b/jsowell-pile/src/main/java/com/jsowell/pile/domain/batteryreport/BatteryChargeReportData.java similarity index 98% rename from jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/BatteryChargeReportData.java rename to jsowell-pile/src/main/java/com/jsowell/pile/domain/batteryreport/BatteryChargeReportData.java index dcf26c673..fea9e9793 100644 --- a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/BatteryChargeReportData.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/domain/batteryreport/BatteryChargeReportData.java @@ -1,4 +1,4 @@ -package com.jsowell.thirdparty.platform.domain; +package com.jsowell.pile.domain.batteryreport; import com.alibaba.fastjson2.annotation.JSONField; import lombok.AllArgsConstructor; diff --git a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/BatteryReportResult.java b/jsowell-pile/src/main/java/com/jsowell/pile/domain/batteryreport/BatteryReportResult.java similarity index 92% rename from jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/BatteryReportResult.java rename to jsowell-pile/src/main/java/com/jsowell/pile/domain/batteryreport/BatteryReportResult.java index 3692a9bea..00e6c2644 100644 --- a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/BatteryReportResult.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/domain/batteryreport/BatteryReportResult.java @@ -1,4 +1,4 @@ -package com.jsowell.thirdparty.platform.domain; +package com.jsowell.pile.domain.batteryreport; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/BatteryChargeReportService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/batteryreport/BatteryChargeReportService.java similarity index 98% rename from jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/BatteryChargeReportService.java rename to jsowell-pile/src/main/java/com/jsowell/pile/service/batteryreport/BatteryChargeReportService.java index 376ead036..942a1b678 100644 --- a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/BatteryChargeReportService.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/batteryreport/BatteryChargeReportService.java @@ -1,4 +1,4 @@ -package com.jsowell.thirdparty.platform.service.impl; +package com.jsowell.pile.service.batteryreport; import cn.hutool.http.HttpRequest; import com.alibaba.fastjson2.JSON; @@ -8,17 +8,16 @@ import com.jsowell.common.constant.Constants; import com.jsowell.common.core.domain.ykc.*; import com.jsowell.common.core.redis.RedisCache; import com.jsowell.common.util.DateUtils; -import com.jsowell.common.util.RandomUtil; import com.jsowell.common.util.StringUtils; import com.jsowell.pile.domain.ChargeAlgorithmRecord; +import com.jsowell.pile.domain.batteryreport.BatteryChargeReportData; +import com.jsowell.pile.domain.batteryreport.BatteryReportResult; import com.jsowell.pile.service.*; import com.jsowell.pile.thirdparty.ParameterConfigData; import com.jsowell.pile.vo.uniapp.customer.OrderVO; import com.jsowell.pile.vo.web.PileConnectorInfoVO; import com.jsowell.pile.vo.web.PileDetailVO; import com.jsowell.pile.vo.web.PileStationVO; -import com.jsowell.thirdparty.platform.domain.BatteryChargeReportData; -import com.jsowell.thirdparty.platform.domain.BatteryReportResult; import org.apache.commons.lang3.RandomUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/ChargeAlgorithmRecordServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/ChargeAlgorithmRecordServiceImpl.java index 559274d72..7f2f0ceae 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/ChargeAlgorithmRecordServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/ChargeAlgorithmRecordServiceImpl.java @@ -8,6 +8,7 @@ import com.jsowell.common.util.DateUtils; import com.jsowell.common.util.StringUtils; import com.jsowell.pile.dto.BatteryChargeReportDTO; import com.jsowell.pile.service.ChargeAlgorithmRecordService; +import com.jsowell.pile.service.batteryreport.BatteryChargeReportService; import com.jsowell.pile.vo.uniapp.customer.ChargeAlgorithmRecordVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -25,6 +26,9 @@ public class ChargeAlgorithmRecordServiceImpl implements ChargeAlgorithmRecordSe @Autowired private ChargeAlgorithmRecordMapper chargeAlgorithmRecordMapper; + @Autowired + private BatteryChargeReportService batteryChargeReportService; + /** * 查询电池充电算法记录 * @@ -125,20 +129,44 @@ public class ChargeAlgorithmRecordServiceImpl implements ChargeAlgorithmRecordSe */ @Override public String getUrlByParams(BatteryChargeReportDTO dto) { - ChargeAlgorithmRecord record = queryRecordByOrderCode(dto.getOrderCode()); - String reportType = dto.getReportType(); - if (StringUtils.equals(Constants.ONE, reportType)) { - // 1-web 端 - if (StringUtils.isNotBlank(record.getWebUrl())) { - return record.getWebUrl(); - } - }else if (StringUtils.equals(Constants.TWO, reportType)) { - // 2-pdf 端 - if (StringUtils.isNotBlank(record.getPdfUrl())) { - return record.getPdfUrl(); - } + // 参数校验 + if (dto == null || StringUtils.isBlank(dto.getOrderCode())) { + return StringUtils.EMPTY; } - return ""; + + ChargeAlgorithmRecord record = queryRecordByOrderCode(dto.getOrderCode()); + if (record == null) { + return StringUtils.EMPTY; + } + + // 获取记录中的URL + String urlFromRecord = getUrlFromRecordByType(record, dto.getReportType()); + + if (StringUtils.isNotBlank(urlFromRecord)) { + return urlFromRecord; + } + + // 如果记录中没有且taskId存在,通过服务获取 + if (StringUtils.isNotBlank(dto.getTaskId())) { + return batteryChargeReportService.getUrlByTaskId(dto.getTaskId(), dto.getReportType()); + } + + return StringUtils.EMPTY; + } + + /** + * 通过记录获取URL + * @param record + * @param reportType + * @return + */ + private String getUrlFromRecordByType(ChargeAlgorithmRecord record, String reportType) { + if (StringUtils.equals(Constants.ONE, reportType)) { + return record.getWebUrl(); + } else if (StringUtils.equals(Constants.TWO, reportType)) { + return record.getPdfUrl(); + } + return null; } /**