From a46a00bdc22da9ece8bb09ac7d6bcbdfbabdd6ab Mon Sep 17 00:00:00 2001
From: xin <1099200748@qq.com>
Date: Thu, 31 Jul 2025 17:17:00 +0800
Subject: [PATCH] 退款订单-1
---
oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderOperationLogServiceImpl.java | 44 +++++++++++++++++++++-
oying-system/src/main/java/com/oying/modules/sh/service/OrderReturnService.java | 3 +
oying-system/src/main/java/com/oying/modules/sh/domain/request/ReturnOrder.java | 32 ++++++++++++++++
oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderReturnServiceImpl.java | 5 +-
oying-system/src/main/java/com/oying/modules/sh/rest/OrderReturnController.java | 3 +
5 files changed, 81 insertions(+), 6 deletions(-)
diff --git a/oying-system/src/main/java/com/oying/modules/sh/domain/request/ReturnOrder.java b/oying-system/src/main/java/com/oying/modules/sh/domain/request/ReturnOrder.java
new file mode 100644
index 0000000..3320573
--- /dev/null
+++ b/oying-system/src/main/java/com/oying/modules/sh/domain/request/ReturnOrder.java
@@ -0,0 +1,32 @@
+package com.oying.modules.sh.domain.request;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import java.util.List;
+
+/**
+ * @author xin
+ * @description
+ * @date 2025/7/20 17:17
+ */
+@Getter
+@Setter
+public class ReturnOrder {
+
+ @NotBlank
+ @ApiModelProperty(value = "订单号")
+ private String orderNum;
+ @NotBlank
+ @ApiModelProperty(value = "退货类型")
+ private String reason;
+ @NotBlank
+ @ApiModelProperty(value = "备注:退货描述")
+ private String remark;
+ @ApiModelProperty(value = "图片地址,多张','分割")
+ private String photos;
+ List<ProductOrder> productOrders;
+
+}
diff --git a/oying-system/src/main/java/com/oying/modules/sh/rest/OrderReturnController.java b/oying-system/src/main/java/com/oying/modules/sh/rest/OrderReturnController.java
index c58992a..79a72cd 100644
--- a/oying-system/src/main/java/com/oying/modules/sh/rest/OrderReturnController.java
+++ b/oying-system/src/main/java/com/oying/modules/sh/rest/OrderReturnController.java
@@ -3,6 +3,7 @@
import com.oying.annotation.Log;
import com.oying.modules.sh.domain.OrderReturn;
import com.oying.modules.sh.domain.request.AuditOrderReturn;
+import com.oying.modules.sh.domain.request.ReturnOrder;
import com.oying.modules.sh.service.OrderReturnService;
import com.oying.modules.sh.domain.dto.OrderReturnQueryCriteria;
import com.oying.utils.R;
@@ -53,7 +54,7 @@
@Log("新增退款订单")
@ApiOperation("新增退款订单")
@PreAuthorize("@el.check('orderReturn:add')")
- public ResponseEntity<Object> createOrderReturn(@Validated @RequestBody OrderReturn resources) {
+ public ResponseEntity<Object> createOrderReturn(@Validated @RequestBody ReturnOrder resources) {
orderReturnService.create(resources);
return new ResponseEntity<>(R.success(), HttpStatus.CREATED);
}
diff --git a/oying-system/src/main/java/com/oying/modules/sh/service/OrderReturnService.java b/oying-system/src/main/java/com/oying/modules/sh/service/OrderReturnService.java
index 2aa81cf..3ba6a84 100644
--- a/oying-system/src/main/java/com/oying/modules/sh/service/OrderReturnService.java
+++ b/oying-system/src/main/java/com/oying/modules/sh/service/OrderReturnService.java
@@ -8,6 +8,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.oying.modules.sh.domain.request.AuditOrderReturn;
+import com.oying.modules.sh.domain.request.ReturnOrder;
import com.oying.utils.PageResult;
/**
@@ -36,7 +37,7 @@
* 创建
* @param resources /
*/
- void create(OrderReturn resources);
+ void create(ReturnOrder resources);
/**
* 编辑
diff --git a/oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderOperationLogServiceImpl.java b/oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderOperationLogServiceImpl.java
index 1607580..10aa7b0 100644
--- a/oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderOperationLogServiceImpl.java
+++ b/oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderOperationLogServiceImpl.java
@@ -1,6 +1,7 @@
package com.oying.modules.sh.service.impl;
import com.alibaba.fastjson2.JSON;
+import com.oying.exception.BadRequestException;
import com.oying.modules.sh.domain.OrderOperationLog;
import com.oying.modules.sh.domain.vo.OrderResponse;
import com.oying.modules.sh.mapper.OrderMapper;
@@ -55,15 +56,39 @@
public synchronized void create(OrderResponse response, OrderStatusEnum statusEnum, String cardName) {
String userType = ConstantsKey.BUYER;
String username = null;
+ Timestamp time = new Timestamp(System.currentTimeMillis());
switch (statusEnum) {
+ case NINE:
+ if (response.getOrder().getOrderStatus().equals(OrderStatusEnum.NINE.getKey())) {
+ throw new BadRequestException("订单已取消");
+ }
+ if (response.getOrder().getOrderStatus() > OrderStatusEnum.TWO.getKey()) {
+ throw new BadRequestException(OrderStatusEnum.getValue(response.getOrder().getOrderStatus()));
+ }
case ZERO:
case ONE:
case EIGHT:
- case NINE:
userType = ConstantsKey.BUYER;
break;
case TWO:
username = response.getOrder().getUsername();
+ OrderOperationLog log1 = new OrderOperationLog();
+ log1.setOrderNum(response.getOrder().getOrderNum());
+ log1.setUsername(username);
+ log1.setUserType(userType);
+ log1.setOperation(OrderStatusEnum.ONE.getKey());
+ log1.setOperationDescribe(OrderStatusEnum.ONE.getValue());
+ log1.setRemark(username + ":" + time + ">" + OrderStatusEnum.ONE.getValue() + ":" + response.getOrder().getOrderNum());
+ Map<String, Object> map1 = new LinkedHashMap<>();
+ response.getOrder().setOrderStatus(OrderStatusEnum.ONE.getKey());
+ response.getOrder().setOrderStatusDescribe(OrderStatusEnum.ONE.getValue());
+ map1.put("order", response.getOrder());
+ map1.put("address", response.getAddress());
+ log1.setSnapshotData(JSON.toJSONString(map1));
+ log1.setOperationTime(time);
+ orderOperationLogMapper.insert(log1);
+ response.getOrder().setOrderStatus(OrderStatusEnum.TWO.getKey());
+ response.getOrder().setOrderStatusDescribe(OrderStatusEnum.TWO.getValue());
case FOUR:
userType = ConstantsKey.MERCHANT;
break;
@@ -73,13 +98,28 @@
case SIX:
case SEVEN:
userType = ConstantsKey.RIDER;
+ username = SecurityUtils.getCurrentUsername();
+ OrderOperationLog log2 = new OrderOperationLog();
+ log2.setOrderNum(response.getOrder().getOrderNum());
+ log2.setUsername(username);
+ log2.setUserType(userType);
+ log2.setOperation(statusEnum.getKey());
+ log2.setOperationDescribe(statusEnum.getValue());
+ log2.setRemark(username + ":" + time + ">" + statusEnum.getValue() + ":" + response.getOrder().getOrderNum());
+ Map<String, Object> map2 = new LinkedHashMap<>();
+ map2.put("order", response.getOrder());
+ map2.put("address", response.getAddress());
+ log2.setSnapshotData(JSON.toJSONString(map2));
+ log2.setOperationTime(time);
+ orderOperationLogMapper.insert(log2);
+ orderMapper.updateOrderStatus(response.getOrder().getOrderNum(), statusEnum.getKey(), statusEnum.getValue());
+ statusEnum = OrderStatusEnum.EIGHT;
break;
default:
}
if (username == null) {
username = SecurityUtils.getCurrentUsername();
}
- Timestamp time = new Timestamp(System.currentTimeMillis());
OrderOperationLog resources = new OrderOperationLog();
resources.setOrderNum(response.getOrder().getOrderNum());
resources.setUsername(username);
diff --git a/oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderReturnServiceImpl.java b/oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderReturnServiceImpl.java
index f8fe21d..7be0520 100644
--- a/oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderReturnServiceImpl.java
+++ b/oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderReturnServiceImpl.java
@@ -2,6 +2,7 @@
import com.oying.modules.sh.domain.OrderReturn;
import com.oying.modules.sh.domain.request.AuditOrderReturn;
+import com.oying.modules.sh.domain.request.ReturnOrder;
import com.oying.utils.FileUtil;
import com.oying.utils.enums.ReturnAuditEnum;
import lombok.RequiredArgsConstructor;
@@ -59,8 +60,8 @@
@Override
@Transactional(rollbackFor = Exception.class)
- public void create(OrderReturn resources) {
- orderReturnMapper.insert(resources);
+ public void create(ReturnOrder resources) {
+
}
@Override
--
Gitblit v1.9.3