diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/order/mobile/controller/OrderPlaceMobileController.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/order/mobile/controller/OrderPlaceMobileController.java index a090bdf2..828b5f88 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/order/mobile/controller/OrderPlaceMobileController.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/order/mobile/controller/OrderPlaceMobileController.java @@ -5,8 +5,10 @@ import com.bonus.canteen.core.order.common.constants.StageWhiteList; import com.bonus.canteen.core.order.mobile.dto.OrderPayMobileDTO; import com.bonus.canteen.core.order.mobile.dto.StagePayMobileDTO; import com.bonus.canteen.core.pay.api.vo.UnifyPayVO; +import com.bonus.canteen.core.pay.common.constants.PayStateEnum; import com.bonus.canteen.core.pay.common.constants.PayTypeEnum; import com.bonus.common.core.domain.R; +import com.bonus.common.core.exception.ServiceException; import com.bonus.common.core.web.domain.AjaxResult; import com.bonus.common.houqin.constant.RetCodeEnum; import com.bonus.canteen.core.common.utils.LogUtil; @@ -27,6 +29,7 @@ import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.math.BigDecimal; import java.util.Map; +import java.util.Objects; @RestController @RequestMapping({"/api/v2/mobile/order"}) @@ -156,6 +159,15 @@ public class OrderPlaceMobileController { stagePayDTO.setPayType(PayTypeEnum.MEAL_CARD.getKey()); mobileVO = this.orderPlaceMobileBusiness.stageOrderPay(headerDTO, stagePayDTO); LogUtil.info("[驿站支付]支付耗时", System.currentTimeMillis() - startTime, mobileVO); + if(Objects.isNull(mobileVO)) { + throw new ServiceException("支付失败"); + } + if(PayStateEnum.isFailedState(mobileVO.getCode())) { + throw new ServiceException(mobileVO.getMsg()); + } + }catch (ServiceException ex) { + log.error("驿站支付异常", ex); + return AjaxResult.error(ex.getMessage()); }catch (Exception ex) { log.error("驿站支付异常", ex); return AjaxResult.error("支付失败");