diff --git a/xhpc-modules/xhpc-payment/src/main/java/com/xhpc/payment/controller/XhpcRefundAuditController.java b/xhpc-modules/xhpc-payment/src/main/java/com/xhpc/payment/controller/XhpcRefundAuditController.java index 8a1c7987..0656c2ed 100644 --- a/xhpc-modules/xhpc-payment/src/main/java/com/xhpc/payment/controller/XhpcRefundAuditController.java +++ b/xhpc-modules/xhpc-payment/src/main/java/com/xhpc/payment/controller/XhpcRefundAuditController.java @@ -136,6 +136,7 @@ public class XhpcRefundAuditController extends BaseController { String refundOrderId = StringUtils.valueOf(refundOrder.get("refundOrderId")); XhpcRefundOrder xhpcRefundOrder = new XhpcRefundOrder(); xhpcRefundOrder.setRefundOrderId(Long.parseLong(refundOrderId)); + xhpcRefundOrder.setExamineStatus(1); xhpcRefundOrder.setStatus(StatusConstants.REFUND_ORDER_STATUS_CANCEL); int updateStatus = iXhpcRefundOrderService.updateStatus(xhpcRefundOrder); if (updateStatus == 0) { diff --git a/xhpc-modules/xhpc-payment/src/main/java/com/xhpc/payment/controller/XhpcRefundOrderController.java b/xhpc-modules/xhpc-payment/src/main/java/com/xhpc/payment/controller/XhpcRefundOrderController.java index d0d58132..659a395e 100644 --- a/xhpc-modules/xhpc-payment/src/main/java/com/xhpc/payment/controller/XhpcRefundOrderController.java +++ b/xhpc-modules/xhpc-payment/src/main/java/com/xhpc/payment/controller/XhpcRefundOrderController.java @@ -54,6 +54,18 @@ public class XhpcRefundOrderController extends BaseController { if (StringUtils.isEmpty(type)) { return AjaxResult.error(HttpStatus.NOT_NULL, "退款渠道不能为空"); } + + //是否有实时数据 + int i =iXhpcRefundOrderService.countXhpcRealTimeOrder(Long.valueOf(userId)); + if (i > 0) { + return AjaxResult.error(1103, "车辆正在充电,不能退款"); + } + // 是否有异常订单 + int j =iXhpcRefundOrderService.countXhpcChargeOrder(Long.valueOf(userId)); + if (j > 0) { + return AjaxResult.error(1103, "你有异常订单未解决,请拨打客服电话进行解决"); + } + //生成退款订单 String orderOutNumber = StringUtils.numFormat(Long.parseLong(userId), Integer.parseInt(type), StatusConstants.FLOWING_WATER_REFUND_TYPE); String remark = StringUtils.valueOf(map.get("remark")); diff --git a/xhpc-modules/xhpc-payment/src/main/java/com/xhpc/payment/mapper/XhpcRefundOrderMapper.java b/xhpc-modules/xhpc-payment/src/main/java/com/xhpc/payment/mapper/XhpcRefundOrderMapper.java index dd7a7449..59c9d058 100644 --- a/xhpc-modules/xhpc-payment/src/main/java/com/xhpc/payment/mapper/XhpcRefundOrderMapper.java +++ b/xhpc-modules/xhpc-payment/src/main/java/com/xhpc/payment/mapper/XhpcRefundOrderMapper.java @@ -81,4 +81,14 @@ public interface XhpcRefundOrderMapper { */ public Map getNotRefundOrder(@Param("userId") Long userId); + + /** + * 判断用户是否在充电中 + */ + int countXhpcRealTimeOrder(@Param("userId")Long userId); + + /** + * 判断用户是否有异常订单未处理 + */ + int countXhpcChargeOrder(@Param("userId")Long userId); } diff --git a/xhpc-modules/xhpc-payment/src/main/java/com/xhpc/payment/service/IXhpcRefundOrderService.java b/xhpc-modules/xhpc-payment/src/main/java/com/xhpc/payment/service/IXhpcRefundOrderService.java index 63811aed..75a10dfa 100644 --- a/xhpc-modules/xhpc-payment/src/main/java/com/xhpc/payment/service/IXhpcRefundOrderService.java +++ b/xhpc-modules/xhpc-payment/src/main/java/com/xhpc/payment/service/IXhpcRefundOrderService.java @@ -2,6 +2,7 @@ package com.xhpc.payment.service; import com.xhpc.common.core.web.domain.AjaxResult; import com.xhpc.payment.domain.XhpcRefundOrder; +import org.apache.ibatis.annotations.Param; import java.math.BigDecimal; import java.util.List; @@ -67,4 +68,17 @@ public interface IXhpcRefundOrderService { * @return 结果 */ public int updateStatus(XhpcRefundOrder xhpcRefundOrder); + + + //是否有正在充电的订单 + /** + * 判断用户是否在充电中 + */ + int countXhpcRealTimeOrder(Long userId); + //是否有异常订单 + /** + * 判断用户是否有异常订单未处理 + */ + int countXhpcChargeOrder(Long userId); + } \ No newline at end of file diff --git a/xhpc-modules/xhpc-payment/src/main/java/com/xhpc/payment/service/impl/XhpcRefundOrderServiceImpl.java b/xhpc-modules/xhpc-payment/src/main/java/com/xhpc/payment/service/impl/XhpcRefundOrderServiceImpl.java index 489f0467..0667bbc2 100644 --- a/xhpc-modules/xhpc-payment/src/main/java/com/xhpc/payment/service/impl/XhpcRefundOrderServiceImpl.java +++ b/xhpc-modules/xhpc-payment/src/main/java/com/xhpc/payment/service/impl/XhpcRefundOrderServiceImpl.java @@ -132,4 +132,15 @@ public class XhpcRefundOrderServiceImpl implements IXhpcRefundOrderService { public int updateStatus(XhpcRefundOrder xhpcRefundOrder) { return xhpcRefundOrderMapper.updateStatus(xhpcRefundOrder); } + + @Override + public int countXhpcRealTimeOrder(Long userId) { + return xhpcRefundOrderMapper.countXhpcRealTimeOrder(userId); + } + + @Override + public int countXhpcChargeOrder(Long userId) { + return xhpcRefundOrderMapper.countXhpcChargeOrder(userId); + } + } \ No newline at end of file diff --git a/xhpc-modules/xhpc-payment/src/main/resources/mapper/XhpcRefundOrderMapper.xml b/xhpc-modules/xhpc-payment/src/main/resources/mapper/XhpcRefundOrderMapper.xml index 59fc420a..68c05251 100644 --- a/xhpc-modules/xhpc-payment/src/main/resources/mapper/XhpcRefundOrderMapper.xml +++ b/xhpc-modules/xhpc-payment/src/main/resources/mapper/XhpcRefundOrderMapper.xml @@ -142,6 +142,7 @@ UPDATE xhpc_refund_order status = #{status}, + examine_status = #{examineStatus}, WHERE refund_order_id = #{refundOrderId} and examine_status = 0 @@ -221,4 +222,13 @@ ORDER BY xro.create_time DESC LIMIT 1 + + + + + \ No newline at end of file