自动化立体仓库 - WMS系统
#
luxiaotao1123
2022-04-22 d9f9ec16b45ed0101e6afdb2beb4878524c339f3
#
4个文件已修改
72 ■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/ApiLogController.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/OpenController.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/ApiLogService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/ApiLogServiceImpl.java 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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 {
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();
    }
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);
}
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,    // 客户端IP
                request,    // 请求内容
                response,
                null,    // 异常内容
                success?1:0 ,    // 结果
                1,    // 状态
                now,    // 添加时间
                null,    // 修改时间
                null    // 备注
        );
        if (!this.insert(apiLog)) {
            log.error("接口调用日志保存失败!");
        }
    }
}