From 0e0bdbe8685587ac50507ae05223444dedc9bcdc Mon Sep 17 00:00:00 2001 From: Lemon Date: Fri, 14 Mar 2025 08:23:32 +0800 Subject: [PATCH 01/13] =?UTF-8?q?update=20=20=E8=81=94=E8=81=94=E5=B9=B3?= =?UTF-8?q?=E5=8F=B0Service?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../platform/service/impl/LianLianPlatformServiceImpl.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/LianLianPlatformServiceImpl.java b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/LianLianPlatformServiceImpl.java index d69c45339..e0c0f92e1 100644 --- a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/LianLianPlatformServiceImpl.java +++ b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/LianLianPlatformServiceImpl.java @@ -1016,9 +1016,9 @@ public class LianLianPlatformServiceImpl implements ThirdPartyPlatformService { return null; } // 调用联联平台接口 - JSONObject json = new JSONObject(); - json.put("OrderInfo", orderInfo); - String jsonString = JSON.toJSONString(json); + // JSONObject json = new JSONObject(); + // json.put("OrderInfo", orderInfo); + String jsonString = JSON.toJSONString(orderInfo); String result = HttpRequestUtil.sendPost(token, jsonString, url, dataSecret, dataSecretIv, operatorId, signSecret); return result; } From 5900696d42cf04373f9866612a11e24d7532b178 Mon Sep 17 00:00:00 2001 From: "BOOL\\25024" Date: Fri, 14 Mar 2025 17:06:14 +0800 Subject: [PATCH 02/13] =?UTF-8?q?=E4=B8=87=E8=BD=A6=E5=85=85=E5=B0=8F?= =?UTF-8?q?=E7=A8=8B=E5=BA=8F=E6=8E=A5=E5=8F=A3=E8=A1=A5=E5=85=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/万车充接口补充.md | 93 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 93 insertions(+) create mode 100644 doc/万车充接口补充.md diff --git a/doc/万车充接口补充.md b/doc/万车充接口补充.md new file mode 100644 index 000000000..c1148b3ad --- /dev/null +++ b/doc/万车充接口补充.md @@ -0,0 +1,93 @@ +# 首页站点筛选 + +``` +接口地址: +请求方式: +``` + +**入参** + +| 字段名 | 类型 | 是否必传 | 备注 | +| ------ | ---- | -------- | ---- | +| | | | | + +**反参** + +| 字段名 | 类型 | 是否必传 | 备注 | +| ------ | ---- | -------- | ---- | +| | | | | + +# 首页站点列表 + +``` +接口地址:/uniapp/pile/queryStationInfos +``` + +**加字段:**当前站点最近充电的一次时间 + +**加字段:**异常设备数量 + +# 站点详情枪口信息 + +``` +接口地址:uniapp/pile/selectStationConnectorList +``` + +**实现:**根据前端传入的枪口状态参数,动态返回匹配的实时数据信息,实现状态与数据的精准响应。 + +# 查询站点收藏 + +``` +接口地址: +请求方式: +``` + +**入参** + +| 字段名 | 类型 | 是否必传 | 备注 | +| ------ | ---- | -------- | ---- | +| | | | | + +**反参** + +| 字段名 | 类型 | 是否必传 | 备注 | +| ------ | ---- | -------- | ---- | +| | | | | + +# (添加/删除) 站点收藏 + +``` +接口地址: +请求方式: +``` + +**入参** + +| 字段名 | 类型 | 是否必传 | 备注 | +| ------ | ---- | -------- | ---- | +| | | | | + +**反参** + +| 字段名 | 类型 | 是否必传 | 备注 | +| ------ | ---- | -------- | ---- | +| | | | | + +# 查询用户常去站点 + +``` +接口地址: +请求方式: +``` + +**入参** + +| 字段名 | 类型 | 是否必传 | 备注 | +| ------ | ---- | -------- | ---- | +| | | | | + +**反参** + +| 字段名 | 类型 | 是否必传 | 备注 | +| ------ | ---- | -------- | ---- | +| | | | | \ No newline at end of file From 8d769352aec742e79764100175b639b8ac514982 Mon Sep 17 00:00:00 2001 From: Lemon Date: Mon, 17 Mar 2025 09:01:00 +0800 Subject: [PATCH 03/13] =?UTF-8?q?update=20=20=E6=96=B0=E7=94=B5=E9=80=94?= =?UTF-8?q?=E5=B9=B3=E5=8F=B0Service?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jsowell/api/thirdparty/XDTController.java | 68 +++++++--- .../jsowell/pile/dto/PushInfoParamDTO.java | 6 +- .../impl/XinDiantuPlatfromServiceImpl.java | 125 +++++++++++------- 3 files changed, 132 insertions(+), 67 deletions(-) diff --git a/jsowell-admin/src/main/java/com/jsowell/api/thirdparty/XDTController.java b/jsowell-admin/src/main/java/com/jsowell/api/thirdparty/XDTController.java index c3f4a8c1d..58a69ff22 100644 --- a/jsowell-admin/src/main/java/com/jsowell/api/thirdparty/XDTController.java +++ b/jsowell-admin/src/main/java/com/jsowell/api/thirdparty/XDTController.java @@ -25,6 +25,7 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import java.io.UnsupportedEncodingException; import java.nio.charset.StandardCharsets; +import java.util.List; import java.util.Map; /** @@ -46,8 +47,8 @@ public class XDTController extends ThirdPartyBaseController { @Qualifier("xinDiantuPlatfromServiceImpl") private ThirdPartyPlatformService platformLogic; - // @Autowired - // private XDTService xdtService; + @Autowired + private XDTService xdtService; /** * 获取token接口 @@ -372,23 +373,52 @@ public class XDTController extends ThirdPartyBaseController { * @param orderCode * @return */ - // @GetMapping("/pushChargeOrderInfo/{orderCode}") - // public RestApiResponse pushChargeOrderInfo(@PathVariable("orderCode") String orderCode) { - // logger.info("新电途平台推送充电订单信息 params:{}", orderCode); - // RestApiResponse response = null; - // try { - // String result = xdtService.pushChargeOrderInfo(orderCode); - // response = new RestApiResponse<>(result); - // }catch (BusinessException e) { - // logger.error("新电途平台推送充电订单信息 error",e); - // response = new RestApiResponse<>(e.getCode(), e.getMessage()); - // }catch (Exception e) { - // logger.error("新电途平台推送充电订单信息 error", e); - // response = new RestApiResponse<>(e); - // } - // logger.info("新电途平台推送充电订单信息 result:{}", response); - // return response; - // } + @GetMapping("/pushChargeOrderInfo/{orderCode}") + public RestApiResponse pushChargeOrderInfo(@PathVariable("orderCode") String orderCode) { + logger.info("新电途平台推送充电订单信息 params:{}", orderCode); + RestApiResponse response = null; + try { + // String result = xdtService.pushChargeOrderInfo(orderCode); + String result = platformLogic.notificationChargeOrderInfo(orderCode); + response = new RestApiResponse<>(result); + }catch (BusinessException e) { + logger.error("新电途平台推送充电订单信息 error",e); + response = new RestApiResponse<>(e.getCode(), e.getMessage()); + }catch (Exception e) { + logger.error("新电途平台推送充电订单信息 error", e); + response = new RestApiResponse<>(e); + } + logger.info("新电途平台推送充电订单信息 result:{}", response); + return response; + } + + + /** + * 批量推送订单接口 + * @param dto + * @return + */ + @PostMapping("/pushChargeOrderInfoList") + public RestApiResponse pushChargeOrderInfoList(@RequestBody PushInfoParamDTO dto) { + logger.info("新电途平台批量推送充电订单信息 params:{}", JSON.toJSONString(dto)); + RestApiResponse response = null; + try { + List orderCodeList = dto.getOrderCodeList(); + for (String orderCode : orderCodeList) { + String result = platformLogic.notificationChargeOrderInfo(orderCode); + logger.info("新电途平台批量推送充电订单信息 result:{}", result); + } + response = new RestApiResponse<>(); + }catch (BusinessException e) { + logger.error("新电途平台批量推送充电订单信息 error",e); + response = new RestApiResponse<>(e.getCode(), e.getMessage()); + }catch (Exception e) { + logger.error("新电途平台批量推送充电订单信息 error", e); + response = new RestApiResponse<>(e); + } + logger.info("新电途平台批量推送充电订单信息 result:{}", response); + return response; + } /** * 新电途推送充电状态 diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/dto/PushInfoParamDTO.java b/jsowell-pile/src/main/java/com/jsowell/pile/dto/PushInfoParamDTO.java index 64a78061f..e8022e321 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/dto/PushInfoParamDTO.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/dto/PushInfoParamDTO.java @@ -2,8 +2,10 @@ package com.jsowell.pile.dto; import lombok.Data; +import java.util.List; + /** - * 练练平台推送信息参数DTO + * 平台推送信息参数DTO * * @author JS-ZZA * @date 2023/5/26 9:26 @@ -15,4 +17,6 @@ public class PushInfoParamDTO { private String status; private String stationId; + + private List orderCodeList; } diff --git a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/XinDiantuPlatfromServiceImpl.java b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/XinDiantuPlatfromServiceImpl.java index de0bfba7b..0adb4b7c8 100644 --- a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/XinDiantuPlatfromServiceImpl.java +++ b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/XinDiantuPlatfromServiceImpl.java @@ -15,10 +15,7 @@ import com.jsowell.common.enums.ykc.PileConnectorDataBaseStatusEnum; import com.jsowell.common.enums.ykc.ReturnCodeEnum; import com.jsowell.common.exception.BusinessException; import com.jsowell.common.util.*; -import com.jsowell.pile.domain.OrderBasicInfo; -import com.jsowell.pile.domain.OrderDetail; -import com.jsowell.pile.domain.PileBasicInfo; -import com.jsowell.pile.domain.ThirdPartyPlatformConfig; +import com.jsowell.pile.domain.*; import com.jsowell.pile.domain.ykcCommond.StartChargingCommand; import com.jsowell.pile.dto.*; import com.jsowell.pile.service.*; @@ -27,6 +24,7 @@ import com.jsowell.pile.thirdparty.EquipmentInfo; import com.jsowell.pile.util.MerchantUtils; import com.jsowell.pile.vo.ThirdPartySecretInfoVO; import com.jsowell.pile.vo.base.ThirdPartyStationInfoVO; +import com.jsowell.pile.vo.base.ThirdPartyStationRelationVO; import com.jsowell.pile.vo.lianlian.AccumulativeInfoVO; import com.jsowell.pile.vo.uniapp.customer.BillingPriceVO; import com.jsowell.pile.vo.web.PileConnectorInfoVO; @@ -46,15 +44,17 @@ import com.jsowell.thirdparty.platform.factory.ThirdPartyPlatformFactory; import com.jsowell.thirdparty.platform.service.ThirdPartyPlatformService; import com.jsowell.thirdparty.platform.util.*; import com.jsowell.thirdparty.service.ThirdpartySecretInfoService; +import com.jsowell.thirdparty.yongchengboche.dto.YCBCGetTokenDTO; import org.apache.commons.collections4.CollectionUtils; +import org.bouncycastle.crypto.CryptoException; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; +import java.security.NoSuchAlgorithmException; +import java.security.NoSuchProviderException; +import java.security.spec.InvalidKeySpecException; +import java.util.*; import java.util.stream.Collectors; /** @@ -497,15 +497,14 @@ public class XinDiantuPlatfromServiceImpl implements ThirdPartyPlatformService { /** * 推送充电订单信息 - * supervise_notification_charge_order_info + * notification_charge_order_info */ @Override public String notificationChargeOrderInfo(String orderCode, ThirdPartySecretInfoVO secretInfoVO) { - // 根据订单号查询出信息 OrderBasicInfo orderBasicInfo = orderBasicInfoService.getOrderInfoByOrderCode(orderCode); - if (orderBasicInfo == null) { - return null; - } + OrderDetail orderDetail = orderBasicInfoService.getOrderDetailByOrderCode(orderCode); + + ThirdPartySecretInfoVO thirdPartySecretInfoVO = getXinDiantuPlatformSecretInfo(); String operatorId = Constants.OPERATORID_JIANG_SU; String operatorSecret = secretInfoVO.getTheirOperatorSecret(); @@ -514,47 +513,79 @@ public class XinDiantuPlatfromServiceImpl implements ThirdPartyPlatformService { String dataSecretIv = secretInfoVO.getTheirDataSecretIv(); String urlAddress = secretInfoVO.getTheirUrlPrefix(); - // 根据订单号查询订单详情 - OrderDetail orderDetail = orderBasicInfoService.getOrderDetailByOrderCode(orderCode); - if (orderDetail == null) { - return null; + String url = urlAddress + BusinessInformationExchangeEnum.NOTIFICATION_CHARGE_ORDER_INFO.getValue(); + Date chargeStartTime = orderBasicInfo.getChargeStartTime(); + if (chargeStartTime == null) { + chargeStartTime = orderBasicInfo.getCreateTime(); + } + Date chargeEndTime = orderBasicInfo.getChargeEndTime(); + if (chargeEndTime == null) { + chargeEndTime = orderBasicInfo.getCreateTime(); } - // 推送地址 - String url = urlAddress + "supervise_notification_charge_order_info"; + JSONObject json = new JSONObject(); + json.put("StartChargeSeq", orderCode); + json.put("ConnectorID", orderBasicInfo.getPileConnectorCode()); + json.put("StartTime", DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, chargeStartTime)); + json.put("EndTime", DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, chargeEndTime)); + json.put("TotalPower", orderDetail.getTotalUsedElectricity().setScale(2, BigDecimal.ROUND_HALF_UP)); + json.put("TotalElecMoney", orderDetail.getTotalElectricityAmount().setScale(2, BigDecimal.ROUND_HALF_UP)); + json.put("TotalSeviceMoney", orderDetail.getTotalServiceAmount().setScale(2, BigDecimal.ROUND_HALF_UP)); + json.put("TotalMoney", orderDetail.getTotalOrderAmount().setScale(2, BigDecimal.ROUND_HALF_UP)); + json.put("StopReason", 2); // 2:BMS 停止充电 - // 拼装成平台所需格式对象 - ChargeOrderInfo orderInfo = transformChargeOrderInfo(orderBasicInfo, orderDetail); - orderInfo.setOperatorID(operatorId); - String equipmentOwnerID; - if (MerchantUtils.isXiXiaoMerchant(orderBasicInfo.getMerchantId())) { - equipmentOwnerID = Constants.OPERATORID_XI_XIAO; - } else { - PileMerchantInfoVO pileMerchantInfoVO = pileMerchantInfoService.queryMerchantInfoByStationId(orderInfo.getStationID()); - String organizationCode = pileMerchantInfoVO.getOrganizationCode(); - if (StringUtils.isNotBlank(organizationCode) && organizationCode.length() == 18) { - equipmentOwnerID = ThirdPartyPlatformUtils.extractEquipmentOwnerID(pileMerchantInfoVO.getOrganizationCode()); - } else { - equipmentOwnerID = Constants.OPERATORID_JIANG_SU; - } - } - orderInfo.setEquipmentOwnerID(equipmentOwnerID); - - List billingList = pileBillingTemplateService.queryBillingPrice(orderBasicInfo.getStationId()); - // 先将list按照 尖、峰、平、谷 时段排序 - // List collect = billingList.stream().sorted(Comparator.comparing(BillingPriceVO::getTimeType)).collect(Collectors.toList()); - // 再循环该list,拼装对应的充电价格、费率 - List chargeDetails = transformSupChargeDetails(orderDetail, billingList); - orderInfo.setChargeDetails(chargeDetails); + String jsonString = JSON.toJSONString(json); // 获取令牌 String token = getToken(urlAddress, operatorId, operatorSecret, dataSecretIv, signSecret, dataSecret); - if (StringUtils.isBlank(token)) { - return null; - } - // 调用联联平台接口 - String jsonString = JSON.toJSONString(orderInfo); + // 发送请求 String result = HttpRequestUtil.sendPost(token, jsonString, url, dataSecret, dataSecretIv, operatorId, signSecret); + + return result; + } + + @Override + public String notificationChargeOrderInfo(String orderCode) throws NoSuchAlgorithmException, InvalidKeySpecException, NoSuchProviderException, CryptoException { + OrderBasicInfo orderBasicInfo = orderBasicInfoService.getOrderInfoByOrderCode(orderCode); + OrderDetail orderDetail = orderBasicInfoService.getOrderDetailByOrderCode(orderCode); + + ThirdPartySecretInfoVO thirdPartySecretInfoVO = getXinDiantuPlatformSecretInfo(); + + String operatorId = Constants.OPERATORID_JIANG_SU; + String operatorSecret = thirdPartySecretInfoVO.getTheirOperatorSecret(); + String signSecret = thirdPartySecretInfoVO.getTheirSigSecret(); + String dataSecret = thirdPartySecretInfoVO.getTheirDataSecret(); + String dataSecretIv = thirdPartySecretInfoVO.getTheirDataSecretIv(); + String urlAddress = thirdPartySecretInfoVO.getTheirUrlPrefix(); + + String url = urlAddress + BusinessInformationExchangeEnum.NOTIFICATION_CHARGE_ORDER_INFO.getValue(); + Date chargeStartTime = orderBasicInfo.getChargeStartTime(); + if (chargeStartTime == null) { + chargeStartTime = orderBasicInfo.getCreateTime(); + } + Date chargeEndTime = orderBasicInfo.getChargeEndTime(); + if (chargeEndTime == null) { + chargeEndTime = orderBasicInfo.getCreateTime(); + } + + JSONObject json = new JSONObject(); + json.put("StartChargeSeq", orderCode); + json.put("ConnectorID", orderBasicInfo.getPileConnectorCode()); + json.put("StartTime", DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, chargeStartTime)); + json.put("EndTime", DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, chargeEndTime)); + json.put("TotalPower", orderDetail.getTotalUsedElectricity().setScale(2, BigDecimal.ROUND_HALF_UP)); + json.put("TotalElecMoney", orderDetail.getTotalElectricityAmount().setScale(2, BigDecimal.ROUND_HALF_UP)); + json.put("TotalSeviceMoney", orderDetail.getTotalServiceAmount().setScale(2, BigDecimal.ROUND_HALF_UP)); + json.put("TotalMoney", orderDetail.getTotalOrderAmount().setScale(2, BigDecimal.ROUND_HALF_UP)); + json.put("StopReason", 2); // 2:BMS 停止充电 + + String jsonString = JSON.toJSONString(json); + + // 获取令牌 + String token = getToken(urlAddress, operatorId, operatorSecret, dataSecretIv, signSecret, dataSecret); + // 发送请求 + String result = HttpRequestUtil.sendPost(token, jsonString, url, dataSecret, dataSecretIv, operatorId, signSecret); + return result; } From 1cad08362470e668d32553b17c678f58a9abb235 Mon Sep 17 00:00:00 2001 From: Lemon Date: Tue, 18 Mar 2025 15:26:37 +0800 Subject: [PATCH 04/13] =?UTF-8?q?update=20=20=E6=8E=A8=E9=80=81=E9=AB=98?= =?UTF-8?q?=E5=BE=B7=E6=9D=83=E9=99=90=E4=BF=AE=E6=94=B9=E4=B8=BA=E5=8F=AA?= =?UTF-8?q?=E6=9C=89=E7=AE=A1=E7=90=86=E5=91=98=E6=89=8D=E5=8F=AF=E4=BB=A5?= =?UTF-8?q?=E8=BF=9B=E8=A1=8C=E6=8E=A8=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pile/domain/MemberStationRelation.java | 66 +++++++++++++++++++ .../mapper/MemberStationRelationMapper.java | 0 .../service/MemberStationRelationService.java | 0 .../MemberStationRelationServiceImpl.java | 0 jsowell-ui/src/views/pile/station/index.vue | 7 +- 5 files changed, 72 insertions(+), 1 deletion(-) create mode 100644 jsowell-pile/src/main/java/com/jsowell/pile/domain/MemberStationRelation.java create mode 100644 jsowell-pile/src/main/java/com/jsowell/pile/mapper/MemberStationRelationMapper.java create mode 100644 jsowell-pile/src/main/java/com/jsowell/pile/service/MemberStationRelationService.java create mode 100644 jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberStationRelationServiceImpl.java diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/domain/MemberStationRelation.java b/jsowell-pile/src/main/java/com/jsowell/pile/domain/MemberStationRelation.java new file mode 100644 index 000000000..0396a4ceb --- /dev/null +++ b/jsowell-pile/src/main/java/com/jsowell/pile/domain/MemberStationRelation.java @@ -0,0 +1,66 @@ +package com.jsowell.pile.domain; + +import com.jsowell.common.annotation.Excel; + +/** + * 会员与收藏的站点关系对象 member_station_relation + * + * @author jsowell + * @date 2025-03-18 + */ +public class MemberStationRelation extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键 */ + private Integer id; + + /** 会员id */ + @Excel(name = "会员id") + private Long memberId; + + /** 站点id */ + @Excel(name = "站点id") + private Long stationId; + + public void setId(Integer id) + { + this.id = id; + } + + public Integer getId() + { + return id; + } + public void setMemberId(Long memberId) + { + this.memberId = memberId; + } + + public Long getMemberId() + { + return memberId; + } + public void setStationId(Long stationId) + { + this.stationId = stationId; + } + + public Long getStationId() + { + return stationId; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.JSON_STYLE) + .append("id", getId()) + .append("memberId", getMemberId()) + .append("stationId", getStationId()) + .append("createTime", getCreateTime()) + .append("createBy", getCreateBy()) + .append("updateTime", getUpdateTime()) + .append("updateBy", getUpdateBy()) + .toString(); + } +} diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/mapper/MemberStationRelationMapper.java b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/MemberStationRelationMapper.java new file mode 100644 index 000000000..e69de29bb diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/MemberStationRelationService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/MemberStationRelationService.java new file mode 100644 index 000000000..e69de29bb diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberStationRelationServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberStationRelationServiceImpl.java new file mode 100644 index 000000000..e69de29bb diff --git a/jsowell-ui/src/views/pile/station/index.vue b/jsowell-ui/src/views/pile/station/index.vue index ec230c9f4..9cc06106c 100644 --- a/jsowell-ui/src/views/pile/station/index.vue +++ b/jsowell-ui/src/views/pile/station/index.vue @@ -195,13 +195,14 @@ - + @@ -421,6 +422,10 @@ export default { this.getList(); }); }, + hasRole(roles) { + const currentRoles = this.$store.getters.roles; + return currentRoles.some(role => roles.includes(role)); + }, changeAmapFlag(info) { console.log("info", info) const params = { From 63b06683636b3c079800a3073733586b7a2e4ca7 Mon Sep 17 00:00:00 2001 From: Lemon Date: Tue, 18 Mar 2025 15:55:34 +0800 Subject: [PATCH 05/13] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20=20=E4=BC=9A?= =?UTF-8?q?=E5=91=98=E4=B8=8E=E6=94=B6=E8=97=8F=E7=AB=99=E7=82=B9=E7=9B=B8?= =?UTF-8?q?=E5=85=B3=E5=AE=9E=E4=BD=93=E7=B1=BB=E3=80=81service?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pile/domain/MemberStationRelation.java | 58 ++++++------ .../com/jsowell/pile/dto/QueryStationDTO.java | 60 +++++++++++++ .../mapper/MemberStationRelationMapper.java | 63 +++++++++++++ .../service/MemberStationRelationService.java | 61 +++++++++++++ .../pile/service/PileStationInfoService.java | 7 ++ .../MemberStationRelationServiceImpl.java | 90 +++++++++++++++++++ .../impl/PileStationInfoServiceImpl.java | 31 +++++++ 7 files changed, 343 insertions(+), 27 deletions(-) diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/domain/MemberStationRelation.java b/jsowell-pile/src/main/java/com/jsowell/pile/domain/MemberStationRelation.java index 0396a4ceb..2db07a3be 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/domain/MemberStationRelation.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/domain/MemberStationRelation.java @@ -1,66 +1,70 @@ package com.jsowell.pile.domain; import com.jsowell.common.annotation.Excel; +import com.jsowell.common.core.domain.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; /** * 会员与收藏的站点关系对象 member_station_relation - * + * * @author jsowell * @date 2025-03-18 */ -public class MemberStationRelation extends BaseEntity -{ +public class MemberStationRelation extends BaseEntity { private static final long serialVersionUID = 1L; - /** 主键 */ + /** + * 主键 + */ private Integer id; - /** 会员id */ + /** + * 会员id + */ @Excel(name = "会员id") private Long memberId; - /** 站点id */ + /** + * 站点id + */ @Excel(name = "站点id") private Long stationId; - public void setId(Integer id) - { + public void setId(Integer id) { this.id = id; } - public Integer getId() - { + public Integer getId() { return id; } - public void setMemberId(Long memberId) - { + + public void setMemberId(Long memberId) { this.memberId = memberId; } - public Long getMemberId() - { + public Long getMemberId() { return memberId; } - public void setStationId(Long stationId) - { + + public void setStationId(Long stationId) { this.stationId = stationId; } - public Long getStationId() - { + public Long getStationId() { return stationId; } @Override public String toString() { - return new ToStringBuilder(this,ToStringStyle.JSON_STYLE) - .append("id", getId()) - .append("memberId", getMemberId()) - .append("stationId", getStationId()) - .append("createTime", getCreateTime()) - .append("createBy", getCreateBy()) - .append("updateTime", getUpdateTime()) - .append("updateBy", getUpdateBy()) - .toString(); + return new ToStringBuilder(this, ToStringStyle.JSON_STYLE) + .append("id", getId()) + .append("memberId", getMemberId()) + .append("stationId", getStationId()) + .append("createTime", getCreateTime()) + .append("createBy", getCreateBy()) + .append("updateTime", getUpdateTime()) + .append("updateBy", getUpdateBy()) + .toString(); } } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/dto/QueryStationDTO.java b/jsowell-pile/src/main/java/com/jsowell/pile/dto/QueryStationDTO.java index 8cea6c6c6..eb31032a5 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/dto/QueryStationDTO.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/dto/QueryStationDTO.java @@ -95,4 +95,64 @@ public class QueryStationDTO extends BaseEntity { * 运营商部门id */ private List merchantDeptId; + + /** + * 排序方式(默认按照距离最近排序) + * 1 - 低价优先 + * 2 - 距离最近 + */ + private String sortType; + + /** + * 场站类型 + * 1 - 全部场站 + * 2 - 优选场站 + */ + private String stationType; + + /** + * 充电速度(快充/慢充) + * 1 - 快充(30-180kw) + * 2 - 慢充(<30kw) + * 3 - 超充(≥180kw) + */ + private String chargeSpeed; + + /** + * 其他筛选条件 + */ + private OtherOptions otherOptions; + + private List stationIds; + + @Data + public static class OtherOptions { + /** + * 充电方式 + * 1 - 直流 + * 2 - 交流 + */ + private String chargeMode; + + /** + * 充电桩功率 + * 1 - 快充(30-180kw) + * 2 - 慢充(<30kw) + * 3 - 超充(≥180kw) + */ + private List pilePower; + + /** + * 站点服务 + * 1 - 雨棚 + * 2 - 休息室 + * 3 - 卫生间 + */ + private List stationService; + + /** + * 我的收藏 + */ + private String myCollectionFlag; + } } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/mapper/MemberStationRelationMapper.java b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/MemberStationRelationMapper.java index e69de29bb..48ab067f7 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/mapper/MemberStationRelationMapper.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/MemberStationRelationMapper.java @@ -0,0 +1,63 @@ +package com.jsowell.pile.mapper; + +import java.util.List; + +import com.jsowell.pile.domain.MemberStationRelation; +import org.springframework.stereotype.Repository; + +/** + * 会员与收藏的站点关系Mapper接口 + * + * @author jsowell + * @date 2025-03-18 + */ +@Repository +public interface MemberStationRelationMapper { + /** + * 查询会员与收藏的站点关系 + * + * @param id 会员与收藏的站点关系主键 + * @return 会员与收藏的站点关系 + */ + public MemberStationRelation selectMemberStationRelationById(Integer id); + + /** + * 查询会员与收藏的站点关系列表 + * + * @param memberStationRelation 会员与收藏的站点关系 + * @return 会员与收藏的站点关系集合 + */ + public List selectMemberStationRelationList(MemberStationRelation memberStationRelation); + + /** + * 新增会员与收藏的站点关系 + * + * @param memberStationRelation 会员与收藏的站点关系 + * @return 结果 + */ + public int insertMemberStationRelation(MemberStationRelation memberStationRelation); + + /** + * 修改会员与收藏的站点关系 + * + * @param memberStationRelation 会员与收藏的站点关系 + * @return 结果 + */ + public int updateMemberStationRelation(MemberStationRelation memberStationRelation); + + /** + * 删除会员与收藏的站点关系 + * + * @param id 会员与收藏的站点关系主键 + * @return 结果 + */ + public int deleteMemberStationRelationById(Integer id); + + /** + * 批量删除会员与收藏的站点关系 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteMemberStationRelationByIds(Integer[] ids); +} diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/MemberStationRelationService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/MemberStationRelationService.java index e69de29bb..e0eb3079d 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/MemberStationRelationService.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/MemberStationRelationService.java @@ -0,0 +1,61 @@ +package com.jsowell.pile.service; + +import java.util.List; + +import com.jsowell.pile.domain.MemberStationRelation; + +/** + * 会员与收藏的站点关系Service接口 + * + * @author jsowell + * @date 2025-03-18 + */ +public interface MemberStationRelationService { + /** + * 查询会员与收藏的站点关系 + * + * @param id 会员与收藏的站点关系主键 + * @return 会员与收藏的站点关系 + */ + public MemberStationRelation selectMemberStationRelationById(Integer id); + + /** + * 查询会员与收藏的站点关系列表 + * + * @param memberStationRelation 会员与收藏的站点关系 + * @return 会员与收藏的站点关系集合 + */ + public List selectMemberStationRelationList(MemberStationRelation memberStationRelation); + + /** + * 新增会员与收藏的站点关系 + * + * @param memberStationRelation 会员与收藏的站点关系 + * @return 结果 + */ + public int insertMemberStationRelation(MemberStationRelation memberStationRelation); + + /** + * 修改会员与收藏的站点关系 + * + * @param memberStationRelation 会员与收藏的站点关系 + * @return 结果 + */ + public int updateMemberStationRelation(MemberStationRelation memberStationRelation); + + /** + * 批量删除会员与收藏的站点关系 + * + * @param ids 需要删除的会员与收藏的站点关系主键集合 + * @return 结果 + */ + public int deleteMemberStationRelationByIds(Integer[] ids); + + /** + * 删除会员与收藏的站点关系信息 + * + * @param id 会员与收藏的站点关系主键 + * @return 结果 + */ + public int deleteMemberStationRelationById(Integer id); +} diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/PileStationInfoService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/PileStationInfoService.java index c40658719..5732c9213 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/PileStationInfoService.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/PileStationInfoService.java @@ -103,6 +103,13 @@ public interface PileStationInfoService { */ PageResponse uniAppQueryStationInfoList(QueryStationDTO queryStationDTO); + /** + * 小程序首页查询站点信息 + * @param queryStationDTO + * @return + */ + PageResponse uniAppQueryStationInfoListV2(QueryStationDTO queryStationDTO); + PileStationVO getStationInfo(String stationId); /** diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberStationRelationServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberStationRelationServiceImpl.java index e69de29bb..d6968b727 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberStationRelationServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberStationRelationServiceImpl.java @@ -0,0 +1,90 @@ +package com.jsowell.pile.service.impl; + +import java.util.List; + +import com.jsowell.common.util.DateUtils; +import com.jsowell.pile.service.MemberStationRelationService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.jsowell.pile.mapper.MemberStationRelationMapper; +import com.jsowell.pile.domain.MemberStationRelation; + +/** + * 会员与收藏的站点关系Service业务层处理 + * + * @author jsowell + * @date 2025-03-18 + */ +@Service +public class MemberStationRelationServiceImpl implements MemberStationRelationService { + @Autowired + private MemberStationRelationMapper memberStationRelationMapper; + + /** + * 查询会员与收藏的站点关系 + * + * @param id 会员与收藏的站点关系主键 + * @return 会员与收藏的站点关系 + */ + @Override + public MemberStationRelation selectMemberStationRelationById(Integer id) { + return memberStationRelationMapper.selectMemberStationRelationById(id); + } + + /** + * 查询会员与收藏的站点关系列表 + * + * @param memberStationRelation 会员与收藏的站点关系 + * @return 会员与收藏的站点关系 + */ + @Override + public List selectMemberStationRelationList(MemberStationRelation memberStationRelation) { + return memberStationRelationMapper.selectMemberStationRelationList(memberStationRelation); + } + + /** + * 新增会员与收藏的站点关系 + * + * @param memberStationRelation 会员与收藏的站点关系 + * @return 结果 + */ + @Override + public int insertMemberStationRelation(MemberStationRelation memberStationRelation) { + memberStationRelation.setCreateTime(DateUtils.getNowDate()); + return memberStationRelationMapper.insertMemberStationRelation(memberStationRelation); + } + + /** + * 修改会员与收藏的站点关系 + * + * @param memberStationRelation 会员与收藏的站点关系 + * @return 结果 + */ + @Override + public int updateMemberStationRelation(MemberStationRelation memberStationRelation) { + memberStationRelation.setUpdateTime(DateUtils.getNowDate()); + return memberStationRelationMapper.updateMemberStationRelation(memberStationRelation); + } + + /** + * 批量删除会员与收藏的站点关系 + * + * @param ids 需要删除的会员与收藏的站点关系主键 + * @return 结果 + */ + @Override + public int deleteMemberStationRelationByIds(Integer[] ids) { + return memberStationRelationMapper.deleteMemberStationRelationByIds(ids); + } + + /** + * 删除会员与收藏的站点关系信息 + * + * @param id 会员与收藏的站点关系主键 + * @return 结果 + */ + @Override + public int deleteMemberStationRelationById(Integer id) { + return memberStationRelationMapper.deleteMemberStationRelationById(id); + } +} diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileStationInfoServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileStationInfoServiceImpl.java index a1d42a0ce..6691fd905 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileStationInfoServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileStationInfoServiceImpl.java @@ -607,6 +607,37 @@ public class PileStationInfoServiceImpl implements PileStationInfoService { return pageResponse; } + /** + * 小程序首页查询站点信息 + * @param dto + * @return + */ + @Override + public PageResponse uniAppQueryStationInfoListV2(QueryStationDTO dto) { + int pageNum = dto.getPageNum() == 0 ? 1 : dto.getPageNum(); + int pageSize = dto.getPageSize() == 0 ? 10 : dto.getPageSize(); + + // 小程序站点列表页只展示对外开放的站点 + dto.setPublicFlag(Constants.ONE); + + String myCollectionFlag = dto.getOtherOptions().getMyCollectionFlag(); + // 先判断是否选择我的收藏中的站点 + if (StringUtils.isNotBlank(myCollectionFlag)) { + // 不为空,先将要查询的站点idList添加进参数 + // TODO 查询我的收藏下的站点id + + // dto.setStationIds(); + } + // 分页 + PageHelper.startPage(pageNum, pageSize); + // 根据前端传的参数进行筛选查询(默认根据距离排序) + + + + return null; + } + + /** * 根据站点id查询运营商配置的汇付会员id * From dc33b09ced4dfccc2b60af2dc0618e989ba0d7b4 Mon Sep 17 00:00:00 2001 From: Lemon Date: Wed, 19 Mar 2025 09:12:14 +0800 Subject: [PATCH 06/13] =?UTF-8?q?add=20=E6=A0=B9=E6=8D=AEmemberId=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E7=AB=99=E7=82=B9=E6=94=B6=E8=97=8F=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/MemberStationRelationMapper.java | 7 ++ .../service/MemberStationRelationService.java | 7 ++ .../MemberStationRelationServiceImpl.java | 5 ++ .../pile/MemberStationRelationMapper.xml | 89 +++++++++++++++++++ 4 files changed, 108 insertions(+) create mode 100644 jsowell-pile/src/main/resources/mapper/pile/MemberStationRelationMapper.xml diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/mapper/MemberStationRelationMapper.java b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/MemberStationRelationMapper.java index 48ab067f7..2736903be 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/mapper/MemberStationRelationMapper.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/MemberStationRelationMapper.java @@ -60,4 +60,11 @@ public interface MemberStationRelationMapper { * @return 结果 */ public int deleteMemberStationRelationByIds(Integer[] ids); + + /** + * 通过memberId查询站点idList + * @param memberId + * @return + */ + List getStationIdListByMemberId(String memberId); } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/MemberStationRelationService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/MemberStationRelationService.java index e0eb3079d..6b7fd751f 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/MemberStationRelationService.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/MemberStationRelationService.java @@ -58,4 +58,11 @@ public interface MemberStationRelationService { * @return 结果 */ public int deleteMemberStationRelationById(Integer id); + + /** + * 通过memberId查询站点idList + * @param memberId + * @return + */ + public List getStationIdListByMemberId(String memberId); } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberStationRelationServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberStationRelationServiceImpl.java index d6968b727..e0a5b708d 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberStationRelationServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberStationRelationServiceImpl.java @@ -87,4 +87,9 @@ public class MemberStationRelationServiceImpl implements MemberStationRelationSe public int deleteMemberStationRelationById(Integer id) { return memberStationRelationMapper.deleteMemberStationRelationById(id); } + + @Override + public List getStationIdListByMemberId(String memberId) { + return memberStationRelationMapper.getStationIdListByMemberId(memberId); + } } diff --git a/jsowell-pile/src/main/resources/mapper/pile/MemberStationRelationMapper.xml b/jsowell-pile/src/main/resources/mapper/pile/MemberStationRelationMapper.xml new file mode 100644 index 000000000..3fee5b72f --- /dev/null +++ b/jsowell-pile/src/main/resources/mapper/pile/MemberStationRelationMapper.xml @@ -0,0 +1,89 @@ + + + + + + + + + + + + + + + + select id, member_id, station_id, create_time, create_by, update_time, update_by from member_station_relation + + + + + id, member_id, station_id, create_time, create_by, update_time, update_by + + + + + + + + insert into member_station_relation + + member_id, + station_id, + create_time, + create_by, + update_time, + update_by, + + + #{memberId}, + #{stationId}, + #{createTime}, + #{createBy}, + #{updateTime}, + #{updateBy}, + + + + + update member_station_relation + + member_id = #{memberId}, + station_id = #{stationId}, + create_time = #{createTime}, + create_by = #{createBy}, + update_time = #{updateTime}, + update_by = #{updateBy}, + + where id = #{id} + + + + delete from member_station_relation where id = #{id} + + + + delete from member_station_relation where id in + + #{id} + + + + + \ No newline at end of file From 96cfa6ce6a23b9c35215b40414f2c2ca410a00a0 Mon Sep 17 00:00:00 2001 From: Lemon Date: Wed, 19 Mar 2025 09:12:28 +0800 Subject: [PATCH 07/13] =?UTF-8?q?update=20=20=E6=8E=A5=E5=8F=A3=E6=96=87?= =?UTF-8?q?=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/万车充接口补充.md | 32 ++++++++++++++++++++------------ 1 file changed, 20 insertions(+), 12 deletions(-) diff --git a/doc/万车充接口补充.md b/doc/万车充接口补充.md index c1148b3ad..fdc582ffa 100644 --- a/doc/万车充接口补充.md +++ b/doc/万车充接口补充.md @@ -73,21 +73,29 @@ | ------ | ---- | -------- | ---- | | | | | | -# 查询用户常去站点 +# 查询用户常去站点(最近半年) -``` -接口地址: -请求方式: +```text +接口地址:/uniapp/member/getUserFrquentedStationList +请求方式:GET ``` -**入参** +### **入参** -| 字段名 | 类型 | 是否必传 | 备注 | -| ------ | ---- | -------- | ---- | -| | | | | +| 字段名 | 类型 | 是否必传 | 备注 | +| -------- | ------ | -------- | ------ | +| memberId | String | Y | 会员id | -**反参** +### **反参** -| 字段名 | 类型 | 是否必传 | 备注 | -| ------ | ---- | -------- | ---- | -| | | | | \ No newline at end of file +| 字段名 | 类型 | 是否必传 | 备注 | +| ------------------------------ | ------------------------ | -------- | ------------------------ | +| List | UserFrquentedStationInfo | Y | 按照充电次数从高到低排序 | + +#### UserFrquentedStationInfo + +| 字段名 | 类型 | 是否必传 | 备注 | +| ----------- | ------ | -------- | -------- | +| stationId | String | Y | 站点id | +| stationName | String | Y | 站点名称 | +| chargeNum | int | Y | 充电次数 | \ No newline at end of file From e3ce4c13bc197cde12ec03daf4920c1877f4e62b Mon Sep 17 00:00:00 2001 From: "YAS\\29473" <2947326429@qq.com> Date: Wed, 19 Mar 2025 11:53:33 +0800 Subject: [PATCH 08/13] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E5=B8=B8=E5=8E=BB=E7=AB=99=E7=82=B9(=E6=9C=80=E8=BF=91?= =?UTF-8?q?=E5=8D=8A=E5=B9=B4)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/uniapp/customer/MemberController.java | 23 +++++++++++++++ .../com/jsowell/service/MemberService.java | 9 ++++++ .../com/jsowell/service/OrderService.java | 9 ++++++ .../pile/domain/UserFrquentedStationInfo.java | 28 +++++++++++++++++++ .../pile/mapper/OrderBasicInfoMapper.java | 9 ++++++ .../pile/service/OrderBasicInfoService.java | 7 +++++ .../impl/OrderBasicInfoServiceImpl.java | 12 ++++++++ .../mapper/pile/OrderBasicInfoMapper.xml | 19 +++++++++++++ 8 files changed, 116 insertions(+) create mode 100644 jsowell-pile/src/main/java/com/jsowell/pile/domain/UserFrquentedStationInfo.java diff --git a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/MemberController.java b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/MemberController.java index cda2f9ac1..5a1b2044d 100644 --- a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/MemberController.java +++ b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/MemberController.java @@ -14,6 +14,7 @@ import com.jsowell.common.response.RestApiResponse; import com.jsowell.common.util.SMSUtil; import com.jsowell.common.util.StringUtils; import com.jsowell.pile.domain.MemberPlateNumberRelation; +import com.jsowell.pile.domain.UserFrquentedStationInfo; import com.jsowell.pile.dto.*; import com.jsowell.pile.service.MemberBasicInfoService; import com.jsowell.pile.service.MemberPlateNumberRelationService; @@ -603,4 +604,26 @@ public class MemberController extends BaseController { logger.info("查询会员钱包列表 result:{}", response); return response; } + + /** + * 查询用户常去站点(最近半年) + */ + @GetMapping("/getUserFrquentedStationList") + public RestApiResponse queryUserFrquentedStation(HttpServletRequest request) { + RestApiResponse response; + try { + String memberId = getMemberIdByAuthorization(request); + //查询order_basic_info表,根据member_id,对应的station_id,,然后根据station_id查询pile_station_info表中的站点名称,最后统计每个站点的次数,查询当前时间前半年的记录 + List list = memberService.queryUserFrquentedStation(memberId); + response = new RestApiResponse<>(ImmutableMap.of("list", list)); + } catch (BusinessException e) { + logger.error("查询用户常去站点(最近半年) error", e); + response = new RestApiResponse<>(e.getCode(), e.getMessage()); + } catch (Exception e) { + logger.error("查询用户常去站点(最近半年) error", e); + response = new RestApiResponse<>(e); + } + logger.info("查询用户常去站点(最近半年) result:{}", response); + return response; + } } diff --git a/jsowell-admin/src/main/java/com/jsowell/service/MemberService.java b/jsowell-admin/src/main/java/com/jsowell/service/MemberService.java index c23a9e925..a2a707850 100644 --- a/jsowell-admin/src/main/java/com/jsowell/service/MemberService.java +++ b/jsowell-admin/src/main/java/com/jsowell/service/MemberService.java @@ -847,4 +847,13 @@ public class MemberService { public List queryMemberWalletList(String memberId) { return memberWalletInfoService.selectByMemberWalletList(memberId); } + + /** + * 查询用户常用充电站 + * @param memberId + * @return + */ + public List queryUserFrquentedStation(String memberId) { + return orderService.queryUserFrquentedStation(memberId); + } } 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 4da57eba3..f0803b5aa 100644 --- a/jsowell-admin/src/main/java/com/jsowell/service/OrderService.java +++ b/jsowell-admin/src/main/java/com/jsowell/service/OrderService.java @@ -1514,4 +1514,13 @@ public class OrderService { public static void main(String[] args) { } + + /** + * 查询用户常用站点 + * @param memberId + * @return + */ + public List queryUserFrquentedStation(String memberId) { + return orderBasicInfoService.queryUserFrquentedStation(memberId); + } } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/domain/UserFrquentedStationInfo.java b/jsowell-pile/src/main/java/com/jsowell/pile/domain/UserFrquentedStationInfo.java new file mode 100644 index 000000000..7fce0864b --- /dev/null +++ b/jsowell-pile/src/main/java/com/jsowell/pile/domain/UserFrquentedStationInfo.java @@ -0,0 +1,28 @@ +package com.jsowell.pile.domain; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 用户常去站点 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@Builder +public class UserFrquentedStationInfo { + /** + * 站点id + */ + private String stationId; + /** + * 站点名称 + */ + private String stationName; + /** + * 充电次数 + */ + private int chargeNum; +} \ No newline at end of file diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java index 05dd2eabc..b08aeb0e0 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java @@ -3,6 +3,7 @@ package com.jsowell.pile.mapper; import com.alipay.api.domain.ChargeOrderInfo; import com.jsowell.pile.domain.OrderBasicInfo; import com.jsowell.pile.domain.OrderDetail; +import com.jsowell.pile.domain.UserFrquentedStationInfo; import com.jsowell.pile.dto.*; import com.jsowell.pile.dto.nanrui.NRQueryOrderDTO; import com.jsowell.pile.dto.ningxiajiaotou.NXJTQueryOrdersInfoDTO; @@ -402,4 +403,12 @@ public interface OrderBasicInfoMapper { * @return */ List selectThirdPartyOrderList(@Param("dto") QueryStartChargeDTO dto); + + + /** + * 查询用户常用站点信息 + * @param memberId + * @return + */ + List queryUserFrquentedStation(String memberId); } \ No newline at end of file diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderBasicInfoService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderBasicInfoService.java index 3024aad8a..f46510b70 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderBasicInfoService.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderBasicInfoService.java @@ -543,4 +543,11 @@ public interface OrderBasicInfoService{ List tempGetOrderCodes(QueryOrderDTO dto); void retryRefundOrderList(List orderCoderList); + + /** + * 查询用户常用充电站点信息 + * @param memberId + * @return + */ + List queryUserFrquentedStation(String memberId); } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java index 4188a2cfa..2f8a2a6be 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java @@ -4954,5 +4954,17 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService { public List tempGetOrderCodes(QueryOrderDTO dto) { return orderBasicInfoMapper.tempGetOrderCodes(dto); } + + + /** + * 查询用户常用充电站 + * @param memberId + * @return + */ + @Override + public List queryUserFrquentedStation(String memberId) { + return orderBasicInfoMapper.queryUserFrquentedStation(memberId); + } + } diff --git a/jsowell-pile/src/main/resources/mapper/pile/OrderBasicInfoMapper.xml b/jsowell-pile/src/main/resources/mapper/pile/OrderBasicInfoMapper.xml index 7f398b4c2..a5d0b3be2 100644 --- a/jsowell-pile/src/main/resources/mapper/pile/OrderBasicInfoMapper.xml +++ b/jsowell-pile/src/main/resources/mapper/pile/OrderBasicInfoMapper.xml @@ -3118,4 +3118,23 @@ + + + \ No newline at end of file From 881e2b4d494dd4904be5221f11742b4e3e524d08 Mon Sep 17 00:00:00 2001 From: Lemon Date: Wed, 19 Mar 2025 13:51:58 +0800 Subject: [PATCH 09/13] update --- .../com/jsowell/api/uniapp/customer/MemberController.java | 4 ++-- .../src/main/java/com/jsowell/service/MemberService.java | 4 ++-- .../src/main/java/com/jsowell/service/OrderService.java | 4 ++-- ...ntedStationInfo.java => UserFrequentedStationInfo.java} | 2 +- .../java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java | 5 ++--- .../com/jsowell/pile/service/OrderBasicInfoService.java | 2 +- .../pile/service/impl/OrderBasicInfoServiceImpl.java | 7 ++----- .../main/resources/mapper/pile/OrderBasicInfoMapper.xml | 2 +- 8 files changed, 13 insertions(+), 17 deletions(-) rename jsowell-pile/src/main/java/com/jsowell/pile/domain/{UserFrquentedStationInfo.java => UserFrequentedStationInfo.java} (91%) diff --git a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/MemberController.java b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/MemberController.java index 5a1b2044d..097e7ba09 100644 --- a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/MemberController.java +++ b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/MemberController.java @@ -14,7 +14,7 @@ import com.jsowell.common.response.RestApiResponse; import com.jsowell.common.util.SMSUtil; import com.jsowell.common.util.StringUtils; import com.jsowell.pile.domain.MemberPlateNumberRelation; -import com.jsowell.pile.domain.UserFrquentedStationInfo; +import com.jsowell.pile.domain.UserFrequentedStationInfo; import com.jsowell.pile.dto.*; import com.jsowell.pile.service.MemberBasicInfoService; import com.jsowell.pile.service.MemberPlateNumberRelationService; @@ -614,7 +614,7 @@ public class MemberController extends BaseController { try { String memberId = getMemberIdByAuthorization(request); //查询order_basic_info表,根据member_id,对应的station_id,,然后根据station_id查询pile_station_info表中的站点名称,最后统计每个站点的次数,查询当前时间前半年的记录 - List list = memberService.queryUserFrquentedStation(memberId); + List list = memberService.queryUserFrequentedStation(memberId); response = new RestApiResponse<>(ImmutableMap.of("list", list)); } catch (BusinessException e) { logger.error("查询用户常去站点(最近半年) error", e); diff --git a/jsowell-admin/src/main/java/com/jsowell/service/MemberService.java b/jsowell-admin/src/main/java/com/jsowell/service/MemberService.java index a2a707850..fffca2751 100644 --- a/jsowell-admin/src/main/java/com/jsowell/service/MemberService.java +++ b/jsowell-admin/src/main/java/com/jsowell/service/MemberService.java @@ -853,7 +853,7 @@ public class MemberService { * @param memberId * @return */ - public List queryUserFrquentedStation(String memberId) { - return orderService.queryUserFrquentedStation(memberId); + public List queryUserFrequentedStation(String memberId) { + return orderService.queryUserFrequentedStation(memberId); } } 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 f0803b5aa..c3a57c532 100644 --- a/jsowell-admin/src/main/java/com/jsowell/service/OrderService.java +++ b/jsowell-admin/src/main/java/com/jsowell/service/OrderService.java @@ -1520,7 +1520,7 @@ public class OrderService { * @param memberId * @return */ - public List queryUserFrquentedStation(String memberId) { - return orderBasicInfoService.queryUserFrquentedStation(memberId); + public List queryUserFrequentedStation(String memberId) { + return orderBasicInfoService.queryUserFrequentedStation(memberId); } } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/domain/UserFrquentedStationInfo.java b/jsowell-pile/src/main/java/com/jsowell/pile/domain/UserFrequentedStationInfo.java similarity index 91% rename from jsowell-pile/src/main/java/com/jsowell/pile/domain/UserFrquentedStationInfo.java rename to jsowell-pile/src/main/java/com/jsowell/pile/domain/UserFrequentedStationInfo.java index 7fce0864b..cb05e6384 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/domain/UserFrquentedStationInfo.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/domain/UserFrequentedStationInfo.java @@ -12,7 +12,7 @@ import lombok.NoArgsConstructor; @NoArgsConstructor @AllArgsConstructor @Builder -public class UserFrquentedStationInfo { +public class UserFrequentedStationInfo { /** * 站点id */ diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java index b08aeb0e0..f660caf8c 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java @@ -1,9 +1,8 @@ package com.jsowell.pile.mapper; -import com.alipay.api.domain.ChargeOrderInfo; import com.jsowell.pile.domain.OrderBasicInfo; import com.jsowell.pile.domain.OrderDetail; -import com.jsowell.pile.domain.UserFrquentedStationInfo; +import com.jsowell.pile.domain.UserFrequentedStationInfo; import com.jsowell.pile.dto.*; import com.jsowell.pile.dto.nanrui.NRQueryOrderDTO; import com.jsowell.pile.dto.ningxiajiaotou.NXJTQueryOrdersInfoDTO; @@ -410,5 +409,5 @@ public interface OrderBasicInfoMapper { * @param memberId * @return */ - List queryUserFrquentedStation(String memberId); + List queryUserFrequentedStation(String memberId); } \ No newline at end of file diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderBasicInfoService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderBasicInfoService.java index f46510b70..0f45f4876 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderBasicInfoService.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderBasicInfoService.java @@ -549,5 +549,5 @@ public interface OrderBasicInfoService{ * @param memberId * @return */ - List queryUserFrquentedStation(String memberId); + List queryUserFrequentedStation(String memberId); } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java index 2f8a2a6be..3b299c1c2 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java @@ -17,7 +17,6 @@ import com.jsowell.adapay.response.*; import com.jsowell.adapay.service.AdapayService; import com.jsowell.adapay.vo.OrderSplitResult; import com.jsowell.adapay.vo.PaymentInfo; -import com.jsowell.common.YouDianUtils; import com.jsowell.common.constant.CacheConstants; import com.jsowell.common.constant.Constants; import com.jsowell.common.core.domain.vo.AuthorizedDeptVO; @@ -30,7 +29,6 @@ import com.jsowell.common.enums.MemberWalletEnum; import com.jsowell.common.enums.adapay.AdapayPayChannelEnum; import com.jsowell.common.enums.adapay.AdapayStatusEnum; import com.jsowell.common.enums.adapay.MerchantDelayModeEnum; -import com.jsowell.common.enums.ebike.EBikeStopReasonEnum; import com.jsowell.common.enums.thirdparty.ThirdPartyOperatorIdEnum; import com.jsowell.common.enums.thirdparty.ThirdPlatformTypeEnum; import com.jsowell.common.enums.ykc.*; @@ -41,7 +39,6 @@ import com.jsowell.common.util.id.IdUtils; import com.jsowell.common.util.id.SnowflakeIdWorker; import com.jsowell.common.util.spring.SpringUtils; import com.jsowell.pile.domain.*; -import com.jsowell.pile.domain.ebike.deviceupload.EBikeMessageCmd03; import com.jsowell.pile.dto.*; import com.jsowell.pile.dto.nanrui.NRQueryOrderDTO; import com.jsowell.pile.dto.ningxiajiaotou.NXJTQueryOrdersInfoDTO; @@ -4962,8 +4959,8 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService { * @return */ @Override - public List queryUserFrquentedStation(String memberId) { - return orderBasicInfoMapper.queryUserFrquentedStation(memberId); + public List queryUserFrequentedStation(String memberId) { + return orderBasicInfoMapper.queryUserFrequentedStation(memberId); } } diff --git a/jsowell-pile/src/main/resources/mapper/pile/OrderBasicInfoMapper.xml b/jsowell-pile/src/main/resources/mapper/pile/OrderBasicInfoMapper.xml index a5d0b3be2..7c6e6cc22 100644 --- a/jsowell-pile/src/main/resources/mapper/pile/OrderBasicInfoMapper.xml +++ b/jsowell-pile/src/main/resources/mapper/pile/OrderBasicInfoMapper.xml @@ -3119,7 +3119,7 @@ - SELECT obi.station_id AS stationId, psi.station_name AS stationName, From 9eaf11b5711d724266acd727e2b2198f83c0c177 Mon Sep 17 00:00:00 2001 From: Lemon Date: Wed, 19 Mar 2025 13:53:11 +0800 Subject: [PATCH 10/13] =?UTF-8?q?update=20=20=E6=8E=A5=E5=8F=A3=E6=96=87?= =?UTF-8?q?=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/万车充接口补充.md | 10 +++++----- .../jsowell/api/uniapp/customer/MemberController.java | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/doc/万车充接口补充.md b/doc/万车充接口补充.md index fdc582ffa..26fde53ea 100644 --- a/doc/万车充接口补充.md +++ b/doc/万车充接口补充.md @@ -76,7 +76,7 @@ # 查询用户常去站点(最近半年) ```text -接口地址:/uniapp/member/getUserFrquentedStationList +接口地址:/uniapp/member/getUserFrequentedStationList 请求方式:GET ``` @@ -88,11 +88,11 @@ ### **反参** -| 字段名 | 类型 | 是否必传 | 备注 | -| ------------------------------ | ------------------------ | -------- | ------------------------ | -| List | UserFrquentedStationInfo | Y | 按照充电次数从高到低排序 | +| 字段名 | 类型 | 是否必传 | 备注 | +| ------------------------------- | ------------------------- | -------- | ------------------------ | +| List | UserFrequentedStationInfo | Y | 按照充电次数从高到低排序 | -#### UserFrquentedStationInfo +#### UserFrequentedStationInfo | 字段名 | 类型 | 是否必传 | 备注 | | ----------- | ------ | -------- | -------- | diff --git a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/MemberController.java b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/MemberController.java index 097e7ba09..e8e30326e 100644 --- a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/MemberController.java +++ b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/MemberController.java @@ -608,8 +608,8 @@ public class MemberController extends BaseController { /** * 查询用户常去站点(最近半年) */ - @GetMapping("/getUserFrquentedStationList") - public RestApiResponse queryUserFrquentedStation(HttpServletRequest request) { + @GetMapping("/getUserFrequentedStationList") + public RestApiResponse queryUserFrequentedStation(HttpServletRequest request) { RestApiResponse response; try { String memberId = getMemberIdByAuthorization(request); From c910ab609a636a895bc6db6a2d0df6f452695468 Mon Sep 17 00:00:00 2001 From: "YAS\\29473" <2947326429@qq.com> Date: Wed, 19 Mar 2025 15:02:29 +0800 Subject: [PATCH 11/13] =?UTF-8?q?update=E6=9F=A5=E8=AF=A2=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E5=B8=B8=E5=8E=BB=E7=AB=99=E7=82=B9(=E6=9C=80?= =?UTF-8?q?=E8=BF=91=E5=8D=8A=E5=B9=B4)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/uniapp/customer/MemberController.java | 9 ++++++--- .../com/jsowell/service/MemberService.java | 8 -------- .../java/com/jsowell/service/OrderService.java | 9 --------- ...nfo.java => UserFrequentedStationInfo.java} | 2 +- .../pile/mapper/OrderBasicInfoMapper.java | 6 ++++-- .../pile/service/OrderBasicInfoService.java | 2 +- .../impl/OrderBasicInfoServiceImpl.java | 8 +++++--- .../mapper/pile/OrderBasicInfoMapper.xml | 18 +++++++++--------- 8 files changed, 26 insertions(+), 36 deletions(-) rename jsowell-pile/src/main/java/com/jsowell/pile/domain/{UserFrquentedStationInfo.java => UserFrequentedStationInfo.java} (91%) diff --git a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/MemberController.java b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/MemberController.java index 5a1b2044d..fda9bbd26 100644 --- a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/MemberController.java +++ b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/MemberController.java @@ -14,10 +14,11 @@ import com.jsowell.common.response.RestApiResponse; import com.jsowell.common.util.SMSUtil; import com.jsowell.common.util.StringUtils; import com.jsowell.pile.domain.MemberPlateNumberRelation; -import com.jsowell.pile.domain.UserFrquentedStationInfo; +import com.jsowell.pile.domain.UserFrequentedStationInfo; import com.jsowell.pile.dto.*; import com.jsowell.pile.service.MemberBasicInfoService; import com.jsowell.pile.service.MemberPlateNumberRelationService; +import com.jsowell.pile.service.OrderBasicInfoService; import com.jsowell.pile.service.PileMerchantInfoService; import com.jsowell.pile.vo.base.MemberWalletVO; import com.jsowell.pile.vo.uniapp.customer.InvoiceTitleVO; @@ -52,6 +53,8 @@ public class MemberController extends BaseController { @Autowired private MemberPlateNumberRelationService memberPlateNumberRelationService; + @Autowired + private OrderBasicInfoService orderBasicInfoService; /** * 下发短信接口 business * http://localhost:8080/uniapp/member/sendSMS @@ -609,12 +612,12 @@ public class MemberController extends BaseController { * 查询用户常去站点(最近半年) */ @GetMapping("/getUserFrquentedStationList") - public RestApiResponse queryUserFrquentedStation(HttpServletRequest request) { + public RestApiResponse queryUserFrequentedStation(HttpServletRequest request) { RestApiResponse response; try { String memberId = getMemberIdByAuthorization(request); //查询order_basic_info表,根据member_id,对应的station_id,,然后根据station_id查询pile_station_info表中的站点名称,最后统计每个站点的次数,查询当前时间前半年的记录 - List list = memberService.queryUserFrquentedStation(memberId); + List list = orderBasicInfoService.queryUserFrequentedStation(memberId); response = new RestApiResponse<>(ImmutableMap.of("list", list)); } catch (BusinessException e) { logger.error("查询用户常去站点(最近半年) error", e); diff --git a/jsowell-admin/src/main/java/com/jsowell/service/MemberService.java b/jsowell-admin/src/main/java/com/jsowell/service/MemberService.java index a2a707850..17e35ecda 100644 --- a/jsowell-admin/src/main/java/com/jsowell/service/MemberService.java +++ b/jsowell-admin/src/main/java/com/jsowell/service/MemberService.java @@ -848,12 +848,4 @@ public class MemberService { return memberWalletInfoService.selectByMemberWalletList(memberId); } - /** - * 查询用户常用充电站 - * @param memberId - * @return - */ - public List queryUserFrquentedStation(String memberId) { - return orderService.queryUserFrquentedStation(memberId); - } } 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 f0803b5aa..4da57eba3 100644 --- a/jsowell-admin/src/main/java/com/jsowell/service/OrderService.java +++ b/jsowell-admin/src/main/java/com/jsowell/service/OrderService.java @@ -1514,13 +1514,4 @@ public class OrderService { public static void main(String[] args) { } - - /** - * 查询用户常用站点 - * @param memberId - * @return - */ - public List queryUserFrquentedStation(String memberId) { - return orderBasicInfoService.queryUserFrquentedStation(memberId); - } } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/domain/UserFrquentedStationInfo.java b/jsowell-pile/src/main/java/com/jsowell/pile/domain/UserFrequentedStationInfo.java similarity index 91% rename from jsowell-pile/src/main/java/com/jsowell/pile/domain/UserFrquentedStationInfo.java rename to jsowell-pile/src/main/java/com/jsowell/pile/domain/UserFrequentedStationInfo.java index 7fce0864b..cb05e6384 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/domain/UserFrquentedStationInfo.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/domain/UserFrequentedStationInfo.java @@ -12,7 +12,7 @@ import lombok.NoArgsConstructor; @NoArgsConstructor @AllArgsConstructor @Builder -public class UserFrquentedStationInfo { +public class UserFrequentedStationInfo { /** * 站点id */ diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java index b08aeb0e0..2f11c81e5 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java @@ -3,7 +3,7 @@ package com.jsowell.pile.mapper; import com.alipay.api.domain.ChargeOrderInfo; import com.jsowell.pile.domain.OrderBasicInfo; import com.jsowell.pile.domain.OrderDetail; -import com.jsowell.pile.domain.UserFrquentedStationInfo; +import com.jsowell.pile.domain.UserFrequentedStationInfo; import com.jsowell.pile.dto.*; import com.jsowell.pile.dto.nanrui.NRQueryOrderDTO; import com.jsowell.pile.dto.ningxiajiaotou.NXJTQueryOrdersInfoDTO; @@ -408,7 +408,9 @@ public interface OrderBasicInfoMapper { /** * 查询用户常用站点信息 * @param memberId + * @param startTime + * @param endTime * @return */ - List queryUserFrquentedStation(String memberId); + List queryUserFrequentedStation(@Param("memberId") String memberId ,@Param("startTime") LocalDateTime startTime ,@Param("endTime") LocalDateTime endTime); } \ No newline at end of file diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderBasicInfoService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderBasicInfoService.java index f46510b70..0f45f4876 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderBasicInfoService.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderBasicInfoService.java @@ -549,5 +549,5 @@ public interface OrderBasicInfoService{ * @param memberId * @return */ - List queryUserFrquentedStation(String memberId); + List queryUserFrequentedStation(String memberId); } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java index 2f8a2a6be..acbf30cc4 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java @@ -4957,13 +4957,15 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService { /** - * 查询用户常用充电站 + * 查询用户常用站点信息 * @param memberId * @return */ @Override - public List queryUserFrquentedStation(String memberId) { - return orderBasicInfoMapper.queryUserFrquentedStation(memberId); + public List queryUserFrequentedStation(String memberId) { + LocalDateTime endTime = LocalDateTime.now(); + LocalDateTime startTime = endTime.minusMonths(6); + return orderBasicInfoMapper.queryUserFrequentedStation(memberId, startTime, endTime); } } diff --git a/jsowell-pile/src/main/resources/mapper/pile/OrderBasicInfoMapper.xml b/jsowell-pile/src/main/resources/mapper/pile/OrderBasicInfoMapper.xml index a5d0b3be2..bb7f61921 100644 --- a/jsowell-pile/src/main/resources/mapper/pile/OrderBasicInfoMapper.xml +++ b/jsowell-pile/src/main/resources/mapper/pile/OrderBasicInfoMapper.xml @@ -3119,20 +3119,20 @@ - SELECT - obi.station_id AS stationId, - psi.station_name AS stationName, - COUNT(obi.id) AS chargeNum + t1.station_id AS stationId, + t2.station_name AS stationName, + COUNT(t1.id) AS chargeNum FROM - order_basic_info obi + order_basic_info t1 JOIN - pile_station_info psi ON obi.station_id = psi.id + pile_station_info t2 ON t1.station_id = t2.id WHERE - obi.member_id = #{memberId} - AND obi.create_time >= DATE_SUB(NOW(), INTERVAL 6 MONTH) + t1.member_id = #{memberId} + AND t1.create_time BETWEEN #{startTime} AND #{endTime} GROUP BY - obi.station_id, psi.station_name + t1.station_id, t2.station_name ORDER BY chargeNum DESC; From 98e654b0fc705e84c3d92465ebe72aec08fb3333 Mon Sep 17 00:00:00 2001 From: "YAS\\29473" <2947326429@qq.com> Date: Wed, 19 Mar 2025 15:13:22 +0800 Subject: [PATCH 12/13] update --- .../java/com/jsowell/api/uniapp/customer/MemberController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/MemberController.java b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/MemberController.java index fda9bbd26..23315a11f 100644 --- a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/MemberController.java +++ b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/MemberController.java @@ -611,7 +611,7 @@ public class MemberController extends BaseController { /** * 查询用户常去站点(最近半年) */ - @GetMapping("/getUserFrquentedStationList") + @GetMapping("/getUserFrequentedStationList") public RestApiResponse queryUserFrequentedStation(HttpServletRequest request) { RestApiResponse response; try { From 2cc26fc62461596fd64eaa29f58e4a1836bae0c6 Mon Sep 17 00:00:00 2001 From: "YAS\\29473" <2947326429@qq.com> Date: Wed, 19 Mar 2025 15:58:15 +0800 Subject: [PATCH 13/13] update --- .../main/java/com/jsowell/common/util/DateUtils.java | 10 ++++++++++ .../com/jsowell/pile/mapper/OrderBasicInfoMapper.java | 2 +- .../pile/service/impl/OrderBasicInfoServiceImpl.java | 4 ++-- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/jsowell-common/src/main/java/com/jsowell/common/util/DateUtils.java b/jsowell-common/src/main/java/com/jsowell/common/util/DateUtils.java index 335fed369..2470c1015 100644 --- a/jsowell-common/src/main/java/com/jsowell/common/util/DateUtils.java +++ b/jsowell-common/src/main/java/com/jsowell/common/util/DateUtils.java @@ -1181,4 +1181,14 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils { } } + /** + * 获取当前时间的前半年日期 + * @return + */ + public static String getHalfYearAgo(String nowStr) { + LocalDate now = LocalDate.parse(nowStr); + LocalDate halfYearAgo = now.minusMonths(6); + return halfYearAgo.toString(); + } + } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java index 2f11c81e5..02755e366 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java @@ -412,5 +412,5 @@ public interface OrderBasicInfoMapper { * @param endTime * @return */ - List queryUserFrequentedStation(@Param("memberId") String memberId ,@Param("startTime") LocalDateTime startTime ,@Param("endTime") LocalDateTime endTime); + List queryUserFrequentedStation(@Param("memberId") String memberId ,@Param("startTime") String startTime ,@Param("endTime") String endTime); } \ No newline at end of file diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java index acbf30cc4..f511ec2c3 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java @@ -4963,8 +4963,8 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService { */ @Override public List queryUserFrequentedStation(String memberId) { - LocalDateTime endTime = LocalDateTime.now(); - LocalDateTime startTime = endTime.minusMonths(6); + String endTime = DateUtils.getDate(); + String startTime = DateUtils.getHalfYearAgo(endTime); return orderBasicInfoMapper.queryUserFrequentedStation(memberId, startTime, endTime); }