From 9b867103f0d53bf913bb4ea93687820d92ee0515 Mon Sep 17 00:00:00 2001
From: xin <1099200748@qq.com>
Date: Thu, 14 Aug 2025 14:45:24 +0800
Subject: [PATCH] 退款订单
---
oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderOperationLogServiceImpl.java | 7
oying-system/src/main/java/com/oying/modules/sh/rest/OrderOperationLogController.java | 4
oying-system/src/main/java/com/oying/modules/sh/domain/request/AuditOrderReturn.java | 3
oying-common/src/main/java/com/oying/utils/DateUtil.java | 32 ++++
oying-system/src/main/java/com/oying/modules/sh/mapper/OrderReturnMapper.java | 4
oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderServiceImpl.java | 18 ++
oying-system/src/main/java/com/oying/modules/sh/service/OrderService.java | 2
oying-system/src/main/java/com/oying/modules/security/config/SecurityProperties.java | 5
oying-system/src/main/resources/mapper/sh/OrderOperationLogMapper.xml | 9 +
oying-common/src/main/java/com/oying/utils/RedisUtils.java | 6
oying-system/src/main/resources/config/application-dev.yml | 2
oying-system/src/main/resources/mapper/sh/OrderMapper.xml | 3
oying-common/src/main/java/com/oying/utils/enums/ReturnAuditEnum.java | 4
oying-system/src/main/java/com/oying/modules/sh/domain/Order.java | 6
oying-system/src/main/java/com/oying/modules/sh/domain/dto/OrderOperationLogQueryCriteria.java | 3
oying-system/src/main/java/com/oying/modules/sh/mapper/OrderOperationLogMapper.java | 2
oying-system/src/main/resources/config/application-prod.yml | 2
oying-system/src/main/java/com/oying/modules/sh/domain/OrderReturn.java | 4
oying-system/src/main/java/com/oying/modules/sh/domain/OrderOperationLog.java | 4
oying-common/src/main/java/com/oying/utils/enums/OrderStatusEnum.java | 30 ++--
/dev/null | 47 -------
oying-common/src/main/java/com/oying/utils/enums/GenerateEnum.java | 16 +-
oying-system/src/main/java/com/oying/modules/sh/service/OrderOperationLogService.java | 2
oying-system/src/main/resources/mapper/sh/OrderReturnMapper.xml | 8 +
oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderReturnServiceImpl.java | 124 ++++++++++++++++++--
25 files changed, 227 insertions(+), 120 deletions(-)
diff --git a/oying-common/src/main/java/com/oying/utils/DateUtil.java b/oying-common/src/main/java/com/oying/utils/DateUtil.java
index d74db88..5a1859a 100644
--- a/oying-common/src/main/java/com/oying/utils/DateUtil.java
+++ b/oying-common/src/main/java/com/oying/utils/DateUtil.java
@@ -17,16 +17,38 @@
public static final DateTimeFormatter DFY_MD = DateTimeFormatter.ofPattern("yyyy-MM-dd");
public static final DateTimeFormatter DFY_M = DateTimeFormatter.ofPattern("yyyy-MM");
public static final DateTimeFormatter SDF_YMDHMS = DateTimeFormatter.ofPattern("yyyyMMddHHmmss");
+ public static final Integer DAY = 30;
+
+ public static boolean isBefore(String date, int count) {
+ LocalDateTime time = LocalDateTime.parse(date, SDF_YMDHMS);
+ LocalDateTime now = LocalDateTime.now();
+ LocalDateTime nowPlus30 = time.plusDays(count);
+
+ // 检查目标时间是否在 [time, time+count天] 区间内
+ return !now.isBefore(time) && !now.isAfter(nowPlus30);
+ }
/**
- * Timestamp增加分钟
+ * Timestamp增减天
*/
- public static Timestamp addMinute(Timestamp time, int month) {
+ public static Timestamp addDay(Timestamp time, int count) {
// 创建 Calendar 对象并设置为当前日期和时间的值
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(time.getTime());
// 将MINUTE字段添加到当前日期和时间
- calendar.add(Calendar.MINUTE, month);
+ calendar.add(Calendar.DATE, count);
+ return new Timestamp(calendar.getTime().getTime());
+ }
+
+ /**
+ * Timestamp增减分钟
+ */
+ public static Timestamp addMinute(Timestamp time, int count) {
+ // 创建 Calendar 对象并设置为当前日期和时间的值
+ Calendar calendar = Calendar.getInstance();
+ calendar.setTimeInMillis(time.getTime());
+ // 将MINUTE字段添加到当前日期和时间
+ calendar.add(Calendar.MINUTE, count);
return new Timestamp(calendar.getTime().getTime());
}
@@ -128,6 +150,7 @@
/**
* 获取当前时间yyyyMMdd
+ *
* @return 、yyyyMMdd
*/
public static String getNowTimeTypeYYYYMMDD() {
@@ -136,12 +159,13 @@
/**
* 获取当前时间yyyyMM
+ *
* @return 、yyyyMM
*/
public static String getNowTimeTypeYYYYMM() {
return DFY_M.format(LocalDateTime.now());
}
-
+
/**
* 日期格式化 yyyy-MM-dd
*
diff --git a/oying-common/src/main/java/com/oying/utils/RedisUtils.java b/oying-common/src/main/java/com/oying/utils/RedisUtils.java
index 361c573..6140508 100644
--- a/oying-common/src/main/java/com/oying/utils/RedisUtils.java
+++ b/oying-common/src/main/java/com/oying/utils/RedisUtils.java
@@ -24,8 +24,6 @@
@SuppressWarnings({"unchecked", "all"})
public class RedisUtils {
private static final Logger log = LoggerFactory.getLogger(RedisUtils.class);
- @Value("${jwt.generate-order-sn}")
- private String generateOrderSn;
@Value("${wx.enabled}")
private Boolean wxEnabled;
private static final String T = "T-";
@@ -44,10 +42,10 @@
* @param i
* @return
*/
- public String generateOrderSn(Integer i) {
+ public String generateSn(String generate, Integer i) {
StringBuilder sb = new StringBuilder();
String date = new SimpleDateFormat("yyyyMMdd").format(new Date());
- String key = generateOrderSn + i + date;
+ String key = generate + i + date;
Long increment = increment(key);
sb.append(date);
sb.append(String.format("%04d", i));
diff --git a/oying-common/src/main/java/com/oying/utils/enums/GenerateEnum.java b/oying-common/src/main/java/com/oying/utils/enums/GenerateEnum.java
index 6f7bf84..cefd00b 100644
--- a/oying-common/src/main/java/com/oying/utils/enums/GenerateEnum.java
+++ b/oying-common/src/main/java/com/oying/utils/enums/GenerateEnum.java
@@ -13,15 +13,15 @@
public enum GenerateEnum {
ORDER(10, "订单编号"),
- RETURN_ORDER(20, "退单编号"),
+ ORDER_RETURN(20, "退单编号"),
- BUSINESS_NO(30,"未使用"),
- FREE_DEPOSIT(40,"未使用"),
- PENETRATE_ID(50,"未使用"),
- RETURN_FREE_DEPOSIT(60,"未使用"),
- CONTRACT_NUM(70,"未使用"),
- EIGHT(80,"未使用"),
- NINE(90,"未使用"),
+ BUSINESS_NO(30, "未使用"),
+ FREE_DEPOSIT(40, "未使用"),
+ PENETRATE_ID(50, "未使用"),
+ RETURN_FREE_DEPOSIT(60, "未使用"),
+ CONTRACT_NUM(70, "未使用"),
+ EIGHT(80, "未使用"),
+ NINE(90, "未使用"),
UNKNOWN(0, "未知枚举");
private final Integer key;
diff --git a/oying-common/src/main/java/com/oying/utils/enums/OrderStatusEnum.java b/oying-common/src/main/java/com/oying/utils/enums/OrderStatusEnum.java
index 1d65d31..114841b 100644
--- a/oying-common/src/main/java/com/oying/utils/enums/OrderStatusEnum.java
+++ b/oying-common/src/main/java/com/oying/utils/enums/OrderStatusEnum.java
@@ -7,21 +7,25 @@
@Getter
@AllArgsConstructor
public enum OrderStatusEnum {
- ZERO(0, "订单已提交"),
- ONE(1, "支付成功"),
- TWO(2, "商家已接单"),
- THREE(3, "骑手已接单"),
- FOUR(4, "商家已备货"),
- FIVE(5, "骑手已到店"),
- SIX(6, "骑手已取货,正在送货"),
- SEVEN(7, "商品已送达"),
- EIGHT(8, "订单已完成"),
- NINE(9, "取消订单"),
- TEN(10, "申请售后"),
- UNKNOWN(99, "未知枚举");
+ ZERO(0, "ORDER", "订单已提交"),
+ ONE(1, "ORDER", "支付成功"),
+ TWO(2, "ORDER", "商家已接单"),
+ THREE(3, "ORDER", "商家已备货"),
+ FOUR(4, "ORDER", "骑手已接单"),
+ FIVE(5, "ORDER", "骑手已到店"),
+ SIX(6, "ORDER", "骑手已取货"),
+ SEVEN(7, "ORDER", "商品已送达"),
+ EIGHT(8, "ORDER", "订单已完成"),
+ NINE(9, "ORDER", "订单已取消"),
+ TEN(10, "REFUND", "申请退款"),
+ ELEVEN(11, "REFUND", "申请拒绝"),
+ TWELVE(12, "REFUND", "退款申诉"),
+ THIRTEEN(13, "REFUND", "申请同意"),
+ FOURTEEN(14, "REFUND", "退款成功"),
+ UNKNOWN(99, "UNKNOWN", "未知枚举");
private final Integer key;
-
+ private final String code;
private final String value;
public static OrderStatusEnum find(Integer val) {
diff --git a/oying-common/src/main/java/com/oying/utils/enums/ReturnAuditEnum.java b/oying-common/src/main/java/com/oying/utils/enums/ReturnAuditEnum.java
index 335a7cd..a154601 100644
--- a/oying-common/src/main/java/com/oying/utils/enums/ReturnAuditEnum.java
+++ b/oying-common/src/main/java/com/oying/utils/enums/ReturnAuditEnum.java
@@ -13,8 +13,8 @@
public enum ReturnAuditEnum {
ZERO(0, "申请"),
- ONE(1, "通过"),
- TWO(2, "拒绝"),
+ ONE(1, "拒绝"),
+ TWO(2, "通过"),
THREE(3, "未知");
private final Integer key;
diff --git a/oying-system/src/main/java/com/oying/modules/security/config/SecurityProperties.java b/oying-system/src/main/java/com/oying/modules/security/config/SecurityProperties.java
index 77a3b86..ff07ca3 100644
--- a/oying-system/src/main/java/com/oying/modules/security/config/SecurityProperties.java
+++ b/oying-system/src/main/java/com/oying/modules/security/config/SecurityProperties.java
@@ -55,11 +55,6 @@
*/
private Long renew;
- /**
- * 自定义redis key
- */
- private String generateOrderSn;
-
public String getTokenStartWith() {
return tokenStartWith + " ";
}
diff --git a/oying-system/src/main/java/com/oying/modules/sh/domain/Order.java b/oying-system/src/main/java/com/oying/modules/sh/domain/Order.java
index fde0f9d..93dd1ee 100644
--- a/oying-system/src/main/java/com/oying/modules/sh/domain/Order.java
+++ b/oying-system/src/main/java/com/oying/modules/sh/domain/Order.java
@@ -9,6 +9,7 @@
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
+import java.sql.Timestamp;
import java.util.Objects;
import java.util.Set;
@@ -56,9 +57,12 @@
private String orderRemark;
@NotBlank
- @ApiModelProperty(value = "预计送达时间")
+ @ApiModelProperty(value = "送达预计时间")
private String orderTime;
+ @ApiModelProperty(value = "送达完成时间")
+ private Timestamp orderFinishTime;
+
@NotNull
@ApiModelProperty(value = "打包费")
private BigDecimal packagingPrice;
diff --git a/oying-system/src/main/java/com/oying/modules/sh/domain/OrderOperationLog.java b/oying-system/src/main/java/com/oying/modules/sh/domain/OrderOperationLog.java
index f837d29..553f0dc 100644
--- a/oying-system/src/main/java/com/oying/modules/sh/domain/OrderOperationLog.java
+++ b/oying-system/src/main/java/com/oying/modules/sh/domain/OrderOperationLog.java
@@ -42,6 +42,10 @@
private Integer operation = 0;
@NotBlank
+ @ApiModelProperty(value = "类型")
+ private String operationType;
+
+ @NotBlank
@ApiModelProperty(value = "用户操作描述")
private String operationDescribe = "提交订单";
diff --git a/oying-system/src/main/java/com/oying/modules/sh/domain/OrderReturn.java b/oying-system/src/main/java/com/oying/modules/sh/domain/OrderReturn.java
index 4186ac7..e6d3787 100644
--- a/oying-system/src/main/java/com/oying/modules/sh/domain/OrderReturn.java
+++ b/oying-system/src/main/java/com/oying/modules/sh/domain/OrderReturn.java
@@ -115,7 +115,7 @@
@ApiModelProperty(value = "实付金额")
private BigDecimal actuallyPayPrice;
- @ApiModelProperty(value = "退款价格")
+ @ApiModelProperty(value = "退款金额")
private BigDecimal refundPrice;
@ApiModelProperty(value = "退款状态")
@@ -127,7 +127,7 @@
@ApiModelProperty(value = "退款渠道")
private String channel;
- @ApiModelProperty(value = "退款原因")
+ @ApiModelProperty(value = "退货类型")
private String reason;
@ApiModelProperty(value = "备注")
diff --git a/oying-system/src/main/java/com/oying/modules/sh/domain/OrderReturnOperationLog.java b/oying-system/src/main/java/com/oying/modules/sh/domain/OrderReturnOperationLog.java
deleted file mode 100644
index 107c4e7..0000000
--- a/oying-system/src/main/java/com/oying/modules/sh/domain/OrderReturnOperationLog.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package com.oying.modules.sh.domain;
-
-import lombok.Data;
-import cn.hutool.core.bean.BeanUtil;
-import io.swagger.annotations.ApiModelProperty;
-import cn.hutool.core.bean.copier.CopyOptions;
-import java.sql.Timestamp;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-import java.io.Serializable;
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-
-/**
-* @description /
-* @author lixin
-* @date 2025-07-02
-**/
-@Data
-@TableName("sh_order_return_operation_log")
-public class OrderReturnOperationLog implements Serializable {
-
- @TableId(value = "log_id", type = IdType.AUTO)
- @ApiModelProperty(value = "主键")
- private Long logId;
-
- @NotBlank
- @ApiModelProperty(value = "订单号")
- private String returnNum;
-
- @NotBlank
- @ApiModelProperty(value = "用户账号")
- private String username;
-
- @NotBlank
- @ApiModelProperty(value = "用户类型(骑手、消费者、商家、平台)")
- private String userType;
-
- @NotNull
- @ApiModelProperty(value = "用户操作")
- private Integer operation;
-
- @NotBlank
- @ApiModelProperty(value = "用户操作描述")
- private String operationDescribe;
-
- @NotBlank
- @ApiModelProperty(value = "备注")
- private String remark;
-
- @NotNull
- @ApiModelProperty(value = "操作时的订单快照")
- private String snapshotData;
-
- @NotNull
- @ApiModelProperty(value = "操作时间")
- private Timestamp operationTime;
-
- public void copy(OrderReturnOperationLog source){
- BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true));
- }
-}
diff --git a/oying-system/src/main/java/com/oying/modules/sh/domain/dto/OrderOperationLogQueryCriteria.java b/oying-system/src/main/java/com/oying/modules/sh/domain/dto/OrderOperationLogQueryCriteria.java
index 26b92d1..c7bf374 100644
--- a/oying-system/src/main/java/com/oying/modules/sh/domain/dto/OrderOperationLogQueryCriteria.java
+++ b/oying-system/src/main/java/com/oying/modules/sh/domain/dto/OrderOperationLogQueryCriteria.java
@@ -24,6 +24,9 @@
@ApiModelProperty(value = "用户类型")
private String userType;
+ @ApiModelProperty(value = "类型")
+ private String operationType;
+
@ApiModelProperty(value = "订单号")
private String orderNum;
private List<Timestamp> operationTime;
diff --git a/oying-system/src/main/java/com/oying/modules/sh/domain/dto/OrderReturnOperationLogQueryCriteria.java b/oying-system/src/main/java/com/oying/modules/sh/domain/dto/OrderReturnOperationLogQueryCriteria.java
deleted file mode 100644
index 572a792..0000000
--- a/oying-system/src/main/java/com/oying/modules/sh/domain/dto/OrderReturnOperationLogQueryCriteria.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package com.oying.modules.sh.domain.dto;
-
-import lombok.Data;
-import java.sql.Timestamp;
-import java.util.List;
-import io.swagger.annotations.ApiModelProperty;
-
-/**
-* @author lixin
-* @date 2025-07-02
-**/
-@Data
-public class OrderReturnOperationLogQueryCriteria{
-
- @ApiModelProperty(value = "页码", example = "1")
- private Integer page = 1;
-
- @ApiModelProperty(value = "每页数据量", example = "10")
- private Integer size = 10;
-
- @ApiModelProperty(value = "订单号")
- private String returnNum;
-
- @ApiModelProperty(value = "用户账号")
- private String username;
-
- @ApiModelProperty(value = "用户类型(骑手、消费者、商家、平台)")
- private String userType;
- private List<Timestamp> operationTime;
-}
diff --git a/oying-system/src/main/java/com/oying/modules/sh/domain/request/AuditOrderReturn.java b/oying-system/src/main/java/com/oying/modules/sh/domain/request/AuditOrderReturn.java
index 4133bab..851eca1 100644
--- a/oying-system/src/main/java/com/oying/modules/sh/domain/request/AuditOrderReturn.java
+++ b/oying-system/src/main/java/com/oying/modules/sh/domain/request/AuditOrderReturn.java
@@ -1,5 +1,6 @@
package com.oying.modules.sh.domain.request;
+import com.oying.utils.enums.ReturnAuditEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
@@ -18,7 +19,7 @@
@ApiModelProperty(value = "退单号")
private String returnNum;
@ApiModelProperty(value = "审核状态")
- private String auditStatus;
+ private ReturnAuditEnum auditStatus;
@ApiModelProperty(value = "备注")
private String message;
@ApiModelProperty(value = "金额")
diff --git a/oying-system/src/main/java/com/oying/modules/sh/mapper/OrderOperationLogMapper.java b/oying-system/src/main/java/com/oying/modules/sh/mapper/OrderOperationLogMapper.java
index 8d97f9c..f98e5fd 100644
--- a/oying-system/src/main/java/com/oying/modules/sh/mapper/OrderOperationLogMapper.java
+++ b/oying-system/src/main/java/com/oying/modules/sh/mapper/OrderOperationLogMapper.java
@@ -20,5 +20,5 @@
List<OrderOperationLog> findAll(@Param("criteria") OrderOperationLogQueryCriteria criteria);
- List<OrderOperationLog> getByOrderNum(String orderNum);
+ List<OrderOperationLog> getByOrderNum(String orderNum, String type);
}
diff --git a/oying-system/src/main/java/com/oying/modules/sh/mapper/OrderReturnMapper.java b/oying-system/src/main/java/com/oying/modules/sh/mapper/OrderReturnMapper.java
index 58667c5..b94b03d 100644
--- a/oying-system/src/main/java/com/oying/modules/sh/mapper/OrderReturnMapper.java
+++ b/oying-system/src/main/java/com/oying/modules/sh/mapper/OrderReturnMapper.java
@@ -24,7 +24,9 @@
OrderReturn getByReturnNum(String returnNum);
- void updatePayStatus(String returnNum, String status, String time);
+ void updatePayStatus(String returnNum, String payState, String payTime);
Long countAll(@Param("criteria") OrderReturnQueryCriteria criteria, @Param("blurry") String blurry);
+
+ OrderReturn getByOrderNum(String orderNum, Integer status);
}
diff --git a/oying-system/src/main/java/com/oying/modules/sh/mapper/OrderReturnOperationLogMapper.java b/oying-system/src/main/java/com/oying/modules/sh/mapper/OrderReturnOperationLogMapper.java
deleted file mode 100644
index 401243f..0000000
--- a/oying-system/src/main/java/com/oying/modules/sh/mapper/OrderReturnOperationLogMapper.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package com.oying.modules.sh.mapper;
-
-import com.oying.modules.sh.domain.OrderReturnOperationLog;
-import com.oying.modules.sh.domain.dto.OrderReturnOperationLogQueryCriteria;
-import java.util.List;
-import org.apache.ibatis.annotations.Param;
-import org.apache.ibatis.annotations.Mapper;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-
-/**
-* @author lixin
-* @date 2025-07-02
-**/
-@Mapper
-public interface OrderReturnOperationLogMapper extends BaseMapper<OrderReturnOperationLog> {
-
- IPage<OrderReturnOperationLog> findAll(@Param("criteria") OrderReturnOperationLogQueryCriteria criteria, Page<Object> page);
-
- List<OrderReturnOperationLog> findAll(@Param("criteria") OrderReturnOperationLogQueryCriteria criteria);
-
- List<OrderReturnOperationLog> getByReturnNum(String returnNum);
-}
diff --git a/oying-system/src/main/java/com/oying/modules/sh/rest/OrderOperationLogController.java b/oying-system/src/main/java/com/oying/modules/sh/rest/OrderOperationLogController.java
index 3ef4e6f..46c77eb 100644
--- a/oying-system/src/main/java/com/oying/modules/sh/rest/OrderOperationLogController.java
+++ b/oying-system/src/main/java/com/oying/modules/sh/rest/OrderOperationLogController.java
@@ -46,7 +46,7 @@
@GetMapping("getByOrderNum")
@ApiOperation("根据订单号查询订单操作日志")
@PreAuthorize("@el.check('orderOperationLog:list')")
- public ResponseEntity<Object> queryOrderOperationLog(@RequestParam String orderNum) {
- return new ResponseEntity<>(R.success(orderOperationLogService.getByOrderNum(orderNum)), HttpStatus.OK);
+ public ResponseEntity<Object> queryOrderOperationLog(@RequestParam String orderNum, @RequestParam String type) {
+ return new ResponseEntity<>(R.success(orderOperationLogService.getByOrderNum(orderNum, type)), HttpStatus.OK);
}
}
diff --git a/oying-system/src/main/java/com/oying/modules/sh/rest/OrderReturnOperationLogController.java b/oying-system/src/main/java/com/oying/modules/sh/rest/OrderReturnOperationLogController.java
deleted file mode 100644
index 6b6b72c..0000000
--- a/oying-system/src/main/java/com/oying/modules/sh/rest/OrderReturnOperationLogController.java
+++ /dev/null
@@ -1,50 +0,0 @@
-package com.oying.modules.sh.rest;
-
-import com.oying.modules.sh.domain.OrderReturnOperationLog;
-import com.oying.modules.sh.service.OrderReturnOperationLogService;
-import com.oying.modules.sh.domain.dto.OrderReturnOperationLogQueryCriteria;
-import com.oying.utils.R;
-import lombok.RequiredArgsConstructor;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
-import io.swagger.annotations.*;
-import java.io.IOException;
-import javax.servlet.http.HttpServletResponse;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.oying.utils.PageResult;
-
-/**
-* @author lixin
-* @date 2025-07-02
-**/
-@RestController
-@RequiredArgsConstructor
-@Api(tags = "SH:退订用户操作管理")
-@RequestMapping("/api/orderReturnOperationLog")
-public class OrderReturnOperationLogController {
-
- private final OrderReturnOperationLogService orderReturnOperationLogService;
-
- @ApiOperation("导出数据")
- @GetMapping(value = "/download")
- @PreAuthorize("@el.check('orderReturnOperationLog:list')")
- public void exportOrderReturnOperationLog(HttpServletResponse response, OrderReturnOperationLogQueryCriteria criteria) throws IOException {
- orderReturnOperationLogService.download(orderReturnOperationLogService.queryAll(criteria), response);
- }
-
- @GetMapping
- @ApiOperation("查询退订用户操作管理")
- @PreAuthorize("@el.check('orderReturnOperationLog:list')")
- public ResponseEntity<PageResult<OrderReturnOperationLog>> queryOrderReturnOperationLog(OrderReturnOperationLogQueryCriteria criteria){
- Page<Object> page = new Page<>(criteria.getPage(), criteria.getSize());
- return new ResponseEntity<>(orderReturnOperationLogService.queryAll(criteria,page),HttpStatus.OK);
- }
-
- @GetMapping("getByReturnNum")
- @ApiOperation("根据退单号查询退单操作日志")
- public ResponseEntity<Object> getByReturnNum(@RequestParam String returnNum) {
- return new ResponseEntity<>(R.success(orderReturnOperationLogService.getByReturnNum(returnNum)), HttpStatus.OK);
- }
-}
diff --git a/oying-system/src/main/java/com/oying/modules/sh/service/OrderOperationLogService.java b/oying-system/src/main/java/com/oying/modules/sh/service/OrderOperationLogService.java
index d21c030..6338bcb 100644
--- a/oying-system/src/main/java/com/oying/modules/sh/service/OrderOperationLogService.java
+++ b/oying-system/src/main/java/com/oying/modules/sh/service/OrderOperationLogService.java
@@ -58,5 +58,5 @@
*/
void download(List<OrderOperationLog> all, HttpServletResponse response) throws IOException;
- List<OrderOperationLog> getByOrderNum(String orderNum);
+ List<OrderOperationLog> getByOrderNum(String orderNum, String type);
}
diff --git a/oying-system/src/main/java/com/oying/modules/sh/service/OrderReturnOperationLogService.java b/oying-system/src/main/java/com/oying/modules/sh/service/OrderReturnOperationLogService.java
deleted file mode 100644
index 4e07023..0000000
--- a/oying-system/src/main/java/com/oying/modules/sh/service/OrderReturnOperationLogService.java
+++ /dev/null
@@ -1,61 +0,0 @@
-package com.oying.modules.sh.service;
-
-import com.oying.modules.sh.domain.OrderReturnOperationLog;
-import com.oying.modules.sh.domain.dto.OrderReturnOperationLogQueryCriteria;
-import java.util.List;
-import java.io.IOException;
-import javax.servlet.http.HttpServletResponse;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.oying.utils.PageResult;
-
-/**
-* @description 服务接口
-* @author lixin
-* @date 2025-07-02
-**/
-public interface OrderReturnOperationLogService extends IService<OrderReturnOperationLog> {
-
- /**
- * 查询数据分页
- * @param criteria 条件
- * @param page 分页参数
- * @return PageResult
- */
- PageResult<OrderReturnOperationLog> queryAll(OrderReturnOperationLogQueryCriteria criteria, Page<Object> page);
-
- /**
- * 查询所有数据不分页
- * @param criteria 条件参数
- * @return List<OrderReturnOperationLogDto>
- */
- List<OrderReturnOperationLog> queryAll(OrderReturnOperationLogQueryCriteria criteria);
-
- /**
- * 创建
- * @param resources /
- */
- void create(OrderReturnOperationLog resources);
-
- /**
- * 编辑
- * @param resources /
- */
- void update(OrderReturnOperationLog resources);
-
- /**
- * 多选删除
- * @param ids /
- */
- void deleteAll(List<Long> ids);
-
- /**
- * 导出数据
- * @param all 待导出的数据
- * @param response /
- * @throws IOException /
- */
- void download(List<OrderReturnOperationLog> all, HttpServletResponse response) throws IOException;
-
- List<OrderReturnOperationLog> getByReturnNum(String returnNum);
-}
diff --git a/oying-system/src/main/java/com/oying/modules/sh/service/OrderService.java b/oying-system/src/main/java/com/oying/modules/sh/service/OrderService.java
index b2515a3..4430bf7 100644
--- a/oying-system/src/main/java/com/oying/modules/sh/service/OrderService.java
+++ b/oying-system/src/main/java/com/oying/modules/sh/service/OrderService.java
@@ -49,6 +49,8 @@
OrderResponse getByOrderNum(String orderNum);
+ Order queryByOrderNum(String orderNum);
+
void operationLog(OrderResponse order, OrderStatusEnum stateEnum,String cardName);
void updatePayStatus(String outTradeNo, PayStateEnum stateEnum, String payInfo, String timeEnd);
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 10aa7b0..bf9450b 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
@@ -47,8 +47,8 @@
}
@Override
- public List<OrderOperationLog> getByOrderNum(String orderNum) {
- return orderOperationLogMapper.getByOrderNum(orderNum);
+ public List<OrderOperationLog> getByOrderNum(String orderNum, String type) {
+ return orderOperationLogMapper.getByOrderNum(orderNum, type);
}
@Override
@@ -77,6 +77,7 @@
log1.setUsername(username);
log1.setUserType(userType);
log1.setOperation(OrderStatusEnum.ONE.getKey());
+ log1.setOperationType(OrderStatusEnum.ONE.getCode());
log1.setOperationDescribe(OrderStatusEnum.ONE.getValue());
log1.setRemark(username + ":" + time + ">" + OrderStatusEnum.ONE.getValue() + ":" + response.getOrder().getOrderNum());
Map<String, Object> map1 = new LinkedHashMap<>();
@@ -104,6 +105,7 @@
log2.setUsername(username);
log2.setUserType(userType);
log2.setOperation(statusEnum.getKey());
+ log2.setOperationType(statusEnum.getCode());
log2.setOperationDescribe(statusEnum.getValue());
log2.setRemark(username + ":" + time + ">" + statusEnum.getValue() + ":" + response.getOrder().getOrderNum());
Map<String, Object> map2 = new LinkedHashMap<>();
@@ -125,6 +127,7 @@
resources.setUsername(username);
resources.setUserType(userType);
resources.setOperation(statusEnum.getKey());
+ resources.setOperationType(statusEnum.getCode());
resources.setOperationDescribe(statusEnum.getValue());
resources.setRemark(username + ":" + time + ">" + statusEnum.getValue() + ":" + response.getOrder().getOrderNum());
Map<String, Object> map = new LinkedHashMap<>();
diff --git a/oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderReturnOperationLogServiceImpl.java b/oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderReturnOperationLogServiceImpl.java
deleted file mode 100644
index 845ff10..0000000
--- a/oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderReturnOperationLogServiceImpl.java
+++ /dev/null
@@ -1,84 +0,0 @@
-package com.oying.modules.sh.service.impl;
-
-import com.oying.modules.sh.domain.OrderReturnOperationLog;
-import com.oying.utils.FileUtil;
-import lombok.RequiredArgsConstructor;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.oying.modules.sh.service.OrderReturnOperationLogService;
-import com.oying.modules.sh.domain.dto.OrderReturnOperationLogQueryCriteria;
-import com.oying.modules.sh.mapper.OrderReturnOperationLogMapper;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-import com.oying.utils.PageUtil;
-
-import java.util.*;
-import java.io.IOException;
-import javax.servlet.http.HttpServletResponse;
-
-import com.oying.utils.PageResult;
-
-/**
-* @description 服务实现
-* @author lixin
-* @date 2025-07-02
-**/
-@Service
-@RequiredArgsConstructor
-public class OrderReturnOperationLogServiceImpl extends ServiceImpl<OrderReturnOperationLogMapper, OrderReturnOperationLog> implements OrderReturnOperationLogService {
-
- private final OrderReturnOperationLogMapper orderReturnOperationLogMapper;
-
- @Override
- public PageResult<OrderReturnOperationLog> queryAll(OrderReturnOperationLogQueryCriteria criteria, Page<Object> page){
- return PageUtil.toPage(orderReturnOperationLogMapper.findAll(criteria, page));
- }
-
- @Override
- public List<OrderReturnOperationLog> queryAll(OrderReturnOperationLogQueryCriteria criteria){
- return orderReturnOperationLogMapper.findAll(criteria);
- }
-
- @Override
- public List<OrderReturnOperationLog> getByReturnNum(String returnNum) {
- return orderReturnOperationLogMapper.getByReturnNum(returnNum);
- }
-
- @Override
- @Transactional(rollbackFor = Exception.class)
- public void create(OrderReturnOperationLog resources) {
- orderReturnOperationLogMapper.insert(resources);
- }
-
- @Override
- @Transactional(rollbackFor = Exception.class)
- public void update(OrderReturnOperationLog resources) {
- OrderReturnOperationLog orderReturnOperationLog = getById(resources.getLogId());
- orderReturnOperationLog.copy(resources);
- orderReturnOperationLogMapper.updateById(orderReturnOperationLog);
- }
-
- @Override
- @Transactional(rollbackFor = Exception.class)
- public void deleteAll(List<Long> ids) {
- orderReturnOperationLogMapper.deleteBatchIds(ids);
- }
-
- @Override
- public void download(List<OrderReturnOperationLog> all, HttpServletResponse response) throws IOException {
- List<Map<String, Object>> list = new ArrayList<>();
- for (OrderReturnOperationLog orderReturnOperationLog : all) {
- Map<String, Object> map = new LinkedHashMap<>();
- map.put("订单号", orderReturnOperationLog.getReturnNum());
- map.put("用户账号", orderReturnOperationLog.getUsername());
- map.put("用户类型(骑手、消费者、商家、平台)", orderReturnOperationLog.getUserType());
- map.put("用户操作", orderReturnOperationLog.getOperation());
- map.put("用户操作描述", orderReturnOperationLog.getOperationDescribe());
- map.put("备注", orderReturnOperationLog.getRemark());
- map.put("操作时的订单快照", orderReturnOperationLog.getSnapshotData());
- map.put("操作时间", orderReturnOperationLog.getOperationTime());
- list.add(map);
- }
- FileUtil.downloadExcel(list, response);
- }
-}
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 7be0520..55473c5 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
@@ -1,9 +1,17 @@
package com.oying.modules.sh.service.impl;
+import com.oying.exception.BadRequestException;
+import com.oying.modules.hwc.service.SwiftPassService;
+import com.oying.modules.sh.domain.Order;
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.modules.sh.service.OrderReturnProductSnapshotService;
+import com.oying.modules.sh.service.OrderService;
+import com.oying.utils.*;
+import com.oying.utils.enums.GenerateEnum;
+import com.oying.utils.enums.OrderStatusEnum;
+import com.oying.utils.enums.PayTypeEnum;
import com.oying.utils.enums.ReturnAuditEnum;
import lombok.RequiredArgsConstructor;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -13,16 +21,11 @@
import com.oying.modules.sh.mapper.OrderReturnMapper;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
-import com.oying.utils.PageUtil;
-import java.util.List;
-import java.util.Map;
+import java.sql.Timestamp;
+import java.util.*;
import java.io.IOException;
import javax.servlet.http.HttpServletResponse;
-import java.util.ArrayList;
-import java.util.LinkedHashMap;
-
-import com.oying.utils.PageResult;
/**
* @author lixin
@@ -34,6 +37,11 @@
public class OrderReturnServiceImpl extends ServiceImpl<OrderReturnMapper, OrderReturn> implements OrderReturnService {
private final OrderReturnMapper orderReturnMapper;
+ private final OrderService orderService;
+ private final OrderReturnProductSnapshotService productSnapshotService;
+ private final RedisUtils redisUtils;
+ private final SwiftPassService swiftPassService;
+ private static final String ORDER_RETURN_KEY = "oying:order:refund";
@Override
public PageResult<OrderReturn> queryAll(OrderReturnQueryCriteria criteria, Page<Object> page) {
@@ -60,8 +68,56 @@
@Override
@Transactional(rollbackFor = Exception.class)
- public void create(ReturnOrder resources) {
-
+ public synchronized void create(ReturnOrder resources) {
+ Order order = orderService.queryByOrderNum(resources.getOrderNum());
+ if (order == null) {
+ throw new BadRequestException("订单不存在!");
+ }
+ if (Objects.equals(order.getOrderStatus(), OrderStatusEnum.ZERO.getKey())) {
+ throw new BadRequestException("订单未支付");
+ }
+ OrderReturn returnOrder1 = orderReturnMapper.getByOrderNum(resources.getOrderNum(), ReturnAuditEnum.ZERO.getKey());
+ if (returnOrder1 != null) {
+ throw new BadRequestException("退款订单已提交");
+ }
+ OrderReturn returnOrder2 = orderReturnMapper.getByOrderNum(resources.getOrderNum(), ReturnAuditEnum.TWO.getKey());
+ if (returnOrder2 != null) {
+ throw new BadRequestException("退款订单已处理");
+ }
+ if (!DateUtil.isBefore(order.getPayTime(), DateUtil.DAY)) {
+ throw new BadRequestException("订单已超过售后有效期");
+ }
+ // 退款订单
+ OrderReturn returnOrder = new OrderReturn();
+ // 退款订单号
+ String returnNum = redisUtils.generateSn(ORDER_RETURN_KEY, GenerateEnum.ORDER_RETURN.getKey());
+ returnOrder.setReturnNum(returnNum);
+ returnOrder.setReturnStatus(ReturnAuditEnum.ZERO.getKey());
+ returnOrder.setReturnStatusDescribe(ReturnAuditEnum.ZERO.getValue());
+ returnOrder.setOrderNum(resources.getOrderNum());
+ returnOrder.setOrderTime(order.getOrderTime());
+ returnOrder.setOrderStoreNum(order.getOrderStoreNum());
+ returnOrder.setPackagingPrice(order.getPackagingPrice());
+ returnOrder.setSendPrice(order.getSendPrice());
+ returnOrder.setSendType(order.getSendType() != null ? order.getSendType() : null);
+ returnOrder.setRiderId(order.getRiderId() != null ? order.getRiderId() : null);
+ returnOrder.setRiderPhone(order.getRiderPhone() != null ? order.getRiderPhone() : null);
+ returnOrder.setRiderName(order.getRiderName() != null ? order.getRiderName() : null);
+ returnOrder.setPayType(order.getPayType());
+ returnOrder.setUserId(order.getUserId());
+ returnOrder.setUsername(order.getUsername());
+ returnOrder.setStoreId(order.getStoreId());
+ returnOrder.setStoreName(order.getStoreName());
+ returnOrder.setStoreLogo(order.getStoreLogo());
+ returnOrder.setOriginalPrice(order.getOriginalPrice());
+ returnOrder.setPaidPrice(order.getPaidPrice());
+ returnOrder.setActuallyPayPrice(order.getActuallyPayPrice());
+ returnOrder.setReason(resources.getReason());
+ returnOrder.setRemark(resources.getRemark());
+ returnOrder.setPhotos(resources.getPhotos());
+ returnOrder.setAuditStatus(ReturnAuditEnum.ZERO.getKey());
+ orderReturnMapper.insert(returnOrder);
+
}
@Override
@@ -74,8 +130,50 @@
@Override
@Transactional(rollbackFor = Exception.class)
- public void audit(AuditOrderReturn resources) {
-
+ public synchronized void audit(AuditOrderReturn resources) {
+ OrderReturn orderReturn = orderReturnMapper.getByReturnNum(resources.getReturnNum());
+ if (orderReturn == null) {
+ throw new BadRequestException("订单不存在");
+ }
+ if (!Objects.equals(orderReturn.getReturnStatus(), ReturnAuditEnum.ZERO.getKey())) {
+ throw new BadRequestException("订单已处理或取消");
+ }
+ if (resources.getAmount().compareTo(orderReturn.getActuallyPayPrice()) > 0) {
+ throw new BadRequestException("退款金额超过订单金额");
+ }
+ switch (resources.getAuditStatus()) {
+ case ONE:
+ break;
+ case TWO:
+ long total = BigDecimalUtils.yuanToCents(orderReturn.getActuallyPayPrice());
+ long refund = BigDecimalUtils.yuanToCents(resources.getAmount());
+ orderReturn.setRefundPrice(resources.getAmount());
+ PayTypeEnum status = PayTypeEnum.find(orderReturn.getPayType());
+ switch (status) {
+ case HWC:
+ case HWC2:
+ if (refund > 0) {
+ Map<String, String> re = swiftPassService.refund(orderReturn.getReturnNum(), orderReturn.getOrderNum(),
+ resources.getMessage(), refund, total, status);
+ orderReturn.setChannel(re.get("refund_channel"));
+ }
+ break;
+ default:
+ throw new BadRequestException("暂未开通其余支付模式");
+ }
+ break;
+ default:
+ throw new BadRequestException("审核状态错误");
+ }
+ // 审核状态
+ orderReturn.setAuditStatus(resources.getAuditStatus().getKey());
+ // 审核人
+ orderReturn.setAuditUser(SecurityUtils.getCurrentUsername());
+ // 审核时间
+ orderReturn.setAuditTime(new Timestamp(System.currentTimeMillis()));
+ // 审核信息
+ orderReturn.setAuditMessage(resources.getMessage());
+ orderReturnMapper.updateById(orderReturn);
}
@Override
@@ -100,7 +198,7 @@
map.put("退款状态", orderReturn.getRefundStatus());
map.put("退款成功时间", orderReturn.getSuccessTime());
map.put("退款渠道", orderReturn.getChannel());
- map.put("退款原因", orderReturn.getReason());
+ map.put("退货类型", orderReturn.getReason());
map.put("备注", orderReturn.getRemark());
map.put("图片", orderReturn.getPhotos());
map.put("审核状态", ReturnAuditEnum.getValue(orderReturn.getAuditStatus()));
diff --git a/oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderServiceImpl.java b/oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderServiceImpl.java
index b5b96a4..ba1eb63 100644
--- a/oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderServiceImpl.java
+++ b/oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderServiceImpl.java
@@ -54,7 +54,9 @@
private final RedisUtils redisUtils;
private final StoreService storeService;
private final OrderOperationLogService operationLogService;
- private final static String DESCRIBE = "哦应:";
+ private static final String DESCRIBE = "哦应:";
+ private static final String ORDER_KEY = "oying:order";
+ private static final String ORDER_STORE_KEY = "oying:order:store";
@Override
public PageResult<Order> queryAll(OrderQueryCriteria criteria, Page<Object> page) {
@@ -91,7 +93,8 @@
if (!(address.getDistance().compareTo(BigDecimal.valueOf(store.getRadius())) <= 0)) {
throw new BadRequestException("超出配送范围");
}
- String orderNum = redisUtils.generateOrderSn(GenerateEnum.ORDER.getKey());
+ // 订单号
+ String orderNum = redisUtils.generateSn(ORDER_KEY, GenerateEnum.ORDER.getKey());
// 总金额
BigDecimal amount = BigDecimal.ZERO;
// 商品快照
@@ -128,7 +131,7 @@
// 订单信息
Order order = new Order();
order.setOrderNum(orderNum);
- order.setOrderStoreNum(redisUtils.generateOrderSn(Math.toIntExact(submit.getStoreId())).substring(orderNum.length() - 4));
+ order.setOrderStoreNum(redisUtils.generateSn(ORDER_STORE_KEY, Math.toIntExact(submit.getStoreId())).substring(orderNum.length() - 4));
order.setOrderStatus(OrderStatusEnum.ZERO.getKey());
order.setOrderStatusDescribe(OrderStatusEnum.ZERO.getValue());
order.setOrderRemark(submit.getRemark() != null ? submit.getRemark() : "");
@@ -172,7 +175,6 @@
}
OrderAddressSnapshot addressSnapshot = getOrderAddressSnapshot(orderNum, address);
-
addressSnapshotService.save(addressSnapshot);
orderMapper.insert(order);
@@ -265,7 +267,13 @@
public OrderResponse getByOrderNum(String orderNum) {
return new OrderResponse(orderMapper.getByOrderNum(orderNum),
addressSnapshotService.queryByOrderNum(orderNum),
- operationLogService.getByOrderNum(orderNum));
+ operationLogService.getByOrderNum(orderNum, null));
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public Order queryByOrderNum(String orderNum) {
+ return orderMapper.getByOrderNum(orderNum);
}
@Override
diff --git a/oying-system/src/main/resources/config/application-dev.yml b/oying-system/src/main/resources/config/application-dev.yml
index cd03254..3b94915 100644
--- a/oying-system/src/main/resources/config/application-dev.yml
+++ b/oying-system/src/main/resources/config/application-dev.yml
@@ -89,8 +89,6 @@
online-key: "online_token:"
# 验证码
code-key: "captcha_code:"
- # 自定义redis key
- generate-order-sn: oying:generate:sn
# token 续期检查时间范围(默认30分钟,单位毫秒),在token即将过期的一段时间内用户操作了,则给用户的token续期
detect: 1800000
# 续期时间范围,默认1小时,单位毫秒
diff --git a/oying-system/src/main/resources/config/application-prod.yml b/oying-system/src/main/resources/config/application-prod.yml
index ff689d1..92ff604 100644
--- a/oying-system/src/main/resources/config/application-prod.yml
+++ b/oying-system/src/main/resources/config/application-prod.yml
@@ -93,8 +93,6 @@
online-key: "online_token:"
# 验证码
code-key: "captcha_code:"
- # 自定义redis key
- generate-order-sn: oying:generate:sn
# token 续期检查时间范围(默认30分钟,单位默认毫秒),在token即将过期的一段时间内用户操作了,则给用户的token续期
detect: 1800000
# 续期时间范围,默认 1小时,这里单位毫秒
diff --git a/oying-system/src/main/resources/mapper/sh/OrderMapper.xml b/oying-system/src/main/resources/mapper/sh/OrderMapper.xml
index 8e86e97..6417087 100644
--- a/oying-system/src/main/resources/mapper/sh/OrderMapper.xml
+++ b/oying-system/src/main/resources/mapper/sh/OrderMapper.xml
@@ -9,6 +9,7 @@
<result column="order_status_describe" property="orderStatusDescribe"/>
<result column="order_remark" property="orderRemark"/>
<result column="order_time" property="orderTime"/>
+ <result column="order_finish_time" property="orderFinishTime"/>
<result column="packaging_price" property="packagingPrice"/>
<result column="send_price" property="sendPrice"/>
<result column="send_type" property="sendType"/>
@@ -64,7 +65,7 @@
<sql id="Base_Column_List">
o.order_id, o.order_num, o.order_store_num, o.order_status, o.order_status_describe,
- o.order_remark, o.order_time, o.packaging_price, o.send_price, o.send_type, o.user_id, o.username, o.store_id,
+ o.order_remark, o.order_time, o.order_finish_time, o.packaging_price, o.send_price, o.send_type, o.user_id, o.username, o.store_id,
o.store_name, o.store_logo, o.store_address, o.store_longitude, o.store_latitude,
o.order_describe, o.original_price order_original_price, o.paid_price order_paid_price,
o.actually_pay_price order_actually_pay_price, o.pay_state order_pay_state, o.pay_message, o.pay_type, o.pay_time, o.expire_time,
diff --git a/oying-system/src/main/resources/mapper/sh/OrderOperationLogMapper.xml b/oying-system/src/main/resources/mapper/sh/OrderOperationLogMapper.xml
index 86f4724..0133cf3 100644
--- a/oying-system/src/main/resources/mapper/sh/OrderOperationLogMapper.xml
+++ b/oying-system/src/main/resources/mapper/sh/OrderOperationLogMapper.xml
@@ -6,6 +6,7 @@
<result column="username" property="username"/>
<result column="user_type" property="userType"/>
<result column="operation" property="operation"/>
+ <result column="operation_type" property="operationType"/>
<result column="operation_describe" property="operationDescribe"/>
<result column="remark" property="remark"/>
<result column="snapshot_data" property="snapshotData"/>
@@ -14,7 +15,7 @@
</resultMap>
<sql id="Base_Column_List">
- log_id, username, user_type, operation, operation_describe, remark, snapshot_data, operation_time, order_num
+ log_id, username, user_type, operation, operation_type, operation_describe, remark, snapshot_data, operation_time, order_num
</sql>
<select id="findAll" resultMap="BaseResultMap">
@@ -41,6 +42,10 @@
select
<include refid="Base_Column_List"/>
from sh_order_operation_log
- where order_num = #{orderNum} order by log_id
+ where order_num = #{orderNum}
+ <if test="type!= null and type != ''">
+ operation_type = #{type}
+ </if>
+ order by log_id
</select>
</mapper>
diff --git a/oying-system/src/main/resources/mapper/sh/OrderReturnMapper.xml b/oying-system/src/main/resources/mapper/sh/OrderReturnMapper.xml
index 26c2cf1..56d0931 100644
--- a/oying-system/src/main/resources/mapper/sh/OrderReturnMapper.xml
+++ b/oying-system/src/main/resources/mapper/sh/OrderReturnMapper.xml
@@ -134,7 +134,7 @@
update sh_order_return
set return_status = #{payState},
success_time = #{payTime}
- where order_num = #{orderNum}
+ where return_num = #{returnNum}
</update>
<select id="findAll" resultMap="BaseResultMap">
@@ -173,4 +173,10 @@
<include refid="Where_Sql_Product"/>
) t
</select>
+ <select id="getByOrderNum" resultType="com.oying.modules.sh.domain.OrderReturn">
+ select
+ <include refid="Base_Column_List"/>
+ from sh_order_return as o
+ where o.order_num = #{orderNum} and o.audit_status = #{status}
+ </select>
</mapper>
diff --git a/oying-system/src/main/resources/mapper/sh/OrderReturnOperationLogMapper.xml b/oying-system/src/main/resources/mapper/sh/OrderReturnOperationLogMapper.xml
deleted file mode 100644
index 34006bf..0000000
--- a/oying-system/src/main/resources/mapper/sh/OrderReturnOperationLogMapper.xml
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
-<mapper namespace="com.oying.modules.sh.mapper.OrderReturnOperationLogMapper">
- <resultMap id="BaseResultMap" type="com.oying.modules.sh.domain.OrderReturnOperationLog">
- <id column="log_id" property="logId"/>
- <result column="return_num" property="returnNum"/>
- <result column="username" property="username"/>
- <result column="user_type" property="userType"/>
- <result column="operation" property="operation"/>
- <result column="operation_describe" property="operationDescribe"/>
- <result column="remark" property="remark"/>
- <result column="snapshot_data" property="snapshotData"/>
- <result column="operation_time" property="operationTime"/>
- </resultMap>
-
- <sql id="Base_Column_List">
- log_id, return_num, username, user_type, operation, operation_describe, remark, snapshot_data, operation_time
- </sql>
-
- <select id="findAll" resultMap="BaseResultMap">
- select
- <include refid="Base_Column_List"/>
- from sh_order_return_operation_log
- <where>
- <if test="criteria.returnNum != null">
- and return_num = #{criteria.returnNum}
- </if>
- <if test="criteria.username != null">
- and username like concat('%',#{criteria.username},'%')
- </if>
- <if test="criteria.userType != null">
- and user_type = #{criteria.userType}
- </if>
- <if test="criteria.operationTime != null and criteria.operationTime.size() > 0">
- AND operation_time BETWEEN #{criteria.operationTime[0]} AND #{criteria.operationTime[1]}
- </if>
- </where>
- order by log_id desc
- </select>
- <select id="getByReturnNum" resultMap="BaseResultMap">
- select
- <include refid="Base_Column_List"/>
- from sh_order_return_operation_log
- where return_num = #{returnNum}
- order by log_id
- </select>
-</mapper>
--
Gitblit v1.9.3