diff --git a/eladmin/eladmin-flv/README.cn.md b/eladmin/eladmin-flv/README.cn.md deleted file mode 100644 index b00e850..0000000 --- a/eladmin/eladmin-flv/README.cn.md +++ /dev/null @@ -1,76 +0,0 @@ - -# 📺 Easy-FLV: Java 实现的 RTSP/RTMP 到 FLV 转换器 - - -## 🌟 关于 Easy-FLV -Easy-FLV 是一个用 Java 实现的库,它能够将 RTSP 或 RTMP 视频流转换为 FLV 格式,以便在浏览器中播放。它为实时视频监控、直播和视频流处理提供了一个高效、稳定且易于集成的解决方案。 - -### 为什么选择 Easy-FLV? -- **高效转换**:快速将视频流转换为 FLV 格式,无需复杂配置。 -- **易于集成**:作为 Spring Boot Starter 使用,轻松集成到任何 Java 项目。 -- **现代浏览器支持**:支持所有主流浏览器,无需额外插件。 -- **实时流处理**:适用于实时视频流的转换,如安防监控和直播。 - - -## 🚀 快速开始 - -### 添加 Maven 依赖 -在你的 Spring Boot 项目中,添加以下 Maven 依赖: - -```xml - - me.zhengjie - eladmin-flv - 1.1 - -``` - -### 实现接口 -创建一个服务类来实现 `IOpenFLVService` 接口,并提供流地址: - -```java -@Service -public class RtspDataService implements IOpenFLVService { - - @Override - public String getUrl(Integer channel) { - // 根据 channel 获取 RTSP 视频流地址 - return "rtsp://xx.xx.xx.xx/openUrl/16HV8mA"; - } -} -``` - -### 配置 YAML -在 `application.yml` 中配置 Easy-FLV: - -```yaml -easy: - flv: - host: http://localhost:8200 -``` - -### 使用接口 -通过以下接口获取转换后的流地址,并在浏览器中播放: - -- 转换地址:`GET http://ip:port/get/flv/hls/stream_{channel}.flv` -- 播放地址:`GET http://ip:port/flv/hls/stream_{channel}.flv` - -### 直接使用 -如果不使用接口,可以直接编码流地址并转换: - -```java -public static void main(String[] args) throws UnsupportedEncodingException { - String url = "rtsp://XXXXXXXX"; - String encodedUrl = java.net.URLEncoder.encode(url, "UTF-8"); - System.out.println("Encoded Stream URL: " + encodedUrl); -} -``` - -- 转换地址:`GET http://ip:port/get/flv/hls/stream?url=编码后的地址` -- 播放地址:`GET http://ip:port/flv/hls/stream?url=编码后的地址` - -## 🛠️ 贡献 -我们欢迎任何形式的贡献,包括但不限于报告 bug、提交修复、添加新功能、改进文档等。 - -## 📄 许可证 -Easy-FLV 根据 [Apache License 2.0](LICENSE) 发布。 \ No newline at end of file diff --git a/eladmin/eladmin-flv/pom.xml b/eladmin/eladmin-flv/pom.xml deleted file mode 100644 index d6c6872..0000000 --- a/eladmin/eladmin-flv/pom.xml +++ /dev/null @@ -1,229 +0,0 @@ - - - 4.0.0 - me.zhengjie - eladmin-flv - 1.1 - 视频模块 - 视频流转换 rtsp/rtmp 转flv - - - - The Apache Software License, Version 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt - repo - - - - https://github.com/javpower/easy-flv - scm:git@github.com/javpower/easy-flv.git - scm:git@github.com/javpower/easy-flv.git - - - - gc.x - javpower@163.com - https://github.com/javpower - +8 - - - - 0.0.1-SNAPSHOT - UTF-8 - UTF-8 - 1.8 - 2.7.13 - 2.3.2 - - - - - me.zhengjie - eladmin-logging - 1.1 - - - org.springframework.boot - spring-boot-starter - - - org.springframework.boot - spring-boot-configuration-processor - true - - - org.springframework.boot - spring-boot-starter-web - - - org.springframework.boot - spring-boot-starter-log4j2 - - - com.fasterxml.jackson.core - jackson-databind - - - com.lmax - disruptor - 3.4.2 - - - com.alibaba - fastjson - 1.2.31 - - - - org.projectlombok - lombok - - - - org.bytedeco - javacv-platform - 1.5.9 - - - - - org.bytedeco - opencv-platform-gpu - 4.7.0-1.5.9 - - - - - org.bytedeco - ffmpeg-platform-gpl - 6.0-1.5.9 - - - - - org.springframework.boot - spring-boot-starter-thymeleaf - - - - net.dreamlu - mica-auto - ${mica-auto.vaersion} - provided - - - - - - - org.springframework.boot - spring-boot-dependencies - ${spring-boot.version} - pom - import - - - - - - - ossrh - https://s01.oss.sonatype.org/content/repositories/snapshots - - - ossrh - https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/ - - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.8.1 - - 1.8 - 1.8 - UTF-8 - - - - org.springframework.boot - spring-boot-maven-plugin - ${spring-boot.version} - - com.gc.easy.EasyHttpApplication - true - - - - org.sonatype.plugins - nexus-staging-maven-plugin - 1.6.7 - true - - ossrh - https://s01.oss.sonatype.org/ - true - - - - org.apache.maven.plugins - maven-source-plugin - 2.2.1 - - - attach-sources - - jar-no-fork - - - - - - org.apache.maven.plugins - maven-javadoc-plugin - 2.9.1 - - private - true - UTF-8 - UTF-8 - UTF-8 - -Xdoclint:none - - - - package - - jar - - - - - - org.apache.maven.plugins - maven-gpg-plugin - 1.5 - - - sign-artifacts - verify - - sign - - - - - - org.apache.maven.plugins - maven-deploy-plugin - 2.8.2 - - - - - - diff --git a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/config/FlvConfig.java b/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/config/FlvConfig.java deleted file mode 100644 index 5d09c9e..0000000 --- a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/config/FlvConfig.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.gc.easy.flv.config; - -import lombok.Data; -import org.springframework.boot.context.properties.ConfigurationProperties; -import org.springframework.stereotype.Component; - -@ConfigurationProperties(prefix = "easy.flv") -@Data -@Component -public class FlvConfig { - private String host; - private Integer wight=1920; - private Integer height=1080; - -} diff --git a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/controller/FLVController.java b/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/controller/FLVController.java deleted file mode 100644 index 5b589fd..0000000 --- a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/controller/FLVController.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.gc.easy.flv.controller; - -import com.gc.easy.flv.service.IFLVService; -import com.gc.easy.flv.service.IOpenFLVService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import lombok.extern.slf4j.Slf4j; -import me.zhengjie.annotation.Log; -import me.zhengjie.annotation.rest.AnonymousGetMapping; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.util.StringUtils; -import org.springframework.web.bind.annotation.RequestMapping; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.UnsupportedEncodingException; - -/** - * FLV流转换 - * - * @author gc.x - */ -@Slf4j -@RequestMapping("api/front/flv") -@Api(tags = "微信:拉流播放") -public class FLVController { - - @Autowired - private IFLVService service; - - @Autowired(required = false) - private IOpenFLVService openFLVService; - - @Log("拉流播放") - @ApiOperation(value = "打开视频流") - @AnonymousGetMapping(value = "/get/stream") - public void open(String url, HttpServletResponse response, HttpServletRequest request) throws UnsupportedEncodingException { - if (!StringUtils.isEmpty(url)) { - String decodedUrl = java.net.URLDecoder.decode(url, "UTF-8"); - service.open(decodedUrl, response, request, openFLVService); - } - } -} diff --git a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/controller/FLVPlayController.java b/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/controller/FLVPlayController.java deleted file mode 100644 index 781de4e..0000000 --- a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/controller/FLVPlayController.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.gc.easy.flv.controller; - -import com.gc.easy.flv.config.FlvConfig; -import me.zhengjie.annotation.rest.AnonymousGetMapping; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Controller; -import org.springframework.ui.Model; - -import java.io.UnsupportedEncodingException; - -/** - * FLV流转换 - * - * @author gc.x - */ -@Controller -public class FLVPlayController { - @Autowired - private FlvConfig flvConfig; - - @AnonymousGetMapping(value = "/api/front/flv/hls/stream") - public String getAppHtml1(String url, Model model) throws UnsupportedEncodingException { - String decodedUrl = java.net.URLDecoder.decode(url, "UTF-8"); - String videoPath="/api/front/flv/get/stream?url="+decodedUrl; - model.addAttribute("videoPath", videoPath); - model.addAttribute("wight", flvConfig.getWight()); - model.addAttribute("height", flvConfig.getHeight()); - return "video"; - } -} diff --git a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/factories/Converter.java b/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/factories/Converter.java deleted file mode 100644 index 9538bc3..0000000 --- a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/factories/Converter.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.gc.easy.flv.factories; - -import javax.servlet.AsyncContext; -import java.io.IOException; - -public interface Converter { - - /** - * 获取该转换的key - */ - public String getKey(); - - /** - * 获取该转换的url - * - * @return - */ - public String getUrl(); - - /** - * 添加一个流输出 - * - * @param entity - */ - public void addOutputStreamEntity(String key, AsyncContext entity) throws IOException; - - /** - * 退出转换 - */ - public void exit(); - - /** - * 启动 - */ - public void start(); - -} diff --git a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/factories/ConverterFactories.java b/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/factories/ConverterFactories.java deleted file mode 100644 index 91081c4..0000000 --- a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/factories/ConverterFactories.java +++ /dev/null @@ -1,232 +0,0 @@ -package com.gc.easy.flv.factories; - -import com.alibaba.fastjson.util.IOUtils; -import com.gc.easy.flv.service.IOpenFLVService; -import lombok.extern.slf4j.Slf4j; -import org.bytedeco.ffmpeg.avcodec.AVPacket; -import org.bytedeco.ffmpeg.global.avcodec; -import org.bytedeco.javacv.FFmpegFrameGrabber; -import org.bytedeco.javacv.FFmpegFrameRecorder; - -import javax.servlet.AsyncContext; -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.util.Iterator; -import java.util.List; -import java.util.Map; - -/** - * javacv转包装
- * 无须转码,更低的资源消耗,更低的延迟
- * 确保流来源视频H264格式,音频AAC格式 - * - * @author gc.x - */ -@Slf4j -public class ConverterFactories extends Thread implements Converter { - public volatile boolean runing = true; - /** - * 读流器 - */ - private FFmpegFrameGrabber grabber; - /** - * 转码器 - */ - private FFmpegFrameRecorder recorder; - /** - * 转FLV格式的头信息
- * 如果有第二个客户端播放首先要返回头信息 - */ - private byte[] headers; - /** - * 保存转换好的流 - */ - private ByteArrayOutputStream stream; - /** - * 流地址,h264,aac - */ - private String url; - /** - * 流输出 - */ - private List outEntitys; - - /** - * key用于表示这个转换器 - */ - private String key; - - /** - * 转换队列 - */ - private Map factories; - - private IOpenFLVService openFLVService; - - - public ConverterFactories(String url, String key, Map factories, List outEntitys, IOpenFLVService openFLVService) { - this.url = url; - this.key = key; - this.factories = factories; - this.outEntitys = outEntitys; - this.openFLVService = openFLVService; - } - - @Override - public void run() { - boolean isCloseGrabberAndResponse = true; - try { - grabber = new FFmpegFrameGrabber(url); - if ("rtsp".equals(url.substring(0, 4))) { - grabber.setOption("rtsp_transport", "tcp"); - grabber.setOption("timeout", "5000000"); - } - grabber.start(); - if (avcodec.AV_CODEC_ID_H264 == grabber.getVideoCodec() - && (grabber.getAudioChannels() == 0 || avcodec.AV_CODEC_ID_AAC == grabber.getAudioCodec()) && (openFLVService == null || !openFLVService.openPreview())) { - log.info("this url:{} converterFactories start", url); - // 来源视频H264格式,音频AAC格式 - // 无须转码,更低的资源消耗,更低的延迟 - stream = new ByteArrayOutputStream(); - recorder = new FFmpegFrameRecorder(stream, grabber.getImageWidth(), grabber.getImageHeight(), - grabber.getAudioChannels()); - recorder.setInterleaved(true); - recorder.setVideoOption("preset", "ultrafast"); - recorder.setVideoOption("tune", "zerolatency"); - recorder.setVideoOption("crf", "25"); - recorder.setFrameRate(grabber.getFrameRate()); - recorder.setSampleRate(grabber.getSampleRate()); - if (grabber.getAudioChannels() > 0) { - recorder.setAudioChannels(grabber.getAudioChannels()); - recorder.setAudioBitrate(grabber.getAudioBitrate()); - recorder.setAudioCodec(grabber.getAudioCodec()); - } - recorder.setFormat("flv"); - recorder.setVideoBitrate(grabber.getVideoBitrate()); - recorder.setVideoCodec(grabber.getVideoCodec()); - recorder.start(grabber.getFormatContext()); - if (headers == null) { - headers = stream.toByteArray(); - stream.reset(); - writeResponse(headers); - } - int nullNumber = 0; - while (runing) { - AVPacket k = grabber.grabPacket(); - if (k != null) { - try { - recorder.recordPacket(k); - } catch (Exception e) { - } - if (stream.size() > 0) { - byte[] b = stream.toByteArray(); - stream.reset(); - writeResponse(b); - if (outEntitys.isEmpty()) { - log.info("没有输出退出"); - break; - } - } - avcodec.av_packet_unref(k); - } else { - nullNumber++; - if (nullNumber > 200) { - break; - } - } - Thread.sleep(5); - } - } else { - isCloseGrabberAndResponse = false; - // 需要转码为视频H264格式,音频AAC格式 - ConverterTranFactories c = new ConverterTranFactories(url, key, factories, outEntitys, grabber, openFLVService); - factories.put(key, c); - c.start(); - } - } catch (Exception e) { - log.error(e.getMessage(), e); - } finally { - closeConverter(isCloseGrabberAndResponse); - completeResponse(isCloseGrabberAndResponse); - log.info("this url:{} converterFactories exit", url); - - } - } - - /** - * 输出FLV视频流 - * - * @param b - */ - public void writeResponse(byte[] b) { - Iterator it = outEntitys.iterator(); - while (it.hasNext()) { - AsyncContext o = it.next(); - try { - o.getResponse().getOutputStream().write(b); - } catch (Exception e) { - log.info("移除一个输出"); - it.remove(); - } - } - } - - /** - * 退出转换 - */ - public void closeConverter(boolean isCloseGrabberAndResponse) { - if (isCloseGrabberAndResponse) { - IOUtils.close(grabber); - factories.remove(this.key); - } - IOUtils.close(recorder); - IOUtils.close(stream); - } - - /** - * 关闭异步响应 - * - * @param isCloseGrabberAndResponse - */ - public void completeResponse(boolean isCloseGrabberAndResponse) { - if (isCloseGrabberAndResponse) { - Iterator it = outEntitys.iterator(); - while (it.hasNext()) { - AsyncContext o = it.next(); - o.complete(); - } - } - } - - @Override - public String getKey() { - return this.key; - } - - @Override - public String getUrl() { - return this.url; - } - - @Override - public void addOutputStreamEntity(String key, AsyncContext entity) throws IOException { - if (headers == null) { - outEntitys.add(entity); - } else { - entity.getResponse().getOutputStream().write(headers); - entity.getResponse().getOutputStream().flush(); - outEntitys.add(entity); - } - } - - @Override - public void exit() { - this.runing = false; - try { - this.join(); - } catch (Exception e) { - log.error(e.getMessage(), e); - } - } - -} diff --git a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/factories/ConverterTranFactories.java b/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/factories/ConverterTranFactories.java deleted file mode 100644 index 0b9d6a6..0000000 --- a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/factories/ConverterTranFactories.java +++ /dev/null @@ -1,230 +0,0 @@ -package com.gc.easy.flv.factories; - -import com.alibaba.fastjson.util.IOUtils; -import com.gc.easy.flv.service.IOpenFLVService; -import lombok.extern.slf4j.Slf4j; -import org.bytedeco.ffmpeg.global.avcodec; -import org.bytedeco.javacv.FFmpegFrameGrabber; -import org.bytedeco.javacv.FFmpegFrameRecorder; -import org.bytedeco.javacv.Frame; -import org.bytedeco.javacv.OpenCVFrameConverter; -import org.bytedeco.opencv.opencv_core.IplImage; - -import javax.servlet.AsyncContext; -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.util.Iterator; -import java.util.List; -import java.util.Map; - -/** - * javacv转码
- * 流来源不是视频H264格式,音频AAC格式 转码为视频H264格式,音频AAC格式 - * - * @author gc.x - */ -@Slf4j -public class ConverterTranFactories extends Thread implements Converter { - public volatile boolean runing = true; - /** - * 读流器 - */ - private FFmpegFrameGrabber grabber; - /** - * 转码器 - */ - private FFmpegFrameRecorder recorder; - /** - * 转FLV格式的头信息
- * 如果有第二个客户端播放首先要返回头信息 - */ - private byte[] headers; - /** - * 保存转换好的流 - */ - private ByteArrayOutputStream stream; - /** - * 流地址,h264,aac - */ - private String url; - /** - * 流输出 - */ - private List outEntitys; - - /** - * key用于表示这个转换器 - */ - private String key; - - /** - * 转换队列 - */ - private Map factories; - - private OpenCVFrameConverter.ToIplImage converter; - private IOpenFLVService openFLVService; - - - public ConverterTranFactories(String url, String key, Map factories, - List outEntitys, FFmpegFrameGrabber grabber, IOpenFLVService openFLVService) { - this.url = url; - this.key = key; - this.factories = factories; - this.outEntitys = outEntitys; - this.grabber = grabber; - this.openFLVService=openFLVService; - } - - @Override - public void run() { - try { - log.info("this url:{} converterTranFactories start", url); - grabber.setFrameRate(25); - if (grabber.getImageWidth() > 1920) { - grabber.setImageWidth(1920); - } - if (grabber.getImageHeight() > 1080) { - grabber.setImageHeight(1080); - } - stream = new ByteArrayOutputStream(); - recorder = new FFmpegFrameRecorder(stream, grabber.getImageWidth(), grabber.getImageHeight(), - grabber.getAudioChannels()); - converter = new OpenCVFrameConverter.ToIplImage(); - - recorder.setInterleaved(true); - recorder.setVideoOption("preset", "ultrafast"); - recorder.setVideoOption("tune", "zerolatency"); - recorder.setVideoOption("crf", "25"); - recorder.setGopSize(50); - recorder.setFrameRate(25); - recorder.setSampleRate(grabber.getSampleRate()); - if (grabber.getAudioChannels() > 0) { - recorder.setAudioChannels(grabber.getAudioChannels()); - recorder.setAudioBitrate(grabber.getAudioBitrate()); - recorder.setAudioCodec(avcodec.AV_CODEC_ID_AAC); - } - recorder.setFormat("flv"); - recorder.setVideoBitrate(grabber.getVideoBitrate()); - recorder.setVideoCodec(avcodec.AV_CODEC_ID_H264); - recorder.start(); - if (headers == null) { - headers = stream.toByteArray(); - stream.reset(); - writeResponse(headers); - } - int nullNumber = 0; - while (runing) { - // 抓取一帧 - Frame f = grabber.grab(); - if(openFLVService!=null&&openFLVService.openPreview()){ - //预处理 - IplImage iplImage = converter.convert(f);//抓取一帧视频并将其转换为图像,至于用这个图像用来做什么?加水印,人脸识别等等自行添加 - if (iplImage != null) { - openFLVService.preview(iplImage); - f = converter.convert(iplImage); - } - } - if (f != null) { - try { - // 转码 - recorder.record(f); - } catch (Exception e) { - } - if (stream.size() > 0) { - byte[] b = stream.toByteArray(); - stream.reset(); - writeResponse(b); - if (outEntitys.isEmpty()) { - log.info("没有输出退出"); - break; - } - } - } else { - nullNumber++; - if (nullNumber > 200) { - break; - } - } - Thread.sleep(5); - } - } catch (Exception e) { - log.error(e.getMessage(), e); - } finally { - closeConverter(); - completeResponse(); - log.info("this url:{} converterTranFactories exit", url); - factories.remove(this.key); - } - } - - /** - * 输出FLV视频流 - * - * @param b - */ - public void writeResponse(byte[] b) { - Iterator it = outEntitys.iterator(); - while (it.hasNext()) { - AsyncContext o = it.next(); - try { - o.getResponse().getOutputStream().write(b); - } catch (Exception e) { - log.info("移除一个输出"); - it.remove(); - } - } - } - - /** - * 退出转换 - */ - public void closeConverter() { - IOUtils.close(grabber); - IOUtils.close(recorder); - IOUtils.close(stream); - } - - /** - * 关闭异步响应 - */ - public void completeResponse() { - Iterator it = outEntitys.iterator(); - while (it.hasNext()) { - AsyncContext o = it.next(); - o.complete(); - } - } - - @Override - public String getKey() { - return this.key; - } - - @Override - public String getUrl() { - return this.url; - } - - @Override - public void addOutputStreamEntity(String key, AsyncContext entity) throws IOException { - if (headers == null) { - outEntitys.add(entity); - } else { - entity.getResponse().getOutputStream().write(headers); - entity.getResponse().getOutputStream().flush(); - outEntitys.add(entity); - } - } - - @Override - public void exit() { - this.runing = false; - try { - this.join(); - } catch (Exception e) { - log.error(e.getMessage(), e); - } - } - -} diff --git a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/factories/state/ConverterState.java b/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/factories/state/ConverterState.java deleted file mode 100644 index 2deb902..0000000 --- a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/factories/state/ConverterState.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.gc.easy.flv.factories.state; - -/** - * 转换器状态(初始化、打开、关闭、错误、运行) - * - * @author gc.x - */ -public enum ConverterState { - INITIAL, OPEN, CLOSE, ERROR, RUN -} diff --git a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/factories/state/OutputImage.java b/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/factories/state/OutputImage.java deleted file mode 100644 index 7f0b719..0000000 --- a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/factories/state/OutputImage.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.gc.easy.flv.factories.state; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.util.Date; - -@Data -@AllArgsConstructor -@NoArgsConstructor -@Builder -public class OutputImage { - //图片 - private byte[] image; - - private Date recordTime; - - private Integer channel; - - -} diff --git a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/service/IFLVService.java b/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/service/IFLVService.java deleted file mode 100644 index 13889ee..0000000 --- a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/service/IFLVService.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.gc.easy.flv.service; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -public interface IFLVService { - - /** - * 打开一个流地址 - * - * @param url - * @param response - */ - public void open(Integer channel,String url, HttpServletResponse response, HttpServletRequest request,IOpenFLVService openFLVService); - public void open(String url, HttpServletResponse response, HttpServletRequest request,IOpenFLVService openFLVService); - -} diff --git a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/service/IOpenFLVService.java b/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/service/IOpenFLVService.java deleted file mode 100644 index 3b53397..0000000 --- a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/service/IOpenFLVService.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.gc.easy.flv.service; - -import org.bytedeco.opencv.opencv_core.IplImage; - -public interface IOpenFLVService { - - - /** - * 通过通道号获取url - * @param channel - * @return - */ - String getUrl(Integer channel); - - /** - * 抓取一帧视频并将其转换为图像预处理 - * @param iplImage - */ - void preview(IplImage iplImage); - - /** - * 开启预处理 - * @return - */ - boolean openPreview(); -} \ No newline at end of file diff --git a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/service/impl/FLVService.java b/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/service/impl/FLVService.java deleted file mode 100644 index 3845f01..0000000 --- a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/service/impl/FLVService.java +++ /dev/null @@ -1,89 +0,0 @@ -package com.gc.easy.flv.service.impl; - - -import com.gc.easy.flv.factories.Converter; -import com.gc.easy.flv.factories.ConverterFactories; -import com.gc.easy.flv.service.IFLVService; -import com.gc.easy.flv.service.IOpenFLVService; -import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Service; - -import javax.servlet.AsyncContext; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.security.MessageDigest; -import java.security.NoSuchAlgorithmException; -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.ConcurrentHashMap; - -/** - * FLV流转换 - * - * @author gc.x - */ -@Slf4j -@Service -public class FLVService implements IFLVService { - - private ConcurrentHashMap converters = new ConcurrentHashMap<>(); - - @Override - public void open(String url, HttpServletResponse response, HttpServletRequest request, IOpenFLVService openFLVService) { - open(null, url, response, request, openFLVService); - } - - @Override - public void open(Integer channel, String url, HttpServletResponse response, HttpServletRequest request, IOpenFLVService openFLVService) { - String key = md5(url); - AsyncContext async = request.startAsync(); - async.setTimeout(0); - if (converters.containsKey(key)) { - Converter c = converters.get(key); - try { - c.addOutputStreamEntity(key, async); - } catch (IOException e) { - log.error(e.getMessage(), e); - throw new IllegalArgumentException(e.getMessage()); - } - } else { - List outs = new ArrayList<>(); - outs.add(async); - ConverterFactories c = new ConverterFactories(url, key, converters, outs, openFLVService); - c.start(); - converters.put(key, c); - } - response.setContentType("video/x-flv"); - response.setHeader("Connection", "keep-alive"); - response.setStatus(HttpServletResponse.SC_OK); - try { - response.flushBuffer(); - } catch (IOException e) { - log.error(e.getMessage(), e); - } - } - - public String md5(String plainText) { - StringBuilder buf = null; - try { - MessageDigest md = MessageDigest.getInstance("MD5"); - md.update(plainText.getBytes()); - byte b[] = md.digest(); - int i; - buf = new StringBuilder(""); - for (int offset = 0; offset < b.length; offset++) { - i = b[offset]; - if (i < 0) - i += 256; - if (i < 16) - buf.append("0"); - buf.append(Integer.toHexString(i)); - } - } catch (NoSuchAlgorithmException e) { - log.error(e.getMessage(), e); - } - return buf.toString(); - } - -} diff --git a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/service/impl/OpenFLVService.java b/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/service/impl/OpenFLVService.java deleted file mode 100644 index fdacfd0..0000000 --- a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/service/impl/OpenFLVService.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.gc.easy.flv.service.impl; - - -import com.gc.easy.flv.service.IOpenFLVService; -import lombok.extern.slf4j.Slf4j; -import org.bytedeco.opencv.opencv_core.IplImage; -import org.springframework.stereotype.Service; - -/** - * FLV流转换 - * - * @author gc.x - */ -@Slf4j -@Service -public class OpenFLVService implements IOpenFLVService { - - - @Override - public String getUrl(Integer channel) { - return ""; - } - - @Override - public void preview(IplImage iplImage) { - - } - - @Override - public boolean openPreview() { - return false; - } -} diff --git a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/util/FlvUtil.java b/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/util/FlvUtil.java deleted file mode 100644 index 59a64d6..0000000 --- a/eladmin/eladmin-flv/src/main/java/com/gc/easy/flv/util/FlvUtil.java +++ /dev/null @@ -1,73 +0,0 @@ -package com.gc.easy.flv.util; - -import com.alibaba.fastjson.JSONObject; -import org.bytedeco.javacv.FFmpegFrameGrabber; -import org.bytedeco.javacv.Frame; -import org.bytedeco.javacv.FrameGrabber; -import org.bytedeco.javacv.Java2DFrameConverter; -import org.springframework.core.io.ByteArrayResource; -import org.springframework.util.LinkedMultiValueMap; -import org.springframework.util.MultiValueMap; -import org.springframework.web.client.RestTemplate; - -import javax.imageio.ImageIO; -import java.awt.image.BufferedImage; -import java.io.ByteArrayOutputStream; -import java.io.IOException; - -public class FlvUtil { - - private static BufferedImage getBufferedImageByFrame(String filePath) throws IOException { - FFmpegFrameGrabber grabber = FFmpegFrameGrabber.createDefault(filePath); - return getBufferedImageByFrame(grabber); - } - - private static BufferedImage getBufferedImageByFrame(FFmpegFrameGrabber grabber) - throws FrameGrabber.Exception { - grabber.start(); - Frame frame; - frame = grabber.grabImage(); - Java2DFrameConverter converter = new Java2DFrameConverter(); - BufferedImage buffer = converter.getBufferedImage(frame); - grabber.stop(); - return buffer; - } - - public static byte[] getFlvImg(String path) throws Exception { - return bufferedImageToByteArray(getBufferedImageByFrame(path)); - } - - - /** - * 将BufferedImage转换为byte[] - * - * @param image - * @return - */ - public static byte[] bufferedImageToByteArray(BufferedImage image) throws IOException { - ByteArrayOutputStream os = new ByteArrayOutputStream(); - ImageIO.write(image, "jpg", os); - return os.toByteArray(); - } - - /** - * 上传文件 - * - * @param data 文件数据 - * @param url 上传地址 - * @param fileName 文件名称 - * @return - */ - public static JSONObject postFile(byte[] data, String url, String fileName) { - RestTemplate restTemplate = new RestTemplate(); - MultiValueMap paramMap = new LinkedMultiValueMap<>(); - ByteArrayResource contentsAsResource = new ByteArrayResource(data) { - @Override - public String getFilename() { - return fileName; - } - }; - paramMap.add("file", contentsAsResource); - return restTemplate.postForObject(url, paramMap, JSONObject.class); - } -} diff --git a/eladmin/eladmin-flv/src/main/resources/templates/video.html b/eladmin/eladmin-flv/src/main/resources/templates/video.html deleted file mode 100644 index ab38be5..0000000 --- a/eladmin/eladmin-flv/src/main/resources/templates/video.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - FLV Video Player - - - - - - - - - - - - diff --git a/eladmin/eladmin-generator/pom.xml b/eladmin/eladmin-generator/pom.xml deleted file mode 100644 index 6b942d5..0000000 --- a/eladmin/eladmin-generator/pom.xml +++ /dev/null @@ -1,37 +0,0 @@ - - - - eladmin - me.zhengjie - 1.1 - - 4.0.0 - - eladmin-generator - 代码生成模块 - - - 1.10 - - - - - me.zhengjie - eladmin-common - 1.1 - - - - - org.springframework.boot - spring-boot-starter-freemarker - - - - - commons-configuration - commons-configuration - ${configuration.version} - - - \ No newline at end of file diff --git a/eladmin/eladmin-generator/src/main/java/me/zhengjie/domain/ColumnInfo.java b/eladmin/eladmin-generator/src/main/java/me/zhengjie/domain/ColumnInfo.java deleted file mode 100644 index 894f771..0000000 --- a/eladmin/eladmin-generator/src/main/java/me/zhengjie/domain/ColumnInfo.java +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Copyright 2019-2025 Tz - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package me.zhengjie.domain; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import io.swagger.annotations.ApiModelProperty; -import lombok.Getter; -import lombok.NoArgsConstructor; -import lombok.Setter; -import java.io.Serializable; - -/** - * 列的数据信息 - * @author Tz - * @date 2019-01-02 - */ -@Getter -@Setter -@NoArgsConstructor -@TableName("code_column") -public class ColumnInfo implements Serializable { - - @ApiModelProperty(value = "ID", hidden = true) - @TableId(value = "column_id", type = IdType.AUTO) - private Long id; - - @ApiModelProperty(value = "表名") - private String tableName; - - @ApiModelProperty(value = "数据库字段名称") - private String columnName; - - @ApiModelProperty(value = "数据库字段类型") - private String columnType; - - @ApiModelProperty(value = "数据库字段键类型") - private String keyType; - - @ApiModelProperty(value = "字段额外的参数") - private String extra; - - @ApiModelProperty(value = "数据库字段描述") - private String remark; - - @ApiModelProperty(value = "是否必填") - private Boolean notNull; - - @ApiModelProperty(value = "是否在列表显示") - private Boolean listShow = true; - - @ApiModelProperty(value = "是否表单显示") - private Boolean formShow = true; - - @ApiModelProperty(value = "表单类型") - private String formType; - - @ApiModelProperty(value = "查询 1:模糊 2:精确") - private String queryType; - - @ApiModelProperty(value = "字典名称") - private String dictName; -} diff --git a/eladmin/eladmin-generator/src/main/java/me/zhengjie/domain/GenConfig.java b/eladmin/eladmin-generator/src/main/java/me/zhengjie/domain/GenConfig.java deleted file mode 100644 index e21adab..0000000 --- a/eladmin/eladmin-generator/src/main/java/me/zhengjie/domain/GenConfig.java +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Copyright 2019-2025 Tz - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package me.zhengjie.domain; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import io.swagger.annotations.ApiModelProperty; -import lombok.Getter; -import lombok.NoArgsConstructor; -import lombok.Setter; - -import javax.validation.constraints.NotBlank; -import java.io.Serializable; - -/** - * 代码生成配置 - * @author Tz - * @date 2019-01-03 - */ -@Getter -@Setter -@NoArgsConstructor -@TableName("code_config") -public class GenConfig implements Serializable { - - public GenConfig(String tableName) { - this.tableName = tableName; - } - - @ApiModelProperty(value = "ID", hidden = true) - @TableId(value = "config_id", type = IdType.AUTO) - private Long id; - - @NotBlank - @ApiModelProperty(value = "表名") - private String tableName; - - @ApiModelProperty(value = "接口名称") - private String apiAlias; - - @NotBlank - @ApiModelProperty(value = "包路径") - private String pack; - - @NotBlank - @ApiModelProperty(value = "模块名") - private String moduleName; - - @NotBlank - @ApiModelProperty(value = "前端文件路径") - private String path; - - @ApiModelProperty(value = "前端文件路径") - private String apiPath; - - @ApiModelProperty(value = "作者") - private String author; - - @ApiModelProperty(value = "表前缀") - private String prefix; - - @ApiModelProperty(value = "是否覆盖") - private Boolean cover = false; -} diff --git a/eladmin/eladmin-generator/src/main/java/me/zhengjie/domain/dto/TableInfo.java b/eladmin/eladmin-generator/src/main/java/me/zhengjie/domain/dto/TableInfo.java deleted file mode 100644 index d6dff9e..0000000 --- a/eladmin/eladmin-generator/src/main/java/me/zhengjie/domain/dto/TableInfo.java +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Copyright 2019-2025 Tz - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package me.zhengjie.domain.dto; - -import com.fasterxml.jackson.annotation.JsonFormat; -import io.swagger.annotations.ApiModelProperty; -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; - -/** - * 表的数据信息 - * @author Tz - * @date 2019-01-02 - */ -@Data -@AllArgsConstructor -@NoArgsConstructor -public class TableInfo { - - @ApiModelProperty(value = "表名称") - private Object tableName; - - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") - @ApiModelProperty(value = "创建日期:yyyy-MM-dd HH:mm:ss") - private Object createTime; - - @ApiModelProperty(value = "数据库引擎") - private Object engine; - - @ApiModelProperty(value = "编码集") - private Object coding; - - @ApiModelProperty(value = "备注") - private Object remark; -} diff --git a/eladmin/eladmin-generator/src/main/java/me/zhengjie/mapper/ColumnInfoMapper.java b/eladmin/eladmin-generator/src/main/java/me/zhengjie/mapper/ColumnInfoMapper.java deleted file mode 100644 index 4b3f584..0000000 --- a/eladmin/eladmin-generator/src/main/java/me/zhengjie/mapper/ColumnInfoMapper.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright 2019-2025 Tz - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package me.zhengjie.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import me.zhengjie.domain.ColumnInfo; -import me.zhengjie.domain.dto.TableInfo; -import org.apache.ibatis.annotations.Mapper; -import org.apache.ibatis.annotations.Param; -import java.util.List; - -/** - * @author Tz - * @date 2023-06-26 - */ -@Mapper -public interface ColumnInfoMapper extends BaseMapper { - - IPage getTables(@Param("tableName") String tableName, Page page); - - List findByTableNameOrderByIdAsc(@Param("tableName") String tableName); - - List getColumns(@Param("tableName") String tableName); -} diff --git a/eladmin/eladmin-generator/src/main/java/me/zhengjie/mapper/GenConfigMapper.java b/eladmin/eladmin-generator/src/main/java/me/zhengjie/mapper/GenConfigMapper.java deleted file mode 100644 index e437703..0000000 --- a/eladmin/eladmin-generator/src/main/java/me/zhengjie/mapper/GenConfigMapper.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright 2019-2025 Tz - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package me.zhengjie.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import me.zhengjie.domain.GenConfig; -import org.apache.ibatis.annotations.Mapper; -import org.apache.ibatis.annotations.Param; - -/** - * @author Tz - * @date 2023-06-26 - */ -@Mapper -public interface GenConfigMapper extends BaseMapper { - - GenConfig findByTableName(@Param("tableName") String tableName); -} diff --git a/eladmin/eladmin-generator/src/main/java/me/zhengjie/rest/GenConfigController.java b/eladmin/eladmin-generator/src/main/java/me/zhengjie/rest/GenConfigController.java deleted file mode 100644 index 859ffb8..0000000 --- a/eladmin/eladmin-generator/src/main/java/me/zhengjie/rest/GenConfigController.java +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright 2019-2025 Tz - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package me.zhengjie.rest; - -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import lombok.RequiredArgsConstructor; -import me.zhengjie.domain.GenConfig; -import me.zhengjie.service.GenConfigService; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; - -/** - * @author Tz - * @date 2019-01-14 - */ -@RestController -@RequiredArgsConstructor -@RequestMapping("/api/genConfig") -@Api(tags = "系统:代码生成器配置管理") -public class GenConfigController { - - private final GenConfigService genConfigService; - - @ApiOperation("查询") - @GetMapping(value = "/{tableName}") - public ResponseEntity queryGenConfig(@PathVariable String tableName){ - return new ResponseEntity<>(genConfigService.find(tableName), HttpStatus.OK); - } - - @PutMapping - @ApiOperation("修改") - public ResponseEntity updateGenConfig(@Validated @RequestBody GenConfig genConfig){ - return new ResponseEntity<>(genConfigService.update(genConfig.getTableName(), genConfig),HttpStatus.OK); - } -} diff --git a/eladmin/eladmin-generator/src/main/java/me/zhengjie/rest/GeneratorController.java b/eladmin/eladmin-generator/src/main/java/me/zhengjie/rest/GeneratorController.java deleted file mode 100644 index 1bbcbbc..0000000 --- a/eladmin/eladmin-generator/src/main/java/me/zhengjie/rest/GeneratorController.java +++ /dev/null @@ -1,101 +0,0 @@ -/* - * Copyright 2019-2025 Tz - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package me.zhengjie.rest; - -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import lombok.RequiredArgsConstructor; -import me.zhengjie.domain.ColumnInfo; -import me.zhengjie.domain.dto.TableInfo; -import me.zhengjie.exception.BadRequestException; -import me.zhengjie.service.GenConfigService; -import me.zhengjie.service.GeneratorService; -import me.zhengjie.utils.PageResult; -import me.zhengjie.utils.PageUtil; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.*; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.util.List; - -/** - * @author Tz - * @date 2019-01-02 - */ -@RestController -@RequiredArgsConstructor -@RequestMapping("/api/generator") -@Api(tags = "系统:代码生成管理") -public class GeneratorController { - - private final GeneratorService generatorService; - private final GenConfigService genConfigService; - - @Value("${generator.enabled}") - private Boolean generatorEnabled; - - @ApiOperation("查询数据库数据") - @GetMapping(value = "/tables") - public ResponseEntity> queryTables(@RequestParam(defaultValue = "") String name, @RequestParam(defaultValue = "1") Integer page, @RequestParam(defaultValue = "10") Integer size){ - return new ResponseEntity<>(generatorService.getTables(name, new Page<>(page, size)), HttpStatus.OK); - } - - @ApiOperation("查询字段数据") - @GetMapping(value = "/columns") - public ResponseEntity> queryColumns(@RequestParam String tableName){ - List columnInfos = generatorService.getColumns(tableName); - return new ResponseEntity<>(PageUtil.toPage(columnInfos), HttpStatus.OK); - } - - @ApiOperation("保存字段数据") - @PutMapping - public ResponseEntity saveColumn(@RequestBody List columnInfos){ - generatorService.save(columnInfos); - return new ResponseEntity<>(HttpStatus.OK); - } - - @ApiOperation("同步字段数据") - @PostMapping(value = "sync") - public ResponseEntity syncColumn(@RequestBody List tables){ - for (String table : tables) { - generatorService.sync(generatorService.getColumns(table), generatorService.query(table)); - } - return new ResponseEntity<>(HttpStatus.OK); - } - - @ApiOperation("生成代码") - @PostMapping(value = "/{tableName}/{type}") - public ResponseEntity generatorCode(@PathVariable String tableName, @PathVariable Integer type, HttpServletRequest request, HttpServletResponse response){ - if(!generatorEnabled && type == 0){ - throw new BadRequestException("此环境不允许生成代码,请选择预览或者下载查看!"); - } - switch (type){ - // 生成代码 - case 0: generatorService.generator(genConfigService.find(tableName), generatorService.getColumns(tableName)); - break; - // 预览 - case 1: return generatorService.preview(genConfigService.find(tableName), generatorService.getColumns(tableName)); - // 打包 - case 2: generatorService.download(genConfigService.find(tableName), generatorService.getColumns(tableName), request, response); - break; - default: throw new BadRequestException("没有这个选项"); - } - return new ResponseEntity<>(HttpStatus.OK); - } -} diff --git a/eladmin/eladmin-generator/src/main/java/me/zhengjie/service/GenConfigService.java b/eladmin/eladmin-generator/src/main/java/me/zhengjie/service/GenConfigService.java deleted file mode 100644 index 108647d..0000000 --- a/eladmin/eladmin-generator/src/main/java/me/zhengjie/service/GenConfigService.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright 2019-2025 Tz - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package me.zhengjie.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import me.zhengjie.domain.GenConfig; - -/** - * @author Tz - * @date 2019-01-14 - */ -public interface GenConfigService extends IService { - - /** - * 查询表配置 - * @param tableName 表名 - * @return 表配置 - */ - GenConfig find(String tableName); - - /** - * 更新表配置 - * @param tableName 表名 - * @param genConfig 表配置 - * @return 表配置 - */ - GenConfig update(String tableName, GenConfig genConfig); -} diff --git a/eladmin/eladmin-generator/src/main/java/me/zhengjie/service/GeneratorService.java b/eladmin/eladmin-generator/src/main/java/me/zhengjie/service/GeneratorService.java deleted file mode 100644 index cfa9dfd..0000000 --- a/eladmin/eladmin-generator/src/main/java/me/zhengjie/service/GeneratorService.java +++ /dev/null @@ -1,94 +0,0 @@ -/* - * Copyright 2019-2025 Tz - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package me.zhengjie.service; - -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.baomidou.mybatisplus.extension.service.IService; -import me.zhengjie.domain.GenConfig; -import me.zhengjie.domain.ColumnInfo; -import me.zhengjie.domain.dto.TableInfo; -import me.zhengjie.utils.PageResult; -import org.springframework.http.ResponseEntity; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.util.List; - -/** - * @author Tz - * @date 2019-01-02 - */ -public interface GeneratorService extends IService { - - /** - * 查询数据库元数据 - * - * @param name 表名 - * @param page 分页参数 - * @return / - */ - PageResult getTables(String name, Page page); - - /** - * 得到数据表的元数据 - * @param name 表名 - * @return / - */ - List getColumns(String name); - - /** - * 同步表数据 - * @param columnInfos / - * @param columnInfoList / - */ - void sync(List columnInfos, List columnInfoList); - - /** - * 保持数据 - * @param columnInfos / - */ - void save(List columnInfos); - - /** - * 代码生成 - * @param genConfig 配置信息 - * @param columns 字段信息 - */ - void generator(GenConfig genConfig, List columns); - - /** - * 预览 - * @param genConfig 配置信息 - * @param columns 字段信息 - * @return / - */ - ResponseEntity preview(GenConfig genConfig, List columns); - - /** - * 打包下载 - * @param genConfig 配置信息 - * @param columns 字段信息 - * @param request / - * @param response / - */ - void download(GenConfig genConfig, List columns, HttpServletRequest request, HttpServletResponse response); - - /** - * 查询数据库的表字段数据数据 - * @param table / - * @return / - */ - List query(String table); -} diff --git a/eladmin/eladmin-generator/src/main/java/me/zhengjie/service/impl/GenConfigServiceImpl.java b/eladmin/eladmin-generator/src/main/java/me/zhengjie/service/impl/GenConfigServiceImpl.java deleted file mode 100644 index dfe1971..0000000 --- a/eladmin/eladmin-generator/src/main/java/me/zhengjie/service/impl/GenConfigServiceImpl.java +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Copyright 2019-2025 Tz - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package me.zhengjie.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import lombok.RequiredArgsConstructor; -import me.zhengjie.domain.GenConfig; -import me.zhengjie.mapper.GenConfigMapper; -import me.zhengjie.service.GenConfigService; -import org.springframework.stereotype.Service; -import java.io.File; - -/** - * @author Tz - * @date 2019-01-14 - */ -@Service -@RequiredArgsConstructor -@SuppressWarnings({"unchecked","all"}) -public class GenConfigServiceImpl extends ServiceImpl implements GenConfigService { - - private final GenConfigMapper genConfigMapper; - - @Override - public GenConfig find(String tableName) { - GenConfig genConfig = genConfigMapper.findByTableName(tableName); - if(genConfig == null){ - return new GenConfig(tableName); - } - return genConfig; - } - - @Override - public GenConfig update(String tableName, GenConfig genConfig) { - String separator = File.separator; - String[] paths; - String symbol = "\\"; - if (symbol.equals(separator)) { - paths = genConfig.getPath().split("\\\\"); - } else { - paths = genConfig.getPath().split(File.separator); - } - StringBuilder api = new StringBuilder(); - for (String path : paths) { - api.append(path); - api.append(separator); - if ("src".equals(path)) { - api.append("api"); - break; - } - } - genConfig.setApiPath(api.toString()); - saveOrUpdate(genConfig); - return genConfig; - } -} diff --git a/eladmin/eladmin-generator/src/main/java/me/zhengjie/service/impl/GeneratorServiceImpl.java b/eladmin/eladmin-generator/src/main/java/me/zhengjie/service/impl/GeneratorServiceImpl.java deleted file mode 100644 index facd2f8..0000000 --- a/eladmin/eladmin-generator/src/main/java/me/zhengjie/service/impl/GeneratorServiceImpl.java +++ /dev/null @@ -1,161 +0,0 @@ -/* - * Copyright 2019-2025 Tz - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package me.zhengjie.service.impl; - -import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.util.ZipUtil; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import me.zhengjie.domain.GenConfig; -import me.zhengjie.domain.ColumnInfo; -import me.zhengjie.domain.dto.TableInfo; -import me.zhengjie.exception.BadRequestException; -import me.zhengjie.mapper.ColumnInfoMapper; -import me.zhengjie.service.GeneratorService; -import me.zhengjie.utils.*; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.File; -import java.io.IOException; -import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; - -/** - * @author Tz - * @date 2019-01-02 - */ -@Slf4j -@Service -@RequiredArgsConstructor -public class GeneratorServiceImpl extends ServiceImpl implements GeneratorService { - - private final ColumnInfoMapper columnInfoMapper; - private final String CONFIG_MESSAGE = "请先配置生成器"; - - @Override - public PageResult getTables(String name, Page page) { - return PageUtil.toPage(columnInfoMapper.getTables(name, page)); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public List getColumns(String tableName) { - List columnInfos = columnInfoMapper.findByTableNameOrderByIdAsc(tableName); - if (CollectionUtil.isNotEmpty(columnInfos)) { - return columnInfos; - } else { - columnInfos = query(tableName); - saveBatch(columnInfos); - return columnInfos; - } - } - - @Override - public List query(String tableName) { - List columnInfos = columnInfoMapper.getColumns(tableName); - for (ColumnInfo columnInfo : columnInfos) { - columnInfo.setTableName(tableName); - if(GenUtil.PK.equalsIgnoreCase(columnInfo.getKeyType()) - && GenUtil.EXTRA.equalsIgnoreCase(columnInfo.getExtra())){ - columnInfo.setNotNull(false); - } - } - return columnInfos; - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void sync(List columnInfos, List columnInfoList) { - // 第一种情况,数据库类字段改变或者新增字段 - for (ColumnInfo columnInfo : columnInfoList) { - // 根据字段名称查找 - List columns = columnInfos.stream().filter(c -> c.getColumnName().equals(columnInfo.getColumnName())).collect(Collectors.toList()); - // 如果能找到,就修改部分可能被字段 - if (CollectionUtil.isNotEmpty(columns)) { - ColumnInfo column = columns.get(0); - column.setColumnType(columnInfo.getColumnType()); - column.setExtra(columnInfo.getExtra()); - column.setKeyType(columnInfo.getKeyType()); - if (StringUtils.isBlank(column.getRemark())) { - column.setRemark(columnInfo.getRemark()); - } - saveOrUpdate(column); - } else { - // 如果找不到,则保存新字段信息 - save(columnInfo); - } - } - // 第二种情况,数据库字段删除了 - for (ColumnInfo columnInfo : columnInfos) { - // 根据字段名称查找 - List columns = columnInfoList.stream().filter(c -> c.getColumnName().equals(columnInfo.getColumnName())).collect(Collectors.toList()); - // 如果找不到,就代表字段被删除了,则需要删除该字段 - if (CollectionUtil.isEmpty(columns)) { - removeById(columnInfo); - } - } - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void save(List columnInfos) { - saveOrUpdateBatch(columnInfos); - } - - @Override - public void generator(GenConfig genConfig, List columns) { - if (genConfig.getId() == null) { - throw new BadRequestException(CONFIG_MESSAGE); - } - try { - GenUtil.generatorCode(columns, genConfig); - } catch (IOException e) { - log.error(e.getMessage(), e); - throw new BadRequestException("生成失败,请手动处理已生成的文件"); - } - } - - @Override - public ResponseEntity preview(GenConfig genConfig, List columns) { - if (genConfig.getId() == null) { - throw new BadRequestException(CONFIG_MESSAGE); - } - List> genList = GenUtil.preview(columns, genConfig); - return new ResponseEntity<>(genList, HttpStatus.OK); - } - - @Override - public void download(GenConfig genConfig, List columns, HttpServletRequest request, HttpServletResponse response) { - if (genConfig.getId() == null) { - throw new BadRequestException(CONFIG_MESSAGE); - } - try { - File file = new File(GenUtil.download(columns, genConfig)); - String zipPath = file.getPath() + ".zip"; - ZipUtil.zip(file.getPath(), zipPath); - FileUtil.downloadFile(request, response, new File(zipPath), true); - } catch (IOException e) { - throw new BadRequestException("打包失败"); - } - } -} diff --git a/eladmin/eladmin-generator/src/main/java/me/zhengjie/utils/ColUtil.java b/eladmin/eladmin-generator/src/main/java/me/zhengjie/utils/ColUtil.java deleted file mode 100644 index b18d21b..0000000 --- a/eladmin/eladmin-generator/src/main/java/me/zhengjie/utils/ColUtil.java +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright 2019-2025 Tz - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package me.zhengjie.utils; - -import org.apache.commons.configuration.*; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -/** - * sql字段转java - * - * @author Tz - * @date 2019-01-03 - */ -public class ColUtil { - private static final Logger log = LoggerFactory.getLogger(ColUtil.class); - - /** - * 转换mysql数据类型为java数据类型 - * - * @param type 数据库字段类型 - * @return String - */ - static String cloToJava(String type) { - Configuration config = getConfig(); - assert config != null; - return config.getString(type, "unknowType"); - } - - /** - * 获取配置信息 - */ - public static PropertiesConfiguration getConfig() { - try { - return new PropertiesConfiguration("gen.properties"); - } catch (ConfigurationException e) { - log.error(e.getMessage(), e); - } - return null; - } -} diff --git a/eladmin/eladmin-generator/src/main/java/me/zhengjie/utils/GenUtil.java b/eladmin/eladmin-generator/src/main/java/me/zhengjie/utils/GenUtil.java deleted file mode 100644 index 7fe115f..0000000 --- a/eladmin/eladmin-generator/src/main/java/me/zhengjie/utils/GenUtil.java +++ /dev/null @@ -1,417 +0,0 @@ -/* - * Copyright 2019-2025 Tz - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package me.zhengjie.utils; - -import cn.hutool.core.util.StrUtil; -import cn.hutool.extra.template.*; -import lombok.extern.slf4j.Slf4j; -import me.zhengjie.domain.GenConfig; -import me.zhengjie.domain.ColumnInfo; -import org.springframework.util.ObjectUtils; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.io.Writer; -import java.time.LocalDate; -import java.util.*; -import static me.zhengjie.utils.FileUtil.SYS_TEM_DIR; - -/** - * 代码生成 - * - * @author Tz - * @date 2019-01-02 - */ -@Slf4j -@SuppressWarnings({"unchecked", "all"}) -public class GenUtil { - - private static final String TIMESTAMP = "Timestamp"; - - private static final String BIGDECIMAL = "BigDecimal"; - - public static final String PK = "PRI"; - - public static final String EXTRA = "auto_increment"; - - /** - * 获取后端代码模板名称 - * - * @return List - */ - private static List getAdminTemplateNames() { - List templateNames = new ArrayList<>(); - templateNames.add("Entity"); - templateNames.add("Controller"); - templateNames.add("QueryCriteria"); - templateNames.add("Service"); - templateNames.add("ServiceImpl"); - templateNames.add("Mapper"); - templateNames.add("Mapper-xml"); - return templateNames; - } - - /** - * 获取前端代码模板名称 - * - * @return List - */ - private static List getFrontTemplateNames() { - List templateNames = new ArrayList<>(); - templateNames.add("index"); - templateNames.add("api"); - return templateNames; - } - - public static List> preview(List columns, GenConfig genConfig) { - Map genMap = getGenMap(columns, genConfig); - List> genList = new ArrayList<>(); - // 获取后端模版 - List templates = getAdminTemplateNames(); - TemplateEngine engine = TemplateUtil.createEngine(new TemplateConfig("template", TemplateConfig.ResourceMode.CLASSPATH)); - for (String templateName : templates) { - Map map = new HashMap<>(1); - Template template = engine.getTemplate("admin/" + templateName + ".ftl"); - map.put("content", template.render(genMap)); - map.put("name", templateName.replace("-xml", ".xml")); - genList.add(map); - } - // 获取前端模版 - templates = getFrontTemplateNames(); - for (String templateName : templates) { - Map map = new HashMap<>(1); - Template template = engine.getTemplate("front/" + templateName + ".ftl"); - map.put(templateName, template.render(genMap)); - map.put("content", template.render(genMap)); - map.put("name", templateName); - genList.add(map); - } - return genList; - } - - public static String download(List columns, GenConfig genConfig) throws IOException { - // 拼接的路径:/tmpeladmin-gen-temp/,这个路径在Linux下需要root用户才有权限创建,非root用户会权限错误而失败,更改为: /tmp/eladmin-gen-temp/ - // String tempPath =SYS_TEM_DIR + "eladmin-gen-temp" + File.separator + genConfig.getTableName() + File.separator; - String tempPath = SYS_TEM_DIR + "eladmin-gen-temp" + File.separator + genConfig.getTableName() + File.separator; - Map genMap = getGenMap(columns, genConfig); - TemplateEngine engine = TemplateUtil.createEngine(new TemplateConfig("template", TemplateConfig.ResourceMode.CLASSPATH)); - // 生成后端代码 - List templates = getAdminTemplateNames(); - for (String templateName : templates) { - Template template = engine.getTemplate("admin/" + templateName + ".ftl"); - String filePath = getAdminFilePath(templateName, genConfig, genMap.get("className").toString(), tempPath + "eladmin" + File.separator); - assert filePath != null; - File file = new File(filePath); - // 如果非覆盖生成 - if (!genConfig.getCover() && FileUtil.exist(file)) { - continue; - } - // 生成代码 - genFile(file, template, genMap); - } - // 生成前端代码 - templates = getFrontTemplateNames(); - for (String templateName : templates) { - Template template = engine.getTemplate("front/" + templateName + ".ftl"); - String path = tempPath + "eladmin-web" + File.separator; - String apiPath = path + "src" + File.separator + "api" + File.separator; - String srcPath = path + "src" + File.separator + "views" + File.separator + genMap.get("changeClassName").toString() + File.separator; - String filePath = getFrontFilePath(templateName, apiPath, srcPath, genMap.get("changeClassName").toString()); - assert filePath != null; - File file = new File(filePath); - // 如果非覆盖生成 - if (!genConfig.getCover() && FileUtil.exist(file)) { - continue; - } - // 生成代码 - genFile(file, template, genMap); - } - return tempPath; - } - - public static void generatorCode(List columnInfos, GenConfig genConfig) throws IOException { - Map genMap = getGenMap(columnInfos, genConfig); - TemplateEngine engine = TemplateUtil.createEngine(new TemplateConfig("template", TemplateConfig.ResourceMode.CLASSPATH)); - // 生成后端代码 - List templates = getAdminTemplateNames(); - for (String templateName : templates) { - Template template = engine.getTemplate("admin/" + templateName + ".ftl"); - String rootPath = System.getProperty("user.dir"); - String filePath = getAdminFilePath(templateName, genConfig, genMap.get("className").toString(), rootPath); - - assert filePath != null; - File file = new File(filePath); - - // 如果非覆盖生成 - if (!genConfig.getCover() && FileUtil.exist(file)) { - continue; - } - // 生成代码 - genFile(file, template, genMap); - } - - // 生成前端代码 - templates = getFrontTemplateNames(); - for (String templateName : templates) { - Template template = engine.getTemplate("front/" + templateName + ".ftl"); - String filePath = getFrontFilePath(templateName, genConfig.getApiPath(), genConfig.getPath(), genMap.get("changeClassName").toString()); - - assert filePath != null; - File file = new File(filePath); - - // 如果非覆盖生成 - if (!genConfig.getCover() && FileUtil.exist(file)) { - continue; - } - // 生成代码 - genFile(file, template, genMap); - } - } - - // 获取模版数据 - private static Map getGenMap(List columnInfos, GenConfig genConfig) { - // 存储模版字段数据 - Map genMap = new HashMap<>(16); - // 接口别名 - genMap.put("apiAlias", genConfig.getApiAlias()); - // 包名称 - genMap.put("package", genConfig.getPack()); - // 模块名称 - genMap.put("moduleName", genConfig.getModuleName()); - // 作者 - genMap.put("author", genConfig.getAuthor()); - // 创建日期 - genMap.put("date", LocalDate.now().toString()); - // 表名 - genMap.put("tableName", genConfig.getTableName()); - // 大写开头的类名 - String className = StringUtils.toCapitalizeCamelCase(genConfig.getTableName()); - // 小写开头的类名 - String changeClassName = StringUtils.toCamelCase(genConfig.getTableName()); - // 判断是否去除表前缀 - if (StringUtils.isNotEmpty(genConfig.getPrefix())) { - className = StringUtils.toCapitalizeCamelCase(StrUtil.removePrefix(genConfig.getTableName(), genConfig.getPrefix())); - changeClassName = StringUtils.toCamelCase(StrUtil.removePrefix(genConfig.getTableName(), genConfig.getPrefix())); - changeClassName = StringUtils.uncapitalize(changeClassName); - } - // 保存类名 - genMap.put("className", className); - // 保存小写开头的类名 - genMap.put("changeClassName", changeClassName); - // 存在 Timestamp 字段 - genMap.put("hasTimestamp", false); - // 查询类中存在 Timestamp 字段 - genMap.put("queryHasTimestamp", false); - // 存在 BigDecimal 字段 - genMap.put("hasBigDecimal", false); - // 查询类中存在 BigDecimal 字段 - genMap.put("queryHasBigDecimal", false); - // 是否需要创建查询 - genMap.put("hasQuery", false); - // 自增主键 - genMap.put("auto", false); - // 存在字典 - genMap.put("hasDict", false); - // 存在日期注解 - genMap.put("hasDateAnnotation", false); - // 存储主键字段名 - genMap.put("pkIdName", "none"); - // 存储符号 - genMap.put("symbol", "#"); - // 保存字段信息 - List> columns = new ArrayList<>(); - // 保存查询字段的信息 - List> queryColumns = new ArrayList<>(); - // 存储字典信息 - List dicts = new ArrayList<>(); - // 存储 between 信息 - List> betweens = new ArrayList<>(); - // 存储不为空的字段信息 - List> isNotNullColumns = new ArrayList<>(); - - for (ColumnInfo column : columnInfos) { - Map listMap = new HashMap<>(16); - // 字段描述 - listMap.put("remark", column.getRemark()); - // 字段类型 - listMap.put("columnKey", column.getKeyType()); - // 主键类型 - String colType = ColUtil.cloToJava(column.getColumnType()); - // 小写开头的字段名 - String changeColumnName = StringUtils.toCamelCase(column.getColumnName()); - // 大写开头的字段名 - String capitalColumnName = StringUtils.toCapitalizeCamelCase(column.getColumnName()); - if (PK.equals(column.getKeyType())) { - // 存储主键类型 - genMap.put("pkColumnType", colType); - // 存储小写开头的字段名 - genMap.put("pkChangeColName", changeColumnName); - // 存储大写开头的字段名 - genMap.put("pkCapitalColName", capitalColumnName); - // 存储主键字段名 - genMap.put("pkIdName", column.getColumnName()); - } - // 是否存在 Timestamp 类型的字段 - if (TIMESTAMP.equals(colType)) { - genMap.put("hasTimestamp", true); - } - // 是否存在 BigDecimal 类型的字段 - if (BIGDECIMAL.equals(colType)) { - genMap.put("hasBigDecimal", true); - } - // 主键是否自增 - if (EXTRA.equals(column.getExtra())) { - genMap.put("auto", true); - } - // 主键存在字典 - if (StringUtils.isNotBlank(column.getDictName())) { - genMap.put("hasDict", true); - if(!dicts.contains(column.getDictName())) - dicts.add(column.getDictName()); - } - - // 存储字段类型 - listMap.put("columnType", colType); - // 存储字原始段名称 - listMap.put("columnName", column.getColumnName()); - // 不为空 - listMap.put("istNotNull", column.getNotNull()); - // 字段列表显示 - listMap.put("columnShow", column.getListShow()); - // 表单显示 - listMap.put("formShow", column.getFormShow()); - // 表单组件类型 - listMap.put("formType", StringUtils.isNotBlank(column.getFormType()) ? column.getFormType() : "Input"); - // 小写开头的字段名称 - listMap.put("changeColumnName", changeColumnName); - //大写开头的字段名称 - listMap.put("capitalColumnName", capitalColumnName); - // 字典名称 - listMap.put("dictName", column.getDictName()); - // 添加非空字段信息 - if (column.getNotNull()) { - isNotNullColumns.add(listMap); - } - // 判断是否有查询,如有则把查询的字段set进columnQuery - if (!StringUtils.isBlank(column.getQueryType())) { - // 查询类型 - listMap.put("queryType", column.getQueryType()); - // 是否存在查询 - genMap.put("hasQuery", true); - if (TIMESTAMP.equals(colType)) { - // 查询中存储 Timestamp 类型 - genMap.put("queryHasTimestamp", true); - } - if (BIGDECIMAL.equals(colType)) { - // 查询中存储 BigDecimal 类型 - genMap.put("queryHasBigDecimal", true); - } - if ("between".equalsIgnoreCase(column.getQueryType())) { - betweens.add(listMap); - } else { - // 添加到查询列表中 - queryColumns.add(listMap); - } - } - // 添加到字段列表中 - columns.add(listMap); - } - // 保存字段列表 - genMap.put("columns", columns); - // 保存查询列表 - genMap.put("queryColumns", queryColumns); - // 保存字段列表 - genMap.put("dicts", dicts); - // 保存查询列表 - genMap.put("betweens", betweens); - // 保存非空字段信息 - genMap.put("isNotNullColumns", isNotNullColumns); - return genMap; - } - - /** - * 定义后端文件路径以及名称 - */ - private static String getAdminFilePath(String templateName, GenConfig genConfig, String className, String rootPath) { - String projectPath = rootPath + File.separator + genConfig.getModuleName(); - String packagePath = projectPath + File.separator + "src" + File.separator + "main" + File.separator + "java" + File.separator; - String mpXmlPath = projectPath + File.separator + "src" + File.separator + "main" + File.separator + "resources" + File.separator; - if (!ObjectUtils.isEmpty(genConfig.getPack())) { - packagePath += genConfig.getPack().replace(".", File.separator) + File.separator; - } - - if ("Entity".equals(templateName)) { - return packagePath + "domain" + File.separator + className + ".java"; - } - - if ("Controller".equals(templateName)) { - return packagePath + "rest" + File.separator + className + "Controller.java"; - } - - if ("Service".equals(templateName)) { - return packagePath + "service" + File.separator + className + "Service.java"; - } - - if ("ServiceImpl".equals(templateName)) { - return packagePath + "service" + File.separator + "impl" + File.separator + className + "ServiceImpl.java"; - } - - if ("QueryCriteria".equals(templateName)) { - return packagePath + "domain" + File.separator + "dto" + File.separator + className + "QueryCriteria.java"; - } - - if ("Mapper".equals(templateName)) { - return packagePath + "mapper" + File.separator + className + "Mapper.java"; - } - - if ("Mapper-xml".equals(templateName)) { - return mpXmlPath + "mapper" + File.separator + className + "Mapper.xml"; - } - - return null; - } - - /** - * 定义前端文件路径以及名称 - */ - private static String getFrontFilePath(String templateName, String apiPath, String path, String apiName) { - - if ("api".equals(templateName)) { - return apiPath + File.separator + apiName + ".js"; - } - - if ("index".equals(templateName)) { - return path + File.separator + "index.vue"; - } - - return null; - } - - private static void genFile(File file, Template template, Map map) throws IOException { - // 生成目标文件 - Writer writer = null; - try { - FileUtil.touch(file); - writer = new FileWriter(file); - template.render(map, writer); - } catch (TemplateException | IOException e) { - throw new RuntimeException(e); - } finally { - assert writer != null; - writer.close(); - } - } -} diff --git a/eladmin/eladmin-generator/src/main/resources/gen.properties b/eladmin/eladmin-generator/src/main/resources/gen.properties deleted file mode 100644 index 2ed9370..0000000 --- a/eladmin/eladmin-generator/src/main/resources/gen.properties +++ /dev/null @@ -1,27 +0,0 @@ -#数据库类型转Java类型 -tinyint=Integer -smallint=Integer -mediumint=Integer -int=Integer -integer=Integer - -bigint=Long - -float=Float - -double=Double - -decimal=BigDecimal - -bit=Boolean - -char=String -varchar=String -tinytext=String -text=String -mediumtext=String -longtext=String - -date=Timestamp -datetime=Timestamp -timestamp=Timestamp \ No newline at end of file diff --git a/eladmin/eladmin-generator/src/main/resources/mapper/ColumnInfoMapper.xml b/eladmin/eladmin-generator/src/main/resources/mapper/ColumnInfoMapper.xml deleted file mode 100644 index ff7feae..0000000 --- a/eladmin/eladmin-generator/src/main/resources/mapper/ColumnInfoMapper.xml +++ /dev/null @@ -1,49 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - column_id, table_name, column_name, column_type, key_type, extra, remark, not_null, list_show, form_show, form_type, query_type, dict_name - - - - - - - - \ No newline at end of file diff --git a/eladmin/eladmin-generator/src/main/resources/mapper/GenConfigMapper.xml b/eladmin/eladmin-generator/src/main/resources/mapper/GenConfigMapper.xml deleted file mode 100644 index 6b8fbae..0000000 --- a/eladmin/eladmin-generator/src/main/resources/mapper/GenConfigMapper.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - config_id, table_name, api_alias, pack, module_name, path, api_path, author, prefix, cover - - - - \ No newline at end of file diff --git a/eladmin/eladmin-generator/src/main/resources/template/admin/Controller.ftl b/eladmin/eladmin-generator/src/main/resources/template/admin/Controller.ftl deleted file mode 100644 index 2a753e2..0000000 --- a/eladmin/eladmin-generator/src/main/resources/template/admin/Controller.ftl +++ /dev/null @@ -1,88 +0,0 @@ -/* -* Copyright 2019-2025 Tz -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -package ${package}.rest; - -import me.zhengjie.annotation.Log; -import ${package}.domain.${className}; -import ${package}.service.${className}Service; -import ${package}.domain.dto.${className}QueryCriteria; -import lombok.RequiredArgsConstructor; -import java.util.List; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.validation.annotation.Validated; -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 me.zhengjie.utils.PageResult; - -/** -* @author ${author} -* @date ${date} -**/ -@RestController -@RequiredArgsConstructor -@Api(tags = "${apiAlias}") -@RequestMapping("/api/${changeClassName}") -public class ${className}Controller { - - private final ${className}Service ${changeClassName}Service; - - @ApiOperation("导出数据") - @GetMapping(value = "/download") - @PreAuthorize("@el.check('${changeClassName}:list')") - public void export${className}(HttpServletResponse response, ${className}QueryCriteria criteria) throws IOException { - ${changeClassName}Service.download(${changeClassName}Service.queryAll(criteria), response); - } - - @GetMapping - @ApiOperation("查询${apiAlias}") - @PreAuthorize("@el.check('${changeClassName}:list')") - public ResponseEntity> query${className}(${className}QueryCriteria criteria){ - Page page = new Page<>(criteria.getPage(), criteria.getSize()); - return new ResponseEntity<>(${changeClassName}Service.queryAll(criteria,page),HttpStatus.OK); - } - - @PostMapping - @Log("新增${apiAlias}") - @ApiOperation("新增${apiAlias}") - @PreAuthorize("@el.check('${changeClassName}:add')") - public ResponseEntity create${className}(@Validated @RequestBody ${className} resources){ - ${changeClassName}Service.create(resources); - return new ResponseEntity<>(HttpStatus.CREATED); - } - - @PutMapping - @Log("修改${apiAlias}") - @ApiOperation("修改${apiAlias}") - @PreAuthorize("@el.check('${changeClassName}:edit')") - public ResponseEntity update${className}(@Validated @RequestBody ${className} resources){ - ${changeClassName}Service.update(resources); - return new ResponseEntity<>(HttpStatus.NO_CONTENT); - } - - @DeleteMapping - @Log("删除${apiAlias}") - @ApiOperation("删除${apiAlias}") - @PreAuthorize("@el.check('${changeClassName}:del')") - public ResponseEntity delete${className}(@ApiParam(value = "传ID数组[]") @RequestBody List<${pkColumnType}> ids) { - ${changeClassName}Service.deleteAll(ids); - return new ResponseEntity<>(HttpStatus.OK); - } -} \ No newline at end of file diff --git a/eladmin/eladmin-generator/src/main/resources/template/admin/Entity.ftl b/eladmin/eladmin-generator/src/main/resources/template/admin/Entity.ftl deleted file mode 100644 index b42a907..0000000 --- a/eladmin/eladmin-generator/src/main/resources/template/admin/Entity.ftl +++ /dev/null @@ -1,87 +0,0 @@ -/* -* Copyright 2019-2025 Tz -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -package ${package}.domain; - -import lombok.Data; -import cn.hutool.core.bean.BeanUtil; -import io.swagger.annotations.ApiModelProperty; -import cn.hutool.core.bean.copier.CopyOptions; -<#if hasTimestamp> -import java.sql.Timestamp; - -<#if hasBigDecimal> -import java.math.BigDecimal; - -<#assign notBlankUsed = false> -<#assign notNullUsed = false> -<#if columns??> - <#list columns as column> - <#if column.istNotNull && column.columnKey != 'PRI'> - <#if column.columnType = 'String'> - <#assign notBlankUsed = true> - <#else> - <#assign notNullUsed = true> - - - - -<#if notBlankUsed> -import javax.validation.constraints.NotBlank; - -<#if notNullUsed> -import javax.validation.constraints.NotNull; - -import java.io.Serializable; -<#if auto> -import com.baomidou.mybatisplus.annotation.IdType; - -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -/** -* @description / -* @author ${author} -* @date ${date} -**/ -@Data -@TableName("${tableName}") -public class ${className} implements Serializable { -<#if columns??> - <#list columns as column> - - <#if column.columnKey = 'PRI'> - @TableId(value = "${column.columnName}"<#if auto>, type = IdType.AUTO) - - <#if column.istNotNull && column.columnKey != 'PRI'> - <#if column.columnType = 'String'> - @NotBlank - <#else> - @NotNull - - - <#if column.remark != ''> - @ApiModelProperty(value = "${column.remark}") - <#else> - @ApiModelProperty(value = "${column.changeColumnName}") - - private ${column.columnType} ${column.changeColumnName}; - - - - public void copy(${className} source){ - BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); - } -} diff --git a/eladmin/eladmin-generator/src/main/resources/template/admin/Mapper-xml.ftl b/eladmin/eladmin-generator/src/main/resources/template/admin/Mapper-xml.ftl deleted file mode 100644 index 82bad8d..0000000 --- a/eladmin/eladmin-generator/src/main/resources/template/admin/Mapper-xml.ftl +++ /dev/null @@ -1,62 +0,0 @@ - - - - <#if columns??> - - <#list columns as column> - <#if column.columnKey = 'PRI'> - - - <#if column.columnKey != 'PRI'> - - - - - - - <#list columns as column>${column.columnName}<#if column_has_next>, - - - - - \ No newline at end of file diff --git a/eladmin/eladmin-generator/src/main/resources/template/admin/Mapper.ftl b/eladmin/eladmin-generator/src/main/resources/template/admin/Mapper.ftl deleted file mode 100644 index 05131a6..0000000 --- a/eladmin/eladmin-generator/src/main/resources/template/admin/Mapper.ftl +++ /dev/null @@ -1,37 +0,0 @@ -/* -* Copyright 2019-2025 Tz -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -package ${package}.mapper; - -import ${package}.domain.${className}; -import ${package}.domain.dto.${className}QueryCriteria; -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 ${author} -* @date ${date} -**/ -@Mapper -public interface ${className}Mapper extends BaseMapper<${className}> { - - IPage<${className}> findAll(@Param("criteria") ${className}QueryCriteria criteria, Page page); - - List<${className}> findAll(@Param("criteria") ${className}QueryCriteria criteria); -} \ No newline at end of file diff --git a/eladmin/eladmin-generator/src/main/resources/template/admin/QueryCriteria.ftl b/eladmin/eladmin-generator/src/main/resources/template/admin/QueryCriteria.ftl deleted file mode 100644 index a79c1e5..0000000 --- a/eladmin/eladmin-generator/src/main/resources/template/admin/QueryCriteria.ftl +++ /dev/null @@ -1,58 +0,0 @@ -/* -* Copyright 2019-2025 Tz -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -package ${package}.domain.dto; - -import lombok.Data; -<#if queryHasTimestamp> -import java.sql.Timestamp; - -<#if queryHasBigDecimal> -import java.math.BigDecimal; - -<#if betweens?? && (betweens?size > 0)> -import java.util.List; - -import io.swagger.annotations.ApiModelProperty; - -/** -* @author ${author} -* @date ${date} -**/ -@Data -public class ${className}QueryCriteria{ - - @ApiModelProperty(value = "页码", example = "1") - private Integer page = 1; - - @ApiModelProperty(value = "每页数据量", example = "10") - private Integer size = 10; -<#if queryColumns??> - <#list queryColumns as column> - - <#if column.remark != ''> - @ApiModelProperty(value = "${column.remark}") - <#else> - @ApiModelProperty(value = "${column.changeColumnName}") - - private ${column.columnType} ${column.changeColumnName}; - - -<#if betweens??> - <#list betweens as column> - private List<${column.columnType}> ${column.changeColumnName}; - - -} \ No newline at end of file diff --git a/eladmin/eladmin-generator/src/main/resources/template/admin/Service.ftl b/eladmin/eladmin-generator/src/main/resources/template/admin/Service.ftl deleted file mode 100644 index 8b7f4f4..0000000 --- a/eladmin/eladmin-generator/src/main/resources/template/admin/Service.ftl +++ /dev/null @@ -1,75 +0,0 @@ -/* -* Copyright 2019-2025 Tz -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -package ${package}.service; - -import ${package}.domain.${className}; -import ${package}.domain.dto.${className}QueryCriteria; -import java.util.Map; -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 me.zhengjie.utils.PageResult; - -/** -* @description 服务接口 -* @author ${author} -* @date ${date} -**/ -public interface ${className}Service extends IService<${className}> { - - /** - * 查询数据分页 - * @param criteria 条件 - * @param page 分页参数 - * @return PageResult - */ - PageResult<${className}> queryAll(${className}QueryCriteria criteria, Page page); - - /** - * 查询所有数据不分页 - * @param criteria 条件参数 - * @return List<${className}Dto> - */ - List<${className}> queryAll(${className}QueryCriteria criteria); - - /** - * 创建 - * @param resources / - */ - void create(${className} resources); - - /** - * 编辑 - * @param resources / - */ - void update(${className} resources); - - /** - * 多选删除 - * @param ids / - */ - void deleteAll(List<${pkColumnType}> ids); - - /** - * 导出数据 - * @param all 待导出的数据 - * @param response / - * @throws IOException / - */ - void download(List<${className}> all, HttpServletResponse response) throws IOException; -} \ No newline at end of file diff --git a/eladmin/eladmin-generator/src/main/resources/template/admin/ServiceImpl.ftl b/eladmin/eladmin-generator/src/main/resources/template/admin/ServiceImpl.ftl deleted file mode 100644 index 3b96ff8..0000000 --- a/eladmin/eladmin-generator/src/main/resources/template/admin/ServiceImpl.ftl +++ /dev/null @@ -1,105 +0,0 @@ -/* -* Copyright 2019-2025 Tz -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -package ${package}.service.impl; - -import ${package}.domain.${className}; -<#if columns??> - <#list columns as column> - <#if column.columnKey = 'UNI'> - <#if column_index = 1> -import me.zhengjie.exception.EntityExistException; - - - - -import me.zhengjie.utils.FileUtil; -import lombok.RequiredArgsConstructor; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import ${package}.service.${className}Service; -import ${package}.domain.dto.${className}QueryCriteria; -import ${package}.mapper.${className}Mapper; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import me.zhengjie.utils.PageUtil; -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 me.zhengjie.utils.PageResult; - -/** -* @description 服务实现 -* @author ${author} -* @date ${date} -**/ -@Service -@RequiredArgsConstructor -public class ${className}ServiceImpl extends ServiceImpl<${className}Mapper, ${className}> implements ${className}Service { - - private final ${className}Mapper ${changeClassName}Mapper; - - @Override - public PageResult<${className}> queryAll(${className}QueryCriteria criteria, Page page){ - return PageUtil.toPage(${changeClassName}Mapper.findAll(criteria, page)); - } - - @Override - public List<${className}> queryAll(${className}QueryCriteria criteria){ - return ${changeClassName}Mapper.findAll(criteria); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void create(${className} resources) { - ${changeClassName}Mapper.insert(resources); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void update(${className} resources) { - ${className} ${changeClassName} = getById(resources.get${pkCapitalColName}()); - ${changeClassName}.copy(resources); - ${changeClassName}Mapper.updateById(${changeClassName}); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void deleteAll(List<${pkColumnType}> ids) { - ${changeClassName}Mapper.deleteBatchIds(ids); - } - - @Override - public void download(List<${className}> all, HttpServletResponse response) throws IOException { - List> list = new ArrayList<>(); - for (${className} ${changeClassName} : all) { - Map map = new LinkedHashMap<>(); - <#list columns as column> - <#if column.columnKey != 'PRI'> - <#if column.remark != ''> - map.put("${column.remark}", ${changeClassName}.get${column.capitalColumnName}()); - <#else> - map.put(" ${column.changeColumnName}", ${changeClassName}.get${column.capitalColumnName}()); - - - - list.add(map); - } - FileUtil.downloadExcel(list, response); - } -} \ No newline at end of file diff --git a/eladmin/eladmin-generator/src/main/resources/template/front/api.ftl b/eladmin/eladmin-generator/src/main/resources/template/front/api.ftl deleted file mode 100644 index 9587d0d..0000000 --- a/eladmin/eladmin-generator/src/main/resources/template/front/api.ftl +++ /dev/null @@ -1,27 +0,0 @@ -import request from '@/utils/request' - -export function add(data) { - return request({ - url: 'api/${changeClassName}', - method: 'post', - data - }) -} - -export function del(ids) { - return request({ - url: 'api/${changeClassName}/', - method: 'delete', - data: ids - }) -} - -export function edit(data) { - return request({ - url: 'api/${changeClassName}', - method: 'put', - data - }) -} - -export default { add, edit, del } diff --git a/eladmin/eladmin-generator/src/main/resources/template/front/index.ftl b/eladmin/eladmin-generator/src/main/resources/template/front/index.ftl deleted file mode 100644 index 4b9111a..0000000 --- a/eladmin/eladmin-generator/src/main/resources/template/front/index.ftl +++ /dev/null @@ -1,169 +0,0 @@ -<#--noinspection ALL--> - - - - - diff --git a/eladmin/totus-nline.sql b/eladmin/totus-nline.sql index 6ee6e2e..0e696dd 100644 --- a/eladmin/totus-nline.sql +++ b/eladmin/totus-nline.sql @@ -10,7 +10,7 @@ Target Server Type : MYSQL Target Server Version : 50740 File Encoding : 65001 -Date: 2025-06-07 13:39:25 +Date: 2025-07-11 15:01:18 */ SET FOREIGN_KEY_CHECKS=0; @@ -56,8 +56,8 @@ CREATE TABLE `bus_device` ( `protocol_version` varchar(32) DEFAULT NULL COMMENT '协议版本', `location` varchar(128) DEFAULT NULL COMMENT '放置位置', `status` int(1) DEFAULT '-1' COMMENT '设备状态(-1=默认/断开,0=空闲,1=任务中,2=准备中,3=铲件中)', - `print_status` int(1) DEFAULT '-1' COMMENT '打印状态(-1默认,0空闲,1归零中,2下降中,3曝光中,4抬升中,5正在执行暂停动作中,6已暂停,7正在执行停止动作中,8已停止,9打印完成,10文件检测中,11加液中,12铲件中)', - `error_status` int(1) DEFAULT '-1' COMMENT '异常状态(-1默认,0正常,1文件校验失败,2设备或加密错误,3打印准备过程出错,4打印出错,5加液失败,6铲件失败,7图片异物)', + `print_status` int(1) DEFAULT '-1' COMMENT '打印状态(-1默认/断开,0空闲,1归零中,2下降中,3曝光中,4抬升中,5正在执行暂停动作中,6已暂停,7正在执行停止动作中,8已停止,9打印完成,10文件检测中,11加液中,12铲件中)', + `error_status` int(1) DEFAULT '-1' COMMENT '异常状态(-1默认/断开,0正常,1文件校验失败,2设备或加密错误,3打印准备过程出错,4打印出错,5加液失败,6铲件失败,7图片异物)', `remark` varchar(255) DEFAULT NULL COMMENT '备注', `type` int(1) DEFAULT '1' COMMENT '类型:1打印机', `create_by` varchar(255) DEFAULT NULL COMMENT '创建者', @@ -71,7 +71,7 @@ CREATE TABLE `bus_device` ( -- ---------------------------- -- Records of bus_device -- ---------------------------- -INSERT INTO `bus_device` VALUES ('1', '12345678', '12345678', '3DPLUS', '康佳', '4KL200URH300.4K', '3', null, '一楼走廊', '-1', '-1', '-1', '已关闭连接', '1', null, null, '2025-05-20 20:06:36', '2025-06-04 19:51:43'); +INSERT INTO `bus_device` VALUES ('1', '12345678', '12345678', '3DPLUS', '康佳', '4KL200URH300.4K', '3', null, '一楼走廊', '-1', '-1', '-1', '已关闭连接', '1', null, null, '2025-05-20 20:06:36', '2025-07-08 20:41:34'); -- ---------------------------- -- Table structure for bus_device_command @@ -166,127 +166,6 @@ CREATE TABLE `bus_user_device_command` ( -- Records of bus_user_device_command -- ---------------------------- --- ---------------------------- --- Table structure for code_column --- ---------------------------- -DROP TABLE IF EXISTS `code_column`; -CREATE TABLE `code_column` ( - `column_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID', - `table_name` varchar(180) DEFAULT NULL COMMENT '表名', - `column_name` varchar(255) DEFAULT NULL COMMENT '数据库字段名称', - `column_type` varchar(255) DEFAULT NULL COMMENT '数据库字段类型', - `dict_name` varchar(255) DEFAULT NULL COMMENT '字典名称', - `extra` varchar(255) DEFAULT NULL COMMENT '字段额外的参数', - `form_show` bit(1) DEFAULT NULL COMMENT '是否表单显示', - `form_type` varchar(255) DEFAULT NULL COMMENT '表单类型', - `key_type` varchar(255) DEFAULT NULL COMMENT '数据库字段键类型', - `list_show` bit(1) DEFAULT NULL COMMENT '是否在列表显示', - `not_null` bit(1) DEFAULT NULL COMMENT '是否为空', - `query_type` varchar(255) DEFAULT NULL COMMENT '查询类型', - `remark` varchar(255) DEFAULT NULL COMMENT '描述', - PRIMARY KEY (`column_id`) USING BTREE, - KEY `idx_table_name` (`table_name`) -) ENGINE=InnoDB AUTO_INCREMENT=290 DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='代码生成字段信息存储'; - --- ---------------------------- --- Records of code_column --- ---------------------------- -INSERT INTO `code_column` VALUES ('223', 'tool_local_storage', 'storage_id', 'bigint', null, 'auto_increment', '', null, 'PRI', '', '\0', null, 'ID'); -INSERT INTO `code_column` VALUES ('224', 'tool_local_storage', 'real_name', 'varchar', null, '', '', null, '', '', '\0', null, '文件真实的名称'); -INSERT INTO `code_column` VALUES ('225', 'tool_local_storage', 'name', 'varchar', null, '', '', null, '', '', '\0', null, '文件名'); -INSERT INTO `code_column` VALUES ('226', 'tool_local_storage', 'suffix', 'varchar', null, '', '', null, '', '', '\0', null, '后缀'); -INSERT INTO `code_column` VALUES ('227', 'tool_local_storage', 'path', 'varchar', null, '', '', null, '', '', '\0', null, '路径'); -INSERT INTO `code_column` VALUES ('228', 'tool_local_storage', 'type', 'varchar', null, '', '', null, '', '', '\0', null, '类型'); -INSERT INTO `code_column` VALUES ('229', 'tool_local_storage', 'size', 'varchar', null, '', '', null, '', '', '\0', null, '大小'); -INSERT INTO `code_column` VALUES ('230', 'tool_local_storage', 'create_by', 'varchar', null, '', '', null, '', '', '\0', null, '创建者'); -INSERT INTO `code_column` VALUES ('231', 'tool_local_storage', 'update_by', 'varchar', null, '', '', null, '', '', '\0', null, '更新者'); -INSERT INTO `code_column` VALUES ('232', 'tool_local_storage', 'create_time', 'datetime', null, '', '', null, '', '', '\0', null, '创建日期'); -INSERT INTO `code_column` VALUES ('233', 'tool_local_storage', 'update_time', 'datetime', null, '', '', null, '', '', '\0', null, '更新时间'); -INSERT INTO `code_column` VALUES ('234', 'bus_user', 'id', 'bigint', null, 'auto_increment', '', null, 'PRI', '', '\0', null, '用户id'); -INSERT INTO `code_column` VALUES ('235', 'bus_user', 'real_name', 'varchar', null, '', '', null, '', '', '\0', null, '真实姓名'); -INSERT INTO `code_column` VALUES ('236', 'bus_user', 'nickname', 'varchar', null, '', '', null, '', '', '\0', null, '用户昵称'); -INSERT INTO `code_column` VALUES ('237', 'bus_user', 'avatar', 'varchar', null, '', '', null, '', '', '\0', null, '用户头像'); -INSERT INTO `code_column` VALUES ('238', 'bus_user', 'phone', 'varchar', null, '', '', null, '', '', '\0', null, '手机号码'); -INSERT INTO `code_column` VALUES ('239', 'bus_user', 'status', 'int', null, '', '', null, 'MUL', '', '\0', null, '1为正常,0为禁止'); -INSERT INTO `code_column` VALUES ('240', 'bus_user', 'token', 'varchar', null, '', '', null, 'UNI', '', '', null, 'openId'); -INSERT INTO `code_column` VALUES ('241', 'bus_user', 'sex', 'int', null, '', '', null, '', '', '\0', null, '性别,0未知,1男,2女'); -INSERT INTO `code_column` VALUES ('242', 'bus_user', 'create_by', 'varchar', null, '', '', null, '', '', '\0', null, '创建者'); -INSERT INTO `code_column` VALUES ('243', 'bus_user', 'update_by', 'varchar', null, '', '', null, '', '', '\0', null, '更新者'); -INSERT INTO `code_column` VALUES ('244', 'bus_user', 'create_time', 'datetime', null, '', '', null, '', '', '', null, '创建时间'); -INSERT INTO `code_column` VALUES ('245', 'bus_user', 'update_time', 'datetime', null, 'on update CURRENT_TIMESTAMP', '', null, '', '', '', null, '更新时间'); -INSERT INTO `code_column` VALUES ('246', 'bus_user_device', 'id', 'bigint', null, 'auto_increment', '', null, 'PRI', '', '\0', null, '绑定记录唯一标识'); -INSERT INTO `code_column` VALUES ('247', 'bus_user_device', 'user_id', 'bigint', null, '', '', null, 'MUL', '', '', null, '用户ID(外键)'); -INSERT INTO `code_column` VALUES ('248', 'bus_user_device', 'device_id', 'bigint', null, '', '', null, '', '', '', null, '设备ID(外键)'); -INSERT INTO `code_column` VALUES ('249', 'bus_user_device', 'is_primary', 'int', null, '', '', null, '', '', '', null, '是否为主用户(1=是,2=否)'); -INSERT INTO `code_column` VALUES ('250', 'bus_user_device', 'status', 'int', null, '', '', null, '', '', '', null, '绑定状态(1=有效,2=失效)'); -INSERT INTO `code_column` VALUES ('251', 'bus_user_device', 'create_by', 'varchar', null, '', '', null, '', '', '\0', null, '创建者'); -INSERT INTO `code_column` VALUES ('252', 'bus_user_device', 'update_by', 'varchar', null, '', '', null, '', '', '\0', null, '更新者'); -INSERT INTO `code_column` VALUES ('253', 'bus_user_device', 'create_time', 'datetime', null, '', '', null, '', '', '', null, '创建时间'); -INSERT INTO `code_column` VALUES ('254', 'bus_user_device', 'update_time', 'datetime', null, 'on update CURRENT_TIMESTAMP', '', null, '', '', '', null, '更新时间'); -INSERT INTO `code_column` VALUES ('255', 'bus_device', 'id', 'bigint', null, 'auto_increment', '', null, 'PRI', '', '\0', null, '设备唯一标识'); -INSERT INTO `code_column` VALUES ('256', 'bus_device', 'device_sn', 'varchar', null, '', '', null, 'UNI', '', '', null, '设备序列号(唯一)'); -INSERT INTO `code_column` VALUES ('257', 'bus_device', 'model', 'varchar', null, '', '', null, '', '', '', null, '型号'); -INSERT INTO `code_column` VALUES ('258', 'bus_device', 'brand', 'varchar', null, '', '', null, '', '', '\0', null, '品牌'); -INSERT INTO `code_column` VALUES ('259', 'bus_device', 'firmware_version', 'varchar', null, '', '', null, '', '', '\0', null, '固件版本'); -INSERT INTO `code_column` VALUES ('260', 'bus_device', 'location', 'varchar', null, '', '', null, '', '', '\0', null, '放置位置'); -INSERT INTO `code_column` VALUES ('261', 'bus_device', 'status', 'int', null, '', '', null, '', '', '', null, '设备状态(1=在线,2=离线,3=故障)'); -INSERT INTO `code_column` VALUES ('262', 'bus_device', 'online_time', 'datetime', null, '', '', null, '', '', '\0', null, '最近上线时间'); -INSERT INTO `code_column` VALUES ('263', 'bus_device', 'offline_time', 'datetime', null, '', '', null, '', '', '\0', null, '最近下线时间'); -INSERT INTO `code_column` VALUES ('264', 'bus_device', 'total_print_time', 'int', null, '', '', null, '', '', '\0', null, '累计时长(分钟)'); -INSERT INTO `code_column` VALUES ('265', 'bus_device', 'remark', 'varchar', null, '', '', null, '', '', '\0', null, '备注'); -INSERT INTO `code_column` VALUES ('266', 'bus_device', 'type', 'int', null, '', '', null, '', '', '\0', null, '类型:1打印机,2摄像头'); -INSERT INTO `code_column` VALUES ('267', 'bus_device', 'create_by', 'varchar', null, '', '', null, '', '', '\0', null, '创建者'); -INSERT INTO `code_column` VALUES ('268', 'bus_device', 'update_by', 'varchar', null, '', '', null, '', '', '\0', null, '更新者'); -INSERT INTO `code_column` VALUES ('269', 'bus_device', 'create_time', 'datetime', null, '', '', null, '', '', '', null, '创建时间'); -INSERT INTO `code_column` VALUES ('270', 'bus_device', 'update_time', 'datetime', null, 'on update CURRENT_TIMESTAMP', '', null, '', '', '', null, '更新时间'); -INSERT INTO `code_column` VALUES ('271', 'bus_device_command', 'id', 'bigint', null, 'auto_increment', '', null, 'PRI', '', '\0', null, '指令唯一标识'); -INSERT INTO `code_column` VALUES ('272', 'bus_device_command', 'device_id', 'bigint', null, '', '', null, 'UNI', '', '', null, '指令代码(唯一)'); -INSERT INTO `code_column` VALUES ('273', 'bus_device_command', 'command_name', 'varchar', null, '', '', null, '', '', '', null, '指令名称'); -INSERT INTO `code_column` VALUES ('274', 'bus_device_command', 'command_type', 'int', null, '', '', null, '', '', '', null, '指令类型(1=控制,2=查询,3=校准)'); -INSERT INTO `code_column` VALUES ('275', 'bus_device_command', 'description', 'varchar', null, '', '', null, '', '', '\0', null, '指令描述'); -INSERT INTO `code_column` VALUES ('276', 'bus_device_command', 'is_system', 'int', null, '', '', null, '', '', '', null, '是否为系统指令(1=是,2=否)'); -INSERT INTO `code_column` VALUES ('277', 'bus_device_command', 'command_params', 'text', null, '', '', null, '', '', '\0', null, '指令参数(JSON格式)'); -INSERT INTO `code_column` VALUES ('278', 'bus_device_command', 'create_by', 'varchar', null, '', '', null, '', '', '\0', null, '创建者'); -INSERT INTO `code_column` VALUES ('279', 'bus_device_command', 'update_by', 'varchar', null, '', '', null, '', '', '\0', null, '更新者'); -INSERT INTO `code_column` VALUES ('280', 'bus_device_command', 'create_time', 'datetime', null, '', '', null, '', '', '', null, '创建时间'); -INSERT INTO `code_column` VALUES ('281', 'bus_device_command', 'update_time', 'datetime', null, 'on update CURRENT_TIMESTAMP', '', null, '', '', '', null, '更新时间'); -INSERT INTO `code_column` VALUES ('282', 'bus_user_device_command', 'id', 'bigint', null, 'auto_increment', '', null, 'PRI', '', '\0', null, '操作记录唯一标识'); -INSERT INTO `code_column` VALUES ('283', 'bus_user_device_command', 'user_id', 'bigint', null, '', '', null, '', '', '', null, '用户ID(外键)'); -INSERT INTO `code_column` VALUES ('284', 'bus_user_device_command', 'device_id', 'bigint', null, '', '', null, '', '', '', null, '设备ID(外键)'); -INSERT INTO `code_column` VALUES ('285', 'bus_user_device_command', 'command_id', 'bigint', null, '', '', null, '', '', '', null, '指令ID(外键)'); -INSERT INTO `code_column` VALUES ('286', 'bus_user_device_command', 'create_by', 'varchar', null, '', '', null, '', '', '\0', null, '创建者'); -INSERT INTO `code_column` VALUES ('287', 'bus_user_device_command', 'update_by', 'varchar', null, '', '', null, '', '', '\0', null, '更新者'); -INSERT INTO `code_column` VALUES ('288', 'bus_user_device_command', 'create_time', 'datetime', null, '', '', null, '', '', '', null, '创建时间'); -INSERT INTO `code_column` VALUES ('289', 'bus_user_device_command', 'update_time', 'datetime', null, 'on update CURRENT_TIMESTAMP', '', null, '', '', '', null, '更新时间'); - --- ---------------------------- --- Table structure for code_config --- ---------------------------- -DROP TABLE IF EXISTS `code_config`; -CREATE TABLE `code_config` ( - `config_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID', - `table_name` varchar(255) DEFAULT NULL COMMENT '表名', - `author` varchar(255) DEFAULT NULL COMMENT '作者', - `cover` bit(1) DEFAULT NULL COMMENT '是否覆盖', - `module_name` varchar(255) DEFAULT NULL COMMENT '模块名称', - `pack` varchar(255) DEFAULT NULL COMMENT '至于哪个包下', - `path` varchar(255) DEFAULT NULL COMMENT '前端代码生成的路径', - `api_path` varchar(255) DEFAULT NULL COMMENT '前端Api文件路径', - `prefix` varchar(255) DEFAULT NULL COMMENT '表前缀', - `api_alias` varchar(255) DEFAULT NULL COMMENT '接口名称', - PRIMARY KEY (`config_id`) USING BTREE, - KEY `idx_table_name` (`table_name`(100)) -) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='代码生成器配置'; - --- ---------------------------- --- Records of code_config --- ---------------------------- -INSERT INTO `code_config` VALUES ('8', 'bus_user', 'tz', '\0', 'eladmin-system', 'me.zhengjie', 'bususer', 'bususer\\', '', 'busUser'); -INSERT INTO `code_config` VALUES ('9', 'bus_device', 'tz', '\0', 'eladmin-system', 'me.zhengjie', 'bus/busDevice', 'bus/busDevice\\', null, 'busDevice'); -INSERT INTO `code_config` VALUES ('10', 'bus_device_command', 'tz', '\0', 'eladmin-system', 'me.zhengjie', 'busDevice', 'busDevice\\', null, 'busCommand'); -INSERT INTO `code_config` VALUES ('11', 'bus_user_device', 'tz', '\0', 'eladmin-system', 'me.zhengjie', 'BusUserDevice', 'BusUserDevice\\', null, 'userDevice'); -INSERT INTO `code_config` VALUES ('12', 'bus_user_device_command', 'tz', '\0', 'eladmin-system', 'me.zhengjie', 'BusUserCommand', 'BusUserCommand\\', null, 'userCommand'); - -- ---------------------------- -- Table structure for sys_dept -- ---------------------------- @@ -414,7 +293,7 @@ CREATE TABLE `sys_log` ( PRIMARY KEY (`log_id`) USING BTREE, KEY `idx_create_time_index` (`create_time`), KEY `idx_log_type` (`log_type`) -) ENGINE=InnoDB AUTO_INCREMENT=3780 DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='系统日志'; +) ENGINE=InnoDB AUTO_INCREMENT=4345 DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='系统日志'; -- ---------------------------- -- Records of sys_log @@ -606,6 +485,571 @@ INSERT INTO `sys_log` VALUES ('3776', '修改用户设备指令', 'INFO', 'me.zh INSERT INTO `sys_log` VALUES ('3777', '修改用户设备指令', 'INFO', 'me.zhengjie.modules.system.rest.BusUserController.updUserCommands()', '{\"commands\":[{\"hasChildren\":false,\"id\":\"d1\",\"leaf\":true,\"subCount\":0}],\"id\":2}', '192.168.5.105', '11', 'admin', '内网IP', 'Chrome 101.0.4951.64', null, '2025-06-03 10:55:35'); INSERT INTO `sys_log` VALUES ('3778', '用户登录', 'ERROR', 'me.zhengjie.modules.security.rest.AuthController.login()', '{\"code\":\"35\",\"password\":\"******\",\"username\":\"admin\",\"uuid\":\"captcha_code:101b2ae7ae154a70a9d73a8b64c6ce96\"}', '192.168.5.109', '207', 'admin', '内网IP', 'Chrome 101.0.4951.64', 'me.zhengjie.exception.BadRequestException: 验证码不存在或已过期\r\n at me.zhengjie.modules.security.rest.AuthController.login(AuthController.java:89)\r\n at me.zhengjie.modules.security.rest.AuthController$$FastClassBySpringCGLIB$$7f997139.invoke()\r\n at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:792)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:64)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)\r\n at me.zhengjie.aspect.LogAspect.logAround(LogAspect.java:68)\r\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\r\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n at java.lang.reflect.Method.invoke(Method.java:498)\r\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\r\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\r\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:707)\r\n at me.zhengjie.modules.security.rest.AuthController$$EnhancerBySpringCGLIB$$1ccfe5d4.login()\r\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\r\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n at java.lang.reflect.Method.invoke(Method.java:498)\r\n at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)\r\n at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)\r\n at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)\r\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)\r\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)\r\n at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)\r\n at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)\r\n at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)\r\n at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)\r\n at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)\r\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:555)\r\n at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)\r\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:623)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:114)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:337)\r\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:115)\r\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:81)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:122)\r\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:116)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:126)\r\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:81)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:109)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:149)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at me.zhengjie.modules.security.security.TokenFilter.doFilter(TokenFilter.java:73)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103)\r\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)\r\n at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:112)\r\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:82)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221)\r\n at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186)\r\n at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354)\r\n at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)\r\n at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)\r\n at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481)\r\n at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)\r\n at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)\r\n at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)\r\n at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)\r\n at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390)\r\n at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)\r\n at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:928)\r\n at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1794)\r\n at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)\r\n at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)\r\n at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)\r\n at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)\r\n at java.lang.Thread.run(Thread.java:748)\r\n', '2025-06-06 15:05:00'); INSERT INTO `sys_log` VALUES ('3779', '用户登录', 'INFO', 'me.zhengjie.modules.security.rest.AuthController.login()', '{\"code\":\"8\",\"password\":\"******\",\"username\":\"admin\",\"uuid\":\"captcha_code:850aafa2e24845b9a3ea8982d8eb2ace\"}', '192.168.5.109', '226', 'admin', '内网IP', 'Chrome 101.0.4951.64', null, '2025-06-06 15:05:10'); +INSERT INTO `sys_log` VALUES ('3780', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"123\"}', '192.168.2.4', '298', null, '内网IP', 'Chrome 101.0.4951.64', null, '2025-06-07 16:46:07'); +INSERT INTO `sys_log` VALUES ('3781', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"123\"}', '192.168.2.4', '50', null, '内网IP', 'Chrome 101.0.4951.64', null, '2025-06-07 16:46:52'); +INSERT INTO `sys_log` VALUES ('3782', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0c1H4v0w3Vhz253Qz04w3rT7dF3H4v0u\"}', '192.168.2.4', '18', null, '内网IP', 'Chrome 137', null, '2025-06-07 16:46:53'); +INSERT INTO `sys_log` VALUES ('3783', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0c1H4v0w3Vhz2530z04w3rT7dF3H4v0u\"}', '192.168.2.4', '6', null, '内网IP', 'Chrome 101.0.4951.64', null, '2025-06-07 16:48:17'); +INSERT INTO `sys_log` VALUES ('3784', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0c1VUv0w3iLy253ZAM3w3rSbGg4VUv05\"}', '192.168.2.4', '20', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-07 16:58:34'); +INSERT INTO `sys_log` VALUES ('3785', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0d1xHU1w3tXU253BNw2w3X1ntW1xHU1o\"}', '192.168.2.4', '5', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-07 17:23:49'); +INSERT INTO `sys_log` VALUES ('3786', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0d1pux0w369K353P180w3vOLvx1pux0X\"}', '192.168.2.4', '16', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-07 17:24:21'); +INSERT INTO `sys_log` VALUES ('3787', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0d1VA3000HESnU1U5v100RtCeP0VA30O\"}', '192.168.2.4', '20', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-07 17:25:58'); +INSERT INTO `sys_log` VALUES ('3788', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0d1CCg0w3lat353uNE1w3w0Dpe4CCg0j\"}', '192.168.2.4', '9', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-07 17:27:19'); +INSERT INTO `sys_log` VALUES ('3789', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0c1JVU1w3JYU253Q5C1w3pCoQ94JVU1X\"}', '192.168.2.4', '15', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-07 17:27:34'); +INSERT INTO `sys_log` VALUES ('3790', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0d1YN51w3jR5253Pjw0w3WZQ773YN512\"}', '192.168.2.4', '18', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-07 17:27:55'); +INSERT INTO `sys_log` VALUES ('3791', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0f12iqll2Hl1Jf4qSFkl2R7UrF12iqlP\"}', '192.168.169.171', '285', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:41:39'); +INSERT INTO `sys_log` VALUES ('3792', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '109', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:42:54'); +INSERT INTO `sys_log` VALUES ('3793', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:45:35'); +INSERT INTO `sys_log` VALUES ('3794', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '30', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:45:52'); +INSERT INTO `sys_log` VALUES ('3795', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '27', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:47:57'); +INSERT INTO `sys_log` VALUES ('3796', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '20', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:48:48'); +INSERT INTO `sys_log` VALUES ('3797', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:51:12'); +INSERT INTO `sys_log` VALUES ('3798', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '27', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:52:43'); +INSERT INTO `sys_log` VALUES ('3799', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '16', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:53:12'); +INSERT INTO `sys_log` VALUES ('3800', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '16', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:54:06'); +INSERT INTO `sys_log` VALUES ('3801', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0b1W4rll2z11Jf4RS7ll2H4Xp93W4rlO\"}', '192.168.169.171', '7', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:54:34'); +INSERT INTO `sys_log` VALUES ('3802', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '16', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:55:15'); +INSERT INTO `sys_log` VALUES ('3803', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0e1KSoGa1xamJJ0yjvIa1DMhpe4KSoGF\"}', '192.168.169.171', '18', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:55:27'); +INSERT INTO `sys_log` VALUES ('3804', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '24', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:56:42'); +INSERT INTO `sys_log` VALUES ('3805', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0c1iJQ1w3DVA253IJb0w3FcCrq3iJQ1G\"}', '192.168.169.171', '15', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:57:09'); +INSERT INTO `sys_log` VALUES ('3806', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:57:09'); +INSERT INTO `sys_log` VALUES ('3807', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:57:11'); +INSERT INTO `sys_log` VALUES ('3808', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '22', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:57:11'); +INSERT INTO `sys_log` VALUES ('3809', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:57:12'); +INSERT INTO `sys_log` VALUES ('3810', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:57:13'); +INSERT INTO `sys_log` VALUES ('3811', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:57:15'); +INSERT INTO `sys_log` VALUES ('3812', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:59:19'); +INSERT INTO `sys_log` VALUES ('3813', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:59:19'); +INSERT INTO `sys_log` VALUES ('3814', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0e1fGg000KTPnU1mMN100gPudZ2fGg08\"}', '192.168.169.171', '8', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:59:27'); +INSERT INTO `sys_log` VALUES ('3815', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:59:28'); +INSERT INTO `sys_log` VALUES ('3816', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '17', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:59:31'); +INSERT INTO `sys_log` VALUES ('3817', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:59:36'); +INSERT INTO `sys_log` VALUES ('3818', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '13', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:59:36'); +INSERT INTO `sys_log` VALUES ('3819', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:59:42'); +INSERT INTO `sys_log` VALUES ('3820', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '27', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:59:43'); +INSERT INTO `sys_log` VALUES ('3821', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 10:59:44'); +INSERT INTO `sys_log` VALUES ('3822', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0a1tFOml2dubIf4uYYkl2SIZsH3tFOmi\"}', '192.168.169.171', '16', null, '内网IP', 'MicroMessenger 8.0.58.2841', null, '2025-06-08 11:00:14'); +INSERT INTO `sys_log` VALUES ('3823', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.58.2841', null, '2025-06-08 11:00:15'); +INSERT INTO `sys_log` VALUES ('3824', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.58.2841', null, '2025-06-08 11:00:15'); +INSERT INTO `sys_log` VALUES ('3825', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.58.2841', null, '2025-06-08 11:00:17'); +INSERT INTO `sys_log` VALUES ('3826', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.58.2841', null, '2025-06-08 11:00:26'); +INSERT INTO `sys_log` VALUES ('3827', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.58.2841', null, '2025-06-08 11:00:26'); +INSERT INTO `sys_log` VALUES ('3828', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '18', '123456', '内网IP', 'MicroMessenger 8.0.58.2841', null, '2025-06-08 11:00:27'); +INSERT INTO `sys_log` VALUES ('3829', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.58.2841', null, '2025-06-08 11:00:28'); +INSERT INTO `sys_log` VALUES ('3830', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:01:42'); +INSERT INTO `sys_log` VALUES ('3831', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '29', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:01:42'); +INSERT INTO `sys_log` VALUES ('3832', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:01:51'); +INSERT INTO `sys_log` VALUES ('3833', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:01:51'); +INSERT INTO `sys_log` VALUES ('3834', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:01:52'); +INSERT INTO `sys_log` VALUES ('3835', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:01:53'); +INSERT INTO `sys_log` VALUES ('3836', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:01:57'); +INSERT INTO `sys_log` VALUES ('3837', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:03:32'); +INSERT INTO `sys_log` VALUES ('3838', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:03:32'); +INSERT INTO `sys_log` VALUES ('3839', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '22', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:03:41'); +INSERT INTO `sys_log` VALUES ('3840', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:03:41'); +INSERT INTO `sys_log` VALUES ('3841', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '16', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:04:11'); +INSERT INTO `sys_log` VALUES ('3842', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:04:11'); +INSERT INTO `sys_log` VALUES ('3843', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:04:20'); +INSERT INTO `sys_log` VALUES ('3844', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '13', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:04:20'); +INSERT INTO `sys_log` VALUES ('3845', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '13', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:11:50'); +INSERT INTO `sys_log` VALUES ('3846', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:11:50'); +INSERT INTO `sys_log` VALUES ('3847', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:12:03'); +INSERT INTO `sys_log` VALUES ('3848', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:12:03'); +INSERT INTO `sys_log` VALUES ('3849', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '16', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:12:53'); +INSERT INTO `sys_log` VALUES ('3850', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:12:53'); +INSERT INTO `sys_log` VALUES ('3851', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:12:58'); +INSERT INTO `sys_log` VALUES ('3852', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '28', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:12:59'); +INSERT INTO `sys_log` VALUES ('3853', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '17', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:16:09'); +INSERT INTO `sys_log` VALUES ('3854', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:16:09'); +INSERT INTO `sys_log` VALUES ('3855', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:16:18'); +INSERT INTO `sys_log` VALUES ('3856', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '16', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:16:18'); +INSERT INTO `sys_log` VALUES ('3857', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:16:19'); +INSERT INTO `sys_log` VALUES ('3858', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '13', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:16:30'); +INSERT INTO `sys_log` VALUES ('3859', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '26', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:16:40'); +INSERT INTO `sys_log` VALUES ('3860', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '16', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:16:45'); +INSERT INTO `sys_log` VALUES ('3861', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:16:51'); +INSERT INTO `sys_log` VALUES ('3862', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:18:10'); +INSERT INTO `sys_log` VALUES ('3863', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:18:10'); +INSERT INTO `sys_log` VALUES ('3864', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:18:12'); +INSERT INTO `sys_log` VALUES ('3865', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:18:12'); +INSERT INTO `sys_log` VALUES ('3866', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:18:14'); +INSERT INTO `sys_log` VALUES ('3867', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:18:18'); +INSERT INTO `sys_log` VALUES ('3868', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:18:20'); +INSERT INTO `sys_log` VALUES ('3869', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:18:22'); +INSERT INTO `sys_log` VALUES ('3870', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:18:46'); +INSERT INTO `sys_log` VALUES ('3871', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:18:54'); +INSERT INTO `sys_log` VALUES ('3872', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:18:54'); +INSERT INTO `sys_log` VALUES ('3873', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:18:55'); +INSERT INTO `sys_log` VALUES ('3874', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '29', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:18:55'); +INSERT INTO `sys_log` VALUES ('3875', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:18:56'); +INSERT INTO `sys_log` VALUES ('3876', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:18:57'); +INSERT INTO `sys_log` VALUES ('3877', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:18:59'); +INSERT INTO `sys_log` VALUES ('3878', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:19:00'); +INSERT INTO `sys_log` VALUES ('3879', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '18', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:19:02'); +INSERT INTO `sys_log` VALUES ('3880', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:19:06'); +INSERT INTO `sys_log` VALUES ('3881', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:19:10'); +INSERT INTO `sys_log` VALUES ('3882', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '17', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:19:59'); +INSERT INTO `sys_log` VALUES ('3883', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:20:01'); +INSERT INTO `sys_log` VALUES ('3884', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:20:02'); +INSERT INTO `sys_log` VALUES ('3885', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:20:02'); +INSERT INTO `sys_log` VALUES ('3886', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:20:23'); +INSERT INTO `sys_log` VALUES ('3887', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:20:23'); +INSERT INTO `sys_log` VALUES ('3888', '用户登录', 'INFO', 'me.zhengjie.modules.security.rest.AuthController.login()', '{\"code\":\"10\",\"password\":\"******\",\"username\":\"admin\",\"uuid\":\"captcha_code:6ab205b8bcb4422abd3c141e267671bb\"}', '192.168.169.171', '122', 'admin', '内网IP', 'Chrome 101.0.4951.64', null, '2025-06-08 11:21:07'); +INSERT INTO `sys_log` VALUES ('3889', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:25:14'); +INSERT INTO `sys_log` VALUES ('3890', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:25:14'); +INSERT INTO `sys_log` VALUES ('3891', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '16', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:25:37'); +INSERT INTO `sys_log` VALUES ('3892', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:25:38'); +INSERT INTO `sys_log` VALUES ('3893', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '25', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:32:34'); +INSERT INTO `sys_log` VALUES ('3894', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '29', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:32:34'); +INSERT INTO `sys_log` VALUES ('3895', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:32:36'); +INSERT INTO `sys_log` VALUES ('3896', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '26', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:32:37'); +INSERT INTO `sys_log` VALUES ('3897', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '32', '123456', '内网IP', 'MSEdge 124', null, '2025-06-08 11:36:42'); +INSERT INTO `sys_log` VALUES ('3898', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '13', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:39:13'); +INSERT INTO `sys_log` VALUES ('3899', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:39:13'); +INSERT INTO `sys_log` VALUES ('3900', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:39:14'); +INSERT INTO `sys_log` VALUES ('3901', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '8', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:39:14'); +INSERT INTO `sys_log` VALUES ('3902', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '6', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:39:19'); +INSERT INTO `sys_log` VALUES ('3903', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '5', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:42:18'); +INSERT INTO `sys_log` VALUES ('3904', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:45:46'); +INSERT INTO `sys_log` VALUES ('3905', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:46:16'); +INSERT INTO `sys_log` VALUES ('3906', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:46:16'); +INSERT INTO `sys_log` VALUES ('3907', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:46:16'); +INSERT INTO `sys_log` VALUES ('3908', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:46:16'); +INSERT INTO `sys_log` VALUES ('3909', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '7', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:46:17'); +INSERT INTO `sys_log` VALUES ('3910', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '27', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:47:32'); +INSERT INTO `sys_log` VALUES ('3911', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '16', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:47:33'); +INSERT INTO `sys_log` VALUES ('3912', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:47:34'); +INSERT INTO `sys_log` VALUES ('3913', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:47:34'); +INSERT INTO `sys_log` VALUES ('3914', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:47:40'); +INSERT INTO `sys_log` VALUES ('3915', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:47:42'); +INSERT INTO `sys_log` VALUES ('3916', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:47:42'); +INSERT INTO `sys_log` VALUES ('3917', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:50:42'); +INSERT INTO `sys_log` VALUES ('3918', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:50:42'); +INSERT INTO `sys_log` VALUES ('3919', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '16', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:50:44'); +INSERT INTO `sys_log` VALUES ('3920', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:50:44'); +INSERT INTO `sys_log` VALUES ('3921', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:50:45'); +INSERT INTO `sys_log` VALUES ('3922', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:50:45'); +INSERT INTO `sys_log` VALUES ('3923', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '5', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:50:46'); +INSERT INTO `sys_log` VALUES ('3924', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:51:08'); +INSERT INTO `sys_log` VALUES ('3925', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:51:08'); +INSERT INTO `sys_log` VALUES ('3926', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:51:09'); +INSERT INTO `sys_log` VALUES ('3927', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:51:09'); +INSERT INTO `sys_log` VALUES ('3928', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:51:11'); +INSERT INTO `sys_log` VALUES ('3929', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:51:22'); +INSERT INTO `sys_log` VALUES ('3930', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:51:22'); +INSERT INTO `sys_log` VALUES ('3931', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:51:23'); +INSERT INTO `sys_log` VALUES ('3932', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:51:23'); +INSERT INTO `sys_log` VALUES ('3933', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:51:34'); +INSERT INTO `sys_log` VALUES ('3934', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:51:42'); +INSERT INTO `sys_log` VALUES ('3935', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:51:43'); +INSERT INTO `sys_log` VALUES ('3936', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:51:43'); +INSERT INTO `sys_log` VALUES ('3937', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:53:13'); +INSERT INTO `sys_log` VALUES ('3938', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:55:01'); +INSERT INTO `sys_log` VALUES ('3939', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:55:12'); +INSERT INTO `sys_log` VALUES ('3940', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:55:12'); +INSERT INTO `sys_log` VALUES ('3941', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:59:09'); +INSERT INTO `sys_log` VALUES ('3942', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:59:09'); +INSERT INTO `sys_log` VALUES ('3943', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:59:10'); +INSERT INTO `sys_log` VALUES ('3944', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:59:10'); +INSERT INTO `sys_log` VALUES ('3945', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '19', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 11:59:11'); +INSERT INTO `sys_log` VALUES ('3946', '绑定设备', 'ERROR', 'me.zhengjie.modules.front.rest.BusDeviceController.bindingDevice()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', 'me.zhengjie.exception.BadRequestException: 您已绑定过该设备,请勿重复绑定\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl.bindingDevice(BusDeviceServiceImpl.java:175)\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl$$FastClassBySpringCGLIB$$1be5d75e.invoke()\r\n at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)\r\n at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386)\r\n at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85)\r\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:703)\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl$$EnhancerBySpringCGLIB$$dd0caa28.bindingDevice()\r\n at me.zhengjie.modules.front.rest.BusDeviceController.bindingDevice(BusDeviceController.java:41)\r\n at me.zhengjie.modules.front.rest.BusDeviceController$$FastClassBySpringCGLIB$$b100d1e6.invoke()\r\n at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:792)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:64)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)\r\n at me.zhengjie.aspect.LogAspect.logAround(LogAspect.java:68)\r\n at sun.reflect.GeneratedMethodAccessor220.invoke(Unknown Source)\r\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n at java.lang.reflect.Method.invoke(Method.java:498)\r\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\r\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\r\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:707)\r\n at me.zhengjie.modules.front.rest.BusDeviceController$$EnhancerBySpringCGLIB$$a8181c64.bindingDevice()\r\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\r\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n at java.lang.reflect.Method.invoke(Method.java:498)\r\n at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)\r\n at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)\r\n at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)\r\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)\r\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)\r\n at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)\r\n at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)\r\n at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)\r\n at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)\r\n at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)\r\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:529)\r\n at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)\r\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:623)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:114)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:337)\r\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:115)\r\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:81)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:122)\r\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:116)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:126)\r\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:81)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:109)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:149)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at me.zhengjie.modules.security.security.TokenFilter.doFilter(TokenFilter.java:73)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103)\r\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)\r\n at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:112)\r\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:82)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221)\r\n at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186)\r\n at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354)\r\n at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)\r\n at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)\r\n at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481)\r\n at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)\r\n at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)\r\n at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)\r\n at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)\r\n at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390)\r\n at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)\r\n at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:928)\r\n at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1794)\r\n at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)\r\n at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)\r\n at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)\r\n at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)\r\n at java.lang.Thread.run(Thread.java:748)\r\n', '2025-06-08 11:59:17'); +INSERT INTO `sys_log` VALUES ('3947', '绑定设备', 'ERROR', 'me.zhengjie.modules.front.rest.BusDeviceController.bindingDevice()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '8', '123456', '内网IP', 'MicroMessenger 8.0.5', 'me.zhengjie.exception.BadRequestException: 您已绑定过该设备,请勿重复绑定\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl.bindingDevice(BusDeviceServiceImpl.java:175)\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl$$FastClassBySpringCGLIB$$1be5d75e.invoke()\r\n at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)\r\n at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386)\r\n at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85)\r\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:703)\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl$$EnhancerBySpringCGLIB$$dd0caa28.bindingDevice()\r\n at me.zhengjie.modules.front.rest.BusDeviceController.bindingDevice(BusDeviceController.java:41)\r\n at me.zhengjie.modules.front.rest.BusDeviceController$$FastClassBySpringCGLIB$$b100d1e6.invoke()\r\n at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:792)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:64)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)\r\n at me.zhengjie.aspect.LogAspect.logAround(LogAspect.java:68)\r\n at sun.reflect.GeneratedMethodAccessor220.invoke(Unknown Source)\r\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n at java.lang.reflect.Method.invoke(Method.java:498)\r\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\r\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\r\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:707)\r\n at me.zhengjie.modules.front.rest.BusDeviceController$$EnhancerBySpringCGLIB$$a8181c64.bindingDevice()\r\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\r\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n at java.lang.reflect.Method.invoke(Method.java:498)\r\n at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)\r\n at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)\r\n at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)\r\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)\r\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)\r\n at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)\r\n at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)\r\n at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)\r\n at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)\r\n at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)\r\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:529)\r\n at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)\r\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:623)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:114)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:337)\r\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:115)\r\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:81)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:122)\r\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:116)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:126)\r\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:81)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:109)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:149)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at me.zhengjie.modules.security.security.TokenFilter.doFilter(TokenFilter.java:73)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103)\r\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)\r\n at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:112)\r\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:82)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221)\r\n at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186)\r\n at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354)\r\n at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)\r\n at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)\r\n at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481)\r\n at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)\r\n at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)\r\n at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)\r\n at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)\r\n at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390)\r\n at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)\r\n at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:928)\r\n at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1794)\r\n at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)\r\n at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)\r\n at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)\r\n at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)\r\n at java.lang.Thread.run(Thread.java:748)\r\n', '2025-06-08 12:00:36'); +INSERT INTO `sys_log` VALUES ('3948', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 12:00:52'); +INSERT INTO `sys_log` VALUES ('3949', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '21', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 12:00:52'); +INSERT INTO `sys_log` VALUES ('3950', '绑定设备', 'ERROR', 'me.zhengjie.modules.front.rest.BusDeviceController.bindingDevice()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '6', '123456', '内网IP', 'MicroMessenger 8.0.5', 'me.zhengjie.exception.BadRequestException: 您已绑定过该设备,请勿重复绑定\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl.bindingDevice(BusDeviceServiceImpl.java:175)\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl$$FastClassBySpringCGLIB$$1be5d75e.invoke()\r\n at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)\r\n at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386)\r\n at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85)\r\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:703)\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl$$EnhancerBySpringCGLIB$$dd0caa28.bindingDevice()\r\n at me.zhengjie.modules.front.rest.BusDeviceController.bindingDevice(BusDeviceController.java:41)\r\n at me.zhengjie.modules.front.rest.BusDeviceController$$FastClassBySpringCGLIB$$b100d1e6.invoke()\r\n at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:792)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:64)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)\r\n at me.zhengjie.aspect.LogAspect.logAround(LogAspect.java:68)\r\n at sun.reflect.GeneratedMethodAccessor220.invoke(Unknown Source)\r\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n at java.lang.reflect.Method.invoke(Method.java:498)\r\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\r\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\r\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:707)\r\n at me.zhengjie.modules.front.rest.BusDeviceController$$EnhancerBySpringCGLIB$$a8181c64.bindingDevice()\r\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\r\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n at java.lang.reflect.Method.invoke(Method.java:498)\r\n at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)\r\n at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)\r\n at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)\r\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)\r\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)\r\n at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)\r\n at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)\r\n at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)\r\n at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)\r\n at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)\r\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:529)\r\n at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)\r\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:623)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:114)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:337)\r\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:115)\r\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:81)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:122)\r\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:116)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:126)\r\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:81)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:109)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:149)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at me.zhengjie.modules.security.security.TokenFilter.doFilter(TokenFilter.java:73)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103)\r\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)\r\n at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:112)\r\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:82)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221)\r\n at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186)\r\n at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354)\r\n at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)\r\n at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)\r\n at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481)\r\n at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)\r\n at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)\r\n at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)\r\n at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)\r\n at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390)\r\n at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)\r\n at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:928)\r\n at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1794)\r\n at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)\r\n at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)\r\n at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)\r\n at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)\r\n at java.lang.Thread.run(Thread.java:748)\r\n', '2025-06-08 12:00:57'); +INSERT INTO `sys_log` VALUES ('3951', '绑定设备', 'ERROR', 'me.zhengjie.modules.front.rest.BusDeviceController.bindingDevice()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '7', '123456', '内网IP', 'MicroMessenger 8.0.5', 'me.zhengjie.exception.BadRequestException: 您已绑定过该设备,请勿重复绑定\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl.bindingDevice(BusDeviceServiceImpl.java:175)\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl$$FastClassBySpringCGLIB$$1be5d75e.invoke()\r\n at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)\r\n at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386)\r\n at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85)\r\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:703)\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl$$EnhancerBySpringCGLIB$$dd0caa28.bindingDevice()\r\n at me.zhengjie.modules.front.rest.BusDeviceController.bindingDevice(BusDeviceController.java:41)\r\n at me.zhengjie.modules.front.rest.BusDeviceController$$FastClassBySpringCGLIB$$b100d1e6.invoke()\r\n at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:792)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:64)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)\r\n at me.zhengjie.aspect.LogAspect.logAround(LogAspect.java:68)\r\n at sun.reflect.GeneratedMethodAccessor220.invoke(Unknown Source)\r\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n at java.lang.reflect.Method.invoke(Method.java:498)\r\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\r\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\r\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:707)\r\n at me.zhengjie.modules.front.rest.BusDeviceController$$EnhancerBySpringCGLIB$$a8181c64.bindingDevice()\r\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\r\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n at java.lang.reflect.Method.invoke(Method.java:498)\r\n at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)\r\n at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)\r\n at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)\r\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)\r\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)\r\n at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)\r\n at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)\r\n at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)\r\n at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)\r\n at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)\r\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:529)\r\n at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)\r\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:623)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:114)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:337)\r\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:115)\r\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:81)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:122)\r\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:116)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:126)\r\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:81)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:109)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:149)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at me.zhengjie.modules.security.security.TokenFilter.doFilter(TokenFilter.java:73)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103)\r\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)\r\n at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:112)\r\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:82)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221)\r\n at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186)\r\n at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354)\r\n at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)\r\n at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)\r\n at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481)\r\n at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)\r\n at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)\r\n at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)\r\n at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)\r\n at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390)\r\n at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)\r\n at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:928)\r\n at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1794)\r\n at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)\r\n at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)\r\n at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)\r\n at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)\r\n at java.lang.Thread.run(Thread.java:748)\r\n', '2025-06-08 12:01:23'); +INSERT INTO `sys_log` VALUES ('3952', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 12:02:06'); +INSERT INTO `sys_log` VALUES ('3953', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 12:02:06'); +INSERT INTO `sys_log` VALUES ('3954', '绑定设备', 'ERROR', 'me.zhengjie.modules.front.rest.BusDeviceController.bindingDevice()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '8', '123456', '内网IP', 'MicroMessenger 8.0.5', 'me.zhengjie.exception.BadRequestException: 您已绑定过该设备,请勿重复绑定\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl.bindingDevice(BusDeviceServiceImpl.java:175)\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl$$FastClassBySpringCGLIB$$1be5d75e.invoke()\r\n at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)\r\n at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386)\r\n at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85)\r\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:703)\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl$$EnhancerBySpringCGLIB$$dd0caa28.bindingDevice()\r\n at me.zhengjie.modules.front.rest.BusDeviceController.bindingDevice(BusDeviceController.java:41)\r\n at me.zhengjie.modules.front.rest.BusDeviceController$$FastClassBySpringCGLIB$$b100d1e6.invoke()\r\n at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:792)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:64)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)\r\n at me.zhengjie.aspect.LogAspect.logAround(LogAspect.java:68)\r\n at sun.reflect.GeneratedMethodAccessor220.invoke(Unknown Source)\r\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n at java.lang.reflect.Method.invoke(Method.java:498)\r\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\r\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\r\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:707)\r\n at me.zhengjie.modules.front.rest.BusDeviceController$$EnhancerBySpringCGLIB$$a8181c64.bindingDevice()\r\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\r\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n at java.lang.reflect.Method.invoke(Method.java:498)\r\n at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)\r\n at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)\r\n at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)\r\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)\r\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)\r\n at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)\r\n at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)\r\n at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)\r\n at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)\r\n at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)\r\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:529)\r\n at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)\r\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:623)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:114)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:337)\r\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:115)\r\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:81)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:122)\r\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:116)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:126)\r\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:81)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:109)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:149)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at me.zhengjie.modules.security.security.TokenFilter.doFilter(TokenFilter.java:73)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103)\r\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)\r\n at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:112)\r\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:82)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221)\r\n at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186)\r\n at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354)\r\n at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)\r\n at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)\r\n at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481)\r\n at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)\r\n at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)\r\n at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)\r\n at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)\r\n at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390)\r\n at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)\r\n at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:928)\r\n at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1794)\r\n at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)\r\n at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)\r\n at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)\r\n at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)\r\n at java.lang.Thread.run(Thread.java:748)\r\n', '2025-06-08 12:02:10'); +INSERT INTO `sys_log` VALUES ('3955', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 12:02:57'); +INSERT INTO `sys_log` VALUES ('3956', '绑定设备', 'ERROR', 'me.zhengjie.modules.front.rest.BusDeviceController.bindingDevice()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '7', '123456', '内网IP', 'MicroMessenger 8.0.5', 'me.zhengjie.exception.BadRequestException: 您已绑定过该设备,请勿重复绑定\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl.bindingDevice(BusDeviceServiceImpl.java:175)\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl$$FastClassBySpringCGLIB$$1be5d75e.invoke()\r\n at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)\r\n at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386)\r\n at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85)\r\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:703)\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl$$EnhancerBySpringCGLIB$$dd0caa28.bindingDevice()\r\n at me.zhengjie.modules.front.rest.BusDeviceController.bindingDevice(BusDeviceController.java:41)\r\n at me.zhengjie.modules.front.rest.BusDeviceController$$FastClassBySpringCGLIB$$b100d1e6.invoke()\r\n at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:792)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:64)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)\r\n at me.zhengjie.aspect.LogAspect.logAround(LogAspect.java:68)\r\n at sun.reflect.GeneratedMethodAccessor220.invoke(Unknown Source)\r\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n at java.lang.reflect.Method.invoke(Method.java:498)\r\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\r\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\r\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:707)\r\n at me.zhengjie.modules.front.rest.BusDeviceController$$EnhancerBySpringCGLIB$$a8181c64.bindingDevice()\r\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\r\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n at java.lang.reflect.Method.invoke(Method.java:498)\r\n at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)\r\n at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)\r\n at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)\r\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)\r\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)\r\n at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)\r\n at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)\r\n at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)\r\n at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)\r\n at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)\r\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:529)\r\n at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)\r\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:623)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:114)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:337)\r\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:115)\r\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:81)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:122)\r\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:116)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:126)\r\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:81)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:109)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:149)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at me.zhengjie.modules.security.security.TokenFilter.doFilter(TokenFilter.java:73)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103)\r\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)\r\n at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:112)\r\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:82)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221)\r\n at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186)\r\n at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354)\r\n at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)\r\n at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)\r\n at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481)\r\n at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)\r\n at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)\r\n at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)\r\n at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)\r\n at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390)\r\n at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)\r\n at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:928)\r\n at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1794)\r\n at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)\r\n at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)\r\n at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)\r\n at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)\r\n at java.lang.Thread.run(Thread.java:748)\r\n', '2025-06-08 12:03:01'); +INSERT INTO `sys_log` VALUES ('3957', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '27', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 12:03:09'); +INSERT INTO `sys_log` VALUES ('3958', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 12:03:09'); +INSERT INTO `sys_log` VALUES ('3959', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 12:03:12'); +INSERT INTO `sys_log` VALUES ('3960', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 12:03:12'); +INSERT INTO `sys_log` VALUES ('3961', '绑定设备', 'ERROR', 'me.zhengjie.modules.front.rest.BusDeviceController.bindingDevice()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '7', '123456', '内网IP', 'MicroMessenger 8.0.5', 'me.zhengjie.exception.BadRequestException: 您已绑定过该设备,请勿重复绑定\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl.bindingDevice(BusDeviceServiceImpl.java:175)\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl$$FastClassBySpringCGLIB$$1be5d75e.invoke()\r\n at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)\r\n at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386)\r\n at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85)\r\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:703)\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl$$EnhancerBySpringCGLIB$$dd0caa28.bindingDevice()\r\n at me.zhengjie.modules.front.rest.BusDeviceController.bindingDevice(BusDeviceController.java:41)\r\n at me.zhengjie.modules.front.rest.BusDeviceController$$FastClassBySpringCGLIB$$b100d1e6.invoke()\r\n at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:792)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:64)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)\r\n at me.zhengjie.aspect.LogAspect.logAround(LogAspect.java:68)\r\n at sun.reflect.GeneratedMethodAccessor220.invoke(Unknown Source)\r\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n at java.lang.reflect.Method.invoke(Method.java:498)\r\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\r\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\r\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:707)\r\n at me.zhengjie.modules.front.rest.BusDeviceController$$EnhancerBySpringCGLIB$$a8181c64.bindingDevice()\r\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\r\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n at java.lang.reflect.Method.invoke(Method.java:498)\r\n at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)\r\n at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)\r\n at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)\r\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)\r\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)\r\n at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)\r\n at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)\r\n at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)\r\n at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)\r\n at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)\r\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:529)\r\n at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)\r\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:623)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:114)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:337)\r\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:115)\r\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:81)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:122)\r\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:116)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:126)\r\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:81)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:109)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:149)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at me.zhengjie.modules.security.security.TokenFilter.doFilter(TokenFilter.java:73)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103)\r\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)\r\n at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:112)\r\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:82)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221)\r\n at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186)\r\n at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354)\r\n at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)\r\n at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)\r\n at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481)\r\n at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)\r\n at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)\r\n at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)\r\n at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)\r\n at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390)\r\n at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)\r\n at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:928)\r\n at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1794)\r\n at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)\r\n at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)\r\n at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)\r\n at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)\r\n at java.lang.Thread.run(Thread.java:748)\r\n', '2025-06-08 12:03:15'); +INSERT INTO `sys_log` VALUES ('3962', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.58.2841', null, '2025-06-08 12:03:32'); +INSERT INTO `sys_log` VALUES ('3963', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.58.2841', null, '2025-06-08 12:03:32'); +INSERT INTO `sys_log` VALUES ('3964', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '39', '123456', '内网IP', 'MicroMessenger 8.0.58.2841', null, '2025-06-08 12:03:33'); +INSERT INTO `sys_log` VALUES ('3965', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '26', '123456', '内网IP', 'MicroMessenger 8.0.58.2841', null, '2025-06-08 12:03:33'); +INSERT INTO `sys_log` VALUES ('3966', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '13', '123456', '内网IP', 'MicroMessenger 8.0.58.2841', null, '2025-06-08 12:03:34'); +INSERT INTO `sys_log` VALUES ('3967', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '16', '123456', '内网IP', 'MicroMessenger 8.0.58.2841', null, '2025-06-08 12:03:35'); +INSERT INTO `sys_log` VALUES ('3968', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '16', '123456', '内网IP', 'MicroMessenger 8.0.58.2841', null, '2025-06-08 12:03:35'); +INSERT INTO `sys_log` VALUES ('3969', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '2', '123456', '内网IP', 'MicroMessenger 8.0.58.2841', null, '2025-06-08 12:03:35'); +INSERT INTO `sys_log` VALUES ('3970', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '13', '123456', '内网IP', 'MicroMessenger 8.0.58.2841', null, '2025-06-08 12:03:37'); +INSERT INTO `sys_log` VALUES ('3971', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '13', '123456', '内网IP', 'MicroMessenger 8.0.58.2841', null, '2025-06-08 12:03:37'); +INSERT INTO `sys_log` VALUES ('3972', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.58.2841', null, '2025-06-08 12:03:38'); +INSERT INTO `sys_log` VALUES ('3973', '绑定设备', 'ERROR', 'me.zhengjie.modules.front.rest.BusDeviceController.bindingDevice()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '16', '123456', '内网IP', 'MicroMessenger 8.0.58.2841', 'me.zhengjie.exception.BadRequestException: 您已绑定过该设备,请勿重复绑定\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl.bindingDevice(BusDeviceServiceImpl.java:175)\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl$$FastClassBySpringCGLIB$$1be5d75e.invoke()\r\n at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)\r\n at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386)\r\n at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85)\r\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:703)\r\n at me.zhengjie.modules.system.service.impl.BusDeviceServiceImpl$$EnhancerBySpringCGLIB$$dd0caa28.bindingDevice()\r\n at me.zhengjie.modules.front.rest.BusDeviceController.bindingDevice(BusDeviceController.java:41)\r\n at me.zhengjie.modules.front.rest.BusDeviceController$$FastClassBySpringCGLIB$$b100d1e6.invoke()\r\n at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:792)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:64)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)\r\n at me.zhengjie.aspect.LogAspect.logAround(LogAspect.java:68)\r\n at sun.reflect.GeneratedMethodAccessor220.invoke(Unknown Source)\r\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n at java.lang.reflect.Method.invoke(Method.java:498)\r\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\r\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\r\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)\r\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)\r\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)\r\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:707)\r\n at me.zhengjie.modules.front.rest.BusDeviceController$$EnhancerBySpringCGLIB$$a8181c64.bindingDevice()\r\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\r\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n at java.lang.reflect.Method.invoke(Method.java:498)\r\n at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)\r\n at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)\r\n at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)\r\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)\r\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)\r\n at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)\r\n at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)\r\n at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)\r\n at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)\r\n at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)\r\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:529)\r\n at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)\r\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:623)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:114)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:337)\r\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:115)\r\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:81)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:122)\r\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:116)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:126)\r\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:81)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:109)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:149)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at me.zhengjie.modules.security.security.TokenFilter.doFilter(TokenFilter.java:73)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103)\r\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)\r\n at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:112)\r\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:82)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)\r\n at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221)\r\n at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186)\r\n at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354)\r\n at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)\r\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\r\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)\r\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)\r\n at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)\r\n at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)\r\n at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481)\r\n at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)\r\n at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)\r\n at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)\r\n at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)\r\n at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390)\r\n at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)\r\n at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:928)\r\n at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1794)\r\n at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)\r\n at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)\r\n at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)\r\n at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)\r\n at java.lang.Thread.run(Thread.java:748)\r\n', '2025-06-08 12:03:42'); +INSERT INTO `sys_log` VALUES ('3974', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.58.2841', null, '2025-06-08 12:03:44'); +INSERT INTO `sys_log` VALUES ('3975', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 12:03:47'); +INSERT INTO `sys_log` VALUES ('3976', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0a13I51w3fHn253U6I0w3zL2H113I51u\"}', '192.168.169.171', '11', null, '内网IP', 'MicroMessenger 8.0.56.2800', null, '2025-06-08 12:04:50'); +INSERT INTO `sys_log` VALUES ('3977', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '23', '123456', '内网IP', 'MicroMessenger 8.0.56.2800', null, '2025-06-08 12:04:55'); +INSERT INTO `sys_log` VALUES ('3978', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '18', '123456', '内网IP', 'MicroMessenger 8.0.56.2800', null, '2025-06-08 12:04:55'); +INSERT INTO `sys_log` VALUES ('3979', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '5', '123456', '内网IP', 'MicroMessenger 8.0.56.2800', null, '2025-06-08 12:04:57'); +INSERT INTO `sys_log` VALUES ('3980', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '14', '123456', '内网IP', 'MicroMessenger 8.0.56.2800', null, '2025-06-08 12:05:07'); +INSERT INTO `sys_log` VALUES ('3981', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '4', '123456', '内网IP', 'MicroMessenger 8.0.56.2800', null, '2025-06-08 12:05:08'); +INSERT INTO `sys_log` VALUES ('3982', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.56.2800', null, '2025-06-08 12:05:14'); +INSERT INTO `sys_log` VALUES ('3983', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.56.2800', null, '2025-06-08 12:05:16'); +INSERT INTO `sys_log` VALUES ('3984', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.56.2800', null, '2025-06-08 12:05:19'); +INSERT INTO `sys_log` VALUES ('3985', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 12:05:38'); +INSERT INTO `sys_log` VALUES ('3986', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0b1RfhGa1PujJJ0NMpFa1oIIRD0RfhGZ\"}', '192.168.169.171', '56', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:09:35'); +INSERT INTO `sys_log` VALUES ('3987', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '85', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:09:37'); +INSERT INTO `sys_log` VALUES ('3988', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:10:10'); +INSERT INTO `sys_log` VALUES ('3989', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:10:10'); +INSERT INTO `sys_log` VALUES ('3990', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:10:11'); +INSERT INTO `sys_log` VALUES ('3991', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '16', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:10:11'); +INSERT INTO `sys_log` VALUES ('3992', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '29', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:11:18'); +INSERT INTO `sys_log` VALUES ('3993', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:11:18'); +INSERT INTO `sys_log` VALUES ('3994', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:12:18'); +INSERT INTO `sys_log` VALUES ('3995', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '13', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:12:18'); +INSERT INTO `sys_log` VALUES ('3996', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:14:12'); +INSERT INTO `sys_log` VALUES ('3997', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:14:12'); +INSERT INTO `sys_log` VALUES ('3998', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:14:17'); +INSERT INTO `sys_log` VALUES ('3999', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '23', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:14:17'); +INSERT INTO `sys_log` VALUES ('4000', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:14:52'); +INSERT INTO `sys_log` VALUES ('4001', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '31', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:14:52'); +INSERT INTO `sys_log` VALUES ('4002', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:15:02'); +INSERT INTO `sys_log` VALUES ('4003', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '26', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:15:02'); +INSERT INTO `sys_log` VALUES ('4004', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0b1Glm0w3BCo353NSG0w3roOB23Glm0T\"}', '192.168.169.171', '7', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:19:20'); +INSERT INTO `sys_log` VALUES ('4005', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:19:21'); +INSERT INTO `sys_log` VALUES ('4006', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:19:21'); +INSERT INTO `sys_log` VALUES ('4007', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:19:22'); +INSERT INTO `sys_log` VALUES ('4008', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:19:22'); +INSERT INTO `sys_log` VALUES ('4009', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '31', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:20:03'); +INSERT INTO `sys_log` VALUES ('4010', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:20:03'); +INSERT INTO `sys_log` VALUES ('4011', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '16', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:20:25'); +INSERT INTO `sys_log` VALUES ('4012', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:20:25'); +INSERT INTO `sys_log` VALUES ('4013', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '16', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:20:37'); +INSERT INTO `sys_log` VALUES ('4014', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:20:37'); +INSERT INTO `sys_log` VALUES ('4015', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:20:39'); +INSERT INTO `sys_log` VALUES ('4016', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:20:39'); +INSERT INTO `sys_log` VALUES ('4017', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:20:42'); +INSERT INTO `sys_log` VALUES ('4018', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '16', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:20:42'); +INSERT INTO `sys_log` VALUES ('4019', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '32', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:20:44'); +INSERT INTO `sys_log` VALUES ('4020', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '13', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:20:44'); +INSERT INTO `sys_log` VALUES ('4021', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '28', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:20:46'); +INSERT INTO `sys_log` VALUES ('4022', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:21:14'); +INSERT INTO `sys_log` VALUES ('4023', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:21:31'); +INSERT INTO `sys_log` VALUES ('4024', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:21:31'); +INSERT INTO `sys_log` VALUES ('4025', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:21:32'); +INSERT INTO `sys_log` VALUES ('4026', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:21:32'); +INSERT INTO `sys_log` VALUES ('4027', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:21:34'); +INSERT INTO `sys_log` VALUES ('4028', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:21:46'); +INSERT INTO `sys_log` VALUES ('4029', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0f1Ed3ll2FIHIf4apmml2BE7Kn2Ed3l3\"}', '192.168.169.171', '13', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:22:06'); +INSERT INTO `sys_log` VALUES ('4030', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:22:07'); +INSERT INTO `sys_log` VALUES ('4031', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:22:08'); +INSERT INTO `sys_log` VALUES ('4032', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:22:08'); +INSERT INTO `sys_log` VALUES ('4033', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '5', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:22:09'); +INSERT INTO `sys_log` VALUES ('4034', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:22:11'); +INSERT INTO `sys_log` VALUES ('4035', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '8', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:22:12'); +INSERT INTO `sys_log` VALUES ('4036', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:22:14'); +INSERT INTO `sys_log` VALUES ('4037', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:22:14'); +INSERT INTO `sys_log` VALUES ('4038', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '13', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:22:15'); +INSERT INTO `sys_log` VALUES ('4039', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:27:16'); +INSERT INTO `sys_log` VALUES ('4040', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '13', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:27:16'); +INSERT INTO `sys_log` VALUES ('4041', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0e1dQm0w3UMo353osd4w3UHXo20dQm0o\"}', '192.168.169.171', '13', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:27:25'); +INSERT INTO `sys_log` VALUES ('4042', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:27:27'); +INSERT INTO `sys_log` VALUES ('4043', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 18:27:27'); +INSERT INTO `sys_log` VALUES ('4044', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:11:49'); +INSERT INTO `sys_log` VALUES ('4045', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:11:49'); +INSERT INTO `sys_log` VALUES ('4046', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:12:03'); +INSERT INTO `sys_log` VALUES ('4047', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:12:03'); +INSERT INTO `sys_log` VALUES ('4048', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0a11G1nl22f9Lf4Os7ol2qwwWn01G1nv\"}', '192.168.169.171', '13', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:13:12'); +INSERT INTO `sys_log` VALUES ('4049', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:13:14'); +INSERT INTO `sys_log` VALUES ('4050', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '13', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:14:20'); +INSERT INTO `sys_log` VALUES ('4051', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:14:20'); +INSERT INTO `sys_log` VALUES ('4052', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0e1SyVll2iGQHf45GZkl2Bw8xJ0SyVly\"}', '192.168.169.171', '13', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:14:31'); +INSERT INTO `sys_log` VALUES ('4053', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:14:33'); +INSERT INTO `sys_log` VALUES ('4054', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:14:34'); +INSERT INTO `sys_log` VALUES ('4055', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:17:44'); +INSERT INTO `sys_log` VALUES ('4056', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:17:44'); +INSERT INTO `sys_log` VALUES ('4057', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:18:00'); +INSERT INTO `sys_log` VALUES ('4058', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:18:00'); +INSERT INTO `sys_log` VALUES ('4059', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:21:21'); +INSERT INTO `sys_log` VALUES ('4060', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:21:22'); +INSERT INTO `sys_log` VALUES ('4061', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0c1NbH0w3jS9453EL52w3SB0ZT3NbH0k\"}', '192.168.169.171', '15', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:21:31'); +INSERT INTO `sys_log` VALUES ('4062', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:21:32'); +INSERT INTO `sys_log` VALUES ('4063', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:21:32'); +INSERT INTO `sys_log` VALUES ('4064', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:27:00'); +INSERT INTO `sys_log` VALUES ('4065', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:27:48'); +INSERT INTO `sys_log` VALUES ('4066', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:31:29'); +INSERT INTO `sys_log` VALUES ('4067', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:31:30'); +INSERT INTO `sys_log` VALUES ('4068', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '13', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:31:32'); +INSERT INTO `sys_log` VALUES ('4069', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:31:32'); +INSERT INTO `sys_log` VALUES ('4070', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:32:04'); +INSERT INTO `sys_log` VALUES ('4071', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '17', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:32:04'); +INSERT INTO `sys_log` VALUES ('4072', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:32:27'); +INSERT INTO `sys_log` VALUES ('4073', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:32:29'); +INSERT INTO `sys_log` VALUES ('4074', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:32:30'); +INSERT INTO `sys_log` VALUES ('4075', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.169.171', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:32:44'); +INSERT INTO `sys_log` VALUES ('4076', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.169.171', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-08 19:44:54'); +INSERT INTO `sys_log` VALUES ('4077', '用户登录', 'INFO', 'me.zhengjie.modules.security.rest.AuthController.login()', '{\"code\":\"10\",\"password\":\"******\",\"username\":\"admin\",\"uuid\":\"captcha_code:2c348f5eb6f640b2abdb328b9fdb8544\"}', '192.168.5.115', '434', 'admin', '内网IP', 'Chrome 101.0.4951.64', null, '2025-06-13 14:13:42'); +INSERT INTO `sys_log` VALUES ('4078', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"rtmp://ns8.indexforce.com/home/mystream\"}', '0:0:0:0:0:0:0:1', '3966', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-16 15:37:37'); +INSERT INTO `sys_log` VALUES ('4079', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"rtmp://broadcasting.totustec.com/live/12345678\"}', '0:0:0:0:0:0:0:1', '1', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-16 15:38:22'); +INSERT INTO `sys_log` VALUES ('4080', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"rtmp://broadcasting.totustec.com/live/12345678\"}', '0:0:0:0:0:0:0:1', '0', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-16 15:39:41'); +INSERT INTO `sys_log` VALUES ('4081', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"rtmp://broadcasting.totustec.com/live/12345678\"}', '0:0:0:0:0:0:0:1', '0', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-16 15:42:14'); +INSERT INTO `sys_log` VALUES ('4082', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"rtmp://broadcasting.totustec.com/live/12345678\"}', '0:0:0:0:0:0:0:1', '7', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-16 16:07:22'); +INSERT INTO `sys_log` VALUES ('4083', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"rtmp://broadcasting.totustec.com/live/12345678\"}', '0:0:0:0:0:0:0:1', '9', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-17 16:28:42'); +INSERT INTO `sys_log` VALUES ('4084', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"rtmp://210.22.129.139:1935/hls\"}', '0:0:0:0:0:0:0:1', '1', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-17 16:30:26'); +INSERT INTO `sys_log` VALUES ('4085', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"rtmp://58.200.131.2:1935/livetv/hunantv\"}', '0:0:0:0:0:0:0:1', '1', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-17 16:31:34'); +INSERT INTO `sys_log` VALUES ('4086', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"rtmp://ns8.indexforce.com/home/mystream\"}', '0:0:0:0:0:0:0:1', '0', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-17 16:32:30'); +INSERT INTO `sys_log` VALUES ('4087', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"rtmp://ns8.indexforce.com/home/mystream\"}', '0:0:0:0:0:0:0:1', '0', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-17 16:38:15'); +INSERT INTO `sys_log` VALUES ('4088', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"rtmp://ns8.indexforce.com/home/mystream\"}', '0:0:0:0:0:0:0:1', '1', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-17 16:55:13'); +INSERT INTO `sys_log` VALUES ('4089', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0c1dgE0w3XGs753bjE1w3KNy163dgE0E\"}', '192.168.5.108', '271', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 16:56:02'); +INSERT INTO `sys_log` VALUES ('4090', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '113', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 16:56:04'); +INSERT INTO `sys_log` VALUES ('4091', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 16:56:06'); +INSERT INTO `sys_log` VALUES ('4092', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '38', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 16:56:07'); +INSERT INTO `sys_log` VALUES ('4093', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 16:56:24'); +INSERT INTO `sys_log` VALUES ('4094', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '19', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 16:56:27'); +INSERT INTO `sys_log` VALUES ('4095', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 16:56:28'); +INSERT INTO `sys_log` VALUES ('4096', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 16:56:38'); +INSERT INTO `sys_log` VALUES ('4097', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 16:57:15'); +INSERT INTO `sys_log` VALUES ('4098', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 16:57:23'); +INSERT INTO `sys_log` VALUES ('4099', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '13', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:15:55'); +INSERT INTO `sys_log` VALUES ('4100', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:15:56'); +INSERT INTO `sys_log` VALUES ('4101', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '5', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:15:57'); +INSERT INTO `sys_log` VALUES ('4102', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '28', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:16:13'); +INSERT INTO `sys_log` VALUES ('4103', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:16:16'); +INSERT INTO `sys_log` VALUES ('4104', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:17:04'); +INSERT INTO `sys_log` VALUES ('4105', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '16', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:17:12'); +INSERT INTO `sys_log` VALUES ('4106', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:17:13'); +INSERT INTO `sys_log` VALUES ('4107', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '5', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:17:14'); +INSERT INTO `sys_log` VALUES ('4108', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:17:16'); +INSERT INTO `sys_log` VALUES ('4109', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:17:19'); +INSERT INTO `sys_log` VALUES ('4110', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '5', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:17:58'); +INSERT INTO `sys_log` VALUES ('4111', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '13', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:18:03'); +INSERT INTO `sys_log` VALUES ('4112', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '13', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:18:04'); +INSERT INTO `sys_log` VALUES ('4113', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:18:07'); +INSERT INTO `sys_log` VALUES ('4114', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:18:27'); +INSERT INTO `sys_log` VALUES ('4115', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '8', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:19:12'); +INSERT INTO `sys_log` VALUES ('4116', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '23', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:20:41'); +INSERT INTO `sys_log` VALUES ('4117', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:20:42'); +INSERT INTO `sys_log` VALUES ('4118', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:20:47'); +INSERT INTO `sys_log` VALUES ('4119', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"rtmp://ns8.indexforce.com/home/mystream\"}', '0:0:0:0:0:0:0:1', '0', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-17 17:20:56'); +INSERT INTO `sys_log` VALUES ('4120', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"rtmp://ns8.indexforce.com/home/mystream\"}', '0:0:0:0:0:0:0:1', '4220', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-17 17:21:29'); +INSERT INTO `sys_log` VALUES ('4121', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:21:51'); +INSERT INTO `sys_log` VALUES ('4122', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '16', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:24:05'); +INSERT INTO `sys_log` VALUES ('4123', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:24:06'); +INSERT INTO `sys_log` VALUES ('4124', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:24:07'); +INSERT INTO `sys_log` VALUES ('4125', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{}', '192.168.5.108', '0', null, '内网IP', 'Chrome 117', null, '2025-06-17 17:25:43'); +INSERT INTO `sys_log` VALUES ('4126', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"\"}', '192.168.5.108', '0', null, '内网IP', 'Unknown null', null, '2025-06-17 17:25:44'); +INSERT INTO `sys_log` VALUES ('4127', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:50:03'); +INSERT INTO `sys_log` VALUES ('4128', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:51:14'); +INSERT INTO `sys_log` VALUES ('4129', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '16', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:51:16'); +INSERT INTO `sys_log` VALUES ('4130', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '5', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:51:18'); +INSERT INTO `sys_log` VALUES ('4131', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"rtmp://ns8.indexforce.com/home/mystream\"}', '192.168.5.108', '0', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:51:18'); +INSERT INTO `sys_log` VALUES ('4132', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 17:57:11'); +INSERT INTO `sys_log` VALUES ('4133', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '16', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:08:14'); +INSERT INTO `sys_log` VALUES ('4134', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:08:15'); +INSERT INTO `sys_log` VALUES ('4135', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:08:17'); +INSERT INTO `sys_log` VALUES ('4136', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:08:44'); +INSERT INTO `sys_log` VALUES ('4137', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:08:50'); +INSERT INTO `sys_log` VALUES ('4138', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '31', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:08:51'); +INSERT INTO `sys_log` VALUES ('4139', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:08:51'); +INSERT INTO `sys_log` VALUES ('4140', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:09:25'); +INSERT INTO `sys_log` VALUES ('4141', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '13', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:18:48'); +INSERT INTO `sys_log` VALUES ('4142', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:18:49'); +INSERT INTO `sys_log` VALUES ('4143', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '5', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:18:53'); +INSERT INTO `sys_log` VALUES ('4144', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '5', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:19:25'); +INSERT INTO `sys_log` VALUES ('4145', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0d17wy1w3dGI753eIR3w3iiSGl07wy11\"}', '192.168.5.108', '6', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:19:50'); +INSERT INTO `sys_log` VALUES ('4146', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '27', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:19:51'); +INSERT INTO `sys_log` VALUES ('4147', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '27', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:19:52'); +INSERT INTO `sys_log` VALUES ('4148', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:19:53'); +INSERT INTO `sys_log` VALUES ('4149', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:21:59'); +INSERT INTO `sys_log` VALUES ('4150', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '27', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:21:59'); +INSERT INTO `sys_log` VALUES ('4151', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '5', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:22:01'); +INSERT INTO `sys_log` VALUES ('4152', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:23:23'); +INSERT INTO `sys_log` VALUES ('4153', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:23:33'); +INSERT INTO `sys_log` VALUES ('4154', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.108', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:23:34'); +INSERT INTO `sys_log` VALUES ('4155', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:23:35'); +INSERT INTO `sys_log` VALUES ('4156', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.108', '8', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-06-17 18:24:25'); +INSERT INTO `sys_log` VALUES ('4157', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"rtmp://ns8.indexforce.com/home/mystream\"}', '0:0:0:0:0:0:0:1', '9', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-17 19:13:22'); +INSERT INTO `sys_log` VALUES ('4158', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"rtmp://ns8.indexforce.com/home/mystream\"}', '0:0:0:0:0:0:0:1', '0', null, 'IANA保留地址', 'MSEdge 136', null, '2025-06-17 19:13:53'); +INSERT INTO `sys_log` VALUES ('4159', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"rtmp://ns8.indexforce.com/home/mystream\"}', '0:0:0:0:0:0:0:1', '1', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-17 19:14:13'); +INSERT INTO `sys_log` VALUES ('4160', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"rtsp://admin:a1234567@192.168.0.99:554/Streaming/tracks/201?starttime=20241210t154020z\"}', '0:0:0:0:0:0:0:1', '7', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-17 19:40:22'); +INSERT INTO `sys_log` VALUES ('4161', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"rtmp://ns8.indexforce.com/home/mystream\"}', '0:0:0:0:0:0:0:1', '1588', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-18 10:56:52'); +INSERT INTO `sys_log` VALUES ('4162', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.open()', '{\"arg0\":\"rtmp://ns8.indexforce.com/home/mystream\"}', '0:0:0:0:0:0:0:1', '1', null, 'IANA保留地址', 'MSEdge 136', null, '2025-06-18 10:58:16'); +INSERT INTO `sys_log` VALUES ('4163', '用户登录', 'INFO', 'me.zhengjie.modules.security.rest.AuthController.login()', '{\"code\":\"3\",\"password\":\"******\",\"username\":\"admin\",\"uuid\":\"captcha_code:405e322a300c4cdc835dd99f2563bb6b\"}', '192.168.5.108', '463', 'admin', '内网IP', 'Chrome 101.0.4951.64', null, '2025-06-19 09:21:57'); +INSERT INTO `sys_log` VALUES ('4164', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.getFlv()', '{\"arg0\":\"rtmp://ns8.indexforce.com/home/mystream\"}', '0:0:0:0:0:0:0:1', '2238', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-19 11:31:35'); +INSERT INTO `sys_log` VALUES ('4165', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.getFlv()', '{\"arg0\":\"rtmp://ns8.indexforce.com/home/mystream\"}', '0:0:0:0:0:0:0:1', '8', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-22 14:32:13'); +INSERT INTO `sys_log` VALUES ('4166', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.getFlv()', '{\"arg0\":\"rtmp://liteavapp.qcloud.com/live/liteavdemoplayerstreamid\"}', '0:0:0:0:0:0:0:1', '1', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-22 14:39:20'); +INSERT INTO `sys_log` VALUES ('4167', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.getFlv()', '{\"arg0\":\"rtmp://mobliestream.c3tv.com:554/live/goodtv.sdp\"}', '0:0:0:0:0:0:0:1', '1', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-22 14:40:01'); +INSERT INTO `sys_log` VALUES ('4168', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.getFlv()', '{\"arg0\":\"rtmp://58.200.131.2:1935/livetv/cctv1\"}', '0:0:0:0:0:0:0:1', '1', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-22 14:40:47'); +INSERT INTO `sys_log` VALUES ('4169', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.getFlv()', '{\"arg0\":\"rtmp://58.200.131.2:1935/livetv/dftv\"}', '0:0:0:0:0:0:0:1', '0', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-22 14:41:30'); +INSERT INTO `sys_log` VALUES ('4170', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.getFlv()', '{\"arg0\":\"rtmp://58.200.131.2:1935/livetv/cctv4\"}', '0:0:0:0:0:0:0:1', '1', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-22 14:54:11'); +INSERT INTO `sys_log` VALUES ('4171', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.getFlv()', '{\"arg0\":\"rtmp://mobliestream.c3tv.com:554/live/goodtv.sdp\"}', '0:0:0:0:0:0:0:1', '1', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-22 14:57:53'); +INSERT INTO `sys_log` VALUES ('4172', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.FLVController.getFlv()', '{\"arg0\":\"rtmp://ns8.indexforce.com/home/mystream\"}', '0:0:0:0:0:0:0:1', '1', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-22 14:58:19'); +INSERT INTO `sys_log` VALUES ('4173', '指定拉流', 'INFO', 'com.gc.easy.flv.controller.M3U8Controller.getSegment()', '{\"arg0\":\"1\",\"arg1\":3}', '0:0:0:0:0:0:0:1', '7', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-24 15:27:09'); +INSERT INTO `sys_log` VALUES ('4174', '指定拉流', 'INFO', 'com.gc.easy.flv.controller.M3U8Controller.getSegment()', '{\"arg0\":\"1\",\"arg1\":3}', '0:0:0:0:0:0:0:1', '24619', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-24 15:27:47'); +INSERT INTO `sys_log` VALUES ('4175', '指定拉流', 'INFO', 'com.gc.easy.flv.controller.M3U8Controller.getSegment()', '{\"arg0\":\"1\",\"arg1\":3}', '0:0:0:0:0:0:0:1', '26080', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-24 15:28:13'); +INSERT INTO `sys_log` VALUES ('4176', '指定拉流', 'INFO', 'com.gc.easy.flv.controller.M3U8Controller.getSegment()', '{\"arg0\":\"1\",\"arg1\":16}', '0:0:0:0:0:0:0:1', '5374', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-24 15:29:50'); +INSERT INTO `sys_log` VALUES ('4177', '指定拉流', 'INFO', 'com.gc.easy.flv.controller.M3U8Controller.getSegment()', '{\"arg0\":\"1\",\"arg1\":16}', '192.168.5.102', '5', null, '内网IP', 'Chrome 101.0.4951.64', null, '2025-06-24 15:30:18'); +INSERT INTO `sys_log` VALUES ('4178', '指定拉流', 'INFO', 'com.gc.easy.flv.controller.M3U8Controller.getSegment()', '{\"arg0\":\"1\",\"arg1\":9}', '192.168.5.102', '0', null, '内网IP', 'Chrome 101.0.4951.64', null, '2025-06-24 15:30:41'); +INSERT INTO `sys_log` VALUES ('4179', '指定拉流', 'INFO', 'com.gc.easy.flv.controller.M3U8Controller.getSegment()', '{\"arg0\":\"1\",\"arg1\":9}', '0:0:0:0:0:0:0:1', '12158', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-24 15:32:24'); +INSERT INTO `sys_log` VALUES ('4180', '指定拉流', 'INFO', 'com.gc.easy.flv.controller.M3U8Controller.getSegment()', '{\"arg0\":\"1\",\"arg1\":9}', '0:0:0:0:0:0:0:1', '6', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-24 15:34:13'); +INSERT INTO `sys_log` VALUES ('4181', '拉流播放', 'INFO', 'com.gc.easy.flv.controller.M3U8Controller.getPlaylist()', '{\"arg0\":\"1\"}', '0:0:0:0:0:0:0:1', '6', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-24 15:42:03'); +INSERT INTO `sys_log` VALUES ('4182', '指定拉流', 'INFO', 'com.gc.easy.flv.controller.M3U8Controller.getSegment()', '{\"arg0\":\"1\",\"arg1\":9}', '0:0:0:0:0:0:0:1', '0', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-24 15:43:02'); +INSERT INTO `sys_log` VALUES ('4183', '指定拉流', 'INFO', 'com.gc.easy.flv.controller.M3U8Controller.getSegment()', '{\"arg0\":\"1\",\"arg1\":9}', '0:0:0:0:0:0:0:1', '4506', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-24 15:46:52'); +INSERT INTO `sys_log` VALUES ('4184', '指定拉流', 'INFO', 'com.gc.easy.flv.controller.M3U8Controller.getSegment()', '{\"arg0\":\"1\",\"arg1\":9}', '0:0:0:0:0:0:0:1', '4199', null, 'IANA保留地址', 'Chrome 101.0.4951.64', null, '2025-06-24 15:49:50'); +INSERT INTO `sys_log` VALUES ('4185', '用户登录', 'INFO', 'me.zhengjie.modules.security.rest.AuthController.login()', '{\"code\":\"7\",\"password\":\"******\",\"username\":\"admin\",\"uuid\":\"captcha_code:ee33a80fbaeb4c63be7f33262f66000f\"}', '192.168.5.102', '419', 'admin', '内网IP', 'Chrome 101.0.4951.64', null, '2025-07-03 19:33:41'); +INSERT INTO `sys_log` VALUES ('4186', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0d1LuIkl2TfCTf4pm3ml2Ocz7V3LuIkR\"}', '192.168.5.102', '82', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:03:21'); +INSERT INTO `sys_log` VALUES ('4187', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '96', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:03:25'); +INSERT INTO `sys_log` VALUES ('4188', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:03:29'); +INSERT INTO `sys_log` VALUES ('4189', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:03:29'); +INSERT INTO `sys_log` VALUES ('4190', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '81', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:06:45'); +INSERT INTO `sys_log` VALUES ('4191', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '13', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:06:47'); +INSERT INTO `sys_log` VALUES ('4192', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:06:48'); +INSERT INTO `sys_log` VALUES ('4193', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '13', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:08:19'); +INSERT INTO `sys_log` VALUES ('4194', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '20', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:08:21'); +INSERT INTO `sys_log` VALUES ('4195', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '13', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:09:47'); +INSERT INTO `sys_log` VALUES ('4196', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '13', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:11:54'); +INSERT INTO `sys_log` VALUES ('4197', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:11:56'); +INSERT INTO `sys_log` VALUES ('4198', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '27', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:11:57'); +INSERT INTO `sys_log` VALUES ('4199', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:12:25'); +INSERT INTO `sys_log` VALUES ('4200', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:12:25'); +INSERT INTO `sys_log` VALUES ('4201', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:14:22'); +INSERT INTO `sys_log` VALUES ('4202', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:14:23'); +INSERT INTO `sys_log` VALUES ('4203', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:14:23'); +INSERT INTO `sys_log` VALUES ('4204', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:14:27'); +INSERT INTO `sys_log` VALUES ('4205', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:14:27'); +INSERT INTO `sys_log` VALUES ('4206', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:14:30'); +INSERT INTO `sys_log` VALUES ('4207', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:14:30'); +INSERT INTO `sys_log` VALUES ('4208', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:14:30'); +INSERT INTO `sys_log` VALUES ('4209', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:14:31'); +INSERT INTO `sys_log` VALUES ('4210', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:14:31'); +INSERT INTO `sys_log` VALUES ('4211', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:14:31'); +INSERT INTO `sys_log` VALUES ('4212', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:14:31'); +INSERT INTO `sys_log` VALUES ('4213', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:14:31'); +INSERT INTO `sys_log` VALUES ('4214', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:14:58'); +INSERT INTO `sys_log` VALUES ('4215', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:07'); +INSERT INTO `sys_log` VALUES ('4216', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:08'); +INSERT INTO `sys_log` VALUES ('4217', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:09'); +INSERT INTO `sys_log` VALUES ('4218', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:12'); +INSERT INTO `sys_log` VALUES ('4219', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:12'); +INSERT INTO `sys_log` VALUES ('4220', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:12'); +INSERT INTO `sys_log` VALUES ('4221', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:12'); +INSERT INTO `sys_log` VALUES ('4222', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:12'); +INSERT INTO `sys_log` VALUES ('4223', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:12'); +INSERT INTO `sys_log` VALUES ('4224', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '5', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:12'); +INSERT INTO `sys_log` VALUES ('4225', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:12'); +INSERT INTO `sys_log` VALUES ('4226', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:17'); +INSERT INTO `sys_log` VALUES ('4227', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:18'); +INSERT INTO `sys_log` VALUES ('4228', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:18'); +INSERT INTO `sys_log` VALUES ('4229', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:18'); +INSERT INTO `sys_log` VALUES ('4230', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:18'); +INSERT INTO `sys_log` VALUES ('4231', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:18'); +INSERT INTO `sys_log` VALUES ('4232', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:18'); +INSERT INTO `sys_log` VALUES ('4233', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:18'); +INSERT INTO `sys_log` VALUES ('4234', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:31'); +INSERT INTO `sys_log` VALUES ('4235', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:34'); +INSERT INTO `sys_log` VALUES ('4236', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:34'); +INSERT INTO `sys_log` VALUES ('4237', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:37'); +INSERT INTO `sys_log` VALUES ('4238', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:37'); +INSERT INTO `sys_log` VALUES ('4239', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:37'); +INSERT INTO `sys_log` VALUES ('4240', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:37'); +INSERT INTO `sys_log` VALUES ('4241', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:37'); +INSERT INTO `sys_log` VALUES ('4242', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:38'); +INSERT INTO `sys_log` VALUES ('4243', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:38'); +INSERT INTO `sys_log` VALUES ('4244', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:15:38'); +INSERT INTO `sys_log` VALUES ('4245', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '12', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:16:22'); +INSERT INTO `sys_log` VALUES ('4246', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:16:25'); +INSERT INTO `sys_log` VALUES ('4247', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '17', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:16:25'); +INSERT INTO `sys_log` VALUES ('4248', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:16:29'); +INSERT INTO `sys_log` VALUES ('4249', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:16:30'); +INSERT INTO `sys_log` VALUES ('4250', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:16:31'); +INSERT INTO `sys_log` VALUES ('4251', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:16:35'); +INSERT INTO `sys_log` VALUES ('4252', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:16:35'); +INSERT INTO `sys_log` VALUES ('4253', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:16:38'); +INSERT INTO `sys_log` VALUES ('4254', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:16:38'); +INSERT INTO `sys_log` VALUES ('4255', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:16:38'); +INSERT INTO `sys_log` VALUES ('4256', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:16:38'); +INSERT INTO `sys_log` VALUES ('4257', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '7', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:16:38'); +INSERT INTO `sys_log` VALUES ('4258', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:16:38'); +INSERT INTO `sys_log` VALUES ('4259', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:16:38'); +INSERT INTO `sys_log` VALUES ('4260', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:16:38'); +INSERT INTO `sys_log` VALUES ('4261', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:16:47'); +INSERT INTO `sys_log` VALUES ('4262', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '8', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:16:47'); +INSERT INTO `sys_log` VALUES ('4263', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:17:05'); +INSERT INTO `sys_log` VALUES ('4264', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:25:29'); +INSERT INTO `sys_log` VALUES ('4265', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '9', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:25:29'); +INSERT INTO `sys_log` VALUES ('4266', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '1', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:25:31'); +INSERT INTO `sys_log` VALUES ('4267', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '8', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:25:35'); +INSERT INTO `sys_log` VALUES ('4268', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:25:37'); +INSERT INTO `sys_log` VALUES ('4269', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '1', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:25:41'); +INSERT INTO `sys_log` VALUES ('4270', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '38', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:30:27'); +INSERT INTO `sys_log` VALUES ('4271', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:30:35'); +INSERT INTO `sys_log` VALUES ('4272', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:30:52'); +INSERT INTO `sys_log` VALUES ('4273', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '5', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:30:58'); +INSERT INTO `sys_log` VALUES ('4274', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:31:02'); +INSERT INTO `sys_log` VALUES ('4275', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '55', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:46:46'); +INSERT INTO `sys_log` VALUES ('4276', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:46:47'); +INSERT INTO `sys_log` VALUES ('4277', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:46:48'); +INSERT INTO `sys_log` VALUES ('4278', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:46:51'); +INSERT INTO `sys_log` VALUES ('4279', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:46:51'); +INSERT INTO `sys_log` VALUES ('4280', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:46:51'); +INSERT INTO `sys_log` VALUES ('4281', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:46:51'); +INSERT INTO `sys_log` VALUES ('4282', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:46:51'); +INSERT INTO `sys_log` VALUES ('4283', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '5', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:46:51'); +INSERT INTO `sys_log` VALUES ('4284', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:46:51'); +INSERT INTO `sys_log` VALUES ('4285', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:46:51'); +INSERT INTO `sys_log` VALUES ('4286', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:46:51'); +INSERT INTO `sys_log` VALUES ('4287', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:46:51'); +INSERT INTO `sys_log` VALUES ('4288', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:47:05'); +INSERT INTO `sys_log` VALUES ('4289', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:47:05'); +INSERT INTO `sys_log` VALUES ('4290', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:48:04'); +INSERT INTO `sys_log` VALUES ('4291', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:48:04'); +INSERT INTO `sys_log` VALUES ('4292', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '5', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:48:04'); +INSERT INTO `sys_log` VALUES ('4293', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:48:05'); +INSERT INTO `sys_log` VALUES ('4294', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:48:05'); +INSERT INTO `sys_log` VALUES ('4295', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:48:05'); +INSERT INTO `sys_log` VALUES ('4296', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:48:05'); +INSERT INTO `sys_log` VALUES ('4297', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:48:05'); +INSERT INTO `sys_log` VALUES ('4298', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:48:11'); +INSERT INTO `sys_log` VALUES ('4299', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:56:52'); +INSERT INTO `sys_log` VALUES ('4300', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:58:19'); +INSERT INTO `sys_log` VALUES ('4301', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 15:58:20'); +INSERT INTO `sys_log` VALUES ('4302', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '14', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:06:51'); +INSERT INTO `sys_log` VALUES ('4303', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:06:52'); +INSERT INTO `sys_log` VALUES ('4304', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:06:53'); +INSERT INTO `sys_log` VALUES ('4305', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:06:57'); +INSERT INTO `sys_log` VALUES ('4306', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '74', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:12:03'); +INSERT INTO `sys_log` VALUES ('4307', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '26', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:12:04'); +INSERT INTO `sys_log` VALUES ('4308', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:12:08'); +INSERT INTO `sys_log` VALUES ('4309', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:12:08'); +INSERT INTO `sys_log` VALUES ('4310', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:14:40'); +INSERT INTO `sys_log` VALUES ('4311', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:14:41'); +INSERT INTO `sys_log` VALUES ('4312', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '5', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:14:42'); +INSERT INTO `sys_log` VALUES ('4313', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:14:45'); +INSERT INTO `sys_log` VALUES ('4314', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:14:58'); +INSERT INTO `sys_log` VALUES ('4315', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:14:58'); +INSERT INTO `sys_log` VALUES ('4316', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:14:58'); +INSERT INTO `sys_log` VALUES ('4317', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:14:58'); +INSERT INTO `sys_log` VALUES ('4318', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:14:58'); +INSERT INTO `sys_log` VALUES ('4319', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:14:58'); +INSERT INTO `sys_log` VALUES ('4320', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '2', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:14:58'); +INSERT INTO `sys_log` VALUES ('4321', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:14:58'); +INSERT INTO `sys_log` VALUES ('4322', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:15:05'); +INSERT INTO `sys_log` VALUES ('4323', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:15:05'); +INSERT INTO `sys_log` VALUES ('4324', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '17', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:15:10'); +INSERT INTO `sys_log` VALUES ('4325', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '10', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:15:12'); +INSERT INTO `sys_log` VALUES ('4326', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:15:55'); +INSERT INTO `sys_log` VALUES ('4327', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:15:55'); +INSERT INTO `sys_log` VALUES ('4328', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:16:03'); +INSERT INTO `sys_log` VALUES ('4329', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '23', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:16:50'); +INSERT INTO `sys_log` VALUES ('4330', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '5', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:16:52'); +INSERT INTO `sys_log` VALUES ('4331', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '5', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:16:56'); +INSERT INTO `sys_log` VALUES ('4332', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:16:56'); +INSERT INTO `sys_log` VALUES ('4333', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '80', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:33:06'); +INSERT INTO `sys_log` VALUES ('4334', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '26', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:33:07'); +INSERT INTO `sys_log` VALUES ('4335', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '5', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:33:10'); +INSERT INTO `sys_log` VALUES ('4336', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '5', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:34:05'); +INSERT INTO `sys_log` VALUES ('4337', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '4', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:34:08'); +INSERT INTO `sys_log` VALUES ('4338', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:36:08'); +INSERT INTO `sys_log` VALUES ('4339', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '3', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-08 16:36:08'); +INSERT INTO `sys_log` VALUES ('4340', '用户授权登录', 'INFO', 'me.zhengjie.modules.front.rest.WeChatController.authorizeLogin()', '{\"code\":\"0f19TPkl2LKFUf42jwll2bg6ro19TPkm\"}', '192.168.5.102', '80', null, '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-11 14:58:56'); +INSERT INTO `sys_log` VALUES ('4341', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '92', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-11 14:58:57'); +INSERT INTO `sys_log` VALUES ('4342', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '11', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-11 14:59:01'); +INSERT INTO `sys_log` VALUES ('4343', '我的设备', 'INFO', 'me.zhengjie.modules.front.rest.BusUserController.myDeviceList()', '{\"criteria\":{\"page\":1,\"size\":10000}}', '192.168.5.102', '15', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-11 14:59:01'); +INSERT INTO `sys_log` VALUES ('4344', '获取设备', 'INFO', 'me.zhengjie.modules.front.rest.BusDeviceController.get()', '{\"deviceCode\":\"12345678\"}', '192.168.5.102', '35', '123456', '内网IP', 'MicroMessenger 8.0.5', null, '2025-07-11 14:59:04'); -- ---------------------------- -- Table structure for sys_menu @@ -643,21 +1087,9 @@ INSERT INTO `sys_menu` VALUES ('1', null, '7', '0', '系统管理', null, null, INSERT INTO `sys_menu` VALUES ('2', '1', '3', '1', '系统用户', 'User', 'system/user/index', '2', 'peoples', 'user', '\0', '\0', '\0', 'user:list', null, 'admin', '2018-12-18 15:14:44', '2025-05-20 16:15:55'); INSERT INTO `sys_menu` VALUES ('3', '1', '3', '1', '角色管理', 'Role', 'system/role/index', '3', 'role', 'role', '\0', '\0', '\0', 'roles:list', null, null, '2018-12-18 15:16:07', null); INSERT INTO `sys_menu` VALUES ('5', '1', '3', '1', '菜单管理', 'Menu', 'system/menu/index', '5', 'menu', 'menu', '\0', '\0', '\0', 'menu:list', null, null, '2018-12-18 15:17:28', null); -INSERT INTO `sys_menu` VALUES ('6', null, '5', '0', '系统监控', null, null, '10', 'monitor', 'monitor', '\0', '\0', '\0', null, null, null, '2018-12-18 15:17:48', null); -INSERT INTO `sys_menu` VALUES ('7', '6', '0', '1', '操作日志', 'Log', 'monitor/log/index', '11', 'log', 'logs', '\0', '', '\0', null, null, 'admin', '2018-12-18 15:18:26', '2020-06-06 13:11:57'); -INSERT INTO `sys_menu` VALUES ('10', null, '5', '0', '组件管理', null, null, '50', 'zujian', 'components', '\0', '\0', '\0', null, null, null, '2018-12-19 13:38:16', null); -INSERT INTO `sys_menu` VALUES ('11', '10', '0', '1', '图标库', 'Icons', 'components/icons/index', '51', 'icon', 'icon', '\0', '\0', '\0', null, null, null, '2018-12-19 13:38:49', null); -INSERT INTO `sys_menu` VALUES ('15', '10', '0', '1', '富文本', 'Editor', 'components/Editor', '52', 'fwb', 'tinymce', '\0', '\0', '\0', null, null, null, '2018-12-27 11:58:25', null); -INSERT INTO `sys_menu` VALUES ('18', '36', '3', '1', '存储管理', 'Storage', 'tools/storage/index', '34', 'qiniu', 'storage', '\0', '\0', '\0', 'storage:list', null, null, '2018-12-31 11:12:15', null); -INSERT INTO `sys_menu` VALUES ('28', '1', '3', '1', '任务调度', 'Timing', 'system/timing/index', '999', 'timing', 'timing', '\0', '\0', '\0', 'timing:list', null, null, '2019-01-07 20:34:40', null); -INSERT INTO `sys_menu` VALUES ('30', '36', '0', '1', '代码生成', 'GeneratorIndex', 'generator/index', '32', 'dev', 'generator', '\0', '', '\0', null, null, null, '2019-01-11 15:45:55', null); -INSERT INTO `sys_menu` VALUES ('32', '6', '0', '1', '异常日志', 'ErrorLog', 'monitor/log/errorLog', '12', 'error', 'errorLog', '\0', '\0', '\0', null, null, null, '2019-01-13 13:49:03', null); -INSERT INTO `sys_menu` VALUES ('33', '10', '0', '1', 'Markdown', 'Markdown', 'components/MarkDown', '53', 'markdown', 'markdown', '\0', '\0', '\0', null, null, null, '2019-03-08 13:46:44', null); INSERT INTO `sys_menu` VALUES ('35', '1', '3', '1', '部门管理', 'Dept', 'system/dept/index', '6', 'dept', 'dept', '\0', '\0', '\0', 'dept:list', null, null, '2019-03-25 09:46:00', null); -INSERT INTO `sys_menu` VALUES ('36', null, '6', '0', '系统工具', null, '', '30', 'sys-tools', 'sys-tools', '\0', '\0', '\0', null, null, null, '2019-03-29 10:57:35', null); INSERT INTO `sys_menu` VALUES ('37', '1', '3', '1', '岗位管理', 'Job', 'system/job/index', '7', 'Steve-Jobs', 'job', '\0', '\0', '\0', 'job:list', null, null, '2019-03-29 13:51:18', null); INSERT INTO `sys_menu` VALUES ('39', '1', '3', '1', '字典管理', 'Dict', 'system/dict/index', '8', 'dictionary', 'dict', '\0', '\0', '\0', 'dict:list', null, null, '2019-04-10 11:49:04', null); -INSERT INTO `sys_menu` VALUES ('41', '6', '0', '1', '在线用户', 'OnlineUser', 'monitor/online/index', '10', 'Steve-Jobs', 'online', '\0', '\0', '\0', null, null, null, '2019-10-26 22:08:43', null); INSERT INTO `sys_menu` VALUES ('44', '2', '0', '2', '用户新增', null, '', '2', '', '', '\0', '\0', '\0', 'user:add', null, null, '2019-10-29 10:59:46', null); INSERT INTO `sys_menu` VALUES ('45', '2', '0', '2', '用户编辑', null, '', '3', '', '', '\0', '\0', '\0', 'user:edit', null, null, '2019-10-29 11:00:08', null); INSERT INTO `sys_menu` VALUES ('46', '2', '0', '2', '用户删除', null, '', '4', '', '', '\0', '\0', '\0', 'user:del', null, null, '2019-10-29 11:00:23', null); @@ -676,14 +1108,9 @@ INSERT INTO `sys_menu` VALUES ('62', '37', '0', '2', '岗位删除', null, '', ' INSERT INTO `sys_menu` VALUES ('64', '39', '0', '2', '字典新增', null, '', '2', '', '', '\0', '\0', '\0', 'dict:add', null, null, '2019-10-29 13:00:17', null); INSERT INTO `sys_menu` VALUES ('65', '39', '0', '2', '字典编辑', null, '', '3', '', '', '\0', '\0', '\0', 'dict:edit', null, null, '2019-10-29 13:00:42', null); INSERT INTO `sys_menu` VALUES ('66', '39', '0', '2', '字典删除', null, '', '4', '', '', '\0', '\0', '\0', 'dict:del', null, null, '2019-10-29 13:00:59', null); -INSERT INTO `sys_menu` VALUES ('73', '28', '0', '2', '任务新增', null, '', '2', '', '', '\0', '\0', '\0', 'timing:add', null, null, '2019-10-29 13:07:28', null); -INSERT INTO `sys_menu` VALUES ('74', '28', '0', '2', '任务编辑', null, '', '3', '', '', '\0', '\0', '\0', 'timing:edit', null, null, '2019-10-29 13:07:41', null); -INSERT INTO `sys_menu` VALUES ('75', '28', '0', '2', '任务删除', null, '', '4', '', '', '\0', '\0', '\0', 'timing:del', null, null, '2019-10-29 13:07:54', null); INSERT INTO `sys_menu` VALUES ('77', '18', '0', '2', '上传文件', null, '', '2', '', '', '\0', '\0', '\0', 'storage:add', null, null, '2019-10-29 13:09:09', null); INSERT INTO `sys_menu` VALUES ('78', '18', '0', '2', '文件编辑', null, '', '3', '', '', '\0', '\0', '\0', 'storage:edit', null, null, '2019-10-29 13:09:22', null); INSERT INTO `sys_menu` VALUES ('79', '18', '0', '2', '文件删除', null, '', '4', '', '', '\0', '\0', '\0', 'storage:del', null, null, '2019-10-29 13:09:34', null); -INSERT INTO `sys_menu` VALUES ('82', '36', '0', '1', '生成配置', 'GeneratorConfig', 'generator/config', '33', 'dev', 'generator/config/:tableName', '\0', '', '', '', null, null, '2019-11-17 20:08:56', null); -INSERT INTO `sys_menu` VALUES ('83', '10', '0', '1', '图表库', 'Echarts', 'components/Echarts', '50', 'chart', 'echarts', '\0', '', '\0', '', null, null, '2019-11-21 09:04:32', null); INSERT INTO `sys_menu` VALUES ('102', '97', '0', '2', '删除', null, '', '999', '', '', '\0', '\0', '\0', 'deployHistory:del', null, null, '2019-11-17 09:32:48', null); INSERT INTO `sys_menu` VALUES ('103', '92', '0', '2', '服务器新增', null, '', '999', '', '', '\0', '\0', '\0', 'serverDeploy:add', null, null, '2019-11-17 11:08:33', null); INSERT INTO `sys_menu` VALUES ('104', '92', '0', '2', '服务器编辑', null, '', '999', '', '', '\0', '\0', '\0', 'serverDeploy:edit', null, null, '2019-11-17 11:08:57', null); @@ -694,7 +1121,6 @@ INSERT INTO `sys_menu` VALUES ('108', '93', '0', '2', '应用删除', null, '', INSERT INTO `sys_menu` VALUES ('109', '94', '0', '2', '部署新增', null, '', '999', '', '', '\0', '\0', '\0', 'deploy:add', null, null, '2019-11-17 11:11:22', null); INSERT INTO `sys_menu` VALUES ('110', '94', '0', '2', '部署编辑', null, '', '999', '', '', '\0', '\0', '\0', 'deploy:edit', null, null, '2019-11-17 11:11:41', null); INSERT INTO `sys_menu` VALUES ('111', '94', '0', '2', '部署删除', null, '', '999', '', '', '\0', '\0', '\0', 'deploy:del', null, null, '2019-11-17 11:12:01', null); -INSERT INTO `sys_menu` VALUES ('116', '36', '0', '1', '生成预览', 'Preview', 'generator/preview', '999', 'java', 'generator/preview/:tableName', '\0', '', '', null, null, null, '2019-11-26 14:54:36', null); INSERT INTO `sys_menu` VALUES ('117', null, '1', '0', '用户管理', null, null, '999', 'app', 'busUser', '\0', '\0', '\0', null, 'admin', 'admin', '2025-05-20 15:57:57', '2025-05-20 15:57:57'); INSERT INTO `sys_menu` VALUES ('118', '117', '3', '1', '用户列表', 'BusUser', 'bus/busUser/index', '999', 'peoples', 'busUser', '\0', '\0', '\0', 'busUser:list', 'admin', 'admin', '2025-05-20 16:00:45', '2025-05-20 16:00:45'); INSERT INTO `sys_menu` VALUES ('119', '118', '0', '2', '资料编辑', null, null, '999', null, null, '\0', '\0', '\0', 'busUser:edit', 'admin', 'admin', '2025-05-20 16:06:55', '2025-05-20 16:06:55'); @@ -904,27 +1330,3 @@ CREATE TABLE `sys_users_roles` ( -- ---------------------------- INSERT INTO `sys_users_roles` VALUES ('1', '1'); INSERT INTO `sys_users_roles` VALUES ('2', '2'); - --- ---------------------------- --- Table structure for tool_local_storage --- ---------------------------- -DROP TABLE IF EXISTS `tool_local_storage`; -CREATE TABLE `tool_local_storage` ( - `storage_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID', - `real_name` varchar(255) DEFAULT NULL COMMENT '文件真实的名称', - `name` varchar(255) DEFAULT NULL COMMENT '文件名', - `suffix` varchar(255) DEFAULT NULL COMMENT '后缀', - `path` varchar(255) DEFAULT NULL COMMENT '路径', - `type` varchar(255) DEFAULT NULL COMMENT '类型', - `size` varchar(100) DEFAULT NULL COMMENT '大小', - `create_by` varchar(255) DEFAULT NULL COMMENT '创建者', - `update_by` varchar(255) DEFAULT NULL COMMENT '更新者', - `create_time` datetime DEFAULT NULL COMMENT '创建日期', - `update_time` datetime DEFAULT NULL COMMENT '更新时间', - PRIMARY KEY (`storage_id`) USING BTREE -) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='本地存储'; - --- ---------------------------- --- Records of tool_local_storage --- ---------------------------- -INSERT INTO `tool_local_storage` VALUES ('10', '微信截图_20250519113418-20250519114324974.png', '123', 'png', 'F:\\idea_projects\\my\\totus-nline\\eladmin\\eladmin-upload\\file\\图片\\微信截图_20250519113418-20250519114324974.png', '图片', '23.79KB ', 'admin', 'admin', '2025-05-19 11:43:25', '2025-05-19 11:43:25');