diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..6af54a3
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,36 @@
+HELP.md
+target/
+!.mvn/wrapper/maven-wrapper.jar
+!**/src/main/**/target/
+!**/src/test/**/target/
+
+### STS ###
+.apt_generated
+.classpath
+.factorypath
+.project
+.settings
+.springBeans
+.sts4-cache
+
+### IntelliJ IDEA ###
+.idea
+*.iws
+*.iml
+*.ipr
+
+### NetBeans ###
+/nbproject/private/
+/nbbuild/
+/dist/
+/nbdist/
+/.nb-gradle/
+build/
+!**/src/main/**/build/
+!**/src/test/**/build/
+
+### VS Code ###
+.vscode/
+
+### log ###
+*/*.log
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..db3b4c4
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,230 @@
+
+
+ 4.0.0
+ org.nl
+ QRobot
+ 0.0.1-SNAPSHOT
+ QRobot
+ QRobot
+
+ 1.8
+ UTF-8
+ UTF-8
+ 2.6.13
+
+
+
+ org.springframework.boot
+ spring-boot-starter-jdbc
+
+
+ org.springframework.boot
+ spring-boot-starter-logging
+
+
+ ch.qos.logback
+ logback-classic
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+ org.springframework.boot
+ spring-boot-starter-logging
+
+
+ ch.qos.logback
+ logback-classic
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-websocket
+
+
+
+ org.springframework.boot
+ spring-boot-starter-aop
+
+
+
+
+ com.google.protobuf
+ protobuf-java
+ 3.21.12
+
+
+
+ com.baomidou
+ mybatis-plus-boot-starter
+ 3.5.2
+
+
+
+
+ cn.dev33
+ sa-token-spring-boot-starter
+ 1.34.0
+
+
+
+ org.aspectj
+ aspectjweaver
+ 1.9.2
+
+
+
+ cn.hutool
+ hutool-all
+ 5.7.14
+
+
+
+ com.alibaba
+ fastjson
+ 1.2.37
+
+
+
+ com.mysql
+ mysql-connector-j
+ runtime
+
+
+
+
+ ch.qos.logback
+ logback-classic
+ 1.2.3
+
+
+
+
+ com.alibaba
+ druid-spring-boot-starter
+ 1.1.22
+
+
+
+
+ com.alibaba
+ easyexcel
+ 3.1.1
+
+
+
+ org.projectlombok
+ lombok
+ true
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-dependencies
+ ${spring-boot.version}
+ pom
+ import
+
+
+
+
+
+
+
+ kr.motd.maven
+ os-maven-plugin
+ 1.7.0
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.8.1
+
+ 1.8
+ 1.8
+ UTF-8
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ true
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+ ${spring-boot.version}
+
+ org.nl.qrobot.QRobotApplication
+
+
+
+
+ repackage
+
+ repackage
+
+
+
+
+
+
+ org.xolstice.maven.plugins
+ protobuf-maven-plugin
+ 0.6.1
+
+
+ ${project.basedir}/src/main/proto
+
+ ${project.build.directory}/generated-sources/protobuf/java
+
+ com.google.protobuf:protoc:3.21.12:exe:windows-x86_64
+
+ true
+
+
+
+
+ compile
+ test-compile
+
+
+
+
+
+
+
+ ${basedir}/src/main/java
+
+ **/*.*
+
+
+
+
+ ${basedir}/src/main/resources
+
+ **/*.*
+
+
+
+
+
+
diff --git a/src/main/java/org/nl/qrobot/QRobotApplication.java b/src/main/java/org/nl/qrobot/QRobotApplication.java
new file mode 100644
index 0000000..e2c9e4d
--- /dev/null
+++ b/src/main/java/org/nl/qrobot/QRobotApplication.java
@@ -0,0 +1,43 @@
+package org.nl.qrobot;
+
+import org.mybatis.spring.annotation.MapperScan;
+import org.nl.qrobot.config.SpringContextHolder;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.context.annotation.Bean;
+import org.springframework.scheduling.annotation.EnableAsync;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.transaction.annotation.EnableTransactionManagement;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@EnableAsync
+@EnableScheduling
+@SpringBootApplication(exclude = {
+ org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration.class
+})
+@EnableTransactionManagement
+@RestController
+@MapperScan("org.nl.qrobot.**.mapper")
+public class QRobotApplication {
+
+ public static void main(String[] args) {
+ SpringApplication.run(QRobotApplication.class, args);
+ }
+
+ @Bean
+ public SpringContextHolder springContextHolder() {
+ return new SpringContextHolder();
+ }
+
+ /**
+ * 访问首页提示
+ *
+ * @return /
+ */
+ @GetMapping("/")
+ public String index() {
+ return "Backend service started successfully";
+ }
+
+}
diff --git a/src/main/java/org/nl/qrobot/apt/anomalyInfo/controller/AnomalyInfoController.java b/src/main/java/org/nl/qrobot/apt/anomalyInfo/controller/AnomalyInfoController.java
new file mode 100644
index 0000000..203f124
--- /dev/null
+++ b/src/main/java/org/nl/qrobot/apt/anomalyInfo/controller/AnomalyInfoController.java
@@ -0,0 +1,124 @@
+package org.nl.qrobot.apt.anomalyInfo.controller;
+
+import cn.dev33.satoken.annotation.SaIgnore;
+import com.alibaba.excel.EasyExcel;
+import org.nl.qrobot.apt.anomalyInfo.dao.ErrorHandling;
+import org.nl.qrobot.apt.anomalyInfo.dao.ErrorInfo;
+import org.nl.qrobot.apt.anomalyInfo.service.AnomalyInfoService;
+import org.nl.qrobot.apt.anomalyInfo.service.ErrorHandlingService;
+import org.nl.qrobot.apt.anomalyInfo.service.ErrorInfoService;
+import org.nl.qrobot.apt.vehicle.ProcessZip;
+import org.nl.qrobot.common.BadRequestException;
+import org.nl.qrobot.common.excel.ErrorHandlingListener;
+import org.nl.qrobot.common.excel.ErrorInfoListener;
+import org.nl.qrobot.config.file.FileProperties;
+import org.nl.qrobot.config.language.LangProcess;
+import org.nl.qrobot.util.FileConstant;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.annotation.Resource;
+import java.io.File;
+import java.io.IOException;
+
+/**
+ * @author dsh
+ * 2025/8/26
+ */
+@RestController
+@RequestMapping("/anomalyInfo")
+public class AnomalyInfoController {
+
+ @Resource
+ private AnomalyInfoService anomalyInfoService;
+
+ @Resource
+ private ErrorInfoService errorInfoService;
+
+ @Resource
+ private ErrorHandlingService errorHandlingService;
+
+ @Resource
+ private FileProperties properties;
+
+ @Resource
+ private ProcessZip processZip;
+
+ @SaIgnore
+ @PostMapping("/queryErrorDataByCode")
+ public ResponseEntity