From 652fd909dfb508baca8cade1b6715735102b4b67 Mon Sep 17 00:00:00 2001 From: Administrator Date: Tue, 24 Dec 2024 15:32:12 +0800 Subject: [PATCH] =?UTF-8?q?1.=20=E5=B0=8F=E7=A8=8B=E5=BA=8F=E7=AB=AF?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E6=8D=A2=E7=94=B5=E7=AB=99=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=202.=20=E6=8D=A2=E7=94=B5=E7=AB=99=E6=B7=BB=E5=8A=A0=E6=97=B6?= =?UTF-8?q?=20=E5=A2=9E=E5=8A=A0=E7=BC=96=E7=A0=81=E9=AA=8C=E8=AF=81?= =?UTF-8?q?=EF=BC=8C=E9=81=BF=E5=85=8D=E9=87=8D=E5=A4=8D=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=203.=20=E5=AE=8C=E5=96=84=E5=85=A8=E5=B1=80=E5=BC=82=E5=B8=B8?= =?UTF-8?q?=EF=BC=8C=E6=B7=BB=E5=8A=A0=20MethodArgumentNotValidException?= =?UTF-8?q?=20=E5=BC=82=E5=B8=B8=204.=20=E9=A2=84=E7=BA=A6=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E6=97=B6=EF=BC=8C=E6=B7=BB=E5=8A=A0=E8=BD=A6=E8=BE=86?= =?UTF-8?q?=E3=80=81=E4=BA=BA=E5=91=98=E6=A3=80=E6=9F=A5=205.=20=E5=AE=8C?= =?UTF-8?q?=E5=96=84=E5=B0=8F=E7=A8=8B=E5=BA=8F=E8=BD=AE=E6=92=AD=E5=9B=BE?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=206.=20=E5=AE=8C=E5=96=84=E5=B0=8F=E7=A8=8B?= =?UTF-8?q?=E5=BA=8F=E5=8D=8F=E8=AE=AE=E6=8E=A5=E5=8F=A3=207.=20=E5=B0=8F?= =?UTF-8?q?=E7=A8=8B=E5=BA=8F=E4=BA=BA=E5=91=98=20openid=E3=80=81=E6=89=8B?= =?UTF-8?q?=E6=9C=BA=E5=8F=B7=E8=84=B1=E6=95=8F=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/entity/cloud/BatteryStation.java | 7 +++ .../entity/cloud/OrderSwapBatteryPre.java | 1 + .../core/entity/resource/WechatAgreement.java | 3 +- .../web/exception/GlobalExceptionHandler.java | 25 ++++++-- .../controller/BatteryStationController.java | 9 +++ .../cloud/service/BatteryStationService.java | 3 + .../impl/BatteryStationServiceImpl.java | 47 +++++++++++++++ .../impl/OrderSwapBatteryServiceImpl.java | 25 +++++++- .../controller/WechatAgreementController.java | 58 +++++++++++++++++++ .../controller/WechatSwiperController.java | 58 +++++++++++++++++++ .../controller/CloudServeController.java | 11 +++- .../hd/wechat/service/CloudService.java | 8 ++- .../service/impl/WechatUserServiceImpl.java | 3 + 13 files changed, 248 insertions(+), 10 deletions(-) diff --git a/base-commons/common-core/src/main/java/com/evotech/hd/common/core/entity/cloud/BatteryStation.java b/base-commons/common-core/src/main/java/com/evotech/hd/common/core/entity/cloud/BatteryStation.java index 215234c..3353f01 100644 --- a/base-commons/common-core/src/main/java/com/evotech/hd/common/core/entity/cloud/BatteryStation.java +++ b/base-commons/common-core/src/main/java/com/evotech/hd/common/core/entity/cloud/BatteryStation.java @@ -71,6 +71,13 @@ public class BatteryStation implements Serializable { @Schema(description = "联系电话") private String phone; + + @Schema(description = "服务车辆类型") + private String carTypeCode; + + @Schema(description = "是否适合该车辆") + @TableField(exist = false) + private Boolean isSuitable; @Schema(description = "删除标识:1-已删除,0-未删除") private Integer delFlag; diff --git a/base-commons/common-core/src/main/java/com/evotech/hd/common/core/entity/cloud/OrderSwapBatteryPre.java b/base-commons/common-core/src/main/java/com/evotech/hd/common/core/entity/cloud/OrderSwapBatteryPre.java index 9148c1b..f751b67 100644 --- a/base-commons/common-core/src/main/java/com/evotech/hd/common/core/entity/cloud/OrderSwapBatteryPre.java +++ b/base-commons/common-core/src/main/java/com/evotech/hd/common/core/entity/cloud/OrderSwapBatteryPre.java @@ -64,6 +64,7 @@ public class OrderSwapBatteryPre implements Serializable { private Date reservationTime; @Schema(description = "预约换电日期", example = "yyyyMMdd", requiredMode = RequiredMode.REQUIRED) + @NotBlank private String swapDay; @Schema(description = "预约换电时间段", example = "8:00-10:00") diff --git a/base-commons/common-core/src/main/java/com/evotech/hd/common/core/entity/resource/WechatAgreement.java b/base-commons/common-core/src/main/java/com/evotech/hd/common/core/entity/resource/WechatAgreement.java index 636614c..574dd8c 100644 --- a/base-commons/common-core/src/main/java/com/evotech/hd/common/core/entity/resource/WechatAgreement.java +++ b/base-commons/common-core/src/main/java/com/evotech/hd/common/core/entity/resource/WechatAgreement.java @@ -45,7 +45,8 @@ public class WechatAgreement implements Serializable { @NotBlank private String content; - @Schema(description = "版本") + @Schema(description = "版本", requiredMode = RequiredMode.REQUIRED) + @NotBlank private String version; @Schema(description = "状态:1-可用,0-不可用") diff --git a/base-commons/common-web/src/main/java/com/evotech/hd/common/web/exception/GlobalExceptionHandler.java b/base-commons/common-web/src/main/java/com/evotech/hd/common/web/exception/GlobalExceptionHandler.java index 17c7d6e..d26de7b 100644 --- a/base-commons/common-web/src/main/java/com/evotech/hd/common/web/exception/GlobalExceptionHandler.java +++ b/base-commons/common-web/src/main/java/com/evotech/hd/common/web/exception/GlobalExceptionHandler.java @@ -1,7 +1,10 @@ package com.evotech.hd.common.web.exception; +import java.util.stream.Collectors; + import org.springframework.dao.DataIntegrityViolationException; import org.springframework.http.converter.HttpMessageNotReadableException; +import org.springframework.web.bind.MethodArgumentNotValidException; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.RestControllerAdvice; @@ -32,7 +35,7 @@ public class GlobalExceptionHandler { */ @ExceptionHandler(value = NullPointerException.class) public Result exceptionHandler(HttpServletRequest req, NullPointerException e) { - log.error("空指针异常:", e); + log.error("\r\n===>>>空指针异常:", e); return new Result().bussinessException(CodeMsg.ERROR.getCode(), e.getMessage(), null); } @@ -42,7 +45,7 @@ public class GlobalExceptionHandler { */ @ExceptionHandler(value = HttpMessageNotReadableException.class) public Result exceptionHandler(HttpServletRequest req, HttpMessageNotReadableException e) { - log.error("http请求参数解析异常:", e); + log.error("\r\n===>>>http请求参数解析异常:", e); return new Result().bussinessException(CodeMsg.PARAM_ERROR.getCode(), "http请求参数解析异常", e.getMessage()); } @@ -53,7 +56,7 @@ public class GlobalExceptionHandler { */ @ExceptionHandler(value = MyArgumentException.class) public Result exceptionHandler(HttpServletRequest req, MyArgumentException e) { - log.error("请求参数异常:", e); + log.error("\r\n===>>>请求参数异常:", e); return new Result().bussinessException(CodeMsg.PARAM_ERROR.getCode(), CodeMsg.PARAM_ERROR.getMsg(), e.getParamArr()); } @@ -66,18 +69,28 @@ public class GlobalExceptionHandler { */ @ExceptionHandler(value = DataIntegrityViolationException.class) public Result exceptionHandler(HttpServletRequest req, DataIntegrityViolationException e) { - log.error("sql语句异常:", e); + log.error("\r\n===>>>sql语句异常:", e); return new Result().bussinessException(CodeMsg.SQL_RUN_ERROR.getCode(), e.getCause().toString(), null); } + /** + * @Valid抛出的参数异常 + */ + @ExceptionHandler(value = MethodArgumentNotValidException.class) + public Result exceptionHandler(HttpServletRequest req, MethodArgumentNotValidException e) { + log.error("\r\n===>>>传参 自动检测出 错误:", e); + String param = e.getBindingResult().getFieldErrors().stream().map(i -> i.getField()).collect(Collectors.joining(",")); + return new Result().bussinessException(CodeMsg.PARAM_ERROR.getCode(), param, e.getBindingResult().getFieldErrors()); + } + /** * 自己抛出的运行异常 * @param req * @param e */ @ExceptionHandler(value = Exception.class) - public Result exceptionHandler(HttpServletRequest req, RuntimeException e) { - log.error("捕获运行异常:", e); + public Result exceptionHandler(HttpServletRequest req, Exception e) { + log.error("\r\n===>>>捕获运行异常:", e); return new Result().bussinessException(CodeMsg.ERROR.getCode(), e instanceof RuntimeException?e.getMessage():e.toString(), null); } diff --git a/cloud-manage-server/src/main/java/com/evotech/hd/cloud/controller/BatteryStationController.java b/cloud-manage-server/src/main/java/com/evotech/hd/cloud/controller/BatteryStationController.java index c07bcf6..86b8a11 100644 --- a/cloud-manage-server/src/main/java/com/evotech/hd/cloud/controller/BatteryStationController.java +++ b/cloud-manage-server/src/main/java/com/evotech/hd/cloud/controller/BatteryStationController.java @@ -14,9 +14,11 @@ import com.evotech.hd.cloud.entity.request.PageListBatteryStationRequest; import com.evotech.hd.cloud.service.BatteryStationService; import com.evotech.hd.common.core.entity.Result; import com.evotech.hd.common.core.entity.cloud.BatteryStation; +import com.evotech.hd.common.core.entity.cloud.vo.BatteryStationVO; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; import com.github.xiaoymin.knife4j.annotations.ApiSupport; +import io.swagger.v3.oas.annotations.Hidden; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.annotation.Resource; @@ -60,6 +62,13 @@ public class BatteryStationController { return batteryStationService.list(plbsr); } + @Operation(summary = "查询2") + @GetMapping("/liststation") + @Hidden + public Result> listStation(@RequestParam(required = false) String plateNum) { + return batteryStationService.listStation(plateNum); + } + @Operation(summary = "站点秘钥") @PostMapping("/rsa_secret_key") diff --git a/cloud-manage-server/src/main/java/com/evotech/hd/cloud/service/BatteryStationService.java b/cloud-manage-server/src/main/java/com/evotech/hd/cloud/service/BatteryStationService.java index 65122ae..c8560b0 100644 --- a/cloud-manage-server/src/main/java/com/evotech/hd/cloud/service/BatteryStationService.java +++ b/cloud-manage-server/src/main/java/com/evotech/hd/cloud/service/BatteryStationService.java @@ -6,6 +6,7 @@ import java.util.Map; import com.evotech.hd.cloud.entity.request.PageListBatteryStationRequest; import com.evotech.hd.common.core.entity.Result; import com.evotech.hd.common.core.entity.cloud.BatteryStation; +import com.evotech.hd.common.core.entity.cloud.vo.BatteryStationVO; public interface BatteryStationService { @@ -17,6 +18,8 @@ public interface BatteryStationService { public Result> list(PageListBatteryStationRequest plbsr); + public Result> listStation(String plateNum); + public Result> RsaSecretKey(String stationCode); } diff --git a/cloud-manage-server/src/main/java/com/evotech/hd/cloud/service/impl/BatteryStationServiceImpl.java b/cloud-manage-server/src/main/java/com/evotech/hd/cloud/service/impl/BatteryStationServiceImpl.java index 8f181ac..4f34317 100644 --- a/cloud-manage-server/src/main/java/com/evotech/hd/cloud/service/impl/BatteryStationServiceImpl.java +++ b/cloud-manage-server/src/main/java/com/evotech/hd/cloud/service/impl/BatteryStationServiceImpl.java @@ -7,17 +7,23 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.StringUtils; + import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.evotech.hd.cloud.dao.BatteryStationDao; import com.evotech.hd.cloud.dao.BatteryStationSecretKeyDao; +import com.evotech.hd.cloud.dao.VehicleInfoDao; import com.evotech.hd.cloud.entity.BatteryStationSecretKey; import com.evotech.hd.cloud.entity.request.PageListBatteryStationRequest; import com.evotech.hd.cloud.service.BatteryStationService; import com.evotech.hd.common.core.entity.Result; import com.evotech.hd.common.core.entity.cloud.BatteryStation; +import com.evotech.hd.common.core.entity.cloud.VehicleInfo; +import com.evotech.hd.common.core.entity.cloud.vo.BatteryStationVO; import com.evotech.hd.common.core.enums.CodeMsg; import cn.hutool.crypto.KeyUtil; @@ -31,10 +37,18 @@ public class BatteryStationServiceImpl implements BatteryStationService { private BatteryStationDao batteryStationDao; @Resource private BatteryStationSecretKeyDao batteryStationSecretKeyDao; + @Resource + private VehicleInfoDao vehicleInfoDao; @Override public Result add(BatteryStation bs) { bs.setCtime(new Date()); + boolean b = batteryStationDao.exists(new QueryWrapper() + .eq("del_flag", 0) + .eq("code", bs.getCode())); + if (b) { + return new Result().error("换电站已存在!"); + } int n = batteryStationDao.insert(bs); if (n == 1) { return new Result().success(n); @@ -105,4 +119,37 @@ public class BatteryStationServiceImpl implements BatteryStationService { return new Result>().success(map); } + @Override + public Result> listStation(String plateNum) { + + List list = batteryStationDao.selectList(new QueryWrapper().eq("del_flag", 0)); + if (list.isEmpty()) { + return new Result>().error(CodeMsg.DATABASE_RESULT_NULL); + } + List res = list.stream().map(i -> { + BatteryStationVO vo = new BatteryStationVO(); + BeanUtils.copyProperties(i, vo); + return vo; + }).toList(); + + if (StringUtils.hasText(plateNum)) { + VehicleInfo vi = vehicleInfoDao.selectOne(new QueryWrapper() + .eq("del_flag", 0) + .eq("plate_num", plateNum)); + if (vi == null) { + return new Result>().error("无车辆信息!"); + } + res = res.stream().map(i -> { + if (StringUtils.hasText(i.getCarTypeCode()) && i.getCarTypeCode().contains(vi.getTypeCode())) { + i.setIsSuitable(true); + } + return i; + }) + .sorted((i1, i2) -> i1.getIsSuitable().compareTo(i2.getIsSuitable())) + .toList(); + } + + return new Result>().success(res); + } + } diff --git a/cloud-manage-server/src/main/java/com/evotech/hd/cloud/service/impl/OrderSwapBatteryServiceImpl.java b/cloud-manage-server/src/main/java/com/evotech/hd/cloud/service/impl/OrderSwapBatteryServiceImpl.java index 9430b58..d84da6f 100644 --- a/cloud-manage-server/src/main/java/com/evotech/hd/cloud/service/impl/OrderSwapBatteryServiceImpl.java +++ b/cloud-manage-server/src/main/java/com/evotech/hd/cloud/service/impl/OrderSwapBatteryServiceImpl.java @@ -12,12 +12,16 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.evotech.hd.cloud.dao.OrderSwapBatteryDao; import com.evotech.hd.cloud.dao.OrderSwapBatteryPreDao; import com.evotech.hd.cloud.dao.OrderSwapBatteryStepDao; +import com.evotech.hd.cloud.dao.VehicleInfoDao; import com.evotech.hd.cloud.service.OrderSwapBatteryService; +import com.evotech.hd.common.core.dao.wechat.WechatUserDao; import com.evotech.hd.common.core.entity.Result; import com.evotech.hd.common.core.entity.cloud.OrderSwapBattery; import com.evotech.hd.common.core.entity.cloud.OrderSwapBatteryPre; import com.evotech.hd.common.core.entity.cloud.OrderSwapBatteryStep; import com.evotech.hd.common.core.entity.cloud.PageListSwapOrderRequest; +import com.evotech.hd.common.core.entity.cloud.VehicleInfo; +import com.evotech.hd.common.core.entity.wechat.WechatUser; import com.evotech.hd.common.core.enums.CodeMsg; import jakarta.annotation.Resource; @@ -31,13 +35,32 @@ public class OrderSwapBatteryServiceImpl implements OrderSwapBatteryService { private OrderSwapBatteryPreDao orderSwapBatteryPreDao; @Resource private OrderSwapBatteryStepDao orderSwapBatteryStepDao; + @Resource + private VehicleInfoDao vehicleInfoDao; + @Resource + private WechatUserDao wechatUserDao; @Override public Result addPre(OrderSwapBatteryPre osbp) { // 1. 检查车辆 - + boolean b1 = vehicleInfoDao.exists(new QueryWrapper() + .eq("del_flag", 0) + .eq("plate_num", osbp.getPlateNum())); + if (!b1) { + return new Result().error("车辆未注册!"); + } // 2. 检查预约人 + boolean b2 = wechatUserDao.exists(new QueryWrapper() + .ne("phone_number", "") + .isNotNull("phone_number") + .eq("wuid", osbp.getUcode())); + if (!b2) { + return new Result().error("用户认证信息不全!"); + } + // 是否需要验证人和车绑定关系 + + // 是否需要验证公司和车的绑定关系 // 3. 添加预约 Date d = new Date(); diff --git a/resource-server/src/main/java/com/evotech/hd/resource/controller/WechatAgreementController.java b/resource-server/src/main/java/com/evotech/hd/resource/controller/WechatAgreementController.java index 8162da7..f929bd2 100644 --- a/resource-server/src/main/java/com/evotech/hd/resource/controller/WechatAgreementController.java +++ b/resource-server/src/main/java/com/evotech/hd/resource/controller/WechatAgreementController.java @@ -1,6 +1,64 @@ package com.evotech.hd.resource.controller; +import java.util.List; +import org.springdoc.core.annotations.ParameterObject; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import com.evotech.hd.common.core.entity.Result; +import com.evotech.hd.common.core.entity.resource.WechatAgreement; +import com.evotech.hd.resource.service.WechatAgreementService; +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import com.github.xiaoymin.knife4j.annotations.ApiSupport; + +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.annotation.Resource; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +@Tag(name = "微信协议") +@RestController +@RequestMapping("/wechat/agreement") +@ApiSupport(order = 201) public class WechatAgreementController { + + + @Resource + private WechatAgreementService wechatAgreementService; + + + @Operation(summary = "增加") + @PostMapping("/add") + @ApiOperationSupport(order = 1) + public Result add(@Valid @ParameterObject WechatAgreement wa) { + return wechatAgreementService.add(wa); + } + + @Operation(summary = "删除") + @PostMapping("/del") + @ApiOperationSupport(order = 2) + public Result delete(@NotNull Integer id) { + return wechatAgreementService.delete(id); + } + + @Operation(summary = "修改") + @PostMapping({"/update"}) + @ApiOperationSupport(order = 3) + public Result update(@ParameterObject WechatAgreement wa) { + return wechatAgreementService.update(wa); + } + + @Operation(summary = "查询") + @GetMapping("/list") + @ApiOperationSupport(order = 4) + public Result> list(@RequestParam String appid, @RequestParam Integer type, @RequestParam Integer status) { + return wechatAgreementService.list(appid, type, status); + } + } diff --git a/resource-server/src/main/java/com/evotech/hd/resource/controller/WechatSwiperController.java b/resource-server/src/main/java/com/evotech/hd/resource/controller/WechatSwiperController.java index 2fe5679..b948943 100644 --- a/resource-server/src/main/java/com/evotech/hd/resource/controller/WechatSwiperController.java +++ b/resource-server/src/main/java/com/evotech/hd/resource/controller/WechatSwiperController.java @@ -1,5 +1,63 @@ package com.evotech.hd.resource.controller; +import java.util.List; + +import org.springdoc.core.annotations.ParameterObject; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import com.evotech.hd.common.core.entity.Result; +import com.evotech.hd.common.core.entity.resource.WechatSwiper; +import com.evotech.hd.resource.service.WechatSwiperService; +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import com.github.xiaoymin.knife4j.annotations.ApiSupport; + +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.annotation.Resource; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +@Tag(name = "微信轮播图") +@RestController +@RequestMapping("/wechat/swiper") +@ApiSupport(order = 202) public class WechatSwiperController { + + @Resource + private WechatSwiperService wechatSwiperService; + + + @Operation(summary = "增加") + @PostMapping("/add") + @ApiOperationSupport(order = 1) + public Result add(@Valid @ParameterObject WechatSwiper ws) { + return wechatSwiperService.add(ws); + } + + @Operation(summary = "删除") + @PostMapping("/del") + @ApiOperationSupport(order = 2) + public Result delete(@NotNull Integer id) { + return wechatSwiperService.delete(id); + } + + @Operation(summary = "修改") + @PostMapping({"/update"}) + @ApiOperationSupport(order = 3) + public Result update(@ParameterObject WechatSwiper ws) { + return wechatSwiperService.update(ws); + } + + @Operation(summary = "查询") + @GetMapping("/list") + @ApiOperationSupport(order = 4) + public Result> list(@RequestParam String appid, @RequestParam Integer type, @RequestParam Integer status) { + return wechatSwiperService.list(appid, type, status); + } + } diff --git a/wechat-server/src/main/java/com/evotech/hd/wechat/controller/CloudServeController.java b/wechat-server/src/main/java/com/evotech/hd/wechat/controller/CloudServeController.java index c4d73f3..88da191 100644 --- a/wechat-server/src/main/java/com/evotech/hd/wechat/controller/CloudServeController.java +++ b/wechat-server/src/main/java/com/evotech/hd/wechat/controller/CloudServeController.java @@ -6,6 +6,7 @@ import org.springdoc.core.annotations.ParameterObject; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import com.evotech.hd.common.core.entity.Result; @@ -13,6 +14,7 @@ import com.evotech.hd.common.core.entity.cloud.OrderSwapBattery; import com.evotech.hd.common.core.entity.cloud.OrderSwapBatteryPre; import com.evotech.hd.common.core.entity.cloud.OrderSwapBatteryStep; import com.evotech.hd.common.core.entity.cloud.PageListSwapOrderRequest; +import com.evotech.hd.common.core.entity.cloud.vo.BatteryStationVO; import com.evotech.hd.wechat.service.CloudService; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; import com.github.xiaoymin.knife4j.annotations.ApiSupport; @@ -51,7 +53,7 @@ public class CloudServeController { @Operation(summary = "查询预约") @GetMapping("/order/swap/pre/list") @ApiOperationSupport(order = 3) - public Result> listPre(String plateNum, Integer status, String ucode, String stationCode) { + public Result> listPre(@RequestParam(required = false) String plateNum, @RequestParam(required = false) Integer status, @RequestParam(required = false) String ucode, @RequestParam(required = false) String stationCode) { return cloudService.listPre(plateNum, status, ucode, stationCode); } @@ -68,5 +70,12 @@ public class CloudServeController { public Result> listStep(@NotBlank String orderNo) { return cloudService.listStep(orderNo); } + + @Operation(summary = "查询换电站") + @GetMapping("/station/list") + @ApiOperationSupport(order = 9) + public Result> listStation(@RequestParam(required = false) String plateNum) { + return cloudService.listStation(plateNum); + } } diff --git a/wechat-server/src/main/java/com/evotech/hd/wechat/service/CloudService.java b/wechat-server/src/main/java/com/evotech/hd/wechat/service/CloudService.java index d7ec297..6928fa6 100644 --- a/wechat-server/src/main/java/com/evotech/hd/wechat/service/CloudService.java +++ b/wechat-server/src/main/java/com/evotech/hd/wechat/service/CloudService.java @@ -13,6 +13,7 @@ import com.evotech.hd.common.core.entity.cloud.OrderSwapBattery; import com.evotech.hd.common.core.entity.cloud.OrderSwapBatteryPre; import com.evotech.hd.common.core.entity.cloud.OrderSwapBatteryStep; import com.evotech.hd.common.core.entity.cloud.PageListSwapOrderRequest; +import com.evotech.hd.common.core.entity.cloud.vo.BatteryStationVO; @FeignClient(value = "cloud-server") public interface CloudService { @@ -35,6 +36,11 @@ public interface CloudService { @GetMapping(value = "/cloud/order/swap/step/list", consumes = {MediaType.APPLICATION_FORM_URLENCODED_VALUE}) - public Result> listStep(String orderNo); + public Result> listStep(@RequestParam String orderNo); + + @GetMapping(value = "/cloud/batterystation/liststation", + consumes = {MediaType.APPLICATION_FORM_URLENCODED_VALUE}) + public Result> listStation(@RequestParam String plateNum); +// public Result> listStation(@SpringQueryMap BasePageRequest bpr); } diff --git a/wechat-server/src/main/java/com/evotech/hd/wechat/service/impl/WechatUserServiceImpl.java b/wechat-server/src/main/java/com/evotech/hd/wechat/service/impl/WechatUserServiceImpl.java index f29b436..f9ef3b9 100644 --- a/wechat-server/src/main/java/com/evotech/hd/wechat/service/impl/WechatUserServiceImpl.java +++ b/wechat-server/src/main/java/com/evotech/hd/wechat/service/impl/WechatUserServiceImpl.java @@ -9,6 +9,7 @@ import com.evotech.hd.common.core.entity.wechat.WechatUser; import com.evotech.hd.common.core.enums.CodeMsg; import com.evotech.hd.wechat.service.WechatUserService; +import cn.hutool.core.util.DesensitizedUtil; import jakarta.annotation.Resource; @@ -34,6 +35,8 @@ public class WechatUserServiceImpl implements WechatUserService { if (user == null) { return new Result().error(CodeMsg.DATABASE_RESULT_NULL); } + user.setOpenid(DesensitizedUtil.idCardNum(user.getOpenid(), 5, 6)); + user.setPhoneNumber(DesensitizedUtil.mobilePhone(user.getPhoneNumber())); return new Result().success(user); }