diff --git a/ebike-feign/src/main/java/com/ebike/feign/clients/OrdersFeignClient.java b/ebike-feign/src/main/java/com/ebike/feign/clients/OrdersFeignClient.java index 58354018..26571287 100644 --- a/ebike-feign/src/main/java/com/ebike/feign/clients/OrdersFeignClient.java +++ b/ebike-feign/src/main/java/com/ebike/feign/clients/OrdersFeignClient.java @@ -63,6 +63,14 @@ public interface OrdersFeignClient { @GetMapping("userOrders/refund") JsonResult refund(@RequestParam("orderId")Long orderId); + /** + * 订单发起退款申请 + * @param orderId 订单ID + * @return @ {@code 200} 成功,{@code 500} 失败 + */ + @GetMapping("userOrders/refundApply") + JsonResult refundApply(@RequestParam("orderId")Long orderId); + /** * 订单退款完成 * @param orderId 订单ID @@ -70,4 +78,20 @@ public interface OrdersFeignClient { */ @GetMapping("userOrders/doneRefund") JsonResult doneRefund(@RequestParam("orderId")Long orderId); + + /** + * 订单退款驳回 + * @param orderId 订单ID + * @return @ {@code 200} 成功,{@code 500} 失败 + */ + @GetMapping("userOrders/rejectRefund") + JsonResult rejectRefund(@RequestParam("orderId")Long orderId); + + /** + * 订单退款失败 + * @param orderId 订单ID + * @return @ {@code 200} 成功,{@code 500} 失败 + */ + @GetMapping("userOrders/failRefund") + JsonResult failRefund(@RequestParam("orderId")Long orderId); } diff --git a/ebike-orders/src/main/java/com/cdzy/orders/controller/EbikeUserOrdersController.java b/ebike-orders/src/main/java/com/cdzy/orders/controller/EbikeUserOrdersController.java index e1172294..1953f060 100644 --- a/ebike-orders/src/main/java/com/cdzy/orders/controller/EbikeUserOrdersController.java +++ b/ebike-orders/src/main/java/com/cdzy/orders/controller/EbikeUserOrdersController.java @@ -150,6 +150,18 @@ public class EbikeUserOrdersController { return JsonResult.success(); } + /** + * 订单退款申请。 + * + * @param orderId 订单ID + * @ {@code 200} 添加成功,{@code 500} 添加失败 + */ + @GetMapping("refundApply") + public JsonResult refundApply(@RequestParam("orderId")Long orderId) { + userOrdersService.refundApply(orderId); + return JsonResult.success(); + } + /** * 订单退款。 * @@ -174,6 +186,30 @@ public class EbikeUserOrdersController { return JsonResult.success(); } + /** + * 订单退款驳回。 + * + * @param orderId 订单ID + * @ {@code 200} 添加成功,{@code 500} 添加失败 + */ + @GetMapping("rejectRefund") + public JsonResult rejectRefund(@RequestParam("orderId")Long orderId) { + userOrdersService.rejectRefund(orderId); + return JsonResult.success(); + } + + /** + * 订单退款失败。 + * + * @param orderId 订单ID + * @ {@code 200} 添加成功,{@code 500} 添加失败 + */ + @GetMapping("failRefund") + public JsonResult failRefund(@RequestParam("orderId")Long orderId) { + userOrdersService.failRefund(orderId); + return JsonResult.success(); + } + /** * 检查车辆是否在运营区内。 diff --git a/ebike-orders/src/main/java/com/cdzy/orders/enums/OrderStatus.java b/ebike-orders/src/main/java/com/cdzy/orders/enums/OrderStatus.java index e81c4cc6..edf2981c 100644 --- a/ebike-orders/src/main/java/com/cdzy/orders/enums/OrderStatus.java +++ b/ebike-orders/src/main/java/com/cdzy/orders/enums/OrderStatus.java @@ -35,4 +35,16 @@ public interface OrderStatus { * 已退款 */ int REFUNDED = 5; + /** + * 退款申请中 + */ + int REFUND_APPLYING = 6; + /** + * 退款申请驳回 + */ + int REFUND_REJECTED = 7; + /** + * 退款失败 + */ + int REFUND_FAILED = 8; } diff --git a/ebike-orders/src/main/java/com/cdzy/orders/service/UserOrdersService.java b/ebike-orders/src/main/java/com/cdzy/orders/service/UserOrdersService.java index 83f92cc7..baad3c63 100644 --- a/ebike-orders/src/main/java/com/cdzy/orders/service/UserOrdersService.java +++ b/ebike-orders/src/main/java/com/cdzy/orders/service/UserOrdersService.java @@ -87,6 +87,12 @@ public interface UserOrdersService extends IService { */ void payment(ResFeignOrderPaymentDto paymentDto); + /** + * 订单发起退款 + * @param orderId 订单ID + */ + void refundApply(Long orderId); + /** * 订单退款 * @param orderId 订单ID @@ -99,6 +105,18 @@ public interface UserOrdersService extends IService { */ void doneRefund(Long orderId); + /** + * 订单退款驳回 + * @param orderId 订单ID + */ + void rejectRefund(Long orderId); + + /** + * 订单退款失败 + * @param orderId 订单ID + */ + void failRefund(Long orderId); + /** * 获取订单详情 * @param orderId 订单id diff --git a/ebike-orders/src/main/java/com/cdzy/orders/service/impl/UserOrdersServiceImpl.java b/ebike-orders/src/main/java/com/cdzy/orders/service/impl/UserOrdersServiceImpl.java index bde5c907..32d38433 100644 --- a/ebike-orders/src/main/java/com/cdzy/orders/service/impl/UserOrdersServiceImpl.java +++ b/ebike-orders/src/main/java/com/cdzy/orders/service/impl/UserOrdersServiceImpl.java @@ -304,6 +304,16 @@ public class UserOrdersServiceImpl extends ServiceImpl