From bc79ebd50d4632d0124bf2a50d593752fa122f47 Mon Sep 17 00:00:00 2001 From: Lemon Date: Tue, 19 Nov 2024 13:55:39 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E7=AE=97=E6=B3=95=E5=B9=B3=E5=8F=B0Service?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/ChargeAlgorithmService.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/ChargeAlgorithmService.java diff --git a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/ChargeAlgorithmService.java b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/ChargeAlgorithmService.java new file mode 100644 index 000000000..806680454 --- /dev/null +++ b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/ChargeAlgorithmService.java @@ -0,0 +1,13 @@ +package com.jsowell.thirdparty.platform.service.impl; + +import org.springframework.stereotype.Service; + +/** + * 订单算法平台Service + * + * @author Lemon + * @Date 2024/11/19 13:49:45 + */ +@Service +public class ChargeAlgorithmService { +} From d5b01a7b490a6bee162488bfe702dd87b462619d Mon Sep 17 00:00:00 2001 From: Guoqs <123@jsowell.com> Date: Tue, 19 Nov 2024 14:55:31 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E4=BF=9D=E5=AD=98soc=E5=B7=A5=E5=85=B7?= =?UTF-8?q?=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../test/java/SpringBootTestController.java | 14 +++++- .../common/constant/CacheConstants.java | 3 ++ .../com/jsowell/common/util/YKCUtils.java | 45 +++++++++++++++---- 3 files changed, 53 insertions(+), 9 deletions(-) diff --git a/jsowell-admin/src/test/java/SpringBootTestController.java b/jsowell-admin/src/test/java/SpringBootTestController.java index eea75b1d7..d6ab436f8 100644 --- a/jsowell-admin/src/test/java/SpringBootTestController.java +++ b/jsowell-admin/src/test/java/SpringBootTestController.java @@ -100,7 +100,6 @@ import org.springframework.util.StopWatch; import java.io.UnsupportedEncodingException; import java.math.BigDecimal; -import java.math.RoundingMode; import java.nio.charset.StandardCharsets; import java.text.ParseException; import java.text.SimpleDateFormat; @@ -274,6 +273,19 @@ public class SpringBootTestController { @Qualifier("zhongDianLianPlatformServiceImpl") private ThirdPartyPlatformService platformLogic; + @Test + public void saveSOCTest() { + String transactionCode = "123"; + YKCUtils.saveSOC(transactionCode, "4"); + YKCUtils.saveSOC(transactionCode, "3"); + YKCUtils.saveSOC(transactionCode, "5"); + YKCUtils.saveSOC(transactionCode, "10"); + YKCUtils.saveSOC(transactionCode, "20"); + YKCUtils.saveSOC(transactionCode, "19.9"); + YKCUtils.saveSOC(transactionCode, "29.9"); + System.out.println(redisCache.getCacheMap(CacheConstants.GET_THE_SOC + transactionCode)); + } + @Test public void queryStationStatus() { QueryStationInfoDTO dto = new QueryStationInfoDTO(); diff --git a/jsowell-common/src/main/java/com/jsowell/common/constant/CacheConstants.java b/jsowell-common/src/main/java/com/jsowell/common/constant/CacheConstants.java index ec0c1f1da..10d374ee3 100644 --- a/jsowell-common/src/main/java/com/jsowell/common/constant/CacheConstants.java +++ b/jsowell-common/src/main/java/com/jsowell/common/constant/CacheConstants.java @@ -47,6 +47,9 @@ public class CacheConstants { // 缓存时间 30天 public static final int cache_expire_time_30d = cache_expire_time_1d * 30; + // 获取SOC + public static final String GET_THE_SOC = "GET_THE_SOC:"; + // 第三方平台密钥配置 public static final String THIRD_PARTY_SECRET_INFO_BY_ID = "third_party_secret_info_by_id:"; public static final String THIRD_PARTY_SECRET_INFO_BY_TYPE = "third_party_secret_info_by_type:"; diff --git a/jsowell-common/src/main/java/com/jsowell/common/util/YKCUtils.java b/jsowell-common/src/main/java/com/jsowell/common/util/YKCUtils.java index 7a8f575f0..277fcebb2 100644 --- a/jsowell-common/src/main/java/com/jsowell/common/util/YKCUtils.java +++ b/jsowell-common/src/main/java/com/jsowell/common/util/YKCUtils.java @@ -7,6 +7,7 @@ import com.jsowell.common.constant.Constants; import com.jsowell.common.core.domain.ykc.YKCBaseMessage; import com.jsowell.common.core.domain.ykc.YKCDataProtocol; import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode; +import com.jsowell.common.core.redis.RedisCache; import com.jsowell.common.core.redis.StaticRedisCache; import com.jsowell.common.enums.ykc.PileChannelEntity; import com.jsowell.common.enums.ykc.ReturnCodeEnum; @@ -16,6 +17,7 @@ import lombok.extern.slf4j.Slf4j; import java.math.BigDecimal; import java.util.Map; +import java.util.concurrent.TimeUnit; @Slf4j public class YKCUtils { @@ -135,14 +137,6 @@ public class YKCUtils { return Bytes.concat(headBytes, BytesUtil.intToBytes(dataFields.length, 1), dataFields, BytesUtil.intToBytes(crc16)); } - public static void main(String[] args) { - String type = "0x3B"; - System.out.println(type); - byte[] bytes = BytesUtil.hexString2Bytes(type.replace("0x", "")); - System.out.println(YKCUtils.frameType2Str(bytes)); - - } - /** * 保存桩最后链接到平台的时间 * @param pileSn 桩编号 @@ -337,4 +331,39 @@ public class YKCUtils { return map.get("connectorCode"); } + /** + * 保存soc + * @param transactionCode + * @param soc + */ + public static void saveSOC(String transactionCode, String soc) { + String hashKey = CacheConstants.GET_THE_SOC + transactionCode; + RedisCache staticRedisCache = StaticRedisCache.staticRedisCache; + try { + // 检查值是否符合要求 + if (!soc.matches("^-?\\d+(\\.\\d{1})?$")) { + throw new IllegalArgumentException("输入的值必须是一个最多有一位小数的数字: " + soc); + } + double doubleValue = Double.parseDouble(soc); + // 获取当前的最小值和最大值 + String currentMin = (String) staticRedisCache.hget(hashKey, "min"); + String currentMax = (String) staticRedisCache.hget(hashKey, "max"); + + double min = currentMin != null ? Double.parseDouble(currentMin) : Double.MAX_VALUE; + double max = currentMax != null ? Double.parseDouble(currentMax) : Double.MIN_VALUE; + + // 更新最小值或最大值 + if (doubleValue < min) { + staticRedisCache.hset(hashKey, "min", soc, 7, TimeUnit.DAYS); + } + if (doubleValue > max) { + staticRedisCache.hset(hashKey, "max", soc, 7, TimeUnit.DAYS); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + + + } From 4df6a9f53ad7ef87b43f356e58d1e022e8a63b5c Mon Sep 17 00:00:00 2001 From: Guoqs <123@jsowell.com> Date: Tue, 19 Nov 2024 15:41:32 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E4=BF=9D=E5=AD=98soc=E5=B7=A5=E5=85=B7?= =?UTF-8?q?=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jsowell-admin/src/test/java/SpringBootTestController.java | 3 ++- .../src/main/java/com/jsowell/common/util/YKCUtils.java | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/jsowell-admin/src/test/java/SpringBootTestController.java b/jsowell-admin/src/test/java/SpringBootTestController.java index d6ab436f8..98bc2258d 100644 --- a/jsowell-admin/src/test/java/SpringBootTestController.java +++ b/jsowell-admin/src/test/java/SpringBootTestController.java @@ -275,8 +275,9 @@ public class SpringBootTestController { @Test public void saveSOCTest() { - String transactionCode = "123"; + String transactionCode = "12345"; YKCUtils.saveSOC(transactionCode, "4"); + YKCUtils.saveSOC(transactionCode, "1"); YKCUtils.saveSOC(transactionCode, "3"); YKCUtils.saveSOC(transactionCode, "5"); YKCUtils.saveSOC(transactionCode, "10"); diff --git a/jsowell-common/src/main/java/com/jsowell/common/util/YKCUtils.java b/jsowell-common/src/main/java/com/jsowell/common/util/YKCUtils.java index 277fcebb2..6bb9e544d 100644 --- a/jsowell-common/src/main/java/com/jsowell/common/util/YKCUtils.java +++ b/jsowell-common/src/main/java/com/jsowell/common/util/YKCUtils.java @@ -337,6 +337,10 @@ public class YKCUtils { * @param soc */ public static void saveSOC(String transactionCode, String soc) { + if (StringUtils.isBlank(transactionCode) || Double.parseDouble(soc) <= 0) { + return; + } + String hashKey = CacheConstants.GET_THE_SOC + transactionCode; RedisCache staticRedisCache = StaticRedisCache.staticRedisCache; try { From 54d9a4e91e99128b804193e6fd13a9946d0a3006 Mon Sep 17 00:00:00 2001 From: Guoqs <123@jsowell.com> Date: Tue, 19 Nov 2024 16:20:10 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E4=BF=9D=E5=AD=98=E8=93=9D=E7=89=99?= =?UTF-8?q?=E5=85=85=E7=94=B5=E8=AE=B0=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../uniapp/customer/PersonPileController.java | 27 ++++ .../com/jsowell/service/OrderService.java | 7 + .../com/jsowell/common/util/YKCUtils.java | 12 +- .../pile/dto/BluetoothChargingRecordDTO.java | 138 ++++++++++++++++++ 4 files changed, 183 insertions(+), 1 deletion(-) create mode 100644 jsowell-pile/src/main/java/com/jsowell/pile/dto/BluetoothChargingRecordDTO.java diff --git a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/PersonPileController.java b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/PersonPileController.java index bd39fc4dc..33c15729b 100644 --- a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/PersonPileController.java +++ b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/PersonPileController.java @@ -18,6 +18,7 @@ import com.jsowell.pile.vo.PileReservationInfoVO; import com.jsowell.pile.vo.uniapp.customer.PersonPileConnectorSumInfoVO; import com.jsowell.pile.vo.uniapp.customer.PersonPileRealTimeVO; import com.jsowell.pile.vo.uniapp.customer.PersonalPileInfoVO; +import com.jsowell.service.OrderService; import com.jsowell.service.PileService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -39,6 +40,9 @@ public class PersonPileController extends BaseController { @Autowired private PileService pileService; + @Autowired + private OrderService orderService; + @Autowired private PileMerchantInfoService pileMerchantInfoService; @@ -482,4 +486,27 @@ public class PersonPileController extends BaseController { logger.info("根据充电桩查询预约状态params:{}, result:{}", dto, JSON.toJSONString(response)); return response; } + + /** + * 保存蓝牙充电记录 + * http://localhost:8080/uniapp/personalPile/saveBluetoothChargingRecord + */ + @PostMapping("/saveBluetoothChargingRecord") + public RestApiResponse saveBluetoothChargingRecord(HttpServletRequest request, @RequestBody BluetoothChargingRecordDTO dto) { + RestApiResponse response = null; + try { + String memberId = getMemberIdByAuthorization(request); + dto.setMemberId(memberId); + orderService.saveBluetoothChargingRecord(dto); + response = new RestApiResponse<>(); + } catch (BusinessException e) { + logger.error("保存蓝牙充电记录error, params:{}", dto, e); + response = new RestApiResponse<>(e.getCode(), e.getMessage()); + } catch (Exception e) { + logger.error("保存蓝牙充电记录error, params:{}", dto, e); + response = new RestApiResponse<>(ReturnCodeEnum.CODE_QUERY_RESERVATION_STATUS_ERROR); + } + logger.info("保存蓝牙充电记录params:{}, result:{}", dto, JSON.toJSONString(response)); + return response; + } } diff --git a/jsowell-admin/src/main/java/com/jsowell/service/OrderService.java b/jsowell-admin/src/main/java/com/jsowell/service/OrderService.java index 6dcc3162f..5fff245d9 100644 --- a/jsowell-admin/src/main/java/com/jsowell/service/OrderService.java +++ b/jsowell-admin/src/main/java/com/jsowell/service/OrderService.java @@ -1445,4 +1445,11 @@ public class OrderService { // } return true; } + + /** + * 保存蓝牙充电记录 + * @param dto + */ + public void saveBluetoothChargingRecord(BluetoothChargingRecordDTO dto) { + } } diff --git a/jsowell-common/src/main/java/com/jsowell/common/util/YKCUtils.java b/jsowell-common/src/main/java/com/jsowell/common/util/YKCUtils.java index 6bb9e544d..ff345ecb4 100644 --- a/jsowell-common/src/main/java/com/jsowell/common/util/YKCUtils.java +++ b/jsowell-common/src/main/java/com/jsowell/common/util/YKCUtils.java @@ -368,6 +368,16 @@ public class YKCUtils { } } - + /** + * 根据的交易码获取当前soc + * @param transactionCode + */ + public static String getCurrentSOC(String transactionCode) { + String hashKey = CacheConstants.GET_THE_SOC + transactionCode; + RedisCache staticRedisCache = StaticRedisCache.staticRedisCache; + Map cacheMap = staticRedisCache.getCacheMap(hashKey); + // 获取最小值和最大值, 两个值中最大的为当前soc + return (String) cacheMap.get("max"); + } } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/dto/BluetoothChargingRecordDTO.java b/jsowell-pile/src/main/java/com/jsowell/pile/dto/BluetoothChargingRecordDTO.java new file mode 100644 index 000000000..1feae3ff2 --- /dev/null +++ b/jsowell-pile/src/main/java/com/jsowell/pile/dto/BluetoothChargingRecordDTO.java @@ -0,0 +1,138 @@ +package com.jsowell.pile.dto; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +/** + * 蓝牙充电记录 + */ +@Data +public class BluetoothChargingRecordDTO { + // 会员id + private String memberId; + + // 充电流水号 + @JsonProperty(value = "TrxSN") + private String trxSN; + + // 桩号 + @JsonProperty(value = "PileNo") + private String pileNo; + + // 枪号 + @JsonProperty(value = "PlugNo") + private String plugNo; + + // 启动充电时间 + @JsonProperty(value = "StartTime") + private String startTime; + + // 结束充电时间 + @JsonProperty(value = "EndTime") + private String endTime; + + // 尖单价 + @JsonProperty(value = "PriceSharp") + private String priceSharp; + + // 尖电量 + @JsonProperty(value = "EnergySharp") + private String energySharp; + + // 记损尖电量 + @JsonProperty(value = "LossKwhSharp") + private String lossKwhSharp; + + // 尖金额 + @JsonProperty(value = "MoneySharp") + private String moneySharp; + + // 峰单价 + @JsonProperty(value = "PricePeak") + private String pricePeak; + + // 峰电量 + @JsonProperty(value = "EnergyPeak") + private String energyPeak; + + // 记损峰电量 + @JsonProperty(value = "LossKwhPeak") + private String lossKwhPeak; + + // 峰金额 + @JsonProperty(value = "MoneyPeak") + private String moneyPeak; + + // 平单价 + @JsonProperty(value = "PriceFlat") + private String priceFlat; + + // 平电量 + @JsonProperty(value = "EnergyFlat") + private String energyFlat; + + // 记损平电量 + @JsonProperty(value = "LossKwhFlat") + private String lossKwhFlat; + + // 平金额 + @JsonProperty(value = "MoneyFlat") + private String moneyFlat; + + // 谷单价 + @JsonProperty(value = "PriceValley") + private String priceValley; + + // 谷电量 + @JsonProperty(value = "EnergyValley") + private String energyValley; + + // 记损谷电量 + @JsonProperty(value = "LossKwhValley") + private String lossKwhValley; + + // 谷金额 + @JsonProperty(value = "MoneyValley") + private String moneyValley; + + + // 电表总起值 + @JsonProperty(value = "StartKwh") + private String startKwh; + + // 电表总止值 + @JsonProperty(value = "StopKwh") + private String stopKwh; + + // 总电量 + @JsonProperty(value = "TotalEnergy") + private String totalEnergy; + + // 记损总电量 + @JsonProperty(value = "LossTotalKwh") + private String lossTotalKwh; + + // 消费金额 + @JsonProperty(value = "TotalMoney") + private String totalMoney; + + // 电动汽车唯一标识 + @JsonProperty(value = "VIN") + private String vin; + + // 电动汽车唯一标识 + @JsonProperty(value = "StartMode") + private String startMode; + + // 交易日期时间 + @JsonProperty(value = "TradeTime") + private String tradeTime; + + // 停止原因 + @JsonProperty(value = "StopReason") + private String stopReason; + + // 物理卡号 + @JsonProperty(value = "PCardID") + private String pCardID; +} From 5ee790320488af8869c049a2630de2146b9cbae5 Mon Sep 17 00:00:00 2001 From: Guoqs <123@jsowell.com> Date: Tue, 19 Nov 2024 17:11:07 +0800 Subject: [PATCH 5/5] =?UTF-8?q?update=20=E8=8E=B7=E5=8F=96=E4=B8=AA?= =?UTF-8?q?=E4=BA=BA=E6=A1=A9=E5=85=85=E7=94=B5=E8=AE=B0=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../uniapp/customer/PersonPileController.java | 2 +- .../java/com/jsowell/service/PileService.java | 56 ++++++++++++++----- .../mapper/PersonalChargingRecordMapper.java | 6 +- .../PersonalChargingRecordService.java | 10 +++- .../PersonalChargingRecordServiceImpl.java | 13 ++++- .../pile/PersonalChargingRecordMapper.xml | 11 ++++ 6 files changed, 77 insertions(+), 21 deletions(-) diff --git a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/PersonPileController.java b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/PersonPileController.java index 33c15729b..be6dd77d0 100644 --- a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/PersonPileController.java +++ b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/PersonPileController.java @@ -272,7 +272,7 @@ public class PersonPileController extends BaseController { try { String memberId = getMemberIdByAuthorization(request); dto.setMemberId(memberId); - PageResponse chargingRecord = pileService.getChargingRecord(dto); + PageResponse chargingRecord = pileService.getChargingRecordV2(dto); response = new RestApiResponse<>(chargingRecord); } catch (BusinessException e) { logger.error("获取个人桩充电记录 error", e); diff --git a/jsowell-admin/src/main/java/com/jsowell/service/PileService.java b/jsowell-admin/src/main/java/com/jsowell/service/PileService.java index 9659b6030..d3a983084 100644 --- a/jsowell-admin/src/main/java/com/jsowell/service/PileService.java +++ b/jsowell-admin/src/main/java/com/jsowell/service/PileService.java @@ -86,6 +86,9 @@ public class PileService { @Autowired private PileReservationInfoService pileReservationInfoService; + @Autowired + private PersonalChargingRecordService personalChargingRecordService; + /** * 查询设备信息 * @@ -570,20 +573,6 @@ public class PileService { if (CollectionUtils.isEmpty(accumulativeInfo)) { throw new BusinessException(ReturnCodeEnum.CODE_QUERY_ORDER_INFO_IS_NULL); } - // BigDecimal sumChargingTime = BigDecimal.ZERO; - // BigDecimal sumUsedElectricity = BigDecimal.ZERO; - // // 将返回的结果进行for循环,将总充电量、总充电时长进行累加(充电时长需要通过 充电开始时间 和 充电结束时间 进行计算) - // for (PersonPileConnectorSumInfoVO personPileConnectorSumInfoVO : accumulativeInfo) { - // if (StringUtils.isNotBlank(personPileConnectorSumInfoVO.getChargeStartTime()) && StringUtils.isNotBlank(personPileConnectorSumInfoVO.getChargeEndTime())){ - // long longChargingTime = DateUtils.intervalTime(personPileConnectorSumInfoVO.getChargeStartTime(), personPileConnectorSumInfoVO.getChargeEndTime()); - // BigDecimal chargingTime = new BigDecimal(String.valueOf(longChargingTime)); - // sumChargingTime = sumChargingTime.add(chargingTime); - // } - // BigDecimal chargingDegree = StringUtils.isBlank(personPileConnectorSumInfoVO.getSumChargingDegree()) - // ? BigDecimal.ZERO - // : new BigDecimal(personPileConnectorSumInfoVO.getSumChargingDegree()); - // sumUsedElectricity = sumUsedElectricity.add(chargingDegree); - // } Map sumInfo = getSumInfo(accumulativeInfo); // set 对象 PersonPileConnectorSumInfoVO vo = new PersonPileConnectorSumInfoVO(); @@ -632,6 +621,45 @@ public class PileService { .build(); } + public PageResponse getChargingRecordV2(QueryPersonPileDTO dto) { + int pageNum = dto.getPageNum() == 0 ? 1 : dto.getPageNum(); + int pageSize = dto.getPageSize() == 0 ? 10 : dto.getPageSize(); + // 获取三十天前的数据 + Date date = DateUtils.addMonths(new Date(), -1); + String dateStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, date); + dto.setStartTime(dateStr); + dto.setEndTime(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, new Date())); + + // 分页查询 + PageHelper.startPage(pageNum, pageSize); + List personalChargingRecordList = personalChargingRecordService.getPersonalChargingRecord(dto); + if (CollectionUtils.isEmpty(personalChargingRecordList)) { + throw new BusinessException(ReturnCodeEnum.CODE_QUERY_ORDER_INFO_IS_NULL); + } + PageInfo pageInfo = new PageInfo<>(personalChargingRecordList); + List list = Lists.newArrayList(); + PersonPileConnectorSumInfoVO vo; + for (PersonalChargingRecord personalChargingRecord : pageInfo.getList()) { + vo = new PersonPileConnectorSumInfoVO(); + if (personalChargingRecord.getChargeStartTime() != null && personalChargingRecord.getChargeEndTime() != null){ + vo.setChargeStartTime(DateUtils.dateTime(personalChargingRecord.getChargeStartTime())); + vo.setChargeEndTime(DateUtils.dateTime(personalChargingRecord.getChargeEndTime())); + String datePoor = DateUtils.getDatePoor(personalChargingRecord.getChargeEndTime(), personalChargingRecord.getChargeStartTime()); + vo.setSumChargingTime(datePoor); + } + vo.setMemberId(personalChargingRecord.getMemberId()); + vo.setSumChargingDegree(personalChargingRecord.getTotalUsedElectricity().toString()); + list.add(vo); + } + return PageResponse.builder() + .pageNum(pageInfo.getPageNum()) + .pageSize(pageInfo.getPageSize()) + .list(list) + .pages(pageInfo.getPages()) + .total(pageInfo.getTotal()) + .build(); + } + /** * 获取总充电时长、总充电量 * diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/mapper/PersonalChargingRecordMapper.java b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/PersonalChargingRecordMapper.java index b3ad24b8b..e064d81f2 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/mapper/PersonalChargingRecordMapper.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/PersonalChargingRecordMapper.java @@ -1,9 +1,11 @@ package com.jsowell.pile.mapper; import com.jsowell.pile.domain.PersonalChargingRecord; -import java.util.List; +import com.jsowell.pile.dto.QueryPersonPileDTO; import org.apache.ibatis.annotations.Param; +import java.util.List; + public interface PersonalChargingRecordMapper { int deleteByPrimaryKey(Integer id); @@ -28,4 +30,6 @@ public interface PersonalChargingRecordMapper { int batchInsert(@Param("list") List list); PersonalChargingRecord selectByTransactionCode(String transactionCode); + + List getPersonalChargingRecord(QueryPersonPileDTO dto); } \ No newline at end of file diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/PersonalChargingRecordService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/PersonalChargingRecordService.java index 2c1e5a179..c73a96778 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/PersonalChargingRecordService.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/PersonalChargingRecordService.java @@ -1,10 +1,11 @@ package com.jsowell.pile.service; -import java.util.List; - import com.jsowell.common.core.domain.ykc.TransactionRecordsData; import com.jsowell.pile.domain.OrderBasicInfo; import com.jsowell.pile.domain.PersonalChargingRecord; +import com.jsowell.pile.dto.QueryPersonPileDTO; + +import java.util.List; public interface PersonalChargingRecordService{ @@ -38,4 +39,9 @@ public interface PersonalChargingRecordService{ void processPersonalChargingRecord(TransactionRecordsData data); void processPersonalChargingRecord(OrderBasicInfo orderBasicInfo); + + /** + * 获取个人桩充电记录 + */ + List getPersonalChargingRecord(QueryPersonPileDTO dto); } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PersonalChargingRecordServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PersonalChargingRecordServiceImpl.java index cd8a45f8f..8a93adc98 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PersonalChargingRecordServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PersonalChargingRecordServiceImpl.java @@ -4,16 +4,18 @@ import com.jsowell.common.constant.Constants; import com.jsowell.common.core.domain.ykc.TransactionRecordsData; import com.jsowell.common.util.DateUtils; import com.jsowell.pile.domain.OrderBasicInfo; +import com.jsowell.pile.domain.PersonalChargingRecord; import com.jsowell.pile.domain.PileBasicInfo; +import com.jsowell.pile.dto.QueryPersonPileDTO; +import com.jsowell.pile.mapper.PersonalChargingRecordMapper; +import com.jsowell.pile.service.PersonalChargingRecordService; import com.jsowell.pile.service.PileBasicInfoService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; + import javax.annotation.Resource; import java.math.BigDecimal; import java.util.List; -import com.jsowell.pile.mapper.PersonalChargingRecordMapper; -import com.jsowell.pile.domain.PersonalChargingRecord; -import com.jsowell.pile.service.PersonalChargingRecordService; @Service public class PersonalChargingRecordServiceImpl implements PersonalChargingRecordService{ @@ -177,4 +179,9 @@ public class PersonalChargingRecordServiceImpl implements PersonalChargingRecord personalChargingRecordMapper.insertOrUpdateSelective(chargingRecord); } + @Override + public List getPersonalChargingRecord(QueryPersonPileDTO dto) { + return personalChargingRecordMapper.getPersonalChargingRecord(dto); + } + } diff --git a/jsowell-pile/src/main/resources/mapper/pile/PersonalChargingRecordMapper.xml b/jsowell-pile/src/main/resources/mapper/pile/PersonalChargingRecordMapper.xml index 07d4c4669..47cac591f 100644 --- a/jsowell-pile/src/main/resources/mapper/pile/PersonalChargingRecordMapper.xml +++ b/jsowell-pile/src/main/resources/mapper/pile/PersonalChargingRecordMapper.xml @@ -1220,4 +1220,15 @@ where del_flag = '0' and transaction_code = #{transactionCode,jdbcType=VARCHAR} + + \ No newline at end of file