ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/SiteInfoVO.java
New file @@ -0,0 +1,23 @@ package com.ruoyi.chargingPile.api.vo; import com.ruoyi.chargingPile.api.model.Site; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.math.BigDecimal; @Data @ApiModel(value = "SiteVO对象", description = "小程序扫一扫-详情页面") public class SiteInfoVO { @ApiModelProperty(value = "电站名称") private String name; @ApiModelProperty(value = "桩编号") private String number; @ApiModelProperty(value = "普通电价") private BigDecimal electrovalence; @ApiModelProperty(value = "会员电价") private BigDecimal vipElectrovalence; @ApiModelProperty(value = "超时占位费说明") private String spaceChargeExplain; } ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/model/LoginUserApplet.java
@@ -45,7 +45,4 @@ * 登录IP地址 */ private String ipaddr; } ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/user/UserAppletException.java
New file @@ -0,0 +1,48 @@ package com.ruoyi.common.core.exception.user; /** * 学生端登录异常信息 * * @author HJL * @version 1.0 * @since 2024-05-24 11:35 */ public class UserAppletException extends RuntimeException { private static final long serialVersionUID = 1L; /** * 错误提示 */ private String message; /** * 错误码 */ private int code; public UserAppletException() { } public UserAppletException(String message, Integer code) { this.message = message; this.code = code; } @Override public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } public int getCode() { return code; } public void setCode(int code) { this.code = code; } } ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/handler/GlobalExceptionHandler.java
@@ -3,6 +3,8 @@ import javax.naming.SizeLimitExceededException; import javax.servlet.http.HttpServletRequest; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.exception.user.UserAppletException; import org.apache.commons.fileupload.FileUploadBase; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -151,4 +153,12 @@ log.error("上传文件异常 => : {}", e.getMessage()); return AjaxResult.error("文件识别大小超出限制,允许的大小在" + maxFileSize); } /** * 学生端单点登录-异常信息 */ @ExceptionHandler(UserAppletException.class) public AjaxResult<String> studyLoginExceptionHandler(UserAppletException e) { return AjaxResult.error(e.getCode(), e.getMessage()); } } ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/service/TokenService.java
@@ -5,6 +5,7 @@ import java.util.concurrent.TimeUnit; import javax.servlet.http.HttpServletRequest; import com.ruoyi.common.core.exception.user.UserAppletException; import com.ruoyi.system.api.model.LoginUserApplet; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -89,7 +90,11 @@ return rspMap; } public LoginUserApplet getLoginUserApplet() { return getLoginUserAppletToken(ServletUtils.getRequest()); LoginUserApplet loginUserAppletToken = getLoginUserAppletToken(ServletUtils.getRequest()); if (loginUserAppletToken == null){ throw new UserAppletException("登录失效,请重新登录!", 401); } return loginUserAppletToken; } public LoginUserApplet getLoginUserAppletToken(HttpServletRequest request) { // 获取请求携带的令牌 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java
@@ -16,6 +16,7 @@ import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.common.core.web.page.BasePage; import com.ruoyi.common.core.web.page.PageInfo; import com.ruoyi.common.security.service.TokenService; import com.ruoyi.other.api.domain.TCoupon; import com.ruoyi.other.api.feignClient.OtherClient; import io.swagger.annotations.ApiModelProperty; @@ -48,6 +49,8 @@ @Autowired private TAppUserCarService appUserCarService; @Autowired private TokenService tokenService; /** * 查询用户可用优惠券数量 * @param dto @@ -68,7 +71,7 @@ public AjaxResult<List<TAppUserCar>> carList() { // todo 用户id List<TAppUserCar> appUserId = appUserCarService.list(new QueryWrapper<TAppUserCar>() .eq("app_user_id", 11)); .eq("app_user_id",tokenService.getLoginUserApplet().getUserid() )); return AjaxResult.ok(appUserId); } ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
@@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.security.service.TokenService; import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.common.core.web.page.BasePage; import com.ruoyi.common.core.web.page.PageInfo; @@ -12,6 +13,7 @@ import com.ruoyi.order.dto.MyChargingOrderInfo; import com.ruoyi.order.service.TChargingOrderService; import io.swagger.annotations.Api; import org.springframework.beans.factory.annotation.Autowired; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.*; @@ -35,6 +37,8 @@ @Resource private TChargingOrderService chargingOrderService; @Autowired private TokenService tokenService; /** * 查询用户最近一次充电记录使用的车辆 * @param @@ -42,9 +46,8 @@ */ @PostMapping(value = "/getCar") public R<Long> getCar() { // todo 获取用户id List<TChargingOrder> list = chargingOrderService.list(new LambdaQueryWrapper<TChargingOrder>() .eq(TChargingOrder::getAppUserId, 11) .eq(TChargingOrder::getAppUserId, tokenService.getLoginUserApplet().getUserid()) .isNotNull(TChargingOrder::getAppUserCarId)); if (!list.isEmpty()){ // 最近使用的车辆id