From d9f9ec16b45ed0101e6afdb2beb4878524c339f3 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期五, 22 四月 2022 18:39:46 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/controller/ApiLogController.java    |   12 +++--
 src/main/java/com/zy/asrs/service/impl/ApiLogServiceImpl.java |   40 ++++++++++++++++++-
 src/main/java/com/zy/asrs/controller/OpenController.java      |   18 ++++++++
 src/main/java/com/zy/asrs/service/ApiLogService.java          |    2 +
 4 files changed, 63 insertions(+), 9 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/ApiLogController.java b/src/main/java/com/zy/asrs/controller/ApiLogController.java
index 9f0a8df..1ba16f5 100644
--- a/src/main/java/com/zy/asrs/controller/ApiLogController.java
+++ b/src/main/java/com/zy/asrs/controller/ApiLogController.java
@@ -1,22 +1,24 @@
 package com.zy.asrs.controller;
 
-import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.mapper.Wrapper;
 import com.baomidou.mybatisplus.plugins.Page;
-import com.core.common.DateUtils;
-import com.zy.asrs.entity.ApiLog;
-import com.zy.asrs.service.ApiLogService;
 import com.core.annotations.ManagerAuth;
 import com.core.common.BaseRes;
 import com.core.common.Cools;
+import com.core.common.DateUtils;
 import com.core.common.R;
+import com.zy.asrs.entity.ApiLog;
+import com.zy.asrs.service.ApiLogService;
 import com.zy.common.web.BaseController;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
-import java.util.*;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 @RestController
 public class ApiLogController extends BaseController {
diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java
index 01996c4..7c29e2a 100644
--- a/src/main/java/com/zy/asrs/controller/OpenController.java
+++ b/src/main/java/com/zy/asrs/controller/OpenController.java
@@ -6,13 +6,16 @@
 import com.zy.asrs.entity.param.OpenOrderCompleteParam;
 import com.zy.asrs.entity.param.OpenOrderPakinParam;
 import com.zy.asrs.entity.param.OpenOrderPakoutParam;
+import com.zy.asrs.service.ApiLogService;
 import com.zy.asrs.service.OpenService;
 import com.zy.common.model.DetlDto;
+import com.zy.common.utils.IpTools;
 import com.zy.common.web.BaseController;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import javax.servlet.http.HttpServletRequest;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
@@ -32,6 +35,8 @@
 
     @Autowired
     private OpenService openService;
+    @Autowired
+    private ApiLogService apiLogService;
 
 
 
@@ -42,12 +47,23 @@
 
     @PostMapping("/order/pakin/new/package/v1")
     public synchronized R pakinOrderPackage(@RequestHeader(required = false) String appkey,
-                                            @RequestParam(required = false) String barcode) {
+                                            @RequestParam(required = false) String barcode,
+                                            HttpServletRequest request) {
         auth(appkey, barcode);
         if (Cools.isEmpty(barcode)) {
             return R.parse(BaseRes.PARAM);
         }
         openService.packageUp(barcode);
+        // 淇濆瓨鎺ュ彛鏃ュ織
+        apiLogService.save(
+                "鎵撳寘涓婄嚎鎺ュ彛",
+                request.getRequestURI(),
+                appkey,
+                IpTools.gainRealIp(request),
+                barcode,
+                JSON.toJSONString(R.ok()),
+                Boolean.TRUE
+        );
         return R.ok();
     }
 
diff --git a/src/main/java/com/zy/asrs/service/ApiLogService.java b/src/main/java/com/zy/asrs/service/ApiLogService.java
index 4218c1d..aa01c8f 100644
--- a/src/main/java/com/zy/asrs/service/ApiLogService.java
+++ b/src/main/java/com/zy/asrs/service/ApiLogService.java
@@ -5,4 +5,6 @@
 
 public interface ApiLogService extends IService<ApiLog> {
 
+    void save(String namespace, String url, String appkey, String ip, String request, String response, boolean success);
+
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/ApiLogServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/ApiLogServiceImpl.java
index e428fee..607eeba 100644
--- a/src/main/java/com/zy/asrs/service/impl/ApiLogServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/ApiLogServiceImpl.java
@@ -1,12 +1,46 @@
 package com.zy.asrs.service.impl;
 
-import com.zy.asrs.mapper.ApiLogMapper;
-import com.zy.asrs.entity.ApiLog;
-import com.zy.asrs.service.ApiLogService;
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.core.common.SnowflakeIdWorker;
+import com.zy.asrs.entity.ApiLog;
+import com.zy.asrs.mapper.ApiLogMapper;
+import com.zy.asrs.service.ApiLogService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
 
+import java.util.Date;
+
+@Slf4j
 @Service("apiLogService")
 public class ApiLogServiceImpl extends ServiceImpl<ApiLogMapper, ApiLog> implements ApiLogService {
 
+    @Autowired
+    private SnowflakeIdWorker snowflakeIdWorker;
+
+    @Async
+    @Override
+    public void save(String namespace, String url, String appkey, String ip, String request, String response, boolean success) {
+        Date now = new Date();
+        ApiLog apiLog = new ApiLog(
+                String.valueOf(snowflakeIdWorker.nextId()),    // 鏃ュ織缂栧彿
+                namespace,    // 鍚嶇О绌洪棿
+                url,    // 鎺ュ彛鍦板潃
+                appkey,    // 骞冲彴瀵嗛挜
+                String.valueOf(now.getTime()),    // 鏃堕棿鎴�
+                ip,    // 瀹㈡埛绔疘P
+                request,    // 璇锋眰鍐呭
+                response,
+                null,    // 寮傚父鍐呭
+                success?1:0 ,    // 缁撴灉
+                1,    // 鐘舵��
+                now,    // 娣诲姞鏃堕棿
+                null,    // 淇敼鏃堕棿
+                null    // 澶囨敞
+        );
+        if (!this.insert(apiLog)) {
+            log.error("鎺ュ彛璋冪敤鏃ュ織淇濆瓨澶辫触锛�");
+        }
+    }
 }

--
Gitblit v1.9.1