From f2fdc4a1e311bafd1dadf45f043bc9c5c77e0a23 Mon Sep 17 00:00:00 2001
From: xin <1099200748@qq.com>
Date: Wed, 16 Jul 2025 17:44:56 +0800
Subject: [PATCH] 用户地址距离

---
 oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderOperationLogServiceImpl.java |   63 ++++++++++++++++++++++++++-----
 1 files changed, 53 insertions(+), 10 deletions(-)

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 da8db8f..b878a17 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,7 +1,11 @@
 package com.oying.modules.sh.service.impl;
 
+import com.alibaba.fastjson2.JSON;
 import com.oying.modules.sh.domain.OrderOperationLog;
-import com.oying.utils.FileUtil;
+import com.oying.modules.sh.domain.vo.OrderResponse;
+import com.oying.modules.sh.mapper.OrderMapper;
+import com.oying.utils.*;
+import com.oying.utils.enums.OrderStatusEnum;
 import lombok.RequiredArgsConstructor;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -10,40 +14,79 @@
 import com.oying.modules.sh.mapper.OrderOperationLogMapper;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
-import com.oying.utils.PageUtil;
+
+import java.sql.Timestamp;
 import java.util.List;
 import java.util.Map;
 import java.io.IOException;
 import javax.servlet.http.HttpServletResponse;
 import java.util.ArrayList;
 import java.util.LinkedHashMap;
-import com.oying.utils.PageResult;
 
 /**
-* @description 服务实现
-* @author lixin
-* @date 2025-06-11
-**/
+ * @author lixin
+ * @description 服务实现
+ * @date 2025-06-11
+ **/
 @Service
 @RequiredArgsConstructor
 public class OrderOperationLogServiceImpl extends ServiceImpl<OrderOperationLogMapper, OrderOperationLog> implements OrderOperationLogService {
 
     private final OrderOperationLogMapper orderOperationLogMapper;
+    private final OrderMapper orderMapper;
 
     @Override
-    public PageResult<OrderOperationLog> queryAll(OrderOperationLogQueryCriteria criteria, Page<Object> page){
+    public PageResult<OrderOperationLog> queryAll(OrderOperationLogQueryCriteria criteria, Page<Object> page) {
         return PageUtil.toPage(orderOperationLogMapper.findAll(criteria, page));
     }
 
     @Override
-    public List<OrderOperationLog> queryAll(OrderOperationLogQueryCriteria criteria){
+    public List<OrderOperationLog> queryAll(OrderOperationLogQueryCriteria criteria) {
         return orderOperationLogMapper.findAll(criteria);
     }
 
     @Override
+    public List<OrderOperationLog> getByOrderNum(String orderNum) {
+        return orderOperationLogMapper.getByOrderNum(orderNum);
+    }
+
+    @Override
     @Transactional(rollbackFor = Exception.class)
-    public void create(OrderOperationLog resources) {
+    public void create(OrderResponse response, OrderStatusEnum statusEnum, String cardName) {
+        String userType = ConstantsKey.BUYER;
+        switch (statusEnum) {
+            case ZERO:
+            case ONE:
+            case EIGHT:
+            case NINE:
+                userType = ConstantsKey.BUYER;
+                break;
+            case TWO:
+            case FOUR:
+                userType = ConstantsKey.MERCHANT;
+                break;
+            case THREE:
+                orderMapper.updateRider(response.getOrder().getOrderNum(), SecurityUtils.getCurrentUserId(), SecurityUtils.getCurrentUsername(), cardName);
+            case FIVE:
+            case SIX:
+            case SEVEN:
+                userType = ConstantsKey.RIDER;
+                break;
+            default:
+        }
+        String username = SecurityUtils.getCurrentUsername();
+        Timestamp time = new Timestamp(System.currentTimeMillis());
+        OrderOperationLog resources = new OrderOperationLog();
+        resources.setOrderNum(response.getOrder().getOrderNum());
+        resources.setUsername(username);
+        resources.setUserType(userType);
+        resources.setOperation(statusEnum.getKey());
+        resources.setOperationDescribe(statusEnum.getValue());
+        resources.setRemark(username + ":" + time + ">" + statusEnum.getValue() + ":" + response.getOrder().getOrderNum());
+        resources.setSnapshotData(JSON.toJSONString(response));
+        resources.setOperationTime(time);
         orderOperationLogMapper.insert(resources);
+        orderMapper.updateOrderStatus(response.getOrder().getOrderNum(), statusEnum.getKey(), statusEnum.getValue());
     }
 
     @Override

--
Gitblit v1.9.3