Przeglądaj źródła

Merge remote-tracking branch 'origin/master'

林仔 1 miesiąc temu
rodzic
commit
9809c09cfd
54 zmienionych plików z 1119 dodań i 4600 usunięć
  1. 0 140
      .feisuan/rules/project_rule.md
  2. 0 1562
      logs/environment-service/spring.log
  3. 0 1423
      logs/pipe-network-service/spring.log
  4. 0 756
      logs/zksy-gateway/spring.log
  5. 5 13
      manhole-service/src/main/java/com/zksy/manhole/utils/MessageHandler.java
  6. 2 2
      pipe-network-service/sql/migration_case_workorder_list_menu.sql
  7. 1 1
      pipe-network-service/sql/migration_gas_workorder_menu.sql
  8. 8 8
      pipe-network-service/sql/migration_workorder_menu_reuse.sql
  9. 191 0
      pipe-network-service/sql/water_supply_alarm_test_data.sql
  10. 31 31
      pipe-network-service/sql/water_supply_monitoring_alarm_rebuild_test_data.sql
  11. 11 12
      pipe-network-service/sql/water_supply_threshold_test_data.sql
  12. 13 57
      pipe-network-service/zksy-admin/src/main/java/com/zksy/web/controller/alarm/AlarmController.java
  13. 5 5
      pipe-network-service/zksy-admin/src/main/java/com/zksy/web/controller/base/EquipmentTypeController.java
  14. 5 5
      pipe-network-service/zksy-admin/src/main/java/com/zksy/web/controller/drainage/DrainageEquipmentController.java
  15. 4 4
      pipe-network-service/zksy-admin/src/main/java/com/zksy/web/controller/drainage/DrainageEquipmentTypeController.java
  16. 72 10
      pipe-network-service/zksy-admin/src/main/java/com/zksy/web/controller/gasbasic/GasAlarmController.java
  17. 1 1
      pipe-network-service/zksy-admin/src/main/java/com/zksy/web/controller/gasbasic/GasPipePointController.java
  18. 34 1
      pipe-network-service/zksy-admin/src/main/java/com/zksy/web/controller/gasbasic/GisController.java
  19. 74 8
      pipe-network-service/zksy-admin/src/main/java/com/zksy/web/controller/gasbasic/PressureAlarmController.java
  20. 2 1
      pipe-network-service/zksy-admin/src/main/java/com/zksy/web/controller/manhole/ManholeDeviceController.java
  21. 1 1
      pipe-network-service/zksy-system/src/main/java/com/zksy/WaterSupply/MonitorAlarm/service/impl/WaterSupplyAlarmServiceImpl.java
  22. 4 4
      pipe-network-service/zksy-system/src/main/java/com/zksy/WaterSupply/importing/WaterDeviceLedgerImportService.java
  23. 1 1
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/alarm/service/impl/WarningThresholdServiceImpl.java
  24. 4 2
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/constant/GasEquipmentTypeEnum.java
  25. 9 14
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/domain/EquipmentType.java
  26. 4 4
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/domain/vo/DeviceTypeStatisticsVO.java
  27. 6 6
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/drill/service/impl/DrillSimulationServiceImpl.java
  28. 15 0
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/dto/HazardPageInDTO.java
  29. 102 0
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/enums/EquipmentTypeEnum.java
  30. 3 3
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/EquipmentTypeService.java
  31. 2 1
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/CaseInfoServiceImpl.java
  32. 6 6
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/DrillSimulationServiceImpl.java
  33. 13 8
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/EquipmentAbnormalServiceImpl.java
  34. 32 50
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/EquipmentBaseServiceImpl.java
  35. 60 56
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/EquipmentTypeServiceImpl.java
  36. 3 3
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/GasDashboardServiceImpl.java
  37. 3 3
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/GasEquipmentServiceImpl.java
  38. 5 4
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/GasMonitorServiceImpl.java
  39. 23 0
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/HazardHiddenAccountServiceImpl.java
  40. 6 2
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/ManholeLayerServiceImpl.java
  41. 12 21
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/MonitoringServiceImpl.java
  42. 99 55
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/WaterSupplyDeviceServiceImpl.java
  43. 2 21
      pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/WaterSupplyQueryService.java
  44. 9 8
      pipe-network-service/zksy-system/src/main/java/com/zksy/drainage/service/impl/DrainageWarningServiceImpl.java
  45. 1 1
      pipe-network-service/zksy-system/src/main/java/com/zksy/ops/dto/WorkOrderPageDTO.java
  46. 13 0
      pipe-network-service/zksy-system/src/main/java/com/zksy/ops/service/WorkOrderService.java
  47. 109 3
      pipe-network-service/zksy-system/src/main/java/com/zksy/ops/service/impl/WorkOrderServiceImpl.java
  48. 22 16
      pipe-network-service/zksy-system/src/main/resources/mapper/warning/EarlyWarningMapper.xml
  49. 4 4
      pipe-network-service/zksy-system/src/test/java/com/zksy/WaterSupply/MonitorAlarm/WaterSupplyAlarmDashboardServiceTest.java
  50. 19 19
      pipe-network-service/zksy-system/src/test/java/com/zksy/WaterSupply/Monitoring/MonitoringFixtureTypeContractTest.java
  51. 9 10
      pipe-network-service/zksy-system/src/test/java/com/zksy/WaterSupply/importing/WaterDeviceLedgerImportServiceTest.java
  52. 24 30
      pipe-network-service/zksy-system/src/test/java/com/zksy/base/service/impl/MonitoringServiceImplTest.java
  53. 33 202
      pipe-network-service/zksy-system/src/test/java/com/zksy/base/service/impl/WaterSupplyDeviceServiceImplTest.java
  54. 2 2
      pipe-network-service/zksy-system/src/test/java/com/zksy/ops/service/impl/WorkOrderServiceImplTest.java

+ 0 - 140
.feisuan/rules/project_rule.md

@@ -1,140 +0,0 @@
-
-# 开发规范指南
-为保证代码质量、可维护性、安全性与可扩展性,请在开发过程中严格遵循以下规范。
-
-## 一、项目基本信息
-
-- **工作目录**:`E:\work\pipe-ner-server`
-- **代码作者**:Administrator
-- **构建工具**:Maven
-- **JDK 版本**:Java 11 (JDK 11.0.27)
-- **核心框架**:Spring Boot 2.7.12
-- **微服务架构**:Spring Cloud 2021.0.3 + Spring Cloud Alibaba 2021.0.4.0
-
-## 二、项目目录结构
-
-本项目采用多模块 Maven 架构,包含网关、公共模块及多个业务服务模块。
-
-```text
-pipe-ner-server
-├── audio-service                 # 音频服务
-├── docs                          # 文档
-├── environment-service           # 环境服务
-├── firefighting-pressure-service # 消防压力服务
-├── flammable-gas-service         # 易燃气体服务
-├── manhole-service               # 井盖服务
-├── pipe-network-service          # 管网核心服务
-│   ├── zksy-admin                # Web服务入口
-│   ├── zksy-common               # 通用工具
-│   ├── zksy-framework            # 框架核心
-│   ├── zksy-generator            # 代码生成
-│   ├── zksy-quartz               # 定时任务
-│   └── zksy-system               # 系统模块
-├── radar-service                 # 雷达服务
-├── telemetry-service             # 遥测服务
-├── water-level-service           # 水位服务
-├── zk-api-service                # API服务
-├── zk-common                     # 公共模块
-└── zk-gateway                    # 网关服务
-```
-
-## 三、技术栈要求
-
-- **主框架**:Spring Boot 2.7.12
-- **语言版本**:Java 11
-- **数据库**:KingbaseES (人大金仓) / MySQL
-- **ORM框架**:MyBatis-Plus 3.5.7
-- **核心依赖**:
-  - `spring-boot-starter-web`
-  - `mybatis-plus-boot-starter`
-  - `lombok`
-  - `hutool-all` (工具类库)
-  - `spring-cloud-starter-alibaba-nacos` (注册中心/配置中心)
-  - `spring-cloud-starter-alibaba-sentinel` (熔断限流)
-  - `knife4j-openapi2-spring-boot-starter` (API文档)
-
-## 四、分层架构规范
-
-| 层级        | 职责说明                         | 开发约束与注意事项                                               |
-|-------------|----------------------------------|----------------------------------------------------------------|
-| **Controller** | 处理 HTTP 请求与响应,定义 API 接口 | 使用 `@RestController`;不得包含业务逻辑,仅负责参数校验和结果封装 |
-| **Service**    | 实现业务逻辑、事务管理与数据校验   | 接口定义在 `service` 包,实现类放在 `service.impl` 包;事务注解 `@Transactional` 仅在此层使用 |
-| **Mapper**     | 数据库访问与持久化操作             | 继承 `BaseMapper`;对应 XML 文件需放在 `resources/mapper` 目录下 |
-| **Domain/Entity** | 映射数据库表结构及数据传输对象     | 实体类建议放在 `domain` 包;DTO/VO/Query 对象按职责定义          |
-
-### 接口与实现分离
-
-- 所有 Service 接口实现类需放在接口所在包下的 `impl` 子包中。
-
-## 五、安全与性能规范
-
-### 输入校验
-
-- 使用 `@Valid` 与 JSR-303 校验注解(如 `@NotBlank`, `@Size` 等)
-  - **注意**:Spring Boot 2.x 中校验注解位于 `javax.validation.constraints.*`
-- 禁止在 XML 文件中使用 `${}` 拼接 SQL,防止 SQL 注入,必须使用 `#{}`。
-
-### 事务管理
-
-- `@Transactional` 注解仅用于 **Service 层**方法。
-- 避免在循环中频繁提交事务,影响性能。
-
-## 六、代码风格规范
-
-### 命名规范
-
-| 类型       | 命名方式             | 示例                  |
-|------------|----------------------|-----------------------|
-| 类名       | UpperCamelCase       | `UserServiceImpl`     |
-| 方法/变量  | lowerCamelCase       | `saveUser()`          |
-| 常量       | UPPER_SNAKE_CASE     | `MAX_LOGIN_ATTEMPTS`  |
-
-### 注释规范
-
-- 所有类、接口、公共方法需添加 **Javadoc** 注释。
-- **注释语言**:必须使用中文(用户第一语言)。
-- 作者信息统一填写:`@author Administrator`
-
-### 类型命名规范(阿里巴巴风格)
-
-| 后缀 | 用途说明                     | 示例         |
-|------|------------------------------|--------------|
-| DTO  | 数据传输对象                 | `UserDTO`    |
-| Entity/DO   | 数据库实体对象               | `UserDO`     |
-| BO   | 业务逻辑封装对象             | `UserBO`     |
-| VO   | 视图展示对象                 | `UserVO`     |
-| Query| 查询参数封装对象             | `UserQuery`  |
-
-### 实体类简化工具
-
-- 使用 Lombok 注解替代手动编写 getter/setter/构造方法:
-  - `@Data`
-  - `@NoArgsConstructor`
-  - `@AllArgsConstructor`
-  - `@Builder` (如需链式调用)
-
-## 七、扩展性与日志规范
-
-### 接口优先原则
-
-- 所有业务逻辑通过接口定义(如 `UserService`),具体实现放在 `impl` 包中(如 `UserServiceImpl`)。
-
-### 日志记录
-
-- 使用 `@Slf4j` 注解代替 `System.out.println`。
-- 日志级别规范:开发环境使用 DEBUG,生产环境使用 INFO 或 WARN。
-
-### 工具类使用
-
-- 优先使用 `hutool-all` 工具包中的工具类(如 `StrUtil`, `CollUtil` 等),避免重复造轮子。
-- 日期处理优先使用 `java.time` 包下的类。
-
-## 八、编码原则总结
-
-| 原则       | 说明                                       |
-|------------|--------------------------------------------|
-| **SOLID**  | 高内聚、低耦合,增强可维护性与可扩展性     |
-| **DRY**    | 避免重复代码,提高复用性                   |
-| **KISS**   | 保持代码简洁易懂                           |
-| **YAGNI**  | 不实现当前不需要的功能                     |
-| **OWASP**  | 防范常见安全漏洞,如 SQL 注入、XSS 等      |

+ 0 - 1562
logs/environment-service/spring.log

@@ -1,1562 +0,0 @@
-11:54:54:143  INFO 27300 --- [main] c.z.environment.EnvironmentApplication   : The following 1 profile is active: "druid"
-11:54:55:629  INFO 27300 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
-11:54:55:633  INFO 27300 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-11:54:55:675  INFO 27300 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 17 ms. Found 0 Redis repository interfaces.
-11:54:55:993  WARN 27300 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'alarmDataMapper' and 'com.zksy.api.mapper.AlarmDataMapper' mapperInterface. Bean already defined with the same name!
-11:54:56:006  WARN 27300 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'caseInfoApiMapper' and 'com.zksy.api.mapper.CaseInfoApiMapper' mapperInterface. Bean already defined with the same name!
-11:54:56:007  WARN 27300 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'equipmentBaseApiMapper' and 'com.zksy.api.mapper.EquipmentBaseApiMapper' mapperInterface. Bean already defined with the same name!
-11:54:56:007  WARN 27300 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'warningThresholdMapper' and 'com.zksy.api.mapper.WarningThresholdMapper' mapperInterface. Bean already defined with the same name!
-11:54:56:007  WARN 27300 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderApiMapper' and 'com.zksy.api.mapper.WorkOrderApiMapper' mapperInterface. Bean already defined with the same name!
-11:54:56:007  WARN 27300 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderLogApiMapper' and 'com.zksy.api.mapper.WorkOrderLogApiMapper' mapperInterface. Bean already defined with the same name!
-11:54:56:121  INFO 27300 --- [main] o.s.cloud.context.scope.GenericScope     : BeanFactory id=385cdad6-7e17-3259-be68-7cac08711491
-11:54:56:797  INFO 27300 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8302 (http)
-11:54:56:806  INFO 27300 --- [main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
-11:54:56:807  INFO 27300 --- [main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.75]
-11:54:56:971  INFO 27300 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
-11:54:56:971  INFO 27300 --- [main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 2796 ms
-11:54:57:099  WARN 27300 --- [main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'RSServerService': Unsatisfied dependency expressed through field 'realTimeDataMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'ERealTimeDataMapper' defined in file [E:\workSpace\pipe-ner-server\environment-service\target\classes\com\zksy\environment\mapper\ERealTimeDataMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-11:54:57:100  INFO 27300 --- [main] o.apache.catalina.core.StandardService   : Stopping service [Tomcat]
-11:54:57:112  INFO 27300 --- [main] ConditionEvaluationReportLoggingListener : 
-
-Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
-11:54:57:134 ERROR 27300 --- [main] o.s.boot.SpringApplication               : Application run failed
-
-org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'RSServerService': Unsatisfied dependency expressed through field 'realTimeDataMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'ERealTimeDataMapper' defined in file [E:\workSpace\pipe-ner-server\environment-service\target\classes\com\zksy\environment\mapper\ERealTimeDataMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:660) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:920) ~[spring-context-5.3.27.jar:5.3.27]
-	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.27.jar:5.3.27]
-	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292) ~[spring-boot-2.7.12.jar:2.7.12]
-	at com.zksy.environment.EnvironmentApplication.main(EnvironmentApplication.java:24) ~[classes/:na]
-Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'ERealTimeDataMapper' defined in file [E:\workSpace\pipe-ner-server\environment-service\target\classes\com\zksy\environment\mapper\ERealTimeDataMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1534) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1417) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:657) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 20 common frames omitted
-Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:541) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1519) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 31 common frames omitted
-Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:638) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 44 common frames omitted
-Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 58 common frames omitted
-Caused by: java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.util.Assert.state(Assert.java:97) ~[spring-core-5.3.27.jar:5.3.27]
-	at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.determineDriverClassName(DataSourceProperties.java:175) ~[spring-boot-autoconfigure-2.7.12.jar:2.7.12]
-	at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.initializeDataSourceBuilder(DataSourceProperties.java:125) ~[spring-boot-autoconfigure-2.7.12.jar:2.7.12]
-	at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration.createDataSource(DataSourceConfiguration.java:48) ~[spring-boot-autoconfigure-2.7.12.jar:2.7.12]
-	at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration$Hikari.dataSource(DataSourceConfiguration.java:90) ~[spring-boot-autoconfigure-2.7.12.jar:2.7.12]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
-	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
-	at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
-	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 59 common frames omitted
-
-11:54:57:136  WARN 27300 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Start destroying common HttpClient
-11:54:57:136  WARN 27300 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Start destroying Publisher
-11:54:57:137  WARN 27300 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Destruction of the end
-11:56:02:967  INFO 11496 --- [main] c.z.environment.EnvironmentApplication   : The following 1 profile is active: "druid"
-11:56:03:635  INFO 11496 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
-11:56:03:637  INFO 11496 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-11:56:03:657  INFO 11496 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 9 ms. Found 0 Redis repository interfaces.
-11:56:03:802  WARN 11496 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'alarmDataMapper' and 'com.zksy.api.mapper.AlarmDataMapper' mapperInterface. Bean already defined with the same name!
-11:56:03:802  WARN 11496 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'caseInfoApiMapper' and 'com.zksy.api.mapper.CaseInfoApiMapper' mapperInterface. Bean already defined with the same name!
-11:56:03:802  WARN 11496 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'equipmentBaseApiMapper' and 'com.zksy.api.mapper.EquipmentBaseApiMapper' mapperInterface. Bean already defined with the same name!
-11:56:03:802  WARN 11496 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'warningThresholdMapper' and 'com.zksy.api.mapper.WarningThresholdMapper' mapperInterface. Bean already defined with the same name!
-11:56:03:802  WARN 11496 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderApiMapper' and 'com.zksy.api.mapper.WorkOrderApiMapper' mapperInterface. Bean already defined with the same name!
-11:56:03:802  WARN 11496 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderLogApiMapper' and 'com.zksy.api.mapper.WorkOrderLogApiMapper' mapperInterface. Bean already defined with the same name!
-11:56:03:881  INFO 11496 --- [main] o.s.cloud.context.scope.GenericScope     : BeanFactory id=385cdad6-7e17-3259-be68-7cac08711491
-11:56:04:305  INFO 11496 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8302 (http)
-11:56:04:313  INFO 11496 --- [main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
-11:56:04:313  INFO 11496 --- [main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.75]
-11:56:04:457  INFO 11496 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
-11:56:04:457  INFO 11496 --- [main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1479 ms
-11:56:04:576  WARN 11496 --- [main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'RSServerService': Unsatisfied dependency expressed through field 'realTimeDataMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'ERealTimeDataMapper' defined in file [E:\workSpace\pipe-ner-server\environment-service\target\classes\com\zksy\environment\mapper\ERealTimeDataMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-11:56:04:577  INFO 11496 --- [main] o.apache.catalina.core.StandardService   : Stopping service [Tomcat]
-11:56:04:588  INFO 11496 --- [main] ConditionEvaluationReportLoggingListener : 
-
-Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
-11:56:04:607 ERROR 11496 --- [main] o.s.boot.SpringApplication               : Application run failed
-
-org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'RSServerService': Unsatisfied dependency expressed through field 'realTimeDataMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'ERealTimeDataMapper' defined in file [E:\workSpace\pipe-ner-server\environment-service\target\classes\com\zksy\environment\mapper\ERealTimeDataMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:660) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:920) ~[spring-context-5.3.27.jar:5.3.27]
-	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.27.jar:5.3.27]
-	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292) ~[spring-boot-2.7.12.jar:2.7.12]
-	at com.zksy.environment.EnvironmentApplication.main(EnvironmentApplication.java:24) ~[classes/:na]
-Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'ERealTimeDataMapper' defined in file [E:\workSpace\pipe-ner-server\environment-service\target\classes\com\zksy\environment\mapper\ERealTimeDataMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1534) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1417) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:657) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 20 common frames omitted
-Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:541) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1519) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 31 common frames omitted
-Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:638) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 44 common frames omitted
-Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 58 common frames omitted
-Caused by: java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.util.Assert.state(Assert.java:97) ~[spring-core-5.3.27.jar:5.3.27]
-	at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.determineDriverClassName(DataSourceProperties.java:175) ~[spring-boot-autoconfigure-2.7.12.jar:2.7.12]
-	at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.initializeDataSourceBuilder(DataSourceProperties.java:125) ~[spring-boot-autoconfigure-2.7.12.jar:2.7.12]
-	at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration.createDataSource(DataSourceConfiguration.java:48) ~[spring-boot-autoconfigure-2.7.12.jar:2.7.12]
-	at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration$Hikari.dataSource(DataSourceConfiguration.java:90) ~[spring-boot-autoconfigure-2.7.12.jar:2.7.12]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
-	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
-	at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
-	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 59 common frames omitted
-
-11:56:04:608  WARN 11496 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Start destroying common HttpClient
-11:56:04:609  WARN 11496 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Start destroying Publisher
-11:56:04:609  WARN 11496 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Destruction of the end
-11:59:46:713  INFO 28500 --- [main] c.z.environment.EnvironmentApplication   : The following 1 profile is active: "druid"
-11:59:47:376  INFO 28500 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
-11:59:47:378  INFO 28500 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-11:59:47:398  INFO 28500 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 9 ms. Found 0 Redis repository interfaces.
-11:59:47:541  WARN 28500 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'alarmDataMapper' and 'com.zksy.api.mapper.AlarmDataMapper' mapperInterface. Bean already defined with the same name!
-11:59:47:541  WARN 28500 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'caseInfoApiMapper' and 'com.zksy.api.mapper.CaseInfoApiMapper' mapperInterface. Bean already defined with the same name!
-11:59:47:541  WARN 28500 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'equipmentBaseApiMapper' and 'com.zksy.api.mapper.EquipmentBaseApiMapper' mapperInterface. Bean already defined with the same name!
-11:59:47:541  WARN 28500 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'warningThresholdMapper' and 'com.zksy.api.mapper.WarningThresholdMapper' mapperInterface. Bean already defined with the same name!
-11:59:47:541  WARN 28500 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderApiMapper' and 'com.zksy.api.mapper.WorkOrderApiMapper' mapperInterface. Bean already defined with the same name!
-11:59:47:541  WARN 28500 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderLogApiMapper' and 'com.zksy.api.mapper.WorkOrderLogApiMapper' mapperInterface. Bean already defined with the same name!
-11:59:47:615  INFO 28500 --- [main] o.s.cloud.context.scope.GenericScope     : BeanFactory id=385cdad6-7e17-3259-be68-7cac08711491
-11:59:48:019  INFO 28500 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8302 (http)
-11:59:48:027  INFO 28500 --- [main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
-11:59:48:027  INFO 28500 --- [main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.75]
-11:59:48:160  INFO 28500 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
-11:59:48:160  INFO 28500 --- [main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1436 ms
-11:59:48:274  WARN 28500 --- [main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'RSServerService': Unsatisfied dependency expressed through field 'realTimeDataMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'ERealTimeDataMapper' defined in file [E:\workSpace\pipe-ner-server\environment-service\target\classes\com\zksy\environment\mapper\ERealTimeDataMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-11:59:48:275  INFO 28500 --- [main] o.apache.catalina.core.StandardService   : Stopping service [Tomcat]
-11:59:48:286  INFO 28500 --- [main] ConditionEvaluationReportLoggingListener : 
-
-Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
-11:59:48:306 ERROR 28500 --- [main] o.s.boot.SpringApplication               : Application run failed
-
-org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'RSServerService': Unsatisfied dependency expressed through field 'realTimeDataMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'ERealTimeDataMapper' defined in file [E:\workSpace\pipe-ner-server\environment-service\target\classes\com\zksy\environment\mapper\ERealTimeDataMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:660) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:920) ~[spring-context-5.3.27.jar:5.3.27]
-	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.27.jar:5.3.27]
-	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292) ~[spring-boot-2.7.12.jar:2.7.12]
-	at com.zksy.environment.EnvironmentApplication.main(EnvironmentApplication.java:24) ~[classes/:na]
-Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'ERealTimeDataMapper' defined in file [E:\workSpace\pipe-ner-server\environment-service\target\classes\com\zksy\environment\mapper\ERealTimeDataMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1534) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1417) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:657) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 20 common frames omitted
-Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:541) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1519) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 31 common frames omitted
-Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:638) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 44 common frames omitted
-Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 58 common frames omitted
-Caused by: java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.util.Assert.state(Assert.java:97) ~[spring-core-5.3.27.jar:5.3.27]
-	at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.determineDriverClassName(DataSourceProperties.java:175) ~[spring-boot-autoconfigure-2.7.12.jar:2.7.12]
-	at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.initializeDataSourceBuilder(DataSourceProperties.java:125) ~[spring-boot-autoconfigure-2.7.12.jar:2.7.12]
-	at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration.createDataSource(DataSourceConfiguration.java:48) ~[spring-boot-autoconfigure-2.7.12.jar:2.7.12]
-	at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration$Hikari.dataSource(DataSourceConfiguration.java:90) ~[spring-boot-autoconfigure-2.7.12.jar:2.7.12]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
-	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
-	at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
-	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 59 common frames omitted
-
-11:59:48:308  WARN 28500 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Start destroying Publisher
-11:59:48:308  WARN 28500 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Start destroying common HttpClient
-11:59:48:309  WARN 28500 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Destruction of the end
-13:41:37:067  INFO 4840 --- [main] c.z.environment.EnvironmentApplication   : The following 1 profile is active: "dev"
-13:41:37:606  INFO 4840 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
-13:41:37:608  INFO 4840 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-13:41:37:628  INFO 4840 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 9 ms. Found 0 Redis repository interfaces.
-13:41:37:763  WARN 4840 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'alarmDataMapper' and 'com.zksy.api.mapper.AlarmDataMapper' mapperInterface. Bean already defined with the same name!
-13:41:37:763  WARN 4840 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'caseInfoApiMapper' and 'com.zksy.api.mapper.CaseInfoApiMapper' mapperInterface. Bean already defined with the same name!
-13:41:37:763  WARN 4840 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'equipmentBaseApiMapper' and 'com.zksy.api.mapper.EquipmentBaseApiMapper' mapperInterface. Bean already defined with the same name!
-13:41:37:763  WARN 4840 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'warningThresholdMapper' and 'com.zksy.api.mapper.WarningThresholdMapper' mapperInterface. Bean already defined with the same name!
-13:41:37:763  WARN 4840 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderApiMapper' and 'com.zksy.api.mapper.WorkOrderApiMapper' mapperInterface. Bean already defined with the same name!
-13:41:37:763  WARN 4840 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderLogApiMapper' and 'com.zksy.api.mapper.WorkOrderLogApiMapper' mapperInterface. Bean already defined with the same name!
-13:41:37:832  INFO 4840 --- [main] o.s.cloud.context.scope.GenericScope     : BeanFactory id=03ad1b1d-df9c-31a6-8c6e-9c33dfe89bc0
-13:41:38:222  INFO 4840 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8080 (http)
-13:41:38:230  INFO 4840 --- [main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
-13:41:38:230  INFO 4840 --- [main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.75]
-13:41:38:362  INFO 4840 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
-13:41:38:363  INFO 4840 --- [main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1286 ms
-13:41:38:467  WARN 4840 --- [main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'RSServerService': Unsatisfied dependency expressed through field 'realTimeDataMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'ERealTimeDataMapper' defined in file [E:\workSpace\pipe-ner-server\environment-service\target\classes\com\zksy\environment\mapper\ERealTimeDataMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-13:41:38:468  INFO 4840 --- [main] o.apache.catalina.core.StandardService   : Stopping service [Tomcat]
-13:41:38:480  INFO 4840 --- [main] ConditionEvaluationReportLoggingListener : 
-
-Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
-13:41:38:500 ERROR 4840 --- [main] o.s.boot.SpringApplication               : Application run failed
-
-org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'RSServerService': Unsatisfied dependency expressed through field 'realTimeDataMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'ERealTimeDataMapper' defined in file [E:\workSpace\pipe-ner-server\environment-service\target\classes\com\zksy\environment\mapper\ERealTimeDataMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:660) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:920) ~[spring-context-5.3.27.jar:5.3.27]
-	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.27.jar:5.3.27]
-	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292) ~[spring-boot-2.7.12.jar:2.7.12]
-	at com.zksy.environment.EnvironmentApplication.main(EnvironmentApplication.java:24) ~[classes/:na]
-Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'ERealTimeDataMapper' defined in file [E:\workSpace\pipe-ner-server\environment-service\target\classes\com\zksy\environment\mapper\ERealTimeDataMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1534) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1417) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:657) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 20 common frames omitted
-Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:541) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1519) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 31 common frames omitted
-Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:638) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 44 common frames omitted
-Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 58 common frames omitted
-Caused by: java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver
-	at org.springframework.util.Assert.state(Assert.java:97) ~[spring-core-5.3.27.jar:5.3.27]
-	at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.determineDriverClassName(DataSourceProperties.java:175) ~[spring-boot-autoconfigure-2.7.12.jar:2.7.12]
-	at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.initializeDataSourceBuilder(DataSourceProperties.java:125) ~[spring-boot-autoconfigure-2.7.12.jar:2.7.12]
-	at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration.createDataSource(DataSourceConfiguration.java:48) ~[spring-boot-autoconfigure-2.7.12.jar:2.7.12]
-	at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration$Hikari.dataSource(DataSourceConfiguration.java:90) ~[spring-boot-autoconfigure-2.7.12.jar:2.7.12]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
-	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
-	at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
-	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 59 common frames omitted
-
-13:41:38:502  WARN 4840 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Start destroying common HttpClient
-13:41:38:502  WARN 4840 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Start destroying Publisher
-13:42:28:172  INFO 29308 --- [main] c.z.environment.EnvironmentApplication   : The following 1 profile is active: "dev"
-13:42:28:854  INFO 29308 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
-13:42:28:856  INFO 29308 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-13:42:28:877  INFO 29308 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 9 ms. Found 0 Redis repository interfaces.
-13:42:29:050  WARN 29308 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'alarmDataMapper' and 'com.zksy.api.mapper.AlarmDataMapper' mapperInterface. Bean already defined with the same name!
-13:42:29:050  WARN 29308 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'caseInfoApiMapper' and 'com.zksy.api.mapper.CaseInfoApiMapper' mapperInterface. Bean already defined with the same name!
-13:42:29:050  WARN 29308 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'equipmentBaseApiMapper' and 'com.zksy.api.mapper.EquipmentBaseApiMapper' mapperInterface. Bean already defined with the same name!
-13:42:29:050  WARN 29308 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'warningThresholdMapper' and 'com.zksy.api.mapper.WarningThresholdMapper' mapperInterface. Bean already defined with the same name!
-13:42:29:050  WARN 29308 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderApiMapper' and 'com.zksy.api.mapper.WorkOrderApiMapper' mapperInterface. Bean already defined with the same name!
-13:42:29:050  WARN 29308 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderLogApiMapper' and 'com.zksy.api.mapper.WorkOrderLogApiMapper' mapperInterface. Bean already defined with the same name!
-13:42:29:131  INFO 29308 --- [main] o.s.cloud.context.scope.GenericScope     : BeanFactory id=385cdad6-7e17-3259-be68-7cac08711491
-13:42:29:545  INFO 29308 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8302 (http)
-13:42:29:554  INFO 29308 --- [main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
-13:42:29:554  INFO 29308 --- [main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.75]
-13:42:29:689  INFO 29308 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
-13:42:29:689  INFO 29308 --- [main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1506 ms
-13:42:30:167  WARN 29308 --- [main] c.b.m.core.injector.DefaultSqlInjector   : class com.zksy.base.domain.AlarmAssignDetail ,Not found @TableId annotation, Cannot use Mybatis-Plus 'xxById' Method.
-13:42:30:177  WARN 29308 --- [main] c.b.m.core.injector.DefaultSqlInjector   : class com.zksy.base.domain.AlarmAssignList ,Not found @TableId annotation, Cannot use Mybatis-Plus 'xxById' Method.
-13:42:31:508  WARN 29308 --- [main] com.zaxxer.hikari.HikariConfig           : HikariPool-1 - idleTimeout is close to or more than maxLifetime, disabling it.
-13:42:31:508  INFO 29308 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Starting...
-13:42:31:621  INFO 29308 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Start completed.
-13:42:31:665  WARN 29308 --- [main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'RSServerService': Unsatisfied dependency expressed through field 'devicePhoneFetchUtil'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'devicePhoneFetchUtil': Unsatisfied dependency expressed through field 'sysUserService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sysUserServiceImpl': Unsatisfied dependency expressed through field 'configService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sysConfigServiceImpl': Invocation of init method failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: 
-### Error querying database.  Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-### The error may exist in file [E:\workSpace\pipe-ner-server\pipe-network-service\zksy-system\target\classes\mapper\system\SysConfigMapper.xml]
-### The error may involve com.zksy.system.mapper.SysConfigMapper.selectConfigList-Inline
-### The error occurred while setting parameters
-### SQL: select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark    from sys_config
-### Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-13:42:31:677  INFO 29308 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown initiated...
-13:42:31:679  INFO 29308 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown completed.
-13:42:31:679  INFO 29308 --- [main] o.apache.catalina.core.StandardService   : Stopping service [Tomcat]
-13:42:31:687  INFO 29308 --- [main] ConditionEvaluationReportLoggingListener : 
-
-Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
-13:42:31:709 ERROR 29308 --- [main] o.s.boot.SpringApplication               : Application run failed
-
-org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'RSServerService': Unsatisfied dependency expressed through field 'devicePhoneFetchUtil'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'devicePhoneFetchUtil': Unsatisfied dependency expressed through field 'sysUserService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sysUserServiceImpl': Unsatisfied dependency expressed through field 'configService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sysConfigServiceImpl': Invocation of init method failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: 
-### Error querying database.  Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-### The error may exist in file [E:\workSpace\pipe-ner-server\pipe-network-service\zksy-system\target\classes\mapper\system\SysConfigMapper.xml]
-### The error may involve com.zksy.system.mapper.SysConfigMapper.selectConfigList-Inline
-### The error occurred while setting parameters
-### SQL: select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark    from sys_config
-### Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:660) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:920) ~[spring-context-5.3.27.jar:5.3.27]
-	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.27.jar:5.3.27]
-	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292) ~[spring-boot-2.7.12.jar:2.7.12]
-	at com.zksy.environment.EnvironmentApplication.main(EnvironmentApplication.java:24) ~[classes/:na]
-Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'devicePhoneFetchUtil': Unsatisfied dependency expressed through field 'sysUserService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sysUserServiceImpl': Unsatisfied dependency expressed through field 'configService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sysConfigServiceImpl': Invocation of init method failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: 
-### Error querying database.  Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-### The error may exist in file [E:\workSpace\pipe-ner-server\pipe-network-service\zksy-system\target\classes\mapper\system\SysConfigMapper.xml]
-### The error may involve com.zksy.system.mapper.SysConfigMapper.selectConfigList-Inline
-### The error occurred while setting parameters
-### SQL: select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark    from sys_config
-### Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:660) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:657) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 20 common frames omitted
-Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sysUserServiceImpl': Unsatisfied dependency expressed through field 'configService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sysConfigServiceImpl': Invocation of init method failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: 
-### Error querying database.  Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-### The error may exist in file [E:\workSpace\pipe-ner-server\pipe-network-service\zksy-system\target\classes\mapper\system\SysConfigMapper.xml]
-### The error may involve com.zksy.system.mapper.SysConfigMapper.selectConfigList-Inline
-### The error occurred while setting parameters
-### SQL: select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark    from sys_config
-### Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:660) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:657) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 34 common frames omitted
-Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sysConfigServiceImpl': Invocation of init method failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: 
-### Error querying database.  Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-### The error may exist in file [E:\workSpace\pipe-ner-server\pipe-network-service\zksy-system\target\classes\mapper\system\SysConfigMapper.xml]
-### The error may involve com.zksy.system.mapper.SysConfigMapper.selectConfigList-Inline
-### The error occurred while setting parameters
-### SQL: select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark    from sys_config
-### Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:160) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:440) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1796) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:657) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 48 common frames omitted
-Caused by: org.springframework.jdbc.BadSqlGrammarException: 
-### Error querying database.  Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-### The error may exist in file [E:\workSpace\pipe-ner-server\pipe-network-service\zksy-system\target\classes\mapper\system\SysConfigMapper.xml]
-### The error may involve com.zksy.system.mapper.SysConfigMapper.selectConfigList-Inline
-### The error occurred while setting parameters
-### SQL: select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark    from sys_config
-### Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-	at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.doTranslate(SQLStateSQLExceptionTranslator.java:101) ~[spring-jdbc-5.3.27.jar:5.3.27]
-	at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:70) ~[spring-jdbc-5.3.27.jar:5.3.27]
-	at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:79) ~[spring-jdbc-5.3.27.jar:5.3.27]
-	at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:79) ~[spring-jdbc-5.3.27.jar:5.3.27]
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:92) ~[mybatis-spring-2.1.2.jar:2.1.2]
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:439) ~[mybatis-spring-2.1.2.jar:2.1.2]
-	at com.sun.proxy.$Proxy124.selectList(Unknown Source) ~[na:na]
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:224) ~[mybatis-spring-2.1.2.jar:2.1.2]
-	at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:164) ~[mybatis-plus-core-3.5.5.jar:3.5.5]
-	at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) ~[mybatis-plus-core-3.5.5.jar:3.5.5]
-	at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:152) ~[mybatis-plus-core-3.5.5.jar:3.5.5]
-	at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) ~[mybatis-plus-core-3.5.5.jar:3.5.5]
-	at com.sun.proxy.$Proxy144.selectConfigList(Unknown Source) ~[na:na]
-	at com.zksy.system.service.impl.SysConfigServiceImpl.loadingConfigCache(SysConfigServiceImpl.java:177) ~[classes/:na]
-	at com.zksy.system.service.impl.SysConfigServiceImpl.init(SysConfigServiceImpl.java:40) ~[classes/:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
-	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
-	at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
-	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:389) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:157) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 60 common frames omitted
-Caused by: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-	at com.kingbase8.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:3551) ~[kingbase8-8.6.0.jar:na]
-	at com.kingbase8.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2993) ~[kingbase8-8.6.0.jar:na]
-	at com.kingbase8.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:405) ~[kingbase8-8.6.0.jar:na]
-	at com.kingbase8.jdbc.KbStatement.executeInternal_(KbStatement.java:784) ~[kingbase8-8.6.0.jar:na]
-	at com.kingbase8.jdbc.KbStatement.execute(KbStatement.java:676) ~[kingbase8-8.6.0.jar:na]
-	at com.kingbase8.jdbc.KbPreparedStatement.executeWithFlags(KbPreparedStatement.java:286) ~[kingbase8-8.6.0.jar:na]
-	at com.kingbase8.jdbc.KbPreparedStatement.execute(KbPreparedStatement.java:265) ~[kingbase8-8.6.0.jar:na]
-	at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) ~[HikariCP-4.0.3.jar:na]
-	at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) ~[HikariCP-4.0.3.jar:na]
-	at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:65) ~[mybatis-3.5.15.jar:3.5.15]
-	at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:80) ~[mybatis-3.5.15.jar:3.5.15]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
-	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
-	at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
-	at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:61) ~[mybatis-3.5.15.jar:3.5.15]
-	at com.sun.proxy.$Proxy149.query(Unknown Source) ~[na:na]
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:65) ~[mybatis-3.5.15.jar:3.5.15]
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:336) ~[mybatis-3.5.15.jar:3.5.15]
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:158) ~[mybatis-3.5.15.jar:3.5.15]
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:110) ~[mybatis-3.5.15.jar:3.5.15]
-	at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:81) ~[mybatis-plus-extension-3.5.5.jar:3.5.5]
-	at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:59) ~[mybatis-3.5.15.jar:3.5.15]
-	at com.sun.proxy.$Proxy148.query(Unknown Source) ~[na:na]
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:154) ~[mybatis-3.5.15.jar:3.5.15]
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) ~[mybatis-3.5.15.jar:3.5.15]
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:142) ~[mybatis-3.5.15.jar:3.5.15]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
-	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
-	at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:425) ~[mybatis-spring-2.1.2.jar:2.1.2]
-	... 76 common frames omitted
-
-13:42:32:332  WARN 29308 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Start destroying common HttpClient
-13:42:32:333  WARN 29308 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Start destroying Publisher
-13:42:32:333  WARN 29308 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Destruction of the end
-13:53:34:309  INFO 24008 --- [main] c.z.environment.EnvironmentApplication   : The following 1 profile is active: "dev"
-13:53:34:992  INFO 24008 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
-13:53:34:994  INFO 24008 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-13:53:35:016  INFO 24008 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 9 ms. Found 0 Redis repository interfaces.
-13:53:35:164  WARN 24008 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'alarmDataMapper' and 'com.zksy.api.mapper.AlarmDataMapper' mapperInterface. Bean already defined with the same name!
-13:53:35:164  WARN 24008 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'caseInfoApiMapper' and 'com.zksy.api.mapper.CaseInfoApiMapper' mapperInterface. Bean already defined with the same name!
-13:53:35:164  WARN 24008 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'equipmentBaseApiMapper' and 'com.zksy.api.mapper.EquipmentBaseApiMapper' mapperInterface. Bean already defined with the same name!
-13:53:35:164  WARN 24008 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'warningThresholdMapper' and 'com.zksy.api.mapper.WarningThresholdMapper' mapperInterface. Bean already defined with the same name!
-13:53:35:164  WARN 24008 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderApiMapper' and 'com.zksy.api.mapper.WorkOrderApiMapper' mapperInterface. Bean already defined with the same name!
-13:53:35:164  WARN 24008 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderLogApiMapper' and 'com.zksy.api.mapper.WorkOrderLogApiMapper' mapperInterface. Bean already defined with the same name!
-13:53:35:246  INFO 24008 --- [main] o.s.cloud.context.scope.GenericScope     : BeanFactory id=385cdad6-7e17-3259-be68-7cac08711491
-13:53:35:694  INFO 24008 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8302 (http)
-13:53:35:702  INFO 24008 --- [main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
-13:53:35:702  INFO 24008 --- [main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.75]
-13:53:35:838  INFO 24008 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
-13:53:35:838  INFO 24008 --- [main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1518 ms
-13:53:36:354  WARN 24008 --- [main] c.b.m.core.injector.DefaultSqlInjector   : class com.zksy.base.domain.AlarmAssignDetail ,Not found @TableId annotation, Cannot use Mybatis-Plus 'xxById' Method.
-13:53:36:365  WARN 24008 --- [main] c.b.m.core.injector.DefaultSqlInjector   : class com.zksy.base.domain.AlarmAssignList ,Not found @TableId annotation, Cannot use Mybatis-Plus 'xxById' Method.
-13:53:37:685  WARN 24008 --- [main] com.zaxxer.hikari.HikariConfig           : HikariPool-1 - idleTimeout is close to or more than maxLifetime, disabling it.
-13:53:37:686  INFO 24008 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Starting...
-13:53:37:783  INFO 24008 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Start completed.
-13:53:37:827  WARN 24008 --- [main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'RSServerService': Unsatisfied dependency expressed through field 'devicePhoneFetchUtil'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'devicePhoneFetchUtil': Unsatisfied dependency expressed through field 'sysUserService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sysUserServiceImpl': Unsatisfied dependency expressed through field 'configService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sysConfigServiceImpl': Invocation of init method failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: 
-### Error querying database.  Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-### The error may exist in file [E:\workSpace\pipe-ner-server\pipe-network-service\zksy-system\target\classes\mapper\system\SysConfigMapper.xml]
-### The error may involve com.zksy.system.mapper.SysConfigMapper.selectConfigList-Inline
-### The error occurred while setting parameters
-### SQL: select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark    from sys_config
-### Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-13:53:37:840  INFO 24008 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown initiated...
-13:53:37:841  INFO 24008 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown completed.
-13:53:37:842  INFO 24008 --- [main] o.apache.catalina.core.StandardService   : Stopping service [Tomcat]
-13:53:37:850  INFO 24008 --- [main] ConditionEvaluationReportLoggingListener : 
-
-Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
-13:53:37:871 ERROR 24008 --- [main] o.s.boot.SpringApplication               : Application run failed
-
-org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'RSServerService': Unsatisfied dependency expressed through field 'devicePhoneFetchUtil'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'devicePhoneFetchUtil': Unsatisfied dependency expressed through field 'sysUserService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sysUserServiceImpl': Unsatisfied dependency expressed through field 'configService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sysConfigServiceImpl': Invocation of init method failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: 
-### Error querying database.  Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-### The error may exist in file [E:\workSpace\pipe-ner-server\pipe-network-service\zksy-system\target\classes\mapper\system\SysConfigMapper.xml]
-### The error may involve com.zksy.system.mapper.SysConfigMapper.selectConfigList-Inline
-### The error occurred while setting parameters
-### SQL: select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark    from sys_config
-### Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:660) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:920) ~[spring-context-5.3.27.jar:5.3.27]
-	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.27.jar:5.3.27]
-	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292) ~[spring-boot-2.7.12.jar:2.7.12]
-	at com.zksy.environment.EnvironmentApplication.main(EnvironmentApplication.java:24) ~[classes/:na]
-Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'devicePhoneFetchUtil': Unsatisfied dependency expressed through field 'sysUserService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sysUserServiceImpl': Unsatisfied dependency expressed through field 'configService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sysConfigServiceImpl': Invocation of init method failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: 
-### Error querying database.  Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-### The error may exist in file [E:\workSpace\pipe-ner-server\pipe-network-service\zksy-system\target\classes\mapper\system\SysConfigMapper.xml]
-### The error may involve com.zksy.system.mapper.SysConfigMapper.selectConfigList-Inline
-### The error occurred while setting parameters
-### SQL: select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark    from sys_config
-### Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:660) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:657) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 20 common frames omitted
-Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sysUserServiceImpl': Unsatisfied dependency expressed through field 'configService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sysConfigServiceImpl': Invocation of init method failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: 
-### Error querying database.  Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-### The error may exist in file [E:\workSpace\pipe-ner-server\pipe-network-service\zksy-system\target\classes\mapper\system\SysConfigMapper.xml]
-### The error may involve com.zksy.system.mapper.SysConfigMapper.selectConfigList-Inline
-### The error occurred while setting parameters
-### SQL: select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark    from sys_config
-### Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:660) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:657) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 34 common frames omitted
-Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sysConfigServiceImpl': Invocation of init method failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: 
-### Error querying database.  Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-### The error may exist in file [E:\workSpace\pipe-ner-server\pipe-network-service\zksy-system\target\classes\mapper\system\SysConfigMapper.xml]
-### The error may involve com.zksy.system.mapper.SysConfigMapper.selectConfigList-Inline
-### The error occurred while setting parameters
-### SQL: select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark    from sys_config
-### Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:160) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:440) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1796) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:657) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 48 common frames omitted
-Caused by: org.springframework.jdbc.BadSqlGrammarException: 
-### Error querying database.  Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-### The error may exist in file [E:\workSpace\pipe-ner-server\pipe-network-service\zksy-system\target\classes\mapper\system\SysConfigMapper.xml]
-### The error may involve com.zksy.system.mapper.SysConfigMapper.selectConfigList-Inline
-### The error occurred while setting parameters
-### SQL: select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark    from sys_config
-### Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-	at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.doTranslate(SQLStateSQLExceptionTranslator.java:101) ~[spring-jdbc-5.3.27.jar:5.3.27]
-	at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:70) ~[spring-jdbc-5.3.27.jar:5.3.27]
-	at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:79) ~[spring-jdbc-5.3.27.jar:5.3.27]
-	at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:79) ~[spring-jdbc-5.3.27.jar:5.3.27]
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:92) ~[mybatis-spring-2.1.2.jar:2.1.2]
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:439) ~[mybatis-spring-2.1.2.jar:2.1.2]
-	at com.sun.proxy.$Proxy124.selectList(Unknown Source) ~[na:na]
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:224) ~[mybatis-spring-2.1.2.jar:2.1.2]
-	at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:164) ~[mybatis-plus-core-3.5.5.jar:3.5.5]
-	at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) ~[mybatis-plus-core-3.5.5.jar:3.5.5]
-	at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:152) ~[mybatis-plus-core-3.5.5.jar:3.5.5]
-	at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) ~[mybatis-plus-core-3.5.5.jar:3.5.5]
-	at com.sun.proxy.$Proxy144.selectConfigList(Unknown Source) ~[na:na]
-	at com.zksy.system.service.impl.SysConfigServiceImpl.loadingConfigCache(SysConfigServiceImpl.java:177) ~[classes/:na]
-	at com.zksy.system.service.impl.SysConfigServiceImpl.init(SysConfigServiceImpl.java:40) ~[classes/:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
-	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
-	at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
-	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:389) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:157) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 60 common frames omitted
-Caused by: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-	at com.kingbase8.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:3551) ~[kingbase8-8.6.0.jar:na]
-	at com.kingbase8.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2993) ~[kingbase8-8.6.0.jar:na]
-	at com.kingbase8.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:405) ~[kingbase8-8.6.0.jar:na]
-	at com.kingbase8.jdbc.KbStatement.executeInternal_(KbStatement.java:784) ~[kingbase8-8.6.0.jar:na]
-	at com.kingbase8.jdbc.KbStatement.execute(KbStatement.java:676) ~[kingbase8-8.6.0.jar:na]
-	at com.kingbase8.jdbc.KbPreparedStatement.executeWithFlags(KbPreparedStatement.java:286) ~[kingbase8-8.6.0.jar:na]
-	at com.kingbase8.jdbc.KbPreparedStatement.execute(KbPreparedStatement.java:265) ~[kingbase8-8.6.0.jar:na]
-	at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) ~[HikariCP-4.0.3.jar:na]
-	at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) ~[HikariCP-4.0.3.jar:na]
-	at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:65) ~[mybatis-3.5.15.jar:3.5.15]
-	at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:80) ~[mybatis-3.5.15.jar:3.5.15]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
-	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
-	at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
-	at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:61) ~[mybatis-3.5.15.jar:3.5.15]
-	at com.sun.proxy.$Proxy149.query(Unknown Source) ~[na:na]
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:65) ~[mybatis-3.5.15.jar:3.5.15]
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:336) ~[mybatis-3.5.15.jar:3.5.15]
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:158) ~[mybatis-3.5.15.jar:3.5.15]
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:110) ~[mybatis-3.5.15.jar:3.5.15]
-	at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:81) ~[mybatis-plus-extension-3.5.5.jar:3.5.5]
-	at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:59) ~[mybatis-3.5.15.jar:3.5.15]
-	at com.sun.proxy.$Proxy148.query(Unknown Source) ~[na:na]
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:154) ~[mybatis-3.5.15.jar:3.5.15]
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) ~[mybatis-3.5.15.jar:3.5.15]
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:142) ~[mybatis-3.5.15.jar:3.5.15]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
-	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
-	at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:425) ~[mybatis-spring-2.1.2.jar:2.1.2]
-	... 76 common frames omitted
-
-13:53:38:515  WARN 24008 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Start destroying common HttpClient
-13:53:38:516  WARN 24008 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Start destroying Publisher
-13:53:38:517  WARN 24008 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Destruction of the end
-13:58:37:849  INFO 8596 --- [main] c.z.environment.EnvironmentApplication   : The following 1 profile is active: "dev"
-13:58:38:517  INFO 8596 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
-13:58:38:519  INFO 8596 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-13:58:38:539  INFO 8596 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 9 ms. Found 0 Redis repository interfaces.
-13:58:38:694  WARN 8596 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'alarmDataMapper' and 'com.zksy.api.mapper.AlarmDataMapper' mapperInterface. Bean already defined with the same name!
-13:58:38:695  WARN 8596 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'caseInfoApiMapper' and 'com.zksy.api.mapper.CaseInfoApiMapper' mapperInterface. Bean already defined with the same name!
-13:58:38:695  WARN 8596 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'equipmentBaseApiMapper' and 'com.zksy.api.mapper.EquipmentBaseApiMapper' mapperInterface. Bean already defined with the same name!
-13:58:38:695  WARN 8596 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'warningThresholdMapper' and 'com.zksy.api.mapper.WarningThresholdMapper' mapperInterface. Bean already defined with the same name!
-13:58:38:695  WARN 8596 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderApiMapper' and 'com.zksy.api.mapper.WorkOrderApiMapper' mapperInterface. Bean already defined with the same name!
-13:58:38:695  WARN 8596 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderLogApiMapper' and 'com.zksy.api.mapper.WorkOrderLogApiMapper' mapperInterface. Bean already defined with the same name!
-13:58:38:779  INFO 8596 --- [main] o.s.cloud.context.scope.GenericScope     : BeanFactory id=385cdad6-7e17-3259-be68-7cac08711491
-13:58:39:187  INFO 8596 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8302 (http)
-13:58:39:194  INFO 8596 --- [main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
-13:58:39:195  INFO 8596 --- [main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.75]
-13:58:39:325  INFO 8596 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
-13:58:39:325  INFO 8596 --- [main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1464 ms
-13:58:39:858  WARN 8596 --- [main] c.b.m.core.injector.DefaultSqlInjector   : class com.zksy.base.domain.AlarmAssignDetail ,Not found @TableId annotation, Cannot use Mybatis-Plus 'xxById' Method.
-13:58:39:868  WARN 8596 --- [main] c.b.m.core.injector.DefaultSqlInjector   : class com.zksy.base.domain.AlarmAssignList ,Not found @TableId annotation, Cannot use Mybatis-Plus 'xxById' Method.
-13:58:41:211  WARN 8596 --- [main] com.zaxxer.hikari.HikariConfig           : HikariPool-1 - idleTimeout is close to or more than maxLifetime, disabling it.
-13:58:41:211  INFO 8596 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Starting...
-13:58:41:318  INFO 8596 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Start completed.
-13:58:41:362  WARN 8596 --- [main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'RSServerService': Unsatisfied dependency expressed through field 'devicePhoneFetchUtil'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'devicePhoneFetchUtil': Unsatisfied dependency expressed through field 'sysUserService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sysUserServiceImpl': Unsatisfied dependency expressed through field 'configService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sysConfigServiceImpl': Invocation of init method failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: 
-### Error querying database.  Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-### The error may exist in file [E:\workSpace\pipe-ner-server\pipe-network-service\zksy-system\target\classes\mapper\system\SysConfigMapper.xml]
-### The error may involve com.zksy.system.mapper.SysConfigMapper.selectConfigList-Inline
-### The error occurred while setting parameters
-### SQL: select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark    from sys_config
-### Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-13:58:41:375  INFO 8596 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown initiated...
-13:58:41:377  INFO 8596 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown completed.
-13:58:41:378  INFO 8596 --- [main] o.apache.catalina.core.StandardService   : Stopping service [Tomcat]
-13:58:41:386  INFO 8596 --- [main] ConditionEvaluationReportLoggingListener : 
-
-Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
-13:58:41:409 ERROR 8596 --- [main] o.s.boot.SpringApplication               : Application run failed
-
-org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'RSServerService': Unsatisfied dependency expressed through field 'devicePhoneFetchUtil'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'devicePhoneFetchUtil': Unsatisfied dependency expressed through field 'sysUserService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sysUserServiceImpl': Unsatisfied dependency expressed through field 'configService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sysConfigServiceImpl': Invocation of init method failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: 
-### Error querying database.  Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-### The error may exist in file [E:\workSpace\pipe-ner-server\pipe-network-service\zksy-system\target\classes\mapper\system\SysConfigMapper.xml]
-### The error may involve com.zksy.system.mapper.SysConfigMapper.selectConfigList-Inline
-### The error occurred while setting parameters
-### SQL: select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark    from sys_config
-### Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:660) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:920) ~[spring-context-5.3.27.jar:5.3.27]
-	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.27.jar:5.3.27]
-	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292) ~[spring-boot-2.7.12.jar:2.7.12]
-	at com.zksy.environment.EnvironmentApplication.main(EnvironmentApplication.java:24) ~[classes/:na]
-Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'devicePhoneFetchUtil': Unsatisfied dependency expressed through field 'sysUserService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sysUserServiceImpl': Unsatisfied dependency expressed through field 'configService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sysConfigServiceImpl': Invocation of init method failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: 
-### Error querying database.  Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-### The error may exist in file [E:\workSpace\pipe-ner-server\pipe-network-service\zksy-system\target\classes\mapper\system\SysConfigMapper.xml]
-### The error may involve com.zksy.system.mapper.SysConfigMapper.selectConfigList-Inline
-### The error occurred while setting parameters
-### SQL: select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark    from sys_config
-### Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:660) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:657) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 20 common frames omitted
-Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sysUserServiceImpl': Unsatisfied dependency expressed through field 'configService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sysConfigServiceImpl': Invocation of init method failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: 
-### Error querying database.  Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-### The error may exist in file [E:\workSpace\pipe-ner-server\pipe-network-service\zksy-system\target\classes\mapper\system\SysConfigMapper.xml]
-### The error may involve com.zksy.system.mapper.SysConfigMapper.selectConfigList-Inline
-### The error occurred while setting parameters
-### SQL: select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark    from sys_config
-### Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:660) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:657) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 34 common frames omitted
-Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sysConfigServiceImpl': Invocation of init method failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: 
-### Error querying database.  Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-### The error may exist in file [E:\workSpace\pipe-ner-server\pipe-network-service\zksy-system\target\classes\mapper\system\SysConfigMapper.xml]
-### The error may involve com.zksy.system.mapper.SysConfigMapper.selectConfigList-Inline
-### The error occurred while setting parameters
-### SQL: select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark    from sys_config
-### Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:160) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:440) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1796) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:657) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 48 common frames omitted
-Caused by: org.springframework.jdbc.BadSqlGrammarException: 
-### Error querying database.  Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-### The error may exist in file [E:\workSpace\pipe-ner-server\pipe-network-service\zksy-system\target\classes\mapper\system\SysConfigMapper.xml]
-### The error may involve com.zksy.system.mapper.SysConfigMapper.selectConfigList-Inline
-### The error occurred while setting parameters
-### SQL: select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark    from sys_config
-### Cause: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-	at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.doTranslate(SQLStateSQLExceptionTranslator.java:101) ~[spring-jdbc-5.3.27.jar:5.3.27]
-	at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:70) ~[spring-jdbc-5.3.27.jar:5.3.27]
-	at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:79) ~[spring-jdbc-5.3.27.jar:5.3.27]
-	at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:79) ~[spring-jdbc-5.3.27.jar:5.3.27]
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:92) ~[mybatis-spring-2.1.2.jar:2.1.2]
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:439) ~[mybatis-spring-2.1.2.jar:2.1.2]
-	at com.sun.proxy.$Proxy124.selectList(Unknown Source) ~[na:na]
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:224) ~[mybatis-spring-2.1.2.jar:2.1.2]
-	at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:164) ~[mybatis-plus-core-3.5.5.jar:3.5.5]
-	at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) ~[mybatis-plus-core-3.5.5.jar:3.5.5]
-	at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:152) ~[mybatis-plus-core-3.5.5.jar:3.5.5]
-	at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) ~[mybatis-plus-core-3.5.5.jar:3.5.5]
-	at com.sun.proxy.$Proxy144.selectConfigList(Unknown Source) ~[na:na]
-	at com.zksy.system.service.impl.SysConfigServiceImpl.loadingConfigCache(SysConfigServiceImpl.java:177) ~[classes/:na]
-	at com.zksy.system.service.impl.SysConfigServiceImpl.init(SysConfigServiceImpl.java:40) ~[classes/:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
-	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
-	at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
-	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:389) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:157) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 60 common frames omitted
-Caused by: com.kingbase8.util.KSQLException: ERROR: 字段 "config_id" 不存在
-  Position: 8 At Line: 1, Line Position: 8
-	at com.kingbase8.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:3551) ~[kingbase8-8.6.0.jar:na]
-	at com.kingbase8.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2993) ~[kingbase8-8.6.0.jar:na]
-	at com.kingbase8.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:405) ~[kingbase8-8.6.0.jar:na]
-	at com.kingbase8.jdbc.KbStatement.executeInternal_(KbStatement.java:784) ~[kingbase8-8.6.0.jar:na]
-	at com.kingbase8.jdbc.KbStatement.execute(KbStatement.java:676) ~[kingbase8-8.6.0.jar:na]
-	at com.kingbase8.jdbc.KbPreparedStatement.executeWithFlags(KbPreparedStatement.java:286) ~[kingbase8-8.6.0.jar:na]
-	at com.kingbase8.jdbc.KbPreparedStatement.execute(KbPreparedStatement.java:265) ~[kingbase8-8.6.0.jar:na]
-	at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) ~[HikariCP-4.0.3.jar:na]
-	at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) ~[HikariCP-4.0.3.jar:na]
-	at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:65) ~[mybatis-3.5.15.jar:3.5.15]
-	at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:80) ~[mybatis-3.5.15.jar:3.5.15]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
-	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
-	at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
-	at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:61) ~[mybatis-3.5.15.jar:3.5.15]
-	at com.sun.proxy.$Proxy149.query(Unknown Source) ~[na:na]
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:65) ~[mybatis-3.5.15.jar:3.5.15]
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:336) ~[mybatis-3.5.15.jar:3.5.15]
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:158) ~[mybatis-3.5.15.jar:3.5.15]
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:110) ~[mybatis-3.5.15.jar:3.5.15]
-	at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:81) ~[mybatis-plus-extension-3.5.5.jar:3.5.5]
-	at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:59) ~[mybatis-3.5.15.jar:3.5.15]
-	at com.sun.proxy.$Proxy148.query(Unknown Source) ~[na:na]
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:154) ~[mybatis-3.5.15.jar:3.5.15]
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) ~[mybatis-3.5.15.jar:3.5.15]
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:142) ~[mybatis-3.5.15.jar:3.5.15]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
-	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
-	at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:425) ~[mybatis-spring-2.1.2.jar:2.1.2]
-	... 76 common frames omitted
-
-13:58:42:036  WARN 8596 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Start destroying Publisher
-13:58:42:036  WARN 8596 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Start destroying common HttpClient
-13:58:42:036  WARN 8596 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Destruction of the end
-16:07:37:439  INFO 20692 --- [main] c.z.environment.EnvironmentApplication   : The following 1 profile is active: "dev"
-16:07:38:541  INFO 20692 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
-16:07:38:543  INFO 20692 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-16:07:38:566  INFO 20692 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 9 ms. Found 0 Redis repository interfaces.
-16:07:38:720  WARN 20692 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'alarmDataMapper' and 'com.zksy.api.mapper.AlarmDataMapper' mapperInterface. Bean already defined with the same name!
-16:07:38:720  WARN 20692 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'caseInfoApiMapper' and 'com.zksy.api.mapper.CaseInfoApiMapper' mapperInterface. Bean already defined with the same name!
-16:07:38:720  WARN 20692 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'equipmentBaseApiMapper' and 'com.zksy.api.mapper.EquipmentBaseApiMapper' mapperInterface. Bean already defined with the same name!
-16:07:38:720  WARN 20692 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'warningThresholdMapper' and 'com.zksy.api.mapper.WarningThresholdMapper' mapperInterface. Bean already defined with the same name!
-16:07:38:720  WARN 20692 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderApiMapper' and 'com.zksy.api.mapper.WorkOrderApiMapper' mapperInterface. Bean already defined with the same name!
-16:07:38:720  WARN 20692 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderLogApiMapper' and 'com.zksy.api.mapper.WorkOrderLogApiMapper' mapperInterface. Bean already defined with the same name!
-16:07:38:797  INFO 20692 --- [main] o.s.cloud.context.scope.GenericScope     : BeanFactory id=385cdad6-7e17-3259-be68-7cac08711491
-16:07:39:193  INFO 20692 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8302 (http)
-16:07:39:200  INFO 20692 --- [main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
-16:07:39:200  INFO 20692 --- [main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.75]
-16:07:39:327  INFO 20692 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
-16:07:39:327  INFO 20692 --- [main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1869 ms
-16:07:39:811  WARN 20692 --- [main] c.b.m.core.injector.DefaultSqlInjector   : class com.zksy.base.domain.AlarmAssignDetail ,Not found @TableId annotation, Cannot use Mybatis-Plus 'xxById' Method.
-16:07:39:820  WARN 20692 --- [main] c.b.m.core.injector.DefaultSqlInjector   : class com.zksy.base.domain.AlarmAssignList ,Not found @TableId annotation, Cannot use Mybatis-Plus 'xxById' Method.
-16:07:41:202  WARN 20692 --- [main] com.zaxxer.hikari.HikariConfig           : HikariPool-1 - idleTimeout is close to or more than maxLifetime, disabling it.
-16:07:41:203  INFO 20692 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Starting...
-16:07:41:304  INFO 20692 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Start completed.
-16:07:41:811  INFO 20692 --- [main] c.z.environment.config.RSServerService   : RSServer服务开始初始化,监听端口:9801
-16:07:41:811  INFO 20692 --- [RSServer-Worker] c.z.environment.config.RSServerService   : RSServer实例初始化完成,耗时:0ms
-16:07:41:813  INFO 20692 --- [RSServer-Worker] c.z.environment.config.RSServerService   : 开始启动RSServer(阻塞式监听)
-16:07:42:111  INFO 20692 --- [main] c.a.c.sentinel.SentinelWebMvcConfigurer  : [Sentinel Starter] register SentinelWebInterceptor with urlPatterns: [/**].
-16:07:42:721  INFO 20692 --- [main] pertySourcedRequestMappingHandlerMapping : Mapped URL path [/v2/api-docs] onto method [springfox.documentation.swagger2.web.Swagger2ControllerWebMvc#getDocumentation(String, HttpServletRequest)]
-16:07:42:898  WARN 20692 --- [main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'minioFileStorageService': Unsatisfied dependency expressed through field 'minioClient'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'minioClient' defined in class path resource [com/zksy/config/MinIOConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.minio.MinioClient]: Factory method 'minioClient' threw exception; nested exception is java.lang.IllegalArgumentException: endpoint must not be null.
-16:07:42:901  INFO 20692 --- [main] c.z.environment.config.RSServerService   : 开始关闭RSServer资源
-16:07:42:901  INFO 20692 --- [main] c.z.environment.config.RSServerService   : RSServer服务器已停止
-16:07:42:923  INFO 20692 --- [RSServer-Worker] c.z.environment.config.RSServerService   : RSServer已启动并监听端口:9801,启动耗时:1109ms
-16:07:42:923  INFO 20692 --- [RSServer-Monitor] c.z.environment.config.RSServerService   : RSServer初始化任务正常完成
-16:07:42:923  INFO 20692 --- [main] c.z.environment.config.RSServerService   : RSServer线程池已正常关闭
-16:07:42:924  INFO 20692 --- [main] c.z.environment.config.RSServerService   : RSServer资源关闭完成
-16:07:43:138  INFO 20692 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown initiated...
-16:07:43:142  INFO 20692 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown completed.
-16:07:43:143  INFO 20692 --- [main] o.apache.catalina.core.StandardService   : Stopping service [Tomcat]
-16:07:43:151  INFO 20692 --- [main] ConditionEvaluationReportLoggingListener : 
-
-Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
-16:07:43:172 ERROR 20692 --- [main] o.s.boot.SpringApplication               : Application run failed
-
-org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'minioFileStorageService': Unsatisfied dependency expressed through field 'minioClient'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'minioClient' defined in class path resource [com/zksy/config/MinIOConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.minio.MinioClient]: Factory method 'minioClient' threw exception; nested exception is java.lang.IllegalArgumentException: endpoint must not be null.
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:660) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:920) ~[spring-context-5.3.27.jar:5.3.27]
-	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.27.jar:5.3.27]
-	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292) ~[spring-boot-2.7.12.jar:2.7.12]
-	at com.zksy.environment.EnvironmentApplication.main(EnvironmentApplication.java:24) ~[classes/:na]
-Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'minioClient' defined in class path resource [com/zksy/config/MinIOConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.minio.MinioClient]: Factory method 'minioClient' threw exception; nested exception is java.lang.IllegalArgumentException: endpoint must not be null.
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:486) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:657) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 20 common frames omitted
-Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.minio.MinioClient]: Factory method 'minioClient' threw exception; nested exception is java.lang.IllegalArgumentException: endpoint must not be null.
-	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 33 common frames omitted
-Caused by: java.lang.IllegalArgumentException: endpoint must not be null.
-	at io.minio.MinioClient$Builder.validateNotNull(MinioClient.java:7978) ~[minio-7.1.0.jar:7.1.0]
-	at io.minio.MinioClient$Builder.validateNotEmptyString(MinioClient.java:7983) ~[minio-7.1.0.jar:7.1.0]
-	at io.minio.MinioClient$Builder.getBaseUrl(MinioClient.java:8027) ~[minio-7.1.0.jar:7.1.0]
-	at io.minio.MinioClient$Builder.endpoint(MinioClient.java:8040) ~[minio-7.1.0.jar:7.1.0]
-	at com.zksy.config.MinIOConfig.minioClient(MinIOConfig.java:29) ~[minioutil-1.0.1.jar:na]
-	at com.zksy.config.MinIOConfig$$EnhancerBySpringCGLIB$$b4471342.CGLIB$minioClient$4(<generated>) ~[minioutil-1.0.1.jar:na]
-	at com.zksy.config.MinIOConfig$$EnhancerBySpringCGLIB$$b4471342$$FastClassBySpringCGLIB$$4a0c4ad6.invoke(<generated>) ~[minioutil-1.0.1.jar:na]
-	at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:244) ~[spring-core-5.3.27.jar:5.3.27]
-	at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:331) ~[spring-context-5.3.27.jar:5.3.27]
-	at com.zksy.config.MinIOConfig$$EnhancerBySpringCGLIB$$b4471342.minioClient(<generated>) ~[minioutil-1.0.1.jar:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
-	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
-	at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
-	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 34 common frames omitted
-
-16:07:45:036  WARN 20692 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Start destroying common HttpClient
-16:07:45:036  WARN 20692 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Start destroying Publisher
-16:07:45:037  WARN 20692 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Destruction of the end
-16:10:26:338  INFO 29644 --- [main] c.z.environment.EnvironmentApplication   : The following 1 profile is active: "dev"
-16:10:27:237  INFO 29644 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
-16:10:27:239  INFO 29644 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-16:10:27:265  INFO 29644 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 11 ms. Found 0 Redis repository interfaces.
-16:10:27:481  WARN 29644 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'alarmDataMapper' and 'com.zksy.api.mapper.AlarmDataMapper' mapperInterface. Bean already defined with the same name!
-16:10:27:481  WARN 29644 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'caseInfoApiMapper' and 'com.zksy.api.mapper.CaseInfoApiMapper' mapperInterface. Bean already defined with the same name!
-16:10:27:481  WARN 29644 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'equipmentBaseApiMapper' and 'com.zksy.api.mapper.EquipmentBaseApiMapper' mapperInterface. Bean already defined with the same name!
-16:10:27:481  WARN 29644 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'warningThresholdMapper' and 'com.zksy.api.mapper.WarningThresholdMapper' mapperInterface. Bean already defined with the same name!
-16:10:27:481  WARN 29644 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderApiMapper' and 'com.zksy.api.mapper.WorkOrderApiMapper' mapperInterface. Bean already defined with the same name!
-16:10:27:481  WARN 29644 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderLogApiMapper' and 'com.zksy.api.mapper.WorkOrderLogApiMapper' mapperInterface. Bean already defined with the same name!
-16:10:27:597  INFO 29644 --- [main] o.s.cloud.context.scope.GenericScope     : BeanFactory id=385cdad6-7e17-3259-be68-7cac08711491
-16:10:28:267  INFO 29644 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8302 (http)
-16:10:28:283  INFO 29644 --- [main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
-16:10:28:284  INFO 29644 --- [main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.75]
-16:10:28:475  INFO 29644 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
-16:10:28:475  INFO 29644 --- [main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 2120 ms
-16:10:29:274  WARN 29644 --- [main] c.b.m.core.injector.DefaultSqlInjector   : class com.zksy.base.domain.AlarmAssignDetail ,Not found @TableId annotation, Cannot use Mybatis-Plus 'xxById' Method.
-16:10:29:294  WARN 29644 --- [main] c.b.m.core.injector.DefaultSqlInjector   : class com.zksy.base.domain.AlarmAssignList ,Not found @TableId annotation, Cannot use Mybatis-Plus 'xxById' Method.
-16:10:31:192  WARN 29644 --- [main] com.zaxxer.hikari.HikariConfig           : HikariPool-1 - idleTimeout is close to or more than maxLifetime, disabling it.
-16:10:31:192  INFO 29644 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Starting...
-16:10:31:322  INFO 29644 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Start completed.
-16:10:31:926  INFO 29644 --- [main] c.z.environment.config.RSServerService   : RSServer服务开始初始化,监听端口:9801
-16:10:31:927  INFO 29644 --- [RSServer-Worker] c.z.environment.config.RSServerService   : RSServer实例初始化完成,耗时:0ms
-16:10:31:929  INFO 29644 --- [RSServer-Worker] c.z.environment.config.RSServerService   : 开始启动RSServer(阻塞式监听)
-16:10:32:388  INFO 29644 --- [main] c.a.c.sentinel.SentinelWebMvcConfigurer  : [Sentinel Starter] register SentinelWebInterceptor with urlPatterns: [/**].
-16:10:33:240  INFO 29644 --- [main] pertySourcedRequestMappingHandlerMapping : Mapped URL path [/v2/api-docs] onto method [springfox.documentation.swagger2.web.Swagger2ControllerWebMvc#getDocumentation(String, HttpServletRequest)]
-16:10:33:489  WARN 29644 --- [main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'minioFileStorageService': Unsatisfied dependency expressed through field 'minioClient'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'minioClient' defined in class path resource [com/zksy/config/MinIOConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.minio.MinioClient]: Factory method 'minioClient' threw exception; nested exception is java.lang.IllegalArgumentException: endpoint must not be null.
-16:10:33:493  INFO 29644 --- [main] c.z.environment.config.RSServerService   : 开始关闭RSServer资源
-16:10:33:494  INFO 29644 --- [main] c.z.environment.config.RSServerService   : RSServer服务器已停止
-16:10:33:497  INFO 29644 --- [RSServer-Worker] c.z.environment.config.RSServerService   : RSServer已启动并监听端口:9801,启动耗时:1568ms
-16:10:33:497  INFO 29644 --- [RSServer-Monitor] c.z.environment.config.RSServerService   : RSServer初始化任务正常完成
-16:10:33:497  INFO 29644 --- [main] c.z.environment.config.RSServerService   : RSServer线程池已正常关闭
-16:10:33:497  INFO 29644 --- [main] c.z.environment.config.RSServerService   : RSServer资源关闭完成
-16:10:33:711  INFO 29644 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown initiated...
-16:10:33:721  INFO 29644 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown completed.
-16:10:33:723  INFO 29644 --- [main] o.apache.catalina.core.StandardService   : Stopping service [Tomcat]
-16:10:33:736  INFO 29644 --- [main] ConditionEvaluationReportLoggingListener : 
-
-Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
-16:10:33:767 ERROR 29644 --- [main] o.s.boot.SpringApplication               : Application run failed
-
-org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'minioFileStorageService': Unsatisfied dependency expressed through field 'minioClient'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'minioClient' defined in class path resource [com/zksy/config/MinIOConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.minio.MinioClient]: Factory method 'minioClient' threw exception; nested exception is java.lang.IllegalArgumentException: endpoint must not be null.
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:660) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:920) ~[spring-context-5.3.27.jar:5.3.27]
-	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.27.jar:5.3.27]
-	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292) ~[spring-boot-2.7.12.jar:2.7.12]
-	at com.zksy.environment.EnvironmentApplication.main(EnvironmentApplication.java:24) ~[classes/:na]
-Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'minioClient' defined in class path resource [com/zksy/config/MinIOConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.minio.MinioClient]: Factory method 'minioClient' threw exception; nested exception is java.lang.IllegalArgumentException: endpoint must not be null.
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:486) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:657) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 20 common frames omitted
-Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.minio.MinioClient]: Factory method 'minioClient' threw exception; nested exception is java.lang.IllegalArgumentException: endpoint must not be null.
-	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 33 common frames omitted
-Caused by: java.lang.IllegalArgumentException: endpoint must not be null.
-	at io.minio.MinioClient$Builder.validateNotNull(MinioClient.java:7978) ~[minio-7.1.0.jar:7.1.0]
-	at io.minio.MinioClient$Builder.validateNotEmptyString(MinioClient.java:7983) ~[minio-7.1.0.jar:7.1.0]
-	at io.minio.MinioClient$Builder.getBaseUrl(MinioClient.java:8027) ~[minio-7.1.0.jar:7.1.0]
-	at io.minio.MinioClient$Builder.endpoint(MinioClient.java:8040) ~[minio-7.1.0.jar:7.1.0]
-	at com.zksy.config.MinIOConfig.minioClient(MinIOConfig.java:29) ~[minioutil-1.0.1.jar:na]
-	at com.zksy.config.MinIOConfig$$EnhancerBySpringCGLIB$$743eb143.CGLIB$minioClient$6(<generated>) ~[minioutil-1.0.1.jar:na]
-	at com.zksy.config.MinIOConfig$$EnhancerBySpringCGLIB$$743eb143$$FastClassBySpringCGLIB$$d823609e.invoke(<generated>) ~[minioutil-1.0.1.jar:na]
-	at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:244) ~[spring-core-5.3.27.jar:5.3.27]
-	at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:331) ~[spring-context-5.3.27.jar:5.3.27]
-	at com.zksy.config.MinIOConfig$$EnhancerBySpringCGLIB$$743eb143.minioClient(<generated>) ~[minioutil-1.0.1.jar:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
-	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
-	at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
-	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 34 common frames omitted
-
-16:10:35:608  WARN 29644 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Start destroying common HttpClient
-16:10:35:608  WARN 29644 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Start destroying Publisher
-16:10:35:608  WARN 29644 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Destruction of the end
-16:15:58:270  INFO 26756 --- [main] c.z.environment.EnvironmentApplication   : The following 1 profile is active: "dev"
-16:15:58:961  INFO 26756 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
-16:15:58:963  INFO 26756 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-16:15:58:986  INFO 26756 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 9 ms. Found 0 Redis repository interfaces.
-16:15:59:138  WARN 26756 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'alarmDataMapper' and 'com.zksy.api.mapper.AlarmDataMapper' mapperInterface. Bean already defined with the same name!
-16:15:59:139  WARN 26756 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'caseInfoApiMapper' and 'com.zksy.api.mapper.CaseInfoApiMapper' mapperInterface. Bean already defined with the same name!
-16:15:59:139  WARN 26756 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'equipmentBaseApiMapper' and 'com.zksy.api.mapper.EquipmentBaseApiMapper' mapperInterface. Bean already defined with the same name!
-16:15:59:139  WARN 26756 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'warningThresholdMapper' and 'com.zksy.api.mapper.WarningThresholdMapper' mapperInterface. Bean already defined with the same name!
-16:15:59:139  WARN 26756 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderApiMapper' and 'com.zksy.api.mapper.WorkOrderApiMapper' mapperInterface. Bean already defined with the same name!
-16:15:59:139  WARN 26756 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderLogApiMapper' and 'com.zksy.api.mapper.WorkOrderLogApiMapper' mapperInterface. Bean already defined with the same name!
-16:15:59:214  INFO 26756 --- [main] o.s.cloud.context.scope.GenericScope     : BeanFactory id=385cdad6-7e17-3259-be68-7cac08711491
-16:15:59:597  INFO 26756 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8302 (http)
-16:15:59:605  INFO 26756 --- [main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
-16:15:59:605  INFO 26756 --- [main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.75]
-16:15:59:731  INFO 26756 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
-16:15:59:732  INFO 26756 --- [main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1451 ms
-16:16:00:208  WARN 26756 --- [main] c.b.m.core.injector.DefaultSqlInjector   : class com.zksy.base.domain.AlarmAssignDetail ,Not found @TableId annotation, Cannot use Mybatis-Plus 'xxById' Method.
-16:16:00:218  WARN 26756 --- [main] c.b.m.core.injector.DefaultSqlInjector   : class com.zksy.base.domain.AlarmAssignList ,Not found @TableId annotation, Cannot use Mybatis-Plus 'xxById' Method.
-16:16:01:557  WARN 26756 --- [main] com.zaxxer.hikari.HikariConfig           : HikariPool-1 - idleTimeout is close to or more than maxLifetime, disabling it.
-16:16:01:557  INFO 26756 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Starting...
-16:16:01:655  INFO 26756 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Start completed.
-16:16:02:139  INFO 26756 --- [main] c.z.environment.config.RSServerService   : RSServer服务开始初始化,监听端口:9801
-16:16:02:140  INFO 26756 --- [RSServer-Worker] c.z.environment.config.RSServerService   : RSServer实例初始化完成,耗时:0ms
-16:16:02:142  INFO 26756 --- [RSServer-Worker] c.z.environment.config.RSServerService   : 开始启动RSServer(阻塞式监听)
-16:16:02:479  INFO 26756 --- [main] c.a.c.sentinel.SentinelWebMvcConfigurer  : [Sentinel Starter] register SentinelWebInterceptor with urlPatterns: [/**].
-16:16:03:126  INFO 26756 --- [main] pertySourcedRequestMappingHandlerMapping : Mapped URL path [/v2/api-docs] onto method [springfox.documentation.swagger2.web.Swagger2ControllerWebMvc#getDocumentation(String, HttpServletRequest)]
-16:16:03:310  WARN 26756 --- [main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'minioFileStorageService': Unsatisfied dependency expressed through field 'minioClient'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'minioClient' defined in class path resource [com/zksy/config/MinIOConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.minio.MinioClient]: Factory method 'minioClient' threw exception; nested exception is java.lang.IllegalArgumentException: endpoint must not be null.
-16:16:03:313  INFO 26756 --- [main] c.z.environment.config.RSServerService   : 开始关闭RSServer资源
-16:16:03:313  INFO 26756 --- [main] c.z.environment.config.RSServerService   : RSServer服务器已停止
-16:16:03:316  INFO 26756 --- [RSServer-Worker] c.z.environment.config.RSServerService   : RSServer已启动并监听端口:9801,启动耗时:1174ms
-16:16:03:316  INFO 26756 --- [RSServer-Monitor] c.z.environment.config.RSServerService   : RSServer初始化任务正常完成
-16:16:03:316  INFO 26756 --- [main] c.z.environment.config.RSServerService   : RSServer线程池已正常关闭
-16:16:03:317  INFO 26756 --- [main] c.z.environment.config.RSServerService   : RSServer资源关闭完成
-16:16:03:530  INFO 26756 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown initiated...
-16:16:03:533  INFO 26756 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown completed.
-16:16:03:533  INFO 26756 --- [main] o.apache.catalina.core.StandardService   : Stopping service [Tomcat]
-16:16:03:541  INFO 26756 --- [main] ConditionEvaluationReportLoggingListener : 
-
-Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
-16:16:03:560 ERROR 26756 --- [main] o.s.boot.SpringApplication               : Application run failed
-
-org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'minioFileStorageService': Unsatisfied dependency expressed through field 'minioClient'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'minioClient' defined in class path resource [com/zksy/config/MinIOConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.minio.MinioClient]: Factory method 'minioClient' threw exception; nested exception is java.lang.IllegalArgumentException: endpoint must not be null.
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:660) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:920) ~[spring-context-5.3.27.jar:5.3.27]
-	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.27.jar:5.3.27]
-	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303) ~[spring-boot-2.7.12.jar:2.7.12]
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292) ~[spring-boot-2.7.12.jar:2.7.12]
-	at com.zksy.environment.EnvironmentApplication.main(EnvironmentApplication.java:24) ~[classes/:na]
-Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'minioClient' defined in class path resource [com/zksy/config/MinIOConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.minio.MinioClient]: Factory method 'minioClient' threw exception; nested exception is java.lang.IllegalArgumentException: endpoint must not be null.
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:486) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:657) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 20 common frames omitted
-Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.minio.MinioClient]: Factory method 'minioClient' threw exception; nested exception is java.lang.IllegalArgumentException: endpoint must not be null.
-	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185) ~[spring-beans-5.3.27.jar:5.3.27]
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 33 common frames omitted
-Caused by: java.lang.IllegalArgumentException: endpoint must not be null.
-	at io.minio.MinioClient$Builder.validateNotNull(MinioClient.java:7978) ~[minio-7.1.0.jar:7.1.0]
-	at io.minio.MinioClient$Builder.validateNotEmptyString(MinioClient.java:7983) ~[minio-7.1.0.jar:7.1.0]
-	at io.minio.MinioClient$Builder.getBaseUrl(MinioClient.java:8027) ~[minio-7.1.0.jar:7.1.0]
-	at io.minio.MinioClient$Builder.endpoint(MinioClient.java:8040) ~[minio-7.1.0.jar:7.1.0]
-	at com.zksy.config.MinIOConfig.minioClient(MinIOConfig.java:29) ~[minioutil-1.0.1.jar:na]
-	at com.zksy.config.MinIOConfig$$EnhancerBySpringCGLIB$$e3ce5505.CGLIB$minioClient$4(<generated>) ~[minioutil-1.0.1.jar:na]
-	at com.zksy.config.MinIOConfig$$EnhancerBySpringCGLIB$$e3ce5505$$FastClassBySpringCGLIB$$9f876d16.invoke(<generated>) ~[minioutil-1.0.1.jar:na]
-	at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:244) ~[spring-core-5.3.27.jar:5.3.27]
-	at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:331) ~[spring-context-5.3.27.jar:5.3.27]
-	at com.zksy.config.MinIOConfig$$EnhancerBySpringCGLIB$$e3ce5505.minioClient(<generated>) ~[minioutil-1.0.1.jar:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
-	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
-	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
-	at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
-	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[spring-beans-5.3.27.jar:5.3.27]
-	... 34 common frames omitted
-
-16:16:05:428  WARN 26756 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Start destroying common HttpClient
-16:16:05:428  WARN 26756 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Start destroying Publisher
-16:16:05:429  WARN 26756 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Destruction of the end
-16:16:05:429  WARN 26756 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Destruction of the end
-16:19:16:934  INFO 8036 --- [main] c.z.environment.EnvironmentApplication   : The following 1 profile is active: "dev"
-16:19:17:626  INFO 8036 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
-16:19:17:628  INFO 8036 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-16:19:17:650  INFO 8036 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 9 ms. Found 0 Redis repository interfaces.
-16:19:17:799  WARN 8036 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'alarmDataMapper' and 'com.zksy.api.mapper.AlarmDataMapper' mapperInterface. Bean already defined with the same name!
-16:19:17:799  WARN 8036 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'caseInfoApiMapper' and 'com.zksy.api.mapper.CaseInfoApiMapper' mapperInterface. Bean already defined with the same name!
-16:19:17:799  WARN 8036 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'equipmentBaseApiMapper' and 'com.zksy.api.mapper.EquipmentBaseApiMapper' mapperInterface. Bean already defined with the same name!
-16:19:17:799  WARN 8036 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'warningThresholdMapper' and 'com.zksy.api.mapper.WarningThresholdMapper' mapperInterface. Bean already defined with the same name!
-16:19:17:799  WARN 8036 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderApiMapper' and 'com.zksy.api.mapper.WorkOrderApiMapper' mapperInterface. Bean already defined with the same name!
-16:19:17:799  WARN 8036 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderLogApiMapper' and 'com.zksy.api.mapper.WorkOrderLogApiMapper' mapperInterface. Bean already defined with the same name!
-16:19:17:875  INFO 8036 --- [main] o.s.cloud.context.scope.GenericScope     : BeanFactory id=385cdad6-7e17-3259-be68-7cac08711491
-16:19:18:302  INFO 8036 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8302 (http)
-16:19:18:310  INFO 8036 --- [main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
-16:19:18:310  INFO 8036 --- [main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.75]
-16:19:18:450  INFO 8036 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
-16:19:18:450  INFO 8036 --- [main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1504 ms
-16:19:18:993  WARN 8036 --- [main] c.b.m.core.injector.DefaultSqlInjector   : class com.zksy.base.domain.AlarmAssignDetail ,Not found @TableId annotation, Cannot use Mybatis-Plus 'xxById' Method.
-16:19:19:004  WARN 8036 --- [main] c.b.m.core.injector.DefaultSqlInjector   : class com.zksy.base.domain.AlarmAssignList ,Not found @TableId annotation, Cannot use Mybatis-Plus 'xxById' Method.
-16:19:20:331  WARN 8036 --- [main] com.zaxxer.hikari.HikariConfig           : HikariPool-1 - idleTimeout is close to or more than maxLifetime, disabling it.
-16:19:20:332  INFO 8036 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Starting...
-16:19:20:436  INFO 8036 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Start completed.
-16:19:20:932  INFO 8036 --- [main] c.z.environment.config.RSServerService   : RSServer服务开始初始化,监听端口:9801
-16:19:20:932  INFO 8036 --- [RSServer-Worker] c.z.environment.config.RSServerService   : RSServer实例初始化完成,耗时:0ms
-16:19:20:934  INFO 8036 --- [RSServer-Worker] c.z.environment.config.RSServerService   : 开始启动RSServer(阻塞式监听)
-16:19:21:232  INFO 8036 --- [main] c.a.c.sentinel.SentinelWebMvcConfigurer  : [Sentinel Starter] register SentinelWebInterceptor with urlPatterns: [/**].
-16:19:21:878  INFO 8036 --- [main] pertySourcedRequestMappingHandlerMapping : Mapped URL path [/v2/api-docs] onto method [springfox.documentation.swagger2.web.Swagger2ControllerWebMvc#getDocumentation(String, HttpServletRequest)]
-16:19:22:201  INFO 8036 --- [main] c.z.s.impl.MinioFileStorageServiceImpl   : 初始化MinIO成功
-16:19:22:203  INFO 8036 --- [main] c.z.s.impl.MinioFileStorageServiceImpl   : 初始化MinIO成功
-16:19:22:346  WARN 8036 --- [main] .s.s.UserDetailsServiceAutoConfiguration : 
-
-Using generated security password: 10658c5c-4890-4932-93a8-ab7063483207
-
-This generated password is for development use only. Your security configuration must be updated before running your application in production.
-
-16:19:22:439  INFO 8036 --- [main] o.s.s.web.DefaultSecurityFilterChain     : Will secure any request with [org.springframework.security.web.session.DisableEncodeUrlFilter@2162b22d, org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@6a4ec62d, org.springframework.security.web.context.SecurityContextPersistenceFilter@1a5e19fe, org.springframework.security.web.header.HeaderWriterFilter@efa6a81, org.springframework.security.web.csrf.CsrfFilter@5afb0a4f, org.springframework.security.web.authentication.logout.LogoutFilter@3b48ffe8, org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter@3116e9d2, org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter@4ed8ae9f, org.springframework.security.web.authentication.ui.DefaultLogoutPageGeneratingFilter@14d294f4, org.springframework.security.web.authentication.www.BasicAuthenticationFilter@975f349, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@632d8166, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@151ce559, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@4c902a72, org.springframework.security.web.session.SessionManagementFilter@3983b06d, org.springframework.security.web.access.ExceptionTranslationFilter@7b5f886d, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@1b60c196]
-16:19:23:124  INFO 8036 --- [main] com.alibaba.nacos.common.remote.client   : [RpcClientFactory] create a new rpc client of ef235d48-b73b-432c-aa35-5d67245f5c48
-16:19:23:124  INFO 8036 --- [main] com.alibaba.nacos.common.remote.client   : [ef235d48-b73b-432c-aa35-5d67245f5c48] RpcClient init label, labels = {module=naming, source=sdk}
-16:19:23:126  INFO 8036 --- [main] com.alibaba.nacos.common.remote.client   : [ef235d48-b73b-432c-aa35-5d67245f5c48] RpcClient init, ServerListFactory = com.alibaba.nacos.client.naming.core.ServerListManager
-16:19:23:126  INFO 8036 --- [main] com.alibaba.nacos.common.remote.client   : [ef235d48-b73b-432c-aa35-5d67245f5c48] Registry connection listener to current client:com.alibaba.nacos.client.naming.remote.gprc.redo.NamingGrpcRedoService
-16:19:23:127  INFO 8036 --- [main] com.alibaba.nacos.common.remote.client   : [ef235d48-b73b-432c-aa35-5d67245f5c48] Register server push request handler:com.alibaba.nacos.client.naming.remote.gprc.NamingPushRequestHandler
-16:19:23:127  INFO 8036 --- [main] com.alibaba.nacos.common.remote.client   : [ef235d48-b73b-432c-aa35-5d67245f5c48] Try to connect to server on start up, server: {serverIp = '192.168.110.30', server main port = 8848}
-16:19:23:243  INFO 8036 --- [main] com.alibaba.nacos.common.remote.client   : [ef235d48-b73b-432c-aa35-5d67245f5c48] Success to connect to server [192.168.110.30:8848] on start up, connectionId = 1784621962854_192.168.110.235_51767
-16:19:23:243  INFO 8036 --- [main] com.alibaba.nacos.common.remote.client   : [ef235d48-b73b-432c-aa35-5d67245f5c48] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$ConnectResetRequestHandler
-16:19:23:243  INFO 8036 --- [main] com.alibaba.nacos.common.remote.client   : [ef235d48-b73b-432c-aa35-5d67245f5c48] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$$Lambda$472/0x000000080041b440
-16:19:23:243  INFO 8036 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [ef235d48-b73b-432c-aa35-5d67245f5c48] Notify connected event to listeners.
-16:19:23:310  INFO 8036 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8302 (http) with context path ''
-16:19:23:318  INFO 8036 --- [main] c.a.c.n.registry.NacosServiceRegistry    : nacos registry, DEFAULT_GROUP environment-service 192.168.110.235:8302 register finished
-16:19:23:616  INFO 8036 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Documentation plugins bootstrapped
-16:19:23:618  INFO 8036 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Found 1 custom documentation plugin(s)
-16:19:23:630  INFO 8036 --- [main] s.d.s.w.s.ApiListingReferenceScanner     : Scanning for api listing references
-16:19:23:640  INFO 8036 --- [main] c.z.environment.EnvironmentApplication   : Started EnvironmentApplication in 9.686 seconds (JVM running for 10.415)
-16:19:23:645  INFO 8036 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=environment-service-dev.yaml, group=DEFAULT_GROUP
-16:19:23:645  INFO 8036 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=environment-service, group=DEFAULT_GROUP
-16:19:23:770  INFO 8036 --- [nacos-grpc-client-executor-5] com.alibaba.nacos.common.remote.client   : [ef235d48-b73b-432c-aa35-5d67245f5c48] Receive server push request, request = NotifySubscriberRequest, requestId = 83
-16:19:23:783  INFO 8036 --- [nacos-grpc-client-executor-5] com.alibaba.nacos.common.remote.client   : [ef235d48-b73b-432c-aa35-5d67245f5c48] Ack server push request, request = NotifySubscriberRequest, requestId = 83
-16:19:40:934  WARN 8036 --- [RSServer-Monitor] c.z.environment.config.RSServerService   : RSServer初始化超时(>20秒),服务器可能仍在启动(正常慢启动),可延长timeoutSeconds阈值
-16:29:09:895  WARN 8036 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Start destroying common HttpClient
-16:29:09:895  WARN 8036 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Start destroying Publisher
-16:29:09:895  WARN 8036 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Destruction of the end
-16:29:09:896  WARN 8036 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Destruction of the end
-16:29:10:172  INFO 8036 --- [SpringApplicationShutdownHook] c.a.c.n.registry.NacosServiceRegistry    : De-registering from Nacos Server now...
-16:29:10:176  INFO 8036 --- [SpringApplicationShutdownHook] c.a.c.n.registry.NacosServiceRegistry    : De-registration finished.
-16:29:10:480  INFO 8036 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Shutdown rpc client, set status to shutdown
-16:29:10:480  INFO 8036 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Shutdown client event executor java.util.concurrent.ScheduledThreadPoolExecutor@2bb46b97[Running, pool size = 2, active threads = 2, queued tasks = 0, completed tasks = 0]
-16:29:10:481  INFO 8036 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Close current connection 1784621962854_192.168.110.235_51767
-16:29:10:482  INFO 8036 --- [nacos-grpc-client-executor-126] c.a.n.c.remote.client.grpc.GrpcClient    : [1784621962854_192.168.110.235_51767]Ignore complete event,isRunning:false,isAbandon=false
-16:29:10:484  INFO 8036 --- [SpringApplicationShutdownHook] c.a.n.c.remote.client.grpc.GrpcClient    : Shutdown grpc executor java.util.concurrent.ThreadPoolExecutor@194b2b25[Running, pool size = 5, active threads = 0, queued tasks = 0, completed tasks = 127]
-16:29:10:489  INFO 8036 --- [SpringApplicationShutdownHook] c.z.environment.config.RSServerService   : 开始关闭RSServer资源
-16:29:10:490  INFO 8036 --- [SpringApplicationShutdownHook] c.z.environment.config.RSServerService   : RSServer服务器已停止
-16:29:10:493  INFO 8036 --- [RSServer-Worker] c.z.environment.config.RSServerService   : RSServer已启动并监听端口:9801,启动耗时:589558ms
-16:29:10:493  INFO 8036 --- [SpringApplicationShutdownHook] c.z.environment.config.RSServerService   : RSServer线程池已正常关闭
-16:29:10:494  INFO 8036 --- [SpringApplicationShutdownHook] c.z.environment.config.RSServerService   : RSServer资源关闭完成
-16:29:10:713  INFO 8036 --- [SpringApplicationShutdownHook] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown initiated...
-16:29:10:717  INFO 8036 --- [SpringApplicationShutdownHook] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown completed.
-16:45:08:451  INFO 30224 --- [main] c.z.environment.EnvironmentApplication   : The following 1 profile is active: "dev"
-16:45:09:300  INFO 30224 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
-16:45:09:302  INFO 30224 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-16:45:09:330  INFO 30224 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 13 ms. Found 0 Redis repository interfaces.
-16:45:09:496  WARN 30224 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'alarmDataMapper' and 'com.zksy.api.mapper.AlarmDataMapper' mapperInterface. Bean already defined with the same name!
-16:45:09:496  WARN 30224 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'caseInfoApiMapper' and 'com.zksy.api.mapper.CaseInfoApiMapper' mapperInterface. Bean already defined with the same name!
-16:45:09:496  WARN 30224 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'equipmentBaseApiMapper' and 'com.zksy.api.mapper.EquipmentBaseApiMapper' mapperInterface. Bean already defined with the same name!
-16:45:09:496  WARN 30224 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'warningThresholdMapper' and 'com.zksy.api.mapper.WarningThresholdMapper' mapperInterface. Bean already defined with the same name!
-16:45:09:496  WARN 30224 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderApiMapper' and 'com.zksy.api.mapper.WorkOrderApiMapper' mapperInterface. Bean already defined with the same name!
-16:45:09:496  WARN 30224 --- [main] o.m.s.mapper.ClassPathMapperScanner      : Skipping MapperFactoryBean with name 'workOrderLogApiMapper' and 'com.zksy.api.mapper.WorkOrderLogApiMapper' mapperInterface. Bean already defined with the same name!
-16:45:09:575  INFO 30224 --- [main] o.s.cloud.context.scope.GenericScope     : BeanFactory id=385cdad6-7e17-3259-be68-7cac08711491
-16:45:10:110  INFO 30224 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8302 (http)
-16:45:10:124  INFO 30224 --- [main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
-16:45:10:124  INFO 30224 --- [main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.75]
-16:45:10:306  INFO 30224 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
-16:45:10:306  INFO 30224 --- [main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1840 ms
-16:45:11:109  WARN 30224 --- [main] c.b.m.core.injector.DefaultSqlInjector   : class com.zksy.base.domain.AlarmAssignDetail ,Not found @TableId annotation, Cannot use Mybatis-Plus 'xxById' Method.
-16:45:11:122  WARN 30224 --- [main] c.b.m.core.injector.DefaultSqlInjector   : class com.zksy.base.domain.AlarmAssignList ,Not found @TableId annotation, Cannot use Mybatis-Plus 'xxById' Method.
-16:45:13:005  WARN 30224 --- [main] com.zaxxer.hikari.HikariConfig           : HikariPool-1 - idleTimeout is close to or more than maxLifetime, disabling it.
-16:45:13:006  INFO 30224 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Starting...
-16:45:13:144  INFO 30224 --- [main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Start completed.
-16:45:13:838  INFO 30224 --- [main] c.z.environment.config.RSServerService   : RSServer服务开始初始化,监听端口:9801
-16:45:13:840  INFO 30224 --- [RSServer-Worker] c.z.environment.config.RSServerService   : RSServer实例初始化完成,耗时:0ms
-16:45:13:842  INFO 30224 --- [RSServer-Worker] c.z.environment.config.RSServerService   : 开始启动RSServer(阻塞式监听)
-16:45:14:351  INFO 30224 --- [main] c.a.c.sentinel.SentinelWebMvcConfigurer  : [Sentinel Starter] register SentinelWebInterceptor with urlPatterns: [/**].
-16:45:16:181  INFO 30224 --- [main] pertySourcedRequestMappingHandlerMapping : Mapped URL path [/v2/api-docs] onto method [springfox.documentation.swagger2.web.Swagger2ControllerWebMvc#getDocumentation(String, HttpServletRequest)]
-16:45:17:223  INFO 30224 --- [main] c.z.s.impl.MinioFileStorageServiceImpl   : 初始化MinIO成功
-16:45:17:228  INFO 30224 --- [main] c.z.s.impl.MinioFileStorageServiceImpl   : 初始化MinIO成功
-16:45:17:694  WARN 30224 --- [main] .s.s.UserDetailsServiceAutoConfiguration : 
-
-Using generated security password: 1cae8a65-b0c4-46fb-8b1b-6857bd27af20
-
-This generated password is for development use only. Your security configuration must be updated before running your application in production.
-
-16:45:17:992  INFO 30224 --- [main] o.s.s.web.DefaultSecurityFilterChain     : Will secure any request with [org.springframework.security.web.session.DisableEncodeUrlFilter@47ba8e3c, org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@1638fa8b, org.springframework.security.web.context.SecurityContextPersistenceFilter@4039d109, org.springframework.security.web.header.HeaderWriterFilter@7ef3b7ac, org.springframework.security.web.csrf.CsrfFilter@678f685f, org.springframework.security.web.authentication.logout.LogoutFilter@badf24b, org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter@68a0a4ae, org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter@129a20d8, org.springframework.security.web.authentication.ui.DefaultLogoutPageGeneratingFilter@1b60c196, org.springframework.security.web.authentication.www.BasicAuthenticationFilter@55e073c8, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@cd8e702, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@28897ca, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@1c7aa676, org.springframework.security.web.session.SessionManagementFilter@4dbf902, org.springframework.security.web.access.ExceptionTranslationFilter@687e9f0b, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@359ae83a]
-16:45:19:710  INFO 30224 --- [main] com.alibaba.nacos.common.remote.client   : [RpcClientFactory] create a new rpc client of 74d6c916-2e5f-4c29-bfe0-af31e1be795c
-16:45:19:710  INFO 30224 --- [main] com.alibaba.nacos.common.remote.client   : [74d6c916-2e5f-4c29-bfe0-af31e1be795c] RpcClient init label, labels = {module=naming, source=sdk}
-16:45:19:713  INFO 30224 --- [main] com.alibaba.nacos.common.remote.client   : [74d6c916-2e5f-4c29-bfe0-af31e1be795c] RpcClient init, ServerListFactory = com.alibaba.nacos.client.naming.core.ServerListManager
-16:45:19:713  INFO 30224 --- [main] com.alibaba.nacos.common.remote.client   : [74d6c916-2e5f-4c29-bfe0-af31e1be795c] Registry connection listener to current client:com.alibaba.nacos.client.naming.remote.gprc.redo.NamingGrpcRedoService
-16:45:19:714  INFO 30224 --- [main] com.alibaba.nacos.common.remote.client   : [74d6c916-2e5f-4c29-bfe0-af31e1be795c] Register server push request handler:com.alibaba.nacos.client.naming.remote.gprc.NamingPushRequestHandler
-16:45:19:715  INFO 30224 --- [main] com.alibaba.nacos.common.remote.client   : [74d6c916-2e5f-4c29-bfe0-af31e1be795c] Try to connect to server on start up, server: {serverIp = '192.168.110.30', server main port = 8848}
-16:45:19:838  INFO 30224 --- [main] com.alibaba.nacos.common.remote.client   : [74d6c916-2e5f-4c29-bfe0-af31e1be795c] Success to connect to server [192.168.110.30:8848] on start up, connectionId = 1784623519470_192.168.110.235_60601
-16:45:19:838  INFO 30224 --- [main] com.alibaba.nacos.common.remote.client   : [74d6c916-2e5f-4c29-bfe0-af31e1be795c] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$ConnectResetRequestHandler
-16:45:19:838  INFO 30224 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [74d6c916-2e5f-4c29-bfe0-af31e1be795c] Notify connected event to listeners.
-16:45:19:838  INFO 30224 --- [main] com.alibaba.nacos.common.remote.client   : [74d6c916-2e5f-4c29-bfe0-af31e1be795c] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$$Lambda$472/0x000000080041b440
-16:45:19:908  INFO 30224 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8302 (http) with context path ''
-16:45:19:921  INFO 30224 --- [main] c.a.c.n.registry.NacosServiceRegistry    : nacos registry, DEFAULT_GROUP environment-service 192.168.110.235:8302 register finished
-16:45:20:408  INFO 30224 --- [nacos-grpc-client-executor-7] com.alibaba.nacos.common.remote.client   : [74d6c916-2e5f-4c29-bfe0-af31e1be795c] Receive server push request, request = NotifySubscriberRequest, requestId = 91
-16:45:20:410  INFO 30224 --- [nacos-grpc-client-executor-7] com.alibaba.nacos.common.remote.client   : [74d6c916-2e5f-4c29-bfe0-af31e1be795c] Ack server push request, request = NotifySubscriberRequest, requestId = 91
-16:45:20:424  INFO 30224 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Documentation plugins bootstrapped
-16:45:20:426  INFO 30224 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Found 1 custom documentation plugin(s)
-16:45:20:442  INFO 30224 --- [main] s.d.s.w.s.ApiListingReferenceScanner     : Scanning for api listing references
-16:45:20:455  INFO 30224 --- [main] c.z.environment.EnvironmentApplication   : Started EnvironmentApplication in 15.605 seconds (JVM running for 16.416)
-16:45:20:462  INFO 30224 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=environment-service-dev.yaml, group=DEFAULT_GROUP
-16:45:20:463  INFO 30224 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=environment-service, group=DEFAULT_GROUP
-16:45:33:842  WARN 30224 --- [RSServer-Monitor] c.z.environment.config.RSServerService   : RSServer初始化超时(>20秒),服务器可能仍在启动(正常慢启动),可延长timeoutSeconds阈值

+ 0 - 1423
logs/pipe-network-service/spring.log

@@ -1,1423 +0,0 @@
-09:13:35:392  INFO 36472 --- [restartedMain] com.zksy.ZksyApplication                 : The following 1 profile is active: "dev"
-09:13:36:430  INFO 36472 --- [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode!
-09:13:36:433  INFO 36472 --- [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-09:13:36:502  INFO 36472 --- [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 57 ms. Found 0 Redis repository interfaces.
-09:13:36:751  INFO 36472 --- [restartedMain] o.s.cloud.context.scope.GenericScope     : BeanFactory id=cc3a89bf-54e4-3736-89b9-fce5c2c3f75c
-09:13:37:498  INFO 36472 --- [restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8301 (http)
-09:13:37:510  INFO 36472 --- [restartedMain] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
-09:13:37:510  INFO 36472 --- [restartedMain] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.106]
-09:13:37:599  INFO 36472 --- [restartedMain] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
-09:13:37:599  INFO 36472 --- [restartedMain] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 2195 ms
-09:13:37:997 DEBUG 36472 --- [restartedMain] c.z.f.s.f.JwtAuthenticationTokenFilter   : Filter 'jwtAuthenticationTokenFilter' configured for use
-09:13:38:416  INFO 36472 --- [restartedMain] com.alibaba.druid.pool.DruidDataSource   : {dataSource-1} inited
-09:13:41:111  INFO 36472 --- [restartedMain] c.z.s.impl.MinioFileStorageServiceImpl   : 初始化MinIO成功
-09:13:42:867  INFO 36472 --- [restartedMain] c.a.c.sentinel.SentinelWebMvcConfigurer  : [Sentinel Starter] register SentinelWebInterceptor with urlPatterns: [/**].
-09:13:43:165  INFO 36472 --- [restartedMain] org.quartz.impl.StdSchedulerFactory      : Using default implementation for ThreadExecutor
-09:13:43:176  INFO 36472 --- [restartedMain] org.quartz.core.SchedulerSignalerImpl    : Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl
-09:13:43:176  INFO 36472 --- [restartedMain] org.quartz.core.QuartzScheduler          : Quartz Scheduler v.2.3.2 created.
-09:13:43:177  INFO 36472 --- [restartedMain] org.quartz.simpl.RAMJobStore             : RAMJobStore initialized.
-09:13:43:178  INFO 36472 --- [restartedMain] org.quartz.core.QuartzScheduler          : Scheduler meta-data: Quartz Scheduler (v2.3.2) 'quartzScheduler' with instanceId 'NON_CLUSTERED'
-  Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally.
-  NOT STARTED.
-  Currently in standby mode.
-  Number of jobs executed: 0
-  Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads.
-  Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered.
-
-09:13:43:178  INFO 36472 --- [restartedMain] org.quartz.impl.StdSchedulerFactory      : Quartz scheduler 'quartzScheduler' initialized from an externally provided properties instance.
-09:13:43:178  INFO 36472 --- [restartedMain] org.quartz.impl.StdSchedulerFactory      : Quartz scheduler version: 2.3.2
-09:13:43:178  INFO 36472 --- [restartedMain] org.quartz.core.QuartzScheduler          : JobFactory set to: org.springframework.scheduling.quartz.SpringBeanJobFactory@3e349583
-09:13:43:221  INFO 36472 --- [restartedMain] c.z.s.impl.MinioFileStorageServiceImpl   : 初始化MinIO成功
-09:13:43:614  INFO 36472 --- [restartedMain] o.s.s.web.DefaultSecurityFilterChain     : Will secure any request with [org.springframework.security.web.session.DisableEncodeUrlFilter@7676bfa8, org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@10fdf681, org.springframework.security.web.context.SecurityContextPersistenceFilter@6b79d7ca, org.springframework.security.web.header.HeaderWriterFilter@5acbfb09, org.springframework.web.filter.CorsFilter@1f33e66d, org.springframework.security.web.authentication.logout.LogoutFilter@565e2179, org.springframework.web.filter.CorsFilter@1f33e66d, com.zksy.framework.security.filter.JwtAuthenticationTokenFilter@5c863716, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@1c47d85d, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@7f3d0193, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@17512c22, org.springframework.security.web.session.SessionManagementFilter@d297bef, org.springframework.security.web.access.ExceptionTranslationFilter@7368bdba, org.springframework.security.web.access.intercept.AuthorizationFilter@5737139b]
-09:13:43:717  INFO 36472 --- [restartedMain] o.s.b.d.a.OptionalLiveReloadServer       : LiveReload server is running on port 35729
-09:13:44:005  INFO 36472 --- [restartedMain] pertySourcedRequestMappingHandlerMapping : Mapped URL path [/v2/api-docs] onto method [springfox.documentation.swagger2.web.Swagger2ControllerWebMvc#getDocumentation(String, HttpServletRequest)]
-09:13:44:359  WARN 36472 --- [restartedMain] iguration$LoadBalancerCaffeineWarnLogger : Spring Cloud LoadBalancer is currently working with the default cache. While this cache implementation is useful for development and tests, it's recommended to use Caffeine cache in production.You can switch to using Caffeine cache, by adding it and org.springframework.cache.caffeine.CaffeineCacheManager to the classpath.
-09:13:44:430  INFO 36472 --- [restartedMain] com.alibaba.nacos.common.remote.client   : [RpcClientFactory] create a new rpc client of 626d9344-d19e-4761-8106-befa461d96e5
-09:13:44:430  INFO 36472 --- [restartedMain] com.alibaba.nacos.common.remote.client   : [626d9344-d19e-4761-8106-befa461d96e5] RpcClient init label, labels = {module=naming, source=sdk}
-09:13:44:431  INFO 36472 --- [restartedMain] com.alibaba.nacos.common.remote.client   : [626d9344-d19e-4761-8106-befa461d96e5] RpcClient init, ServerListFactory = com.alibaba.nacos.client.naming.core.ServerListManager
-09:13:44:431  INFO 36472 --- [restartedMain] com.alibaba.nacos.common.remote.client   : [626d9344-d19e-4761-8106-befa461d96e5] Registry connection listener to current client:com.alibaba.nacos.client.naming.remote.gprc.redo.NamingGrpcRedoService
-09:13:44:432  INFO 36472 --- [restartedMain] com.alibaba.nacos.common.remote.client   : [626d9344-d19e-4761-8106-befa461d96e5] Register server push request handler:com.alibaba.nacos.client.naming.remote.gprc.NamingPushRequestHandler
-09:13:44:432  INFO 36472 --- [restartedMain] com.alibaba.nacos.common.remote.client   : [626d9344-d19e-4761-8106-befa461d96e5] Try to connect to server on start up, server: {serverIp = '192.168.110.30', server main port = 8848}
-09:13:44:546  INFO 36472 --- [restartedMain] com.alibaba.nacos.common.remote.client   : [626d9344-d19e-4761-8106-befa461d96e5] Success to connect to server [192.168.110.30:8848] on start up, connectionId = 1789694023735_192.168.110.96_54715
-09:13:44:546  INFO 36472 --- [restartedMain] com.alibaba.nacos.common.remote.client   : [626d9344-d19e-4761-8106-befa461d96e5] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$ConnectResetRequestHandler
-09:13:44:546  INFO 36472 --- [restartedMain] com.alibaba.nacos.common.remote.client   : [626d9344-d19e-4761-8106-befa461d96e5] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$$Lambda$441/0x00000207014aa990
-09:13:44:546  INFO 36472 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [626d9344-d19e-4761-8106-befa461d96e5] Notify connected event to listeners.
-09:13:44:611  INFO 36472 --- [restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8301 (http) with context path ''
-09:13:44:619  INFO 36472 --- [restartedMain] c.a.c.n.registry.NacosServiceRegistry    : nacos registry, DEFAULT_GROUP pipe-network-service 192.168.110.96:8301 register finished
-09:13:44:665  INFO 36472 --- [restartedMain] d.s.w.p.DocumentationPluginsBootstrapper : Documentation plugins bootstrapped
-09:13:44:667  INFO 36472 --- [restartedMain] d.s.w.p.DocumentationPluginsBootstrapper : Found 1 custom documentation plugin(s)
-09:13:44:752  INFO 36472 --- [restartedMain] s.d.s.w.s.ApiListingReferenceScanner     : Scanning for api listing references
-09:13:44:787  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchUsingPOST_1
-09:13:44:798  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_1
-09:13:44:800  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_1
-09:13:44:805  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_1
-09:13:44:809  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchUsingPOST_2
-09:13:44:809  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchUsingPOST_3
-09:13:44:812  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_2
-09:13:44:812  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_3
-09:13:44:813  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_2
-09:13:44:814  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_3
-09:13:44:822  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_1
-09:13:44:825  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_2
-09:13:44:825  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_3
-09:13:44:828  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: approveToWorkOrderUsingPOST_1
-09:13:44:830  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_2
-09:13:44:830  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_3
-09:13:44:831  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getActivePointsUsingGET_1
-09:13:44:831  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_4
-09:13:44:832  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_5
-09:13:44:833  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: handleUsingPUT_1
-09:13:44:835  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_1
-09:13:44:836  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_4
-09:13:44:836  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_5
-09:13:44:838  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAlarmDataListUsingGET_1
-09:13:44:838  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_6
-09:13:44:838  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_7
-09:13:44:844  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: handleUsingPOST_1
-09:13:44:845  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_4
-09:13:44:845  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_5
-09:13:44:845  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_4
-09:13:44:846  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_5
-09:13:44:848  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: customAlarmUsingPOST_1
-09:13:44:849  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: simulateEnvironmentUsingGET_1
-09:13:44:850  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: simulateGasUsingGET_1
-09:13:44:850  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: simulateManholeUsingGET_1
-09:13:44:852  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: cacheUsingGET_1
-09:13:44:853  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: clearCacheAllUsingDELETE_1
-09:13:44:854  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: clearCacheKeyUsingDELETE_1
-09:13:44:855  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: clearCacheNameUsingDELETE_1
-09:13:44:856  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getCacheKeysUsingGET_1
-09:13:44:856  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getCacheValueUsingGET_1
-09:13:44:857  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_1
-09:13:44:858  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getCodeUsingGET_1
-09:13:44:861  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveWarningThresholdUsingPOST_1
-09:13:44:863  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: verifyCaseInfoUsingPOST_1
-09:13:44:873  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingPOST_1
-09:13:44:874  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_8
-09:13:44:874  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_9
-09:13:44:878  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: currentEventsUsingGET_1
-09:13:44:879  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deviceBoundaryUsingGET_1
-09:13:44:880  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: equipmentArchiveUsingGET_1
-09:13:44:881  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: equipmentDetailAggregateUsingGET_1
-09:13:44:883  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: currentEventsUsingGET_2
-09:13:44:883  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: currentEventsUsingGET_3
-09:13:44:885  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: historyEventsUsingGET_1
-09:13:44:888  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: foundationUsingGET_1
-09:13:44:889  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: freshnessUsingGET_1
-09:13:44:891  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: handlingEfficiencyUsingGET_1
-09:13:44:893  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: historyAnalysisUsingGET_1
-09:13:44:894  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: baseArchivesUsingGET_1
-09:13:44:895  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: emergencySupportUsingGET_1
-09:13:44:897  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: managementInformationUsingGET_1
-09:13:44:898  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: operatingInformationUsingGET_1
-09:13:44:899  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: mapSnapshotUsingGET_1
-09:13:44:901  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: monitoringDistributionUsingGET_1
-09:13:44:902  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: monitoringOverviewUsingGET_1
-09:13:44:904  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: monitoringPointDetailUsingGET_1
-09:13:44:906  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: monitoringSituationUsingGET_1
-09:13:44:908  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: multidimensionalAnalysisUsingGET_1
-09:13:44:909  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: overviewInfrastructureUsingGET_1
-09:13:44:910  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: overviewMonitoringUsingGET_1
-09:13:44:911  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: warningSettingsUsingGET_1
-09:13:44:912  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: currentMetricsUsingGET_1
-09:13:44:913  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: historyMetricsUsingGET_1
-09:13:44:914  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deviceWorkOrdersUsingGET_1
-09:13:44:915  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: eventWorkOrdersUsingGET_1
-09:13:44:916  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: workOrderTimelineUsingGET_1
-09:13:44:918  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: uploadFileUsingPOST_1
-09:13:44:919  WARN 36472 --- [restartedMain] s.d.s.w.r.p.ParameterDataTypeReader      : Trying to infer dataType java.util.List<org.springframework.web.multipart.MultipartFile>
-09:13:44:919  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: uploadFilesUsingPOST_1
-09:13:44:920  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: fileDownloadUsingGET_1
-09:13:44:920  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: resourceDownloadUsingGET_1
-09:13:44:924  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: createAbnormalOrderUsingPOST_1
-09:13:44:925  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAbnormalDevicePageUsingGET_1
-09:13:44:926  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAbnormalDeviceStatsUsingGET_1
-09:13:44:926  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAbnormalGisPointsUsingGET_1
-09:13:44:927  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportAbnormalDevicesUsingPOST_1
-09:13:44:928  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAbnormalPointsUsingGET_1
-09:13:44:928  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAllDevicePointsUsingGET_1
-09:13:44:928  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDeviceDetailUsingGET_1
-09:13:44:929  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getGisStatisticsUsingGET_1
-09:13:44:933  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: createDeviceUsingPOST_1
-09:13:44:933  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteDevicesUsingDELETE_1
-09:13:44:935  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDevicePageUsingGET_1
-09:13:44:935  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getGisPointsUsingGET_1
-09:13:44:935  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getLedgerStatisticsUsingGET_1
-09:13:44:936  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getTypeStatisticsUsingGET_1
-09:13:44:936  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: importDeviceLedgerUsingPOST_1
-09:13:44:938  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportDeviceLedgerUsingPOST_1
-09:13:44:940  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: createMaintainOrderUsingPOST_1
-09:13:44:940  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteMaintainRecordUsingDELETE_1
-09:13:44:941  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportMaintainRecordsUsingPOST_1
-09:13:44:941  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getMaintainRecordListUsingGET_1
-09:13:44:942  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getMaintainRecordPageUsingGET_1
-09:13:44:943  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getMyMaintainRecordPageUsingGET_1
-09:13:44:943  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: importMaintainRecordsUsingPOST_1
-09:13:44:945  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveMaintainRecordUsingPOST_1
-09:13:44:946  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateMaintainRecordUsingPUT_1
-09:13:44:947  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingDELETE_1
-09:13:44:947  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByEventIdUsingGET_1
-09:13:44:948  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listByEventIdsUsingGET_1
-09:13:44:950  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_6
-09:13:44:950  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_7
-09:13:44:954  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: acceptUsingPOST_1
-09:13:44:955  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: closeUsingPOST_1
-09:13:44:955  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_1
-09:13:44:961  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_6
-09:13:44:961  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_7
-09:13:44:962  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDetailUsingGET_1
-09:13:44:962  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: releaseUsingPOST_1
-09:13:44:965  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: reportUsingPOST_1
-09:13:44:965  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveReportUsingPOST_1
-09:13:44:967  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statsUsingGET_1
-09:13:44:971  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: trackUsingPOST_1
-09:13:44:973  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: transferUsingPOST_1
-09:13:44:974  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_1
-09:13:44:974  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: verifyUsingPOST_1
-09:13:44:975  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_2
-09:13:44:975  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_3
-09:13:44:977  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_8
-09:13:44:977  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_9
-09:13:44:977  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_10
-09:13:44:977  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_11
-09:13:44:978  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listByCategoryUsingGET_1
-09:13:44:981  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_8
-09:13:44:981  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_9
-09:13:44:981  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_2
-09:13:44:981  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_3
-09:13:44:982  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_4
-09:13:44:982  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_5
-09:13:44:983  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_10
-09:13:44:983  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_11
-09:13:44:984  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_12
-09:13:44:984  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_13
-09:13:44:986  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_10
-09:13:44:986  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_11
-09:13:44:986  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_4
-09:13:44:986  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_5
-09:13:44:987  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_6
-09:13:44:988  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_7
-09:13:44:989  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_12
-09:13:44:989  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_13
-09:13:44:990  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_14
-09:13:44:990  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_15
-09:13:44:991  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_12
-09:13:44:992  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_13
-09:13:44:993  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statsUsingGET_2
-09:13:44:993  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statsUsingGET_3
-09:13:44:994  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_6
-09:13:44:994  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_7
-09:13:44:995  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: acceptUsingPUT_1
-09:13:44:996  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_8
-09:13:44:996  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_9
-09:13:44:998  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_14
-09:13:44:999  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_15
-09:13:44:999  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_16
-09:13:44:999  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_17
-09:13:45:000  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: rejectUsingPUT_1
-09:13:45:001  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_14
-09:13:45:001  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_15
-09:13:45:002  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_8
-09:13:45:002  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_9
-09:13:45:004  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addTrackLogUsingPOST_1
-09:13:45:006  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: closeUsingPUT_1
-09:13:45:006  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_10
-09:13:45:007  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_11
-09:13:45:008  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_16
-09:13:45:008  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_17
-09:13:45:009  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_18
-09:13:45:009  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_19
-09:13:45:010  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getTrackLogsUsingGET_1
-09:13:45:010  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: releaseUsingPUT_1
-09:13:45:011  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_16
-09:13:45:011  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_17
-09:13:45:011  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_10
-09:13:45:012  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_11
-09:13:45:013  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_12
-09:13:45:013  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_13
-09:13:45:014  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: doReportUsingPUT_1
-09:13:45:015  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: doTransferUsingPUT_1
-09:13:45:018  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_18
-09:13:45:018  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_19
-09:13:45:019  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_20
-09:13:45:019  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_21
-09:13:45:019  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getTransferLogsUsingGET_1
-09:13:45:020  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_18
-09:13:45:020  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_19
-09:13:45:021  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_12
-09:13:45:021  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_13
-09:13:45:022  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: closeUrgeUsingPUT_1
-09:13:45:022  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_14
-09:13:45:022  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_15
-09:13:45:024  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: doUrgeUsingPOST_1
-09:13:45:026  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_20
-09:13:45:026  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_21
-09:13:45:026  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_22
-09:13:45:026  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_23
-09:13:45:028  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getUrgeDetailsUsingGET_1
-09:13:45:028  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_20
-09:13:45:028  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_21
-09:13:45:029  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_14
-09:13:45:029  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_15
-09:13:45:030  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_16
-09:13:45:030  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_17
-09:13:45:034  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_22
-09:13:45:034  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_23
-09:13:45:035  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_24
-09:13:45:035  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_25
-09:13:45:038  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_22
-09:13:45:038  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_23
-09:13:45:039  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_16
-09:13:45:039  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_17
-09:13:45:040  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: verifyUsingPUT_1
-09:13:45:045  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: approveUsingPUT_1
-09:13:45:046  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_18
-09:13:45:046  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_19
-09:13:45:053  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_24
-09:13:45:054  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_25
-09:13:45:056  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_26
-09:13:45:056  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_27
-09:13:45:057  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: publishUsingPUT_1
-09:13:45:057  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: rejectUsingPUT_2
-09:13:45:057  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: rejectUsingPUT_3
-09:13:45:060  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_24
-09:13:45:060  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_25
-09:13:45:061  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: submitForApprovalUsingPUT_1
-09:13:45:061  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: submitFromPlanUsingPOST_1
-09:13:45:062  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_18
-09:13:45:062  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_19
-09:13:45:063  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_20
-09:13:45:063  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_21
-09:13:45:065  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_26
-09:13:45:065  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_27
-09:13:45:065  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_28
-09:13:45:066  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_29
-09:13:45:066  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listByApprovalIdUsingGET_1
-09:13:45:068  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_26
-09:13:45:068  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_27
-09:13:45:068  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_20
-09:13:45:069  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_21
-09:13:45:070  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_22
-09:13:45:070  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_23
-09:13:45:071  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_28
-09:13:45:072  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_29
-09:13:45:072  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_30
-09:13:45:072  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_31
-09:13:45:073  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getCategoryTreeUsingGET_1
-09:13:45:074  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_28
-09:13:45:076  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_29
-09:13:45:076  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_22
-09:13:45:076  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_23
-09:13:45:078  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: applyUsingPOST_1
-09:13:45:078  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: historyUsingGET_1
-09:13:45:079  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_1
-09:13:45:079  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: matchUsingPOST_1
-09:13:45:080  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: matchByTopicUsingPOST_1
-09:13:45:087  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: maintainPageUsingGET_1
-09:13:45:089  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pointRelPageUsingGET_1
-09:13:45:092  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statusPageUsingGET_1
-09:13:45:094  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: testPageUsingGET_1
-09:13:45:097  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: typePageUsingGET_1
-09:13:45:104  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: basePageUsingGET_1
-09:13:45:105  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: baseDeleteUsingDELETE_1
-09:13:45:106  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: baseDeleteBatchUsingDELETE_1
-09:13:45:107  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: baseGetByIdUsingGET_1
-09:13:45:108  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: baseListUsingGET_1
-09:13:45:108  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: baseSaveUsingPOST_1
-09:13:45:109  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: baseUpdateUsingPUT_1
-09:13:45:110  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: boundEquipmentIdsUsingGET_1
-09:13:45:110  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: maintainDeleteUsingDELETE_1
-09:13:45:111  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: maintainDeleteBatchUsingDELETE_1
-09:13:45:111  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: maintainGetByIdUsingGET_1
-09:13:45:112  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: maintainSaveUsingPOST_1
-09:13:45:113  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: maintainUpdateUsingPUT_1
-09:13:45:113  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pointRelByEquipmentUsingGET_1
-09:13:45:113  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pointRelByPointUsingGET_1
-09:13:45:114  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pointRelDeleteUsingDELETE_1
-09:13:45:114  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pointRelDeleteBatchUsingDELETE_1
-09:13:45:115  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pointRelSaveUsingPOST_1
-09:13:45:116  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pointRelSaveBatchUsingPOST_1
-09:13:45:117  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statusDeleteUsingDELETE_1
-09:13:45:117  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statusGetByIdUsingGET_1
-09:13:45:118  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statusSaveUsingPOST_1
-09:13:45:119  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statusUpdateUsingPUT_1
-09:13:45:119  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: testDeleteUsingDELETE_1
-09:13:45:120  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: testDeleteBatchUsingDELETE_1
-09:13:45:120  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: testGetByIdUsingGET_1
-09:13:45:122  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: testSaveUsingPOST_1
-09:13:45:122  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: testUpdateUsingPUT_1
-09:13:45:123  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: typeDeleteUsingDELETE_1
-09:13:45:124  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: typeDeleteBatchUsingDELETE_1
-09:13:45:124  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: typeGetByIdUsingGET_1
-09:13:45:125  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: typeListUsingGET_1
-09:13:45:125  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: typeSaveUsingPOST_1
-09:13:45:126  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: typeUpdateUsingPUT_1
-09:13:45:127  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_32
-09:13:45:127  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_33
-09:13:45:127  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_2
-09:13:45:128  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_3
-09:13:45:131  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageUsingGET_1
-09:13:45:131  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: bindEquipmentUsingPOST_1
-09:13:45:131  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: boundEquipmentIdsUsingGET_2
-09:13:45:131  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: boundEquipmentIdsUsingGET_3
-09:13:45:132  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchUsingDELETE_1
-09:13:45:132  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_24
-09:13:45:132  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_25
-09:13:45:132  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_34
-09:13:45:133  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_35
-09:13:45:133  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_4
-09:13:45:133  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_5
-09:13:45:134  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_30
-09:13:45:135  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_31
-09:13:45:135  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_1
-09:13:45:137  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_36
-09:13:45:137  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_37
-09:13:45:138  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_6
-09:13:45:138  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_7
-09:13:45:138  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: monthlyStatsUsingGET_1
-09:13:45:139  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageUsingGET_2
-09:13:45:139  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageUsingGET_3
-09:13:45:144  INFO 36472 --- [nacos-grpc-client-executor-6] com.alibaba.nacos.common.remote.client   : [626d9344-d19e-4761-8106-befa461d96e5] Receive server push request, request = NotifySubscriberRequest, requestId = 267
-09:13:45:145  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: currentPageUsingGET_1
-09:13:45:146  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: historyPageUsingGET_1
-09:13:45:147  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageUsingGET_4
-09:13:45:147  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageUsingGET_5
-09:13:45:148  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_26
-09:13:45:148  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_27
-09:13:45:149  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: finalApproveUsingPUT_1
-09:13:45:149  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: firstApproveUsingPUT_1
-09:13:45:150  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_38
-09:13:45:150  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_39
-09:13:45:150  INFO 36472 --- [nacos-grpc-client-executor-6] com.alibaba.nacos.common.remote.client   : [626d9344-d19e-4761-8106-befa461d96e5] Ack server push request, request = NotifySubscriberRequest, requestId = 267
-09:13:45:155  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: publishUsingPOST_1
-09:13:45:156  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_32
-09:13:45:156  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_33
-09:13:45:157  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: scopeUsersUsingGET_1
-09:13:45:157  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_2
-09:13:45:158  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_3
-09:13:45:158  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateStatusUsingPUT_1
-09:13:45:159  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingDELETE_2
-09:13:45:159  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingDELETE_3
-09:13:45:159  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_8
-09:13:45:159  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_9
-09:13:45:160  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_34
-09:13:45:160  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_35
-09:13:45:161  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_4
-09:13:45:161  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_5
-09:13:45:161  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingDELETE_4
-09:13:45:161  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingDELETE_5
-09:13:45:162  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_10
-09:13:45:162  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_11
-09:13:45:163  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_36
-09:13:45:163  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_37
-09:13:45:163  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_6
-09:13:45:163  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_7
-09:13:45:165  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteMonitoringUsingDELETE_1
-09:13:45:165  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletePlanUsingDELETE_1
-09:13:45:165  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteTemplateUsingDELETE_1
-09:13:45:166  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAnalysisUsingGET_1
-09:13:45:166  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getRecordUsingGET_1
-09:13:45:166  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: monitoringUsingGET_1
-09:13:45:167  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: plansUsingGET_1
-09:13:45:167  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: resultUsingGET_1
-09:13:45:168  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveMonitoringUsingPOST_1
-09:13:45:169  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: savePlanUsingPOST_1
-09:13:45:169  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveRecordUsingPOST_1
-09:13:45:170  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveTemplateUsingPOST_1
-09:13:45:170  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: sendAnalysisUsingPOST_1
-09:13:45:171  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: templatesUsingGET_1
-09:13:45:171  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updatePlanUsingPUT_1
-09:13:45:171  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updatePlanStatusUsingPUT_1
-09:13:45:172  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateRecordUsingPUT_1
-09:13:45:172  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateTemplateUsingPUT_1
-09:13:45:173  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportReportUsingGET_1
-09:13:45:175  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addLogUsingPOST_1
-09:13:45:175  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteEventUsingDELETE_1
-09:13:45:175  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteProjectUsingDELETE_1
-09:13:45:176  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteRoleUsingDELETE_1
-09:13:45:176  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteSceneUsingDELETE_1
-09:13:45:176  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteTaskUsingDELETE_1
-09:13:45:176  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: eventUsingGET_1
-09:13:45:177  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: logUsingGET_1
-09:13:45:177  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: processUsingPOST_1
-09:13:45:177  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: projectsUsingGET_1
-09:13:45:178  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: resultUsingGET_2
-09:13:45:178  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: resultUsingGET_3
-09:13:45:178  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: roleUsingGET_1
-09:13:45:179  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveEventUsingPOST_1
-09:13:45:179  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveProjectUsingPOST_1
-09:13:45:180  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveRoleUsingPOST_1
-09:13:45:181  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveSceneUsingPOST_1
-09:13:45:181  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveTaskUsingPOST_1
-09:13:45:181  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: sceneUsingGET_1
-09:13:45:182  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: taskUsingGET_1
-09:13:45:183  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAlarmsUsingGET_1
-09:13:45:184  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDailyStatsUsingGET_1
-09:13:45:184  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDeviceGroupUsingGET_1
-09:13:45:184  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getLatestUsingGET_1
-09:13:45:186  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getTrendUsingGET_1
-09:13:45:194  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addLeaderInstructionUsingPOST_1
-09:13:45:194  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: clearWarningUsingPOST_1
-09:13:45:194  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: confirmWarningUsingPOST_1
-09:13:45:195  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchWarningUsingDELETE_1
-09:13:45:195  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteWarningUsingDELETE_1
-09:13:45:196  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getArchiveUsingGET_1
-09:13:45:196  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getArchiveListUsingGET_1
-09:13:45:196  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAttachmentsUsingGET_1
-09:13:45:197  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getCompletedWarningsUsingGET_1
-09:13:45:197  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDashboardStatisticsUsingGET_1
-09:13:45:198  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDisposalDetailUsingGET_1
-09:13:45:198  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDisposalHistoryUsingGET_1
-09:13:45:198  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDisposalListUsingGET_1
-09:13:45:199  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDisposalProcessUsingGET_1
-09:13:45:199  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getLinkedAlarmsUsingGET_1
-09:13:45:199  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getProcessDiagramUsingGET_1
-09:13:45:200  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getProcessStatisticsUsingGET_1
-09:13:45:200  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getProcessingWarningsUsingGET_1
-09:13:45:201  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getStatisticsUsingGET_1
-09:13:45:201  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getSupervisionListUsingGET_1
-09:13:45:201  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getTodoListUsingGET_1
-09:13:45:202  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getWarningDetailUsingGET_1
-09:13:45:202  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getWarningFullDetailUsingGET_1
-09:13:45:203  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getWarningListUsingGET_1
-09:13:45:203  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: linkAlarmsUsingPOST_1
-09:13:45:203  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: misreportWarningUsingPOST_1
-09:13:45:204  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: publishWarningUsingPOST_1
-09:13:45:204  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: resolveWarningUsingPOST_1
-09:13:45:205  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: returnWarningUsingPOST_1
-09:13:45:205  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveWarningUsingPOST_1
-09:13:45:206  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: searchWarningsUsingGET_1
-09:13:45:207  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: submitWarningProcessUsingPOST_1
-09:13:45:207  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: supervisionWarningUsingPOST_1
-09:13:45:208  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateWarningUsingPUT_1
-09:13:45:208  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: upgradeWarningUsingPOST_1
-09:13:45:208  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: downloadAttachmentUsingGET_1
-09:13:45:209  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: previewAttachmentUsingGET_1
-09:13:45:211  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getBySpecialUsingGET_1
-09:13:45:211  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getOverviewUsingGET_1
-09:13:45:212  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getRangeUsingGET_1
-09:13:45:213  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryPageUsingGET_1
-09:13:45:213  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDisposalTypeStatUsingGET_1
-09:13:45:214  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDisposeStatusStatUsingGET_1
-09:13:45:215  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: efficiencyUsingGET_1
-09:13:45:216  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageUsingGET_6
-09:13:45:216  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageUsingGET_7
-09:13:45:216  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statusUsingGET_1
-09:13:45:217  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: summaryUsingGET_1
-09:13:45:219  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByTypeUsingGET_1
-09:13:45:225  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getOverviewUsingGET_2
-09:13:45:226  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getOverviewUsingGET_3
-09:13:45:226  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getRangeUsingGET_2
-09:13:45:227  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getRangeUsingGET_3
-09:13:45:227  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryPageUsingGET_2
-09:13:45:227  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryPageUsingGET_3
-09:13:45:228  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getTodayStatsUsingGET_1
-09:13:45:229  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryTodayPageUsingGET_1
-09:13:45:230  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getTrendByDayUsingGET_1
-09:13:45:230  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getTrendByMonthUsingGET_1
-09:13:45:234  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageUsingGET_8
-09:13:45:234  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageUsingGET_9
-09:13:45:234  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: bindEquipmentUsingPOST_2
-09:13:45:234  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: bindEquipmentUsingPOST_3
-09:13:45:234  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: bindPumpStationUsingPOST_1
-09:13:45:235  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchUsingDELETE_2
-09:13:45:235  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchUsingDELETE_3
-09:13:45:235  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_28
-09:13:45:235  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_29
-09:13:45:236  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_40
-09:13:45:236  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_41
-09:13:45:236  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_12
-09:13:45:236  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_13
-09:13:45:237  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_38
-09:13:45:237  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_39
-09:13:45:238  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_8
-09:13:45:238  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_9
-09:13:45:239  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getListUsingGET_1
-09:13:45:239  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getStatsUsingGET_1
-09:13:45:242  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_30
-09:13:45:242  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_31
-09:13:45:242  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchByIdUsingDELETE_1
-09:13:45:243  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_30
-09:13:45:243  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_31
-09:13:45:243  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByTopLevelTypeUsingGET_1
-09:13:45:243  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_42
-09:13:45:244  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_43
-09:13:45:244  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getEquipmentByPointUsingGET_1
-09:13:45:245  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getEquipmentDetailUsingGET_1
-09:13:45:247  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getListUsingGET_2
-09:13:45:248  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getListUsingGET_3
-09:13:45:249  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_40
-09:13:45:249  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_41
-09:13:45:250  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveBatchUsingPOST_1
-09:13:45:250  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: testEquipmentUsingPOST_1
-09:13:45:250  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_24
-09:13:45:251  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_25
-09:13:45:251  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateEquipmentStatusUsingPUT_1
-09:13:45:252  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_32
-09:13:45:253  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_33
-09:13:45:253  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchByIdUsingDELETE_2
-09:13:45:253  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchByIdUsingDELETE_3
-09:13:45:254  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_32
-09:13:45:254  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_33
-09:13:45:254  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_44
-09:13:45:254  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_45
-09:13:45:254  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getListUsingGET_4
-09:13:45:254  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getListUsingGET_5
-09:13:45:255  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_42
-09:13:45:255  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_43
-09:13:45:255  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveBatchUsingPOST_2
-09:13:45:255  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveBatchUsingPOST_3
-09:13:45:256  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_26
-09:13:45:256  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_27
-09:13:45:257  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_34
-09:13:45:257  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_35
-09:13:45:258  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchByIdUsingDELETE_4
-09:13:45:258  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchByIdUsingDELETE_5
-09:13:45:258  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_34
-09:13:45:258  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_35
-09:13:45:258  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_46
-09:13:45:258  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_47
-09:13:45:259  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getListUsingGET_6
-09:13:45:259  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getListUsingGET_7
-09:13:45:259  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_44
-09:13:45:259  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_45
-09:13:45:260  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveBatchUsingPOST_4
-09:13:45:260  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveBatchUsingPOST_5
-09:13:45:260  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_28
-09:13:45:260  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_29
-09:13:45:262  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_36
-09:13:45:262  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_37
-09:13:45:262  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchByIdUsingDELETE_6
-09:13:45:262  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchByIdUsingDELETE_7
-09:13:45:262  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_36
-09:13:45:262  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_37
-09:13:45:263  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_48
-09:13:45:263  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_49
-09:13:45:263  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getListUsingGET_8
-09:13:45:263  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getListUsingGET_9
-09:13:45:264  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_46
-09:13:45:264  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_47
-09:13:45:264  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveBatchUsingPOST_6
-09:13:45:264  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveBatchUsingPOST_7
-09:13:45:265  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_30
-09:13:45:265  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_31
-09:13:45:266  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAlarmCountsUsingGET_1
-09:13:45:266  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAveragePressureUsingGET_1
-09:13:45:266  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDailyStatsUsingGET_2
-09:13:45:266  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDailyStatsUsingGET_3
-09:13:45:267  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDeviceGroupUsingGET_2
-09:13:45:267  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDeviceGroupUsingGET_3
-09:13:45:267  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getPressureDistributionUsingGET_1
-09:13:45:267  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getSignalVsPressureUsingGET_1
-09:13:45:270  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getFlowMonitorPageUsingGET_1
-09:13:45:270  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getFlowTrendUsingGET_1
-09:13:45:271  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportFlowMonitorDataUsingGET_1
-09:13:45:272  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: dispatchUsingPOST_1
-09:13:45:272  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: equipmentUsingGET_1
-09:13:45:272  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: historyUsingGET_2
-09:13:45:273  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: historyUsingGET_3
-09:13:45:273  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: resolveUsingPUT_1
-09:13:45:273  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statsUsingGET_4
-09:13:45:273  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statsUsingGET_5
-09:13:45:274  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: summaryUsingGET_2
-09:13:45:274  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: summaryUsingGET_3
-09:13:45:276  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_38
-09:13:45:276  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_39
-09:13:45:276  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletePointRelUsingDELETE_1
-09:13:45:277  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findFullByPageUsingGET_1
-09:13:45:277  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAbnormalListUsingGET_1
-09:13:45:277  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getEquipmentStatusUsingGET_1
-09:13:45:278  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getPointRelByEquipmentUsingGET_1
-09:13:45:278  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getPointRelByPointUsingGET_1
-09:13:45:278  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_48
-09:13:45:278  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_49
-09:13:45:279  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveDeviceRelUsingPOST_1
-09:13:45:280  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: savePointRelUsingPOST_1
-09:13:45:280  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: savePointRelBatchUsingPOST_1
-09:13:45:281  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_32
-09:13:45:281  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_33
-09:13:45:282  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_40
-09:13:45:282  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_41
-09:13:45:283  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteDeviceRelUsingDELETE_1
-09:13:45:284  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_38
-09:13:45:284  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_39
-09:13:45:285  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_50
-09:13:45:285  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_51
-09:13:45:285  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_14
-09:13:45:285  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_15
-09:13:45:285  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listDevicesUsingGET_1
-09:13:45:286  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: optionsUsingGET_1
-09:13:45:288  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_50
-09:13:45:288  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_51
-09:13:45:289  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveDeviceRelUsingPOST_2
-09:13:45:289  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveDeviceRelUsingPOST_3
-09:13:45:290  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveDeviceRelBatchUsingPOST_1
-09:13:45:290  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_34
-09:13:45:290  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_35
-09:13:45:291  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getPointsUsingGET_1
-09:13:45:291  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getTrendUsingGET_2
-09:13:45:291  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getTrendUsingGET_3
-09:13:45:292  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAlarmsUsingGET_2
-09:13:45:292  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAlarmsUsingGET_3
-09:13:45:293  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDailyStatsUsingGET_4
-09:13:45:293  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDailyStatsUsingGET_5
-09:13:45:293  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDeviceGroupUsingGET_4
-09:13:45:293  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDeviceGroupUsingGET_5
-09:13:45:293  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getLatestDataUsingGET_1
-09:13:45:294  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getLatestWithAlarmUsingGET_1
-09:13:45:294  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getOnlineRateUsingGET_1
-09:13:45:294  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getTrendUsingGET_4
-09:13:45:294  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getTrendUsingGET_5
-09:13:45:295  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_42
-09:13:45:295  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_43
-09:13:45:297  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_40
-09:13:45:297  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_41
-09:13:45:297  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_52
-09:13:45:297  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_53
-09:13:45:299  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_52
-09:13:45:299  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_53
-09:13:45:299  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_36
-09:13:45:299  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_37
-09:13:45:300  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_44
-09:13:45:300  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_45
-09:13:45:303  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_42
-09:13:45:303  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_43
-09:13:45:304  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_54
-09:13:45:304  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_55
-09:13:45:304  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: optionsUsingGET_2
-09:13:45:304  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: optionsUsingGET_3
-09:13:45:306  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_54
-09:13:45:306  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_55
-09:13:45:307  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_38
-09:13:45:307  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_39
-09:13:45:307  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportDataUsingGET_1
-09:13:45:308  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_46
-09:13:45:309  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_47
-09:13:45:309  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteDeviceRelUsingDELETE_2
-09:13:45:309  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteDeviceRelUsingDELETE_3
-09:13:45:310  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_44
-09:13:45:311  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_45
-09:13:45:311  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_56
-09:13:45:311  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_57
-09:13:45:311  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listByNetworkIdUsingGET_1
-09:13:45:311  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listDevicesUsingGET_2
-09:13:45:312  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listDevicesUsingGET_3
-09:13:45:312  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: optionsUsingGET_4
-09:13:45:312  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: optionsUsingGET_5
-09:13:45:313  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_56
-09:13:45:313  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_57
-09:13:45:314  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveDeviceRelUsingPOST_4
-09:13:45:314  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveDeviceRelUsingPOST_5
-09:13:45:315  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveDeviceRelBatchUsingPOST_2
-09:13:45:315  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveDeviceRelBatchUsingPOST_3
-09:13:45:315  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_40
-09:13:45:315  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_41
-09:13:45:316  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_48
-09:13:45:316  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_49
-09:13:45:318  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_46
-09:13:45:318  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_47
-09:13:45:318  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_58
-09:13:45:318  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_59
-09:13:45:319  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listByNetworkIdUsingGET_2
-09:13:45:319  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listByNetworkIdUsingGET_3
-09:13:45:320  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_58
-09:13:45:321  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_59
-09:13:45:321  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statsUsingGET_6
-09:13:45:321  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statsUsingGET_7
-09:13:45:322  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_42
-09:13:45:322  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_43
-09:13:45:323  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getEquipmentsUsingGET_1
-09:13:45:323  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getManholesUsingGET_1
-09:13:45:324  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getPipeLinesUsingGET_1
-09:13:45:325  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_50
-09:13:45:325  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_51
-09:13:45:325  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportDataUsingGET_2
-09:13:45:325  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportDataUsingGET_3
-09:13:45:326  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_60
-09:13:45:326  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_61
-09:13:45:326  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getMapPointsUsingGET_1
-09:13:45:328  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageUsingGET_10
-09:13:45:328  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageUsingGET_11
-09:13:45:330  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_60
-09:13:45:330  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_61
-09:13:45:331  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statisticsByLevelUsingGET_1
-09:13:45:331  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statisticsByRegionUsingGET_1
-09:13:45:331  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statisticsByStatusUsingGET_1
-09:13:45:332  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statisticsByTypeUsingGET_1
-09:13:45:332  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statisticsOverviewUsingGET_1
-09:13:45:332  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statisticsStatusTimelineUsingGET_1
-09:13:45:333  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statisticsTypeTimelineUsingGET_1
-09:13:45:333  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: submitUsingPUT_1
-09:13:45:333  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_44
-09:13:45:333  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_45
-09:13:45:336  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_1
-09:13:45:337  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: assignableDeptTreeUsingGET_1
-09:13:45:337  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: assignableUsersUsingGET_1
-09:13:45:338  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: completeUsingPUT_1
-09:13:45:339  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_52
-09:13:45:339  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_53
-09:13:45:339  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: editUsingPUT_1
-09:13:45:341  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_48
-09:13:45:341  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_49
-09:13:45:341  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_62
-09:13:45:342  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_63
-09:13:45:343  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getLeakageMonitorPageUsingGET_1
-09:13:45:344  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getLeakageTrendUsingGET_1
-09:13:45:344  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportLeakageMonitorDataUsingGET_1
-09:13:45:353  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDashboardStatUsingPOST_1
-09:13:45:355  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryByDateUsingPOST_1
-09:13:45:357  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: abnormalTerminalTrendUsingPOST_1
-09:13:45:359  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: caseRateTrendUsingPOST_1
-09:13:45:361  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDispatchUsingPOST_1
-09:13:45:362  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: processTaskUsingPOST_1
-09:13:45:366  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingPOST_2
-09:13:45:366  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingPOST_3
-09:13:45:367  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_64
-09:13:45:367  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_65
-09:13:45:369  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAllImeiCardNumbersUsingGET_1
-09:13:45:369  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getLatestDataByImeiUsingGET_1
-09:13:45:370  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getOverallStatisticsUsingGET_1
-09:13:45:370  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryAlarmDataUsingGET_1
-09:13:45:371  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryPageUsingGET_4
-09:13:45:371  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryPageUsingGET_5
-09:13:45:371  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statAlarmTrendByHourUsingGET_1
-09:13:45:371  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statManholeByDeviceUsingGET_1
-09:13:45:372  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statTemperatureTrendByHourUsingGET_1
-09:13:45:374  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteRelUsingDELETE_1
-09:13:45:374  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveRelUsingPOST_1
-09:13:45:375  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveWarningThresholdUsingPOST_2
-09:13:45:375  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveWarningThresholdUsingPOST_3
-09:13:45:376  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateDeviceStatusUsingPOST_1
-09:13:45:378  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingPOST_4
-09:13:45:379  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingPOST_5
-09:13:45:380  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getManholeDataListUsingPOST_1
-09:13:45:382  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAlarmMonitorListUsingPOST_1
-09:13:45:383  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_66
-09:13:45:383  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_67
-09:13:45:384  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: countByTypeUsingPOST_1
-09:13:45:386  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getRelDeviceDataUsingGET_1
-09:13:45:387  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getRelListUsingGET_1
-09:13:45:387  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: searchRelDevicesUsingGET_1
-09:13:45:389  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statisticsUsingPOST_1
-09:13:45:389  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportUsingPOST_1
-09:13:45:390  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getManholeLayerDataUsingPOST_1
-09:13:45:391  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteFileUsingDELETE_1
-09:13:45:391  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: uploadFileUsingPOST_2
-09:13:45:392  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: uploadFileUsingPOST_3
-09:13:45:392  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: uploadFilesUsingPOST_2
-09:13:45:392  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: uploadFilesUsingPOST_3
-09:13:45:394  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_50
-09:13:45:394  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_51
-09:13:45:394  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: bindEquipmentUsingPOST_4
-09:13:45:394  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: bindEquipmentUsingPOST_5
-09:13:45:394  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchByIdUsingDELETE_8
-09:13:45:394  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchByIdUsingDELETE_9
-09:13:45:395  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_54
-09:13:45:395  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_55
-09:13:45:395  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_68
-09:13:45:395  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_69
-09:13:45:395  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getListUsingGET_10
-09:13:45:395  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getListUsingGET_11
-09:13:45:396  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getPointDetailUsingGET_1
-09:13:45:396  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getPointsByNetworkUsingGET_1
-09:13:45:396  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_62
-09:13:45:396  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_63
-09:13:45:397  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveBatchUsingPOST_8
-09:13:45:397  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveBatchUsingPOST_9
-09:13:45:398  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: unbindEquipmentUsingPOST_1
-09:13:45:398  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_46
-09:13:45:398  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_47
-09:13:45:399  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAllDeviceCodesUsingGET_1
-09:13:45:399  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getLatestDataByDeviceUsingGET_1
-09:13:45:400  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryAbnormalDataUsingGET_1
-09:13:45:400  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryPageUsingGET_6
-09:13:45:400  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryPageUsingGET_7
-09:13:45:400  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statPowerByDeviceUsingGET_1
-09:13:45:401  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statPowerTrendByHourUsingGET_1
-09:13:45:403  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_52
-09:13:45:403  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_53
-09:13:45:403  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchByIdUsingDELETE_10
-09:13:45:403  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchByIdUsingDELETE_11
-09:13:45:403  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_56
-09:13:45:404  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_57
-09:13:45:404  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_70
-09:13:45:404  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_71
-09:13:45:404  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getListUsingGET_12
-09:13:45:404  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getListUsingGET_13
-09:13:45:405  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_64
-09:13:45:405  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_65
-09:13:45:405  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveBatchUsingPOST_10
-09:13:45:406  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveBatchUsingPOST_11
-09:13:45:406  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_48
-09:13:45:406  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_49
-09:13:45:409  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageUsingGET_12
-09:13:45:409  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageUsingGET_13
-09:13:45:409  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: bindEquipmentUsingPOST_6
-09:13:45:409  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: bindEquipmentUsingPOST_7
-09:13:45:410  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: boundEquipmentIdsUsingGET_4
-09:13:45:410  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: boundEquipmentIdsUsingGET_5
-09:13:45:410  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchUsingDELETE_4
-09:13:45:410  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchUsingDELETE_5
-09:13:45:411  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_58
-09:13:45:411  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_59
-09:13:45:411  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_72
-09:13:45:411  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_73
-09:13:45:411  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_16
-09:13:45:411  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_17
-09:13:45:412  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_66
-09:13:45:412  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_67
-09:13:45:413  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_10
-09:13:45:413  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_11
-09:13:45:413  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: dashboardUsingGET_1
-09:13:45:414  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportUsingGET_1
-09:13:45:415  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: dispatchUsingPOST_2
-09:13:45:415  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: dispatchUsingPOST_3
-09:13:45:415  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: equipmentUsingGET_2
-09:13:45:415  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: equipmentUsingGET_3
-09:13:45:415  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: historyUsingGET_4
-09:13:45:416  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: historyUsingGET_5
-09:13:45:416  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: resolveUsingPUT_2
-09:13:45:416  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: resolveUsingPUT_3
-09:13:45:416  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statsUsingGET_8
-09:13:45:416  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statsUsingGET_9
-09:13:45:417  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getHistoryUsingGET_1
-09:13:45:417  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getPointsUsingGET_2
-09:13:45:417  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getPointsUsingGET_3
-09:13:45:418  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getTrendUsingGET_6
-09:13:45:418  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getTrendUsingGET_7
-09:13:45:420  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getPressureMonitorPageUsingGET_1
-09:13:45:420  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getPressureTrendUsingGET_1
-09:13:45:421  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportPressureMonitorDataUsingGET_1
-09:13:45:422  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAllDeviceCodesUsingGET_2
-09:13:45:422  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAllDeviceCodesUsingGET_3
-09:13:45:422  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDeviceGroupUsingGET_6
-09:13:45:422  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDeviceGroupUsingGET_7
-09:13:45:423  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getLatestDataByDeviceUsingGET_2
-09:13:45:423  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getLatestDataByDeviceUsingGET_3
-09:13:45:423  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryAbnormalDataUsingGET_2
-09:13:45:423  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryAbnormalDataUsingGET_3
-09:13:45:424  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryPageUsingGET_8
-09:13:45:424  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryPageUsingGET_9
-09:13:45:424  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statFlowTrendByHourUsingGET_1
-09:13:45:424  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statRadarByDeviceUsingGET_1
-09:13:45:425  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getFlowHistoryUsingGET_1
-09:13:45:425  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getGasAlarmLatestUsingGET_1
-09:13:45:426  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getPointsWithLatestDataUsingGET_1
-09:13:45:426  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getPressureHistoryUsingGET_1
-09:13:45:426  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getVideoListUsingGET_1
-09:13:45:427  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_60
-09:13:45:427  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_61
-09:13:45:429  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_54
-09:13:45:429  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_55
-09:13:45:429  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_74
-09:13:45:429  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_75
-09:13:45:430  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getFourColorMapUsingGET_1
-09:13:45:430  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getGasAssessmentsUsingGET_1
-09:13:45:433  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_68
-09:13:45:433  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_69
-09:13:45:434  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_50
-09:13:45:434  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateByIdUsingPUT_51
-09:13:45:435  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_2
-09:13:45:435  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_3
-09:13:45:439  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_2
-09:13:45:439  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_3
-09:13:45:439  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: editUsingPUT_2
-09:13:45:439  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: editUsingPUT_3
-09:13:45:440  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getConfigKeyUsingGET_1
-09:13:45:440  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_4
-09:13:45:440  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_5
-09:13:45:440  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: refreshCacheUsingDELETE_1
-09:13:45:441  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_1
-09:13:45:444  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_18
-09:13:45:444  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_19
-09:13:45:445  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportUsingPOST_2
-09:13:45:445  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportUsingPOST_3
-09:13:45:447  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_4
-09:13:45:447  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_5
-09:13:45:448  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: editUsingPUT_4
-09:13:45:448  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: editUsingPUT_5
-09:13:45:449  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: excludeChildUsingGET_1
-09:13:45:450  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_6
-09:13:45:450  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_7
-09:13:45:453  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_20
-09:13:45:453  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_21
-09:13:45:454  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_2
-09:13:45:454  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_3
-09:13:45:456  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_6
-09:13:45:456  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_7
-09:13:45:457  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: dictTypeUsingGET_1
-09:13:45:457  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: editUsingPUT_6
-09:13:45:457  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: editUsingPUT_7
-09:13:45:457  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_8
-09:13:45:457  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_9
-09:13:45:458  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_4
-09:13:45:458  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_5
-09:13:45:459  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_22
-09:13:45:459  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_23
-09:13:45:460  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportUsingPOST_4
-09:13:45:460  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportUsingPOST_5
-09:13:45:462  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_8
-09:13:45:462  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_9
-09:13:45:462  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: editUsingPUT_8
-09:13:45:463  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: editUsingPUT_9
-09:13:45:463  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_10
-09:13:45:463  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_11
-09:13:45:463  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: optionselectUsingGET_1
-09:13:45:463  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: refreshCacheUsingDELETE_2
-09:13:45:463  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: refreshCacheUsingDELETE_3
-09:13:45:464  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_6
-09:13:45:464  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_7
-09:13:45:466  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_24
-09:13:45:466  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_25
-09:13:45:468  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportUsingPOST_6
-09:13:45:469  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportUsingPOST_7
-09:13:45:469  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: indexUsingGET_1
-09:13:45:470  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: indexUsingHEAD_1
-09:13:45:470  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: indexUsingPOST_1
-09:13:45:470  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: indexUsingPUT_1
-09:13:45:470  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: indexUsingPATCH_1
-09:13:45:471  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: indexUsingDELETE_1
-09:13:45:471  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: indexUsingOPTIONS_1
-09:13:45:471  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: indexUsingTRACE_1
-09:13:45:473  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_12
-09:13:45:473  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_13
-09:13:45:473  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getRoutersUsingGET_1
-09:13:45:474  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: loginUsingPOST_1
-09:13:45:474  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: loginNoNeedAuthUsingPOST_1
-09:13:45:475  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: logoutUsingPOST_1
-09:13:45:476  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: cleanUsingDELETE_1
-09:13:45:476  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_8
-09:13:45:476  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_9
-09:13:45:477  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: unlockUsingGET_1
-09:13:45:479  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_26
-09:13:45:479  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_27
-09:13:45:479  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportUsingPOST_8
-09:13:45:479  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportUsingPOST_9
-09:13:45:482  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_10
-09:13:45:482  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_11
-09:13:45:482  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: editUsingPUT_10
-09:13:45:482  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: editUsingPUT_11
-09:13:45:483  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_14
-09:13:45:483  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_15
-09:13:45:485  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_28
-09:13:45:485  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_29
-09:13:45:486  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_10
-09:13:45:486  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_11
-09:13:45:487  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: roleMenuTreeselectUsingGET_1
-09:13:45:488  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: treeselectUsingGET_1
-09:13:45:490  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_12
-09:13:45:490  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_13
-09:13:45:490  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: editUsingPUT_12
-09:13:45:490  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: editUsingPUT_13
-09:13:45:491  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_16
-09:13:45:491  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_17
-09:13:45:491  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_12
-09:13:45:491  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_13
-09:13:45:493  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_30
-09:13:45:493  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_31
-09:13:45:494  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: cleanUsingDELETE_2
-09:13:45:494  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: cleanUsingDELETE_3
-09:13:45:494  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_14
-09:13:45:494  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_15
-09:13:45:496  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_32
-09:13:45:496  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_33
-09:13:45:497  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportUsingPOST_10
-09:13:45:497  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportUsingPOST_11
-09:13:45:499  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_14
-09:13:45:499  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_15
-09:13:45:499  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: editUsingPUT_14
-09:13:45:499  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: editUsingPUT_15
-09:13:45:500  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_18
-09:13:45:500  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_19
-09:13:45:500  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: optionselectUsingGET_2
-09:13:45:500  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: optionselectUsingGET_3
-09:13:45:500  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_16
-09:13:45:500  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_17
-09:13:45:503  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_34
-09:13:45:504  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_35
-09:13:45:504  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportUsingPOST_12
-09:13:45:504  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportUsingPOST_13
-09:13:45:505  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: avatarUsingPOST_1
-09:13:45:505  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: profileUsingGET_1
-09:13:45:509  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateProfileUsingPUT_1
-09:13:45:510  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updatePwdUsingPUT_1
-09:13:45:511  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: registerUsingPOST_1
-09:13:45:512  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_16
-09:13:45:512  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_17
-09:13:45:513  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: cancelAuthUserUsingPUT_1
-09:13:45:513  WARN 36472 --- [restartedMain] s.d.s.w.r.p.ParameterDataTypeReader      : Trying to infer dataType java.lang.Long[]
-09:13:45:513  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: cancelAuthUserAllUsingPUT_1
-09:13:45:514  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: changeStatusUsingPUT_1
-09:13:45:514  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: dataScopeUsingPUT_1
-09:13:45:515  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deptTreeUsingGET_1
-09:13:45:515  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: editUsingPUT_16
-09:13:45:515  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: editUsingPUT_17
-09:13:45:515  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_20
-09:13:45:515  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_21
-09:13:45:516  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: optionselectUsingGET_4
-09:13:45:516  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: optionselectUsingGET_5
-09:13:45:516  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_18
-09:13:45:516  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_19
-09:13:45:516  WARN 36472 --- [restartedMain] s.d.s.w.r.p.ParameterDataTypeReader      : Trying to infer dataType java.lang.Long[]
-09:13:45:516  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: selectAuthUserAllUsingPUT_1
-09:13:45:522  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: allocatedListUsingGET_1
-09:13:45:523  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_36
-09:13:45:523  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_37
-09:13:45:525  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: unallocatedListUsingGET_1
-09:13:45:526  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportUsingPOST_14
-09:13:45:526  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportUsingPOST_15
-09:13:45:528  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_18
-09:13:45:528  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_19
-09:13:45:528  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: authRoleUsingGET_1
-09:13:45:529  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: changeStatusUsingPUT_2
-09:13:45:530  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: changeStatusUsingPUT_3
-09:13:45:530  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deptTreeUsingGET_2
-09:13:45:530  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deptTreeUsingGET_3
-09:13:45:531  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: editUsingPUT_18
-09:13:45:531  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: editUsingPUT_19
-09:13:45:531  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: enabledAllUsingGET_1
-09:13:45:532  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_22
-09:13:45:532  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_23
-09:13:45:532  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_24
-09:13:45:532  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getInfoUsingGET_25
-09:13:45:532  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: importDataUsingPOST_1
-09:13:45:533  WARN 36472 --- [restartedMain] s.d.s.w.r.p.ParameterDataTypeReader      : Trying to infer dataType java.lang.Long[]
-09:13:45:533  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: insertAuthRoleUsingPUT_1
-09:13:45:533  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_20
-09:13:45:533  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_21
-09:13:45:534  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: resetPwdUsingPUT_1
-09:13:45:536  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_38
-09:13:45:537  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_39
-09:13:45:539  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportUsingPOST_16
-09:13:45:539  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportUsingPOST_17
-09:13:45:539  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: importTemplateUsingPOST_1
-09:13:45:540  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: forceLogoutUsingDELETE_1
-09:13:45:541  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_40
-09:13:45:541  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_41
-09:13:45:542  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAllDeviceCodesUsingGET_4
-09:13:45:542  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAllDeviceCodesUsingGET_5
-09:13:45:543  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDeviceGroupUsingGET_8
-09:13:45:543  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getDeviceGroupUsingGET_9
-09:13:45:543  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getLatestDataByDeviceUsingGET_4
-09:13:45:543  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getLatestDataByDeviceUsingGET_5
-09:13:45:544  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryAbnormalDataUsingGET_4
-09:13:45:544  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryAbnormalDataUsingGET_5
-09:13:45:544  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryPageUsingGET_10
-09:13:45:544  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryPageUsingGET_11
-09:13:45:545  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statTelemetryByDeviceUsingGET_1
-09:13:45:545  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statTelemetryTrendByHourUsingGET_1
-09:13:45:547  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: handleFaultUsingPOST_1
-09:13:45:550  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingPOST_6
-09:13:45:550  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingPOST_7
-09:13:45:551  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_76
-09:13:45:551  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_77
-09:13:45:555  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getUserUsingGET_1
-09:13:45:556  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingDELETE_6
-09:13:45:556  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingDELETE_7
-09:13:45:560  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_70
-09:13:45:561  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_71
-09:13:45:563  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_12
-09:13:45:563  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_13
-09:13:45:565  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: userListUsingGET_1
-09:13:45:567  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getHistoryOverviewUsingGET_1
-09:13:45:568  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getHistoryOverviewPageUsingGET_1
-09:13:45:569  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getTodayOverviewUsingGET_1
-09:13:45:570  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getTodayOverviewPageUsingGET_1
-09:13:45:570  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getTodayUnprocessedUsingGET_1
-09:13:45:574  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addWarningItemUsingPOST_1
-09:13:45:574  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: generateItemCodeUsingGET_1
-09:13:45:575  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getItemDetailUsingGET_1
-09:13:45:576  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getItemDetailByCodeUsingGET_1
-09:13:45:577  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryWarningItemsUsingGET_1
-09:13:45:577  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateItemStatusUsingPUT_1
-09:13:45:577  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateWarningItemUsingPUT_1
-09:13:45:580  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addWarningReasonUsingPOST_1
-09:13:45:580  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getReasonDetailUsingGET_1
-09:13:45:580  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getReasonsByTypeAndLevelUsingGET_1
-09:13:45:581  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryWarningReasonsUsingGET_1
-09:13:45:581  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateReasonStatusUsingPUT_1
-09:13:45:582  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateWarningReasonUsingPUT_1
-09:13:45:583  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_2
-09:13:45:583  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_3
-09:13:45:583  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByModulePageUsingGET_1
-09:13:45:584  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_56
-09:13:45:584  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByPageUsingGET_57
-09:13:45:584  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_78
-09:13:45:585  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_79
-09:13:45:585  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getWarningThresholdListUsingGET_1
-09:13:45:586  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_72
-09:13:45:586  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_73
-09:13:45:587  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_6
-09:13:45:587  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_7
-09:13:45:589  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: plantImportDataUsingPOST_1
-09:13:45:590  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pumpImportDataUsingPOST_1
-09:13:45:590  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: sourceImportDataUsingPOST_1
-09:13:45:590  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: userImportDataUsingPOST_1
-09:13:45:591  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: plantExportUsingGET_1
-09:13:45:591  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: plantImportTemplateUsingPOST_1
-09:13:45:592  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pumpExportUsingGET_1
-09:13:45:592  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pumpImportTemplateUsingPOST_1
-09:13:45:593  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: sourceExportUsingGET_1
-09:13:45:593  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: sourceImportTemplateUsingPOST_1
-09:13:45:593  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: userExportUsingGET_1
-09:13:45:594  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: userImportTemplateUsingPOST_1
-09:13:45:595  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAllDeviceCodesUsingGET_6
-09:13:45:595  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAllDeviceCodesUsingGET_7
-09:13:45:595  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getLatestDataByDeviceUsingGET_6
-09:13:45:595  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getLatestDataByDeviceUsingGET_7
-09:13:45:596  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageUsingGET_14
-09:13:45:596  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageUsingGET_15
-09:13:45:596  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: selectOverLimitDataUsingGET_1
-09:13:45:596  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statisticsByDeviceUsingGET_1
-09:13:45:597  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statisticsOnlineDeviceUsingGET_1
-09:13:45:599  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_20
-09:13:45:600  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_21
-09:13:45:600  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletePhysicallyUsingDELETE_1
-09:13:45:600  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_80
-09:13:45:601  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_81
-09:13:45:601  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryPageUsingGET_12
-09:13:45:601  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryPageUsingGET_13
-09:13:45:602  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: recycleListUsingGET_1
-09:13:45:602  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_22
-09:13:45:602  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_23
-09:13:45:603  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: restoreUsingPOST_1
-09:13:45:603  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_14
-09:13:45:603  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_15
-09:13:45:614  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_22
-09:13:45:614  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_23
-09:13:45:614  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletePhysicallyUsingDELETE_2
-09:13:45:614  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletePhysicallyUsingDELETE_3
-09:13:45:615  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_82
-09:13:45:615  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_83
-09:13:45:615  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryPageUsingGET_14
-09:13:45:615  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryPageUsingGET_15
-09:13:45:616  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: recycleListUsingGET_2
-09:13:45:616  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: recycleListUsingGET_3
-09:13:45:616  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_24
-09:13:45:616  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_25
-09:13:45:616  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: restoreUsingPOST_2
-09:13:45:617  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: restoreUsingPOST_3
-09:13:45:617  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_16
-09:13:45:617  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_17
-09:13:45:620  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_24
-09:13:45:620  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_25
-09:13:45:620  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletePhysicallyUsingDELETE_4
-09:13:45:620  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletePhysicallyUsingDELETE_5
-09:13:45:620  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_84
-09:13:45:621  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_85
-09:13:45:621  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryPageUsingGET_16
-09:13:45:621  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryPageUsingGET_17
-09:13:45:622  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: recycleListUsingGET_4
-09:13:45:622  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: recycleListUsingGET_5
-09:13:45:622  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_26
-09:13:45:622  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_27
-09:13:45:623  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: restoreUsingPOST_4
-09:13:45:623  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: restoreUsingPOST_5
-09:13:45:623  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_18
-09:13:45:623  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_19
-09:13:45:627  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: auditAlarmUsingPOST_1
-09:13:45:628  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: dispatchToWorkOrderUsingPOST_1
-09:13:45:628  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAlarmDashboardUsingGET_1
-09:13:45:629  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAlarmDetailUsingGET_1
-09:13:45:629  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAlarmFlowUsingGET_1
-09:13:45:630  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAlarmLedgerPageUsingGET_1
-09:13:45:630  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAlarmMapPointsUsingGET_1
-09:13:45:631  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAlarmStatsUsingGET_1
-09:13:45:631  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAuditListUsingGET_1
-09:13:45:632  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getAuditOrderStatsUsingGET_1
-09:13:45:633  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getHistoryAlarmPageUsingGET_1
-09:13:45:633  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getRealtimeAlarmListUsingGET_1
-09:13:45:634  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: resolveAlarmUsingPUT_1
-09:13:45:634  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: exportAlarmLedgerUsingPOST_1
-09:13:45:635  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: detailUsingGET_1
-09:13:45:636  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: featuresUsingGET_1
-09:13:45:637  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: overviewUsingGET_1
-09:13:45:638  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteThresholdBatchUsingDELETE_1
-09:13:45:638  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getThresholdDetailUsingGET_1
-09:13:45:639  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getThresholdDevicesUsingGET_1
-09:13:45:639  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getThresholdListUsingGET_1
-09:13:45:640  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getThresholdPageUsingGET_1
-09:13:45:641  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveThresholdBatchUsingPOST_1
-09:13:45:642  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateThresholdUsingPUT_1
-09:13:45:645  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_26
-09:13:45:646  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUsingPOST_27
-09:13:45:646  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletePhysicallyUsingDELETE_6
-09:13:45:646  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletePhysicallyUsingDELETE_7
-09:13:45:646  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_86
-09:13:45:646  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_87
-09:13:45:647  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryPageUsingGET_18
-09:13:45:647  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: queryPageUsingGET_19
-09:13:45:647  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: recycleListUsingGET_6
-09:13:45:648  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: recycleListUsingGET_7
-09:13:45:648  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_28
-09:13:45:648  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: removeUsingDELETE_29
-09:13:45:648  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: restoreUsingPOST_6
-09:13:45:648  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: restoreUsingPOST_7
-09:13:45:649  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_20
-09:13:45:649  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_21
-09:13:45:652  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageUsingGET_16
-09:13:45:652  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageUsingGET_17
-09:13:45:653  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: bindEquipmentUsingPOST_8
-09:13:45:653  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: bindEquipmentUsingPOST_9
-09:13:45:653  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchUsingDELETE_6
-09:13:45:653  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteBatchUsingDELETE_7
-09:13:45:653  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_62
-09:13:45:653  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteByIdUsingDELETE_63
-09:13:45:654  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_88
-09:13:45:654  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getByIdUsingGET_89
-09:13:45:654  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_42
-09:13:45:654  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: listUsingGET_43
-09:13:45:655  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_74
-09:13:45:655  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_75
-09:13:45:656  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_22
-09:13:45:656  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPUT_23
-09:13:45:658  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: acceptUsingPUT_2
-09:13:45:658  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: acceptUsingPUT_3
-09:13:45:659  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: applyDelayUsingPUT_1
-09:13:45:659  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: assignableDeptTreeUsingGET_2
-09:13:45:659  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: assignableDeptTreeUsingGET_3
-09:13:45:660  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: assignableUsersUsingGET_2
-09:13:45:660  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: assignableUsersUsingGET_3
-09:13:45:661  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: auditDelayUsingPUT_1
-09:13:45:661  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: cancelUsingPUT_1
-09:13:45:663  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: createUsingPOST_1
-09:13:45:664  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingDELETE_8
-09:13:45:664  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingDELETE_9
-09:13:45:664  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: detailUsingGET_2
-09:13:45:664  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: detailUsingGET_3
-09:13:45:665  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: dispatchUsingPUT_1
-09:13:45:665  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: logsUsingGET_1
-09:13:45:668  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageUsingGET_18
-09:13:45:668  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageUsingGET_19
-09:13:45:669  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: processUsingPUT_1
-09:13:45:670  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: statusCountUsingGET_1
-09:13:45:670  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: submitVerifyUsingPUT_1
-09:13:45:671  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: verifyUsingPUT_2
-09:13:45:671  INFO 36472 --- [restartedMain] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: verifyUsingPUT_3
-09:13:45:723  INFO 36472 --- [restartedMain] o.s.s.quartz.SchedulerFactoryBean        : Starting Quartz Scheduler now
-09:13:45:723  INFO 36472 --- [restartedMain] org.quartz.core.QuartzScheduler          : Scheduler quartzScheduler_$_NON_CLUSTERED started.
-09:13:45:736  INFO 36472 --- [restartedMain] com.zksy.ZksyApplication                 : Started ZksyApplication in 12.176 seconds (JVM running for 12.693)
-09:13:45:743  INFO 36472 --- [restartedMain] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=pipe-network-service.yaml, group=DEFAULT_GROUP
-09:13:45:754  INFO 36472 --- [restartedMain] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=pipe-network-service-dev.yaml, group=DEFAULT_GROUP
-09:13:45:755  INFO 36472 --- [restartedMain] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=pipe-network-service, group=DEFAULT_GROUP
-09:19:09:348  INFO 36472 --- [http-nio-8301-exec-2] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring DispatcherServlet 'dispatcherServlet'
-09:19:09:348  INFO 36472 --- [http-nio-8301-exec-2] o.s.web.servlet.DispatcherServlet        : Initializing Servlet 'dispatcherServlet'
-09:19:09:350  INFO 36472 --- [http-nio-8301-exec-2] o.s.web.servlet.DispatcherServlet        : Completed initialization in 2 ms
-09:19:09:442  INFO 36472 --- [http-nio-8301-exec-2] c.z.w.w.DeviceStatusWebSocketHandler     : WebSocket 连接建立: sessionId=a29850c4-a04a-32dd-a9fe-db6653fb40fb, remoteAddress=/[0:0:0:0:0:0:0:1]:55638
-09:19:09:496 DEBUG 36472 --- [http-nio-8301-exec-2] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=a29850c4-a04a-32dd-a9fe-db6653fb40fb, type=authenticate
-09:19:09:533  INFO 36472 --- [http-nio-8301-exec-3] c.z.w.w.DeviceStatusWebSocketHandler     : WebSocket 连接关闭: sessionId=a29850c4-a04a-32dd-a9fe-db6653fb40fb, closeStatus=CloseStatus[code=1000, reason=null]
-09:19:12:588  INFO 36472 --- [schedule-pool-2] sys-user                                 : [127.0.0.1]内网IP[admin][Success][登录成功]
-09:49:09:152  INFO 36472 --- [nacos-grpc-client-executor-431] com.alibaba.nacos.common.remote.client   : [626d9344-d19e-4761-8106-befa461d96e5] Receive server push request, request = NotifySubscriberRequest, requestId = 268
-09:49:09:159  INFO 36472 --- [nacos-grpc-client-executor-431] com.alibaba.nacos.common.remote.client   : [626d9344-d19e-4761-8106-befa461d96e5] Ack server push request, request = NotifySubscriberRequest, requestId = 268
-11:47:47:828  INFO 36472 --- [http-nio-8301-exec-20] c.z.w.w.DeviceStatusWebSocketHandler     : WebSocket 连接建立: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, remoteAddress=/[0:0:0:0:0:0:0:1]:60980
-11:47:47:849 DEBUG 36472 --- [http-nio-8301-exec-29] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=authenticate
-11:47:47:853  INFO 36472 --- [http-nio-8301-exec-29] c.z.w.w.DeviceStatusWebSocketHandler     : WebSocket 工单推送鉴权成功: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, userId=1, deptId=103
-11:47:47:856 DEBUG 36472 --- [http-nio-8301-exec-34] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=workOrderReminder
-11:47:56:038  INFO 36472 --- [schedule-pool-15] c.z.w.w.WorkOrderWebSocketPushTask       : 工单提醒推送完成: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, total=5, sent=5
-11:48:12:869 DEBUG 36472 --- [http-nio-8301-exec-38] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:48:37:857 DEBUG 36472 --- [http-nio-8301-exec-63] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:49:02:856 DEBUG 36472 --- [http-nio-8301-exec-58] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:49:27:868 DEBUG 36472 --- [http-nio-8301-exec-79] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:49:52:860 DEBUG 36472 --- [http-nio-8301-exec-96] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:49:56:075  INFO 36472 --- [schedule-pool-15] c.z.w.w.WorkOrderWebSocketPushTask       : 工单提醒推送完成: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, total=4, sent=4
-11:50:17:868 DEBUG 36472 --- [http-nio-8301-exec-89] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:50:42:860 DEBUG 36472 --- [http-nio-8301-exec-91] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:51:07:868 DEBUG 36472 --- [http-nio-8301-exec-94] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:51:32:859 DEBUG 36472 --- [http-nio-8301-exec-93] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:51:58:098 DEBUG 36472 --- [http-nio-8301-exec-95] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:52:23:086 DEBUG 36472 --- [http-nio-8301-exec-90] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:52:48:090 DEBUG 36472 --- [http-nio-8301-exec-97] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:53:13:095 DEBUG 36472 --- [http-nio-8301-exec-92] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:53:38:089 DEBUG 36472 --- [http-nio-8301-exec-99] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:54:03:092 DEBUG 36472 --- [http-nio-8301-exec-1] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:54:28:097 DEBUG 36472 --- [http-nio-8301-exec-100] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:54:53:101 DEBUG 36472 --- [http-nio-8301-exec-98] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:55:18:100 DEBUG 36472 --- [http-nio-8301-exec-3] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:55:43:096 DEBUG 36472 --- [http-nio-8301-exec-2] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:56:08:093 DEBUG 36472 --- [http-nio-8301-exec-13] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:56:33:095 DEBUG 36472 --- [http-nio-8301-exec-4] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:56:58:088 DEBUG 36472 --- [http-nio-8301-exec-7] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:57:23:088 DEBUG 36472 --- [http-nio-8301-exec-8] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:57:48:089 DEBUG 36472 --- [http-nio-8301-exec-5] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:58:13:090 DEBUG 36472 --- [http-nio-8301-exec-22] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:58:38:089 DEBUG 36472 --- [http-nio-8301-exec-6] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:59:03:095 DEBUG 36472 --- [http-nio-8301-exec-9] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:59:28:086 DEBUG 36472 --- [http-nio-8301-exec-14] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-11:59:53:094 DEBUG 36472 --- [http-nio-8301-exec-23] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:00:18:092 DEBUG 36472 --- [http-nio-8301-exec-24] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:00:43:086 DEBUG 36472 --- [http-nio-8301-exec-12] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:01:08:099 DEBUG 36472 --- [http-nio-8301-exec-11] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:01:33:088 DEBUG 36472 --- [http-nio-8301-exec-27] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:01:58:098 DEBUG 36472 --- [http-nio-8301-exec-16] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:02:23:094 DEBUG 36472 --- [http-nio-8301-exec-36] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:02:48:091 DEBUG 36472 --- [http-nio-8301-exec-25] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:03:13:092 DEBUG 36472 --- [http-nio-8301-exec-10] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:03:38:089 DEBUG 36472 --- [http-nio-8301-exec-17] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:04:03:090 DEBUG 36472 --- [http-nio-8301-exec-26] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:04:28:098 DEBUG 36472 --- [http-nio-8301-exec-19] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:04:53:089 DEBUG 36472 --- [http-nio-8301-exec-18] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:05:18:099 DEBUG 36472 --- [http-nio-8301-exec-20] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:05:43:096 DEBUG 36472 --- [http-nio-8301-exec-21] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:06:08:099 DEBUG 36472 --- [http-nio-8301-exec-29] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:06:33:089 DEBUG 36472 --- [http-nio-8301-exec-28] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:06:58:101 DEBUG 36472 --- [http-nio-8301-exec-34] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:07:23:089 DEBUG 36472 --- [http-nio-8301-exec-31] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:07:48:086 DEBUG 36472 --- [http-nio-8301-exec-30] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:08:13:096 DEBUG 36472 --- [http-nio-8301-exec-33] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:08:38:087 DEBUG 36472 --- [http-nio-8301-exec-15] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:09:03:086 DEBUG 36472 --- [http-nio-8301-exec-43] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:09:28:091 DEBUG 36472 --- [http-nio-8301-exec-32] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:09:53:096 DEBUG 36472 --- [http-nio-8301-exec-42] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:10:18:092 DEBUG 36472 --- [http-nio-8301-exec-35] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:10:43:097 DEBUG 36472 --- [http-nio-8301-exec-45] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:11:08:093 DEBUG 36472 --- [http-nio-8301-exec-44] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:11:33:088 DEBUG 36472 --- [http-nio-8301-exec-46] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:11:58:093 DEBUG 36472 --- [http-nio-8301-exec-39] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:12:23:087 DEBUG 36472 --- [http-nio-8301-exec-53] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:12:48:088 DEBUG 36472 --- [http-nio-8301-exec-40] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:13:13:090 DEBUG 36472 --- [http-nio-8301-exec-38] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:13:38:096 DEBUG 36472 --- [http-nio-8301-exec-47] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:14:03:087 DEBUG 36472 --- [http-nio-8301-exec-41] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:14:28:097 DEBUG 36472 --- [http-nio-8301-exec-50] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:14:53:088 DEBUG 36472 --- [http-nio-8301-exec-37] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:15:18:099 DEBUG 36472 --- [http-nio-8301-exec-52] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:15:43:093 DEBUG 36472 --- [http-nio-8301-exec-48] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:16:08:098 DEBUG 36472 --- [http-nio-8301-exec-51] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:16:33:100 DEBUG 36472 --- [http-nio-8301-exec-54] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:16:58:095 DEBUG 36472 --- [http-nio-8301-exec-49] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:17:23:094 DEBUG 36472 --- [http-nio-8301-exec-62] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:17:48:091 DEBUG 36472 --- [http-nio-8301-exec-55] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:18:13:093 DEBUG 36472 --- [http-nio-8301-exec-63] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:18:38:091 DEBUG 36472 --- [http-nio-8301-exec-65] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:19:03:099 DEBUG 36472 --- [http-nio-8301-exec-66] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:19:28:098 DEBUG 36472 --- [http-nio-8301-exec-64] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:19:53:098 DEBUG 36472 --- [http-nio-8301-exec-67] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:20:18:089 DEBUG 36472 --- [http-nio-8301-exec-57] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:20:43:089 DEBUG 36472 --- [http-nio-8301-exec-58] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:21:08:099 DEBUG 36472 --- [http-nio-8301-exec-59] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:21:33:098 DEBUG 36472 --- [http-nio-8301-exec-61] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:21:58:094 DEBUG 36472 --- [http-nio-8301-exec-60] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:22:23:091 DEBUG 36472 --- [http-nio-8301-exec-72] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:22:48:097 DEBUG 36472 --- [http-nio-8301-exec-68] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:23:13:094 DEBUG 36472 --- [http-nio-8301-exec-73] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:23:38:100 DEBUG 36472 --- [http-nio-8301-exec-69] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:24:03:093 DEBUG 36472 --- [http-nio-8301-exec-70] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:24:28:087 DEBUG 36472 --- [http-nio-8301-exec-74] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:24:53:100 DEBUG 36472 --- [http-nio-8301-exec-71] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:25:18:088 DEBUG 36472 --- [http-nio-8301-exec-56] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:25:43:088 DEBUG 36472 --- [http-nio-8301-exec-75] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:26:08:090 DEBUG 36472 --- [http-nio-8301-exec-76] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:26:33:087 DEBUG 36472 --- [http-nio-8301-exec-87] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:26:58:096 DEBUG 36472 --- [http-nio-8301-exec-82] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:27:23:096 DEBUG 36472 --- [http-nio-8301-exec-77] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:27:48:092 DEBUG 36472 --- [http-nio-8301-exec-85] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:28:13:102 DEBUG 36472 --- [http-nio-8301-exec-86] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:28:38:093 DEBUG 36472 --- [http-nio-8301-exec-84] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:29:03:092 DEBUG 36472 --- [http-nio-8301-exec-83] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:29:28:087 DEBUG 36472 --- [http-nio-8301-exec-78] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:29:53:100 DEBUG 36472 --- [http-nio-8301-exec-88] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:30:18:094 DEBUG 36472 --- [http-nio-8301-exec-81] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:30:43:088 DEBUG 36472 --- [http-nio-8301-exec-80] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:31:08:091 DEBUG 36472 --- [http-nio-8301-exec-79] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:31:33:097 DEBUG 36472 --- [http-nio-8301-exec-96] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping
-12:31:58:098 DEBUG 36472 --- [http-nio-8301-exec-89] c.z.w.w.DeviceStatusWebSocketHandler     : 收到 WebSocket 消息: sessionId=ecec5a8e-c819-f819-4b9d-32b66be991e4, type=ping

+ 0 - 756
logs/zksy-gateway/spring.log

@@ -1,756 +0,0 @@
-10:09:00:691  INFO 4068 --- [main] com.zksy.gateway.GatewayApplication      : The following 1 profile is active: "druid"
-10:09:01:496  INFO 4068 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
-10:09:01:500  INFO 4068 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-10:09:01:527  INFO 4068 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 8 ms. Found 0 Redis repository interfaces.
-10:09:01:668  INFO 4068 --- [main] o.s.cloud.context.scope.GenericScope     : BeanFactory id=199a82ad-c94f-33fa-ad13-d1e13c782744
-10:09:01:722  INFO 4068 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration' of type [org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-10:09:01:723  INFO 4068 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration$ReactorDeferringLoadBalancerFilterConfig' of type [org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration$ReactorDeferringLoadBalancerFilterConfig] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-10:09:01:725  INFO 4068 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'reactorDeferringLoadBalancerExchangeFilterFunction' of type [org.springframework.cloud.client.loadbalancer.reactive.DeferringLoadBalancerExchangeFilterFunction] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-10:09:02:316 DEBUG 4068 --- [main] c.zksy.gateway.route.DynamicRouteLoader  : 监听到路由配置变更,[
-    {
-        "id": "pipe",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/pipe/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://pipe-network-service"
-    },
-    {
-        "id": "environment",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/environment/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://environment-service"
-    },
-    {
-        "id": "pressure",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/pressure/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://pressure-service"
-    },
-    {
-        "id": "gas",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/gas/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://gas-service"
-    }
-]
-10:09:03:957  INFO 4068 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [After]
-10:09:03:957  INFO 4068 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Before]
-10:09:03:958  INFO 4068 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Between]
-10:09:03:958  INFO 4068 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Cookie]
-10:09:03:958  INFO 4068 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Header]
-10:09:03:958  INFO 4068 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Host]
-10:09:03:958  INFO 4068 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Method]
-10:09:03:958  INFO 4068 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Path]
-10:09:03:958  INFO 4068 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Query]
-10:09:03:958  INFO 4068 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [ReadBody]
-10:09:03:958  INFO 4068 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [RemoteAddr]
-10:09:03:958  INFO 4068 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [XForwardedRemoteAddr]
-10:09:03:958  INFO 4068 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Weight]
-10:09:03:959  INFO 4068 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [CloudFoundryRouteService]
-10:09:04:603  INFO 4068 --- [main] com.alibaba.nacos.common.remote.client   : [RpcClientFactory] create a new rpc client of 53f9ac83-cd86-49d5-8e1a-36c12670204f
-10:09:04:603  INFO 4068 --- [main] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] RpcClient init label, labels = {module=naming, source=sdk}
-10:09:04:604  INFO 4068 --- [main] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] RpcClient init, ServerListFactory = com.alibaba.nacos.client.naming.core.ServerListManager
-10:09:04:604  INFO 4068 --- [main] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Registry connection listener to current client:com.alibaba.nacos.client.naming.remote.gprc.redo.NamingGrpcRedoService
-10:09:04:604  INFO 4068 --- [main] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Register server push request handler:com.alibaba.nacos.client.naming.remote.gprc.NamingPushRequestHandler
-10:09:04:605  INFO 4068 --- [main] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Try to connect to server on start up, server: {serverIp = '172.16.102.52', server main port = 8848}
-10:09:04:764  INFO 4068 --- [main] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Success to connect to server [172.16.102.52:8848] on start up, connectionId = 1782094236877_172.16.102.252_60776
-10:09:04:764  INFO 4068 --- [main] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$ConnectResetRequestHandler
-10:09:04:764  INFO 4068 --- [main] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$$Lambda$466/0x000000080043dc40
-10:09:04:764  INFO 4068 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Notify connected event to listeners.
-10:09:05:094  INFO 4068 --- [main] o.s.b.web.embedded.netty.NettyWebServer  : Netty started on port 8300
-10:09:05:310  INFO 4068 --- [nacos-grpc-client-executor-6] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Receive server push request, request = NotifySubscriberRequest, requestId = 703
-10:09:05:315  INFO 4068 --- [nacos-grpc-client-executor-6] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Ack server push request, request = NotifySubscriberRequest, requestId = 703
-10:09:05:741  INFO 4068 --- [main] c.a.c.n.registry.NacosServiceRegistry    : nacos registry, DEFAULT_GROUP zksy-gateway 192.168.110.235:8300 register finished
-10:09:05:762  INFO 4068 --- [main] com.zksy.gateway.GatewayApplication      : Started GatewayApplication in 8.023 seconds (JVM running for 8.764)
-10:09:05:766  INFO 4068 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=zksy-gateway.yaml, group=DEFAULT_GROUP
-10:09:05:767  INFO 4068 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=zksy-gateway-druid.yaml, group=DEFAULT_GROUP
-10:09:05:768  INFO 4068 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=zksy-gateway, group=DEFAULT_GROUP
-10:09:06:304  INFO 4068 --- [nacos-grpc-client-executor-10] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Receive server push request, request = NotifySubscriberRequest, requestId = 706
-10:09:06:309  INFO 4068 --- [nacos-grpc-client-executor-10] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Ack server push request, request = NotifySubscriberRequest, requestId = 706
-10:58:07:705 ERROR 4068 --- [com.alibaba.nacos.client.naming.updater.0] com.alibaba.nacos.common.remote.client   : Send request fail, request = ServiceQueryRequest{headers={}, requestId='null'}, retryTimes = 0, errorMessage = java.util.concurrent.TimeoutException: Waited 3000 milliseconds (plus 60600 nanoseconds delay) for com.alibaba.nacos.shaded.io.grpc.stub.ClientCalls$GrpcFuture@459c055b[status=PENDING, info=[GrpcFuture{clientCall={delegate={delegate=ClientCallImpl{method=MethodDescriptor{fullMethodName=Request/request, type=UNARY, idempotent=false, safe=false, sampledToLocalTracing=true, requestMarshaller=com.alibaba.nacos.shaded.io.grpc.protobuf.lite.ProtoLiteUtils$MessageMarshaller@6243ec18, responseMarshaller=com.alibaba.nacos.shaded.io.grpc.protobuf.lite.ProtoLiteUtils$MessageMarshaller@5a8c9b23, schemaDescriptor=com.alibaba.nacos.api.grpc.auto.RequestGrpc$RequestMethodDescriptorSupplier@5c8d07e1}}}}}]]
-10:58:09:723  INFO 4068 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Server healthy check fail, currentConnection = 1782094236877_172.16.102.252_60776
-10:58:09:723  INFO 4068 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Try to reconnect to a new server, server is  not appointed, will choose a random server.
-10:58:09:810 ERROR 4068 --- [com.alibaba.nacos.client.naming.updater.4] com.alibaba.nacos.common.remote.client   : Send request fail, request = ServiceQueryRequest{headers={app=unknown}, requestId='null'}, retryTimes = 0, errorMessage = Client not connected, current status:UNHEALTHY
-10:58:09:910 ERROR 4068 --- [com.alibaba.nacos.client.naming.updater.4] com.alibaba.nacos.common.remote.client   : Send request fail, request = ServiceQueryRequest{headers={app=unknown}, requestId='null'}, retryTimes = 1, errorMessage = Client not connected, current status:UNHEALTHY
-10:58:10:004  INFO 4068 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [4ab94cdb-20e4-44f8-9862-03e0e6fedc30_config-0] Server healthy check fail, currentConnection = 1782094232586_172.16.102.252_60562
-10:58:10:004  INFO 4068 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [4ab94cdb-20e4-44f8-9862-03e0e6fedc30_config-0] Try to reconnect to a new server, server is  not appointed, will choose a random server.
-10:58:10:011 ERROR 4068 --- [com.alibaba.nacos.client.naming.updater.4] com.alibaba.nacos.common.remote.client   : Send request fail, request = ServiceQueryRequest{headers={app=unknown}, requestId='null'}, retryTimes = 2, errorMessage = Client not connected, current status:UNHEALTHY
-10:58:12:727 ERROR 4068 --- [com.alibaba.nacos.client.remote.worker] c.a.n.c.remote.client.grpc.GrpcClient    : Server check fail, please check server 172.16.102.52 ,port 9848 is available , error ={}
-
-java.util.concurrent.TimeoutException: Waited 3000 milliseconds (plus 1 milliseconds, 986100 nanoseconds delay) for com.alibaba.nacos.shaded.io.grpc.stub.ClientCalls$GrpcFuture@15def9f[status=PENDING, info=[GrpcFuture{clientCall={delegate={delegate=ClientCallImpl{method=MethodDescriptor{fullMethodName=Request/request, type=UNARY, idempotent=false, safe=false, sampledToLocalTracing=true, requestMarshaller=com.alibaba.nacos.shaded.io.grpc.protobuf.lite.ProtoLiteUtils$MessageMarshaller@6243ec18, responseMarshaller=com.alibaba.nacos.shaded.io.grpc.protobuf.lite.ProtoLiteUtils$MessageMarshaller@5a8c9b23, schemaDescriptor=com.alibaba.nacos.api.grpc.auto.RequestGrpc$RequestMethodDescriptorSupplier@5c8d07e1}}}}}]]
-	at com.alibaba.nacos.shaded.com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:508) ~[nacos-client-2.0.4.jar:na]
-	at com.alibaba.nacos.common.remote.client.grpc.GrpcClient.serverCheck(GrpcClient.java:148) ~[nacos-client-2.0.4.jar:na]
-	at com.alibaba.nacos.common.remote.client.grpc.GrpcClient.connectToServer(GrpcClient.java:264) ~[nacos-client-2.0.4.jar:na]
-	at com.alibaba.nacos.common.remote.client.RpcClient.reconnect(RpcClient.java:522) ~[nacos-client-2.0.4.jar:na]
-	at com.alibaba.nacos.common.remote.client.RpcClient.lambda$start$2(RpcClient.java:370) ~[nacos-client-2.0.4.jar:na]
-	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) ~[na:na]
-	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[na:na]
-	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) ~[na:na]
-	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]
-	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]
-	at java.base/java.lang.Thread.run(Thread.java:829) ~[na:na]
-
-10:58:13:005 ERROR 4068 --- [com.alibaba.nacos.client.remote.worker] c.a.n.c.remote.client.grpc.GrpcClient    : Server check fail, please check server 172.16.102.52 ,port 9848 is available , error ={}
-
-java.util.concurrent.TimeoutException: Waited 3000 milliseconds (plus 155900 nanoseconds delay) for com.alibaba.nacos.shaded.io.grpc.stub.ClientCalls$GrpcFuture@e7b92f5[status=PENDING, info=[GrpcFuture{clientCall={delegate={delegate=ClientCallImpl{method=MethodDescriptor{fullMethodName=Request/request, type=UNARY, idempotent=false, safe=false, sampledToLocalTracing=true, requestMarshaller=com.alibaba.nacos.shaded.io.grpc.protobuf.lite.ProtoLiteUtils$MessageMarshaller@6243ec18, responseMarshaller=com.alibaba.nacos.shaded.io.grpc.protobuf.lite.ProtoLiteUtils$MessageMarshaller@5a8c9b23, schemaDescriptor=com.alibaba.nacos.api.grpc.auto.RequestGrpc$RequestMethodDescriptorSupplier@5c8d07e1}}}}}]]
-	at com.alibaba.nacos.shaded.com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:508) ~[nacos-client-2.0.4.jar:na]
-	at com.alibaba.nacos.common.remote.client.grpc.GrpcClient.serverCheck(GrpcClient.java:148) ~[nacos-client-2.0.4.jar:na]
-	at com.alibaba.nacos.common.remote.client.grpc.GrpcClient.connectToServer(GrpcClient.java:264) ~[nacos-client-2.0.4.jar:na]
-	at com.alibaba.nacos.common.remote.client.RpcClient.reconnect(RpcClient.java:522) ~[nacos-client-2.0.4.jar:na]
-	at com.alibaba.nacos.common.remote.client.RpcClient.lambda$start$2(RpcClient.java:370) ~[nacos-client-2.0.4.jar:na]
-	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) ~[na:na]
-	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[na:na]
-	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) ~[na:na]
-	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]
-	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]
-	at java.base/java.lang.Thread.run(Thread.java:829) ~[na:na]
-
-10:58:14:112 ERROR 4068 --- [com.alibaba.nacos.client.naming.updater.4] com.alibaba.nacos.common.remote.client   : Send request fail, request = ServiceQueryRequest{headers={app=unknown}, requestId='null'}, retryTimes = 0, errorMessage = Client not connected, current status:UNHEALTHY
-10:58:14:213 ERROR 4068 --- [com.alibaba.nacos.client.naming.updater.4] com.alibaba.nacos.common.remote.client   : Send request fail, request = ServiceQueryRequest{headers={app=unknown}, requestId='null'}, retryTimes = 1, errorMessage = Client not connected, current status:UNHEALTHY
-10:58:14:313 ERROR 4068 --- [com.alibaba.nacos.client.naming.updater.4] com.alibaba.nacos.common.remote.client   : Send request fail, request = ServiceQueryRequest{headers={app=unknown}, requestId='null'}, retryTimes = 2, errorMessage = Client not connected, current status:UNHEALTHY
-10:58:15:831 ERROR 4068 --- [com.alibaba.nacos.client.remote.worker] c.a.n.c.remote.client.grpc.GrpcClient    : Server check fail, please check server 172.16.102.52 ,port 9848 is available , error ={}
-
-java.util.concurrent.TimeoutException: Waited 3000 milliseconds (plus 134600 nanoseconds delay) for com.alibaba.nacos.shaded.io.grpc.stub.ClientCalls$GrpcFuture@7de4663d[status=PENDING, info=[GrpcFuture{clientCall={delegate={delegate=ClientCallImpl{method=MethodDescriptor{fullMethodName=Request/request, type=UNARY, idempotent=false, safe=false, sampledToLocalTracing=true, requestMarshaller=com.alibaba.nacos.shaded.io.grpc.protobuf.lite.ProtoLiteUtils$MessageMarshaller@6243ec18, responseMarshaller=com.alibaba.nacos.shaded.io.grpc.protobuf.lite.ProtoLiteUtils$MessageMarshaller@5a8c9b23, schemaDescriptor=com.alibaba.nacos.api.grpc.auto.RequestGrpc$RequestMethodDescriptorSupplier@5c8d07e1}}}}}]]
-	at com.alibaba.nacos.shaded.com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:508) ~[nacos-client-2.0.4.jar:na]
-	at com.alibaba.nacos.common.remote.client.grpc.GrpcClient.serverCheck(GrpcClient.java:148) ~[nacos-client-2.0.4.jar:na]
-	at com.alibaba.nacos.common.remote.client.grpc.GrpcClient.connectToServer(GrpcClient.java:264) ~[nacos-client-2.0.4.jar:na]
-	at com.alibaba.nacos.common.remote.client.RpcClient.reconnect(RpcClient.java:522) ~[nacos-client-2.0.4.jar:na]
-	at com.alibaba.nacos.common.remote.client.RpcClient.lambda$start$2(RpcClient.java:370) ~[nacos-client-2.0.4.jar:na]
-	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) ~[na:na]
-	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[na:na]
-	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) ~[na:na]
-	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]
-	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]
-	at java.base/java.lang.Thread.run(Thread.java:829) ~[na:na]
-
-10:58:15:831  INFO 4068 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Fail to connect server, after trying 1 times, last try server is {serverIp = '172.16.102.52', server main port = 8848}, error = unknown
-10:58:16:108 ERROR 4068 --- [com.alibaba.nacos.client.remote.worker] c.a.n.c.remote.client.grpc.GrpcClient    : Server check fail, please check server 172.16.102.52 ,port 9848 is available , error ={}
-
-java.util.concurrent.TimeoutException: Waited 3000 milliseconds (plus 329500 nanoseconds delay) for com.alibaba.nacos.shaded.io.grpc.stub.ClientCalls$GrpcFuture@11a2c22a[status=PENDING, info=[GrpcFuture{clientCall={delegate={delegate=ClientCallImpl{method=MethodDescriptor{fullMethodName=Request/request, type=UNARY, idempotent=false, safe=false, sampledToLocalTracing=true, requestMarshaller=com.alibaba.nacos.shaded.io.grpc.protobuf.lite.ProtoLiteUtils$MessageMarshaller@6243ec18, responseMarshaller=com.alibaba.nacos.shaded.io.grpc.protobuf.lite.ProtoLiteUtils$MessageMarshaller@5a8c9b23, schemaDescriptor=com.alibaba.nacos.api.grpc.auto.RequestGrpc$RequestMethodDescriptorSupplier@5c8d07e1}}}}}]]
-	at com.alibaba.nacos.shaded.com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:508) ~[nacos-client-2.0.4.jar:na]
-	at com.alibaba.nacos.common.remote.client.grpc.GrpcClient.serverCheck(GrpcClient.java:148) ~[nacos-client-2.0.4.jar:na]
-	at com.alibaba.nacos.common.remote.client.grpc.GrpcClient.connectToServer(GrpcClient.java:264) ~[nacos-client-2.0.4.jar:na]
-	at com.alibaba.nacos.common.remote.client.RpcClient.reconnect(RpcClient.java:522) ~[nacos-client-2.0.4.jar:na]
-	at com.alibaba.nacos.common.remote.client.RpcClient.lambda$start$2(RpcClient.java:370) ~[nacos-client-2.0.4.jar:na]
-	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) ~[na:na]
-	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[na:na]
-	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) ~[na:na]
-	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]
-	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]
-	at java.base/java.lang.Thread.run(Thread.java:829) ~[na:na]
-
-10:58:16:108  INFO 4068 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [4ab94cdb-20e4-44f8-9862-03e0e6fedc30_config-0] Fail to connect server, after trying 1 times, last try server is {serverIp = '172.16.102.52', server main port = 8848}, error = unknown
-10:58:16:192  INFO 4068 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Success to connect a server [172.16.102.52:8848], connectionId = 1782097190395_172.16.102.252_52530
-10:58:16:192  INFO 4068 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Abandon prev connection, server is 172.16.102.52:8848, connectionId is 1782094236877_172.16.102.252_60776
-10:58:16:192  INFO 4068 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : Close current connection 1782094236877_172.16.102.252_60776
-10:58:16:192  INFO 4068 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Notify disconnected event to listeners
-10:58:16:193  INFO 4068 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Notify connected event to listeners.
-10:58:16:193  WARN 4068 --- [nacos-grpc-client-executor-616] c.a.n.c.remote.client.grpc.GrpcClient    : [1782094236877_172.16.102.252_60776]Ignore error event,isRunning:true,isAbandon=true
-10:58:16:206  INFO 4068 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Server check success, currentServer is 172.16.102.52:8848 
-10:58:16:505  INFO 4068 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [4ab94cdb-20e4-44f8-9862-03e0e6fedc30_config-0] Success to connect a server [172.16.102.52:8848], connectionId = 1782097190718_172.16.102.252_52536
-10:58:16:505  INFO 4068 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [4ab94cdb-20e4-44f8-9862-03e0e6fedc30_config-0] Abandon prev connection, server is 172.16.102.52:8848, connectionId is 1782094232586_172.16.102.252_60562
-10:58:16:505  INFO 4068 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : Close current connection 1782094232586_172.16.102.252_60562
-10:58:16:505  INFO 4068 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [4ab94cdb-20e4-44f8-9862-03e0e6fedc30_config-0] Notify disconnected event to listeners
-10:58:16:505  INFO 4068 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [4ab94cdb-20e4-44f8-9862-03e0e6fedc30_config-0] Notify connected event to listeners.
-10:58:16:505  WARN 4068 --- [nacos-grpc-client-executor-615] c.a.n.c.remote.client.grpc.GrpcClient    : [1782094232586_172.16.102.252_60562]Ignore error event,isRunning:true,isAbandon=true
-10:58:19:075  INFO 4068 --- [nacos-grpc-client-executor-622] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Receive server push request, request = NotifySubscriberRequest, requestId = 739
-10:58:19:075  INFO 4068 --- [nacos-grpc-client-executor-622] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Ack server push request, request = NotifySubscriberRequest, requestId = 739
-10:58:26:185  INFO 4068 --- [nacos-grpc-client-executor-624] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Receive server push request, request = NotifySubscriberRequest, requestId = 791
-10:58:26:186  INFO 4068 --- [nacos-grpc-client-executor-624] com.alibaba.nacos.common.remote.client   : [53f9ac83-cd86-49d5-8e1a-36c12670204f] Ack server push request, request = NotifySubscriberRequest, requestId = 791
-14:37:32:386  WARN 4068 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Start destroying common HttpClient
-14:37:32:386  WARN 4068 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Start destroying Publisher
-14:37:32:390  WARN 4068 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Destruction of the end
-14:37:32:393  WARN 4068 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Destruction of the end
-14:37:32:485  INFO 4068 --- [SpringApplicationShutdownHook] c.a.c.n.registry.NacosServiceRegistry    : De-registering from Nacos Server now...
-14:37:32:503  INFO 4068 --- [SpringApplicationShutdownHook] c.a.c.n.registry.NacosServiceRegistry    : De-registration finished.
-14:37:32:811  INFO 4068 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Shutdown rpc client, set status to shutdown
-14:37:32:811  INFO 4068 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Shutdown client event executor java.util.concurrent.ScheduledThreadPoolExecutor@8cbc63d[Running, pool size = 2, active threads = 2, queued tasks = 0, completed tasks = 0]
-14:37:32:811  INFO 4068 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Close current connection 1782097190395_172.16.102.252_52530
-14:37:32:814  INFO 4068 --- [SpringApplicationShutdownHook] c.a.n.c.remote.client.grpc.GrpcClient    : Shutdown grpc executor java.util.concurrent.ThreadPoolExecutor@2f597465[Running, pool size = 4, active threads = 0, queued tasks = 0, completed tasks = 3299]
-09:46:48:103  INFO 25384 --- [main] com.zksy.gateway.GatewayApplication      : The following 1 profile is active: "druid"
-09:46:48:700  INFO 25384 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
-09:46:48:702  INFO 25384 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-09:46:48:726  INFO 25384 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 7 ms. Found 0 Redis repository interfaces.
-09:46:48:845  INFO 25384 --- [main] o.s.cloud.context.scope.GenericScope     : BeanFactory id=199a82ad-c94f-33fa-ad13-d1e13c782744
-09:46:48:884  INFO 25384 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration' of type [org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-09:46:48:885  INFO 25384 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration$ReactorDeferringLoadBalancerFilterConfig' of type [org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration$ReactorDeferringLoadBalancerFilterConfig] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-09:46:48:886  INFO 25384 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'reactorDeferringLoadBalancerExchangeFilterFunction' of type [org.springframework.cloud.client.loadbalancer.reactive.DeferringLoadBalancerExchangeFilterFunction] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-09:46:49:359 DEBUG 25384 --- [main] c.zksy.gateway.route.DynamicRouteLoader  : 监听到路由配置变更,[
-    {
-        "id": "pipe",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/pipe/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://pipe-network-service"
-    },
-    {
-        "id": "environment",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/environment/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://environment-service"
-    },
-    {
-        "id": "pressure",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/pressure/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://pressure-service"
-    },
-    {
-        "id": "gas",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/gas/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://gas-service"
-    }
-]
-09:46:51:329  INFO 25384 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [After]
-09:46:51:329  INFO 25384 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Before]
-09:46:51:329  INFO 25384 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Between]
-09:46:51:329  INFO 25384 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Cookie]
-09:46:51:329  INFO 25384 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Header]
-09:46:51:330  INFO 25384 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Host]
-09:46:51:330  INFO 25384 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Method]
-09:46:51:330  INFO 25384 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Path]
-09:46:51:330  INFO 25384 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Query]
-09:46:51:330  INFO 25384 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [ReadBody]
-09:46:51:330  INFO 25384 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [RemoteAddr]
-09:46:51:330  INFO 25384 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [XForwardedRemoteAddr]
-09:46:51:330  INFO 25384 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Weight]
-09:46:51:330  INFO 25384 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [CloudFoundryRouteService]
-09:46:52:250  INFO 25384 --- [main] com.alibaba.nacos.common.remote.client   : [RpcClientFactory] create a new rpc client of cba8d99a-b729-4517-920c-dcff0c58c088
-09:46:52:250  INFO 25384 --- [main] com.alibaba.nacos.common.remote.client   : [cba8d99a-b729-4517-920c-dcff0c58c088] RpcClient init label, labels = {module=naming, source=sdk}
-09:46:52:252  INFO 25384 --- [main] com.alibaba.nacos.common.remote.client   : [cba8d99a-b729-4517-920c-dcff0c58c088] RpcClient init, ServerListFactory = com.alibaba.nacos.client.naming.core.ServerListManager
-09:46:52:252  INFO 25384 --- [main] com.alibaba.nacos.common.remote.client   : [cba8d99a-b729-4517-920c-dcff0c58c088] Registry connection listener to current client:com.alibaba.nacos.client.naming.remote.gprc.redo.NamingGrpcRedoService
-09:46:52:252  INFO 25384 --- [main] com.alibaba.nacos.common.remote.client   : [cba8d99a-b729-4517-920c-dcff0c58c088] Register server push request handler:com.alibaba.nacos.client.naming.remote.gprc.NamingPushRequestHandler
-09:46:52:252  INFO 25384 --- [main] com.alibaba.nacos.common.remote.client   : [cba8d99a-b729-4517-920c-dcff0c58c088] Try to connect to server on start up, server: {serverIp = '172.16.102.52', server main port = 8848}
-09:46:52:406  INFO 25384 --- [main] com.alibaba.nacos.common.remote.client   : [cba8d99a-b729-4517-920c-dcff0c58c088] Success to connect to server [172.16.102.52:8848] on start up, connectionId = 1783042957770_172.16.102.252_60254
-09:46:52:406  INFO 25384 --- [main] com.alibaba.nacos.common.remote.client   : [cba8d99a-b729-4517-920c-dcff0c58c088] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$ConnectResetRequestHandler
-09:46:52:406  INFO 25384 --- [main] com.alibaba.nacos.common.remote.client   : [cba8d99a-b729-4517-920c-dcff0c58c088] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$$Lambda$466/0x0000000800436440
-09:46:52:406  INFO 25384 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [cba8d99a-b729-4517-920c-dcff0c58c088] Notify connected event to listeners.
-09:46:52:969  INFO 25384 --- [main] o.s.b.web.embedded.netty.NettyWebServer  : Netty started on port 8300
-09:46:52:994  INFO 25384 --- [nacos-grpc-client-executor-6] com.alibaba.nacos.common.remote.client   : [cba8d99a-b729-4517-920c-dcff0c58c088] Receive server push request, request = NotifySubscriberRequest, requestId = 122
-09:46:53:009  INFO 25384 --- [nacos-grpc-client-executor-6] com.alibaba.nacos.common.remote.client   : [cba8d99a-b729-4517-920c-dcff0c58c088] Ack server push request, request = NotifySubscriberRequest, requestId = 122
-09:46:54:067  INFO 25384 --- [main] c.a.c.n.registry.NacosServiceRegistry    : nacos registry, DEFAULT_GROUP zksy-gateway 192.168.110.235:8300 register finished
-09:46:54:100  INFO 25384 --- [main] com.zksy.gateway.GatewayApplication      : Started GatewayApplication in 9.581 seconds (JVM running for 10.347)
-09:46:54:106  INFO 25384 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=zksy-gateway.yaml, group=DEFAULT_GROUP
-09:46:54:107  INFO 25384 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=zksy-gateway-druid.yaml, group=DEFAULT_GROUP
-09:46:54:107  INFO 25384 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=zksy-gateway, group=DEFAULT_GROUP
-09:46:54:617  INFO 25384 --- [nacos-grpc-client-executor-11] com.alibaba.nacos.common.remote.client   : [cba8d99a-b729-4517-920c-dcff0c58c088] Receive server push request, request = NotifySubscriberRequest, requestId = 124
-09:46:54:622  INFO 25384 --- [nacos-grpc-client-executor-11] com.alibaba.nacos.common.remote.client   : [cba8d99a-b729-4517-920c-dcff0c58c088] Ack server push request, request = NotifySubscriberRequest, requestId = 124
-09:50:02:774  WARN 25384 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Start destroying common HttpClient
-09:50:02:775  WARN 25384 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Start destroying Publisher
-09:50:02:775  WARN 25384 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Destruction of the end
-09:50:02:775  WARN 25384 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Destruction of the end
-09:50:02:826  INFO 25384 --- [SpringApplicationShutdownHook] c.a.c.n.registry.NacosServiceRegistry    : De-registering from Nacos Server now...
-09:50:02:865  INFO 25384 --- [SpringApplicationShutdownHook] c.a.c.n.registry.NacosServiceRegistry    : De-registration finished.
-09:50:03:218  INFO 25384 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Shutdown rpc client, set status to shutdown
-09:50:03:218  INFO 25384 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Shutdown client event executor java.util.concurrent.ScheduledThreadPoolExecutor@24228a91[Running, pool size = 2, active threads = 2, queued tasks = 0, completed tasks = 0]
-09:50:03:218  INFO 25384 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Close current connection 1783042957770_172.16.102.252_60254
-09:50:03:245  INFO 25384 --- [SpringApplicationShutdownHook] c.a.n.c.remote.client.grpc.GrpcClient    : Shutdown grpc executor java.util.concurrent.ThreadPoolExecutor@527d4b7c[Running, pool size = 4, active threads = 0, queued tasks = 0, completed tasks = 52]
-09:50:03:249  INFO 25384 --- [nacos-grpc-client-executor-52] c.a.n.c.remote.client.grpc.GrpcClient    : [1783042957770_172.16.102.252_60254]Ignore complete event,isRunning:false,isAbandon=false
-15:20:29:354  INFO 7632 --- [main] com.zksy.gateway.GatewayApplication      : The following 1 profile is active: "druid"
-15:20:30:101  INFO 7632 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
-15:20:30:104  INFO 7632 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-15:20:30:132  INFO 7632 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 10 ms. Found 0 Redis repository interfaces.
-15:20:30:312  INFO 7632 --- [main] o.s.cloud.context.scope.GenericScope     : BeanFactory id=199a82ad-c94f-33fa-ad13-d1e13c782744
-15:20:30:382  INFO 7632 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration' of type [org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-15:20:30:383  INFO 7632 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration$ReactorDeferringLoadBalancerFilterConfig' of type [org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration$ReactorDeferringLoadBalancerFilterConfig] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-15:20:30:385  INFO 7632 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'reactorDeferringLoadBalancerExchangeFilterFunction' of type [org.springframework.cloud.client.loadbalancer.reactive.DeferringLoadBalancerExchangeFilterFunction] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-15:20:31:031 DEBUG 7632 --- [main] c.zksy.gateway.route.DynamicRouteLoader  : 监听到路由配置变更,[
-    {
-        "id": "pipe",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/pipe/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://pipe-network-service"
-    },
-    {
-        "id": "environment",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/environment/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://environment-service"
-    },
-    {
-        "id": "pressure",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/pressure/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://pressure-service"
-    },
-    {
-        "id": "gas",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/gas/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://gas-service"
-    }
-]
-15:20:32:837  INFO 7632 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [After]
-15:20:32:837  INFO 7632 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Before]
-15:20:32:837  INFO 7632 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Between]
-15:20:32:838  INFO 7632 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Cookie]
-15:20:32:838  INFO 7632 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Header]
-15:20:32:838  INFO 7632 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Host]
-15:20:32:838  INFO 7632 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Method]
-15:20:32:838  INFO 7632 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Path]
-15:20:32:838  INFO 7632 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Query]
-15:20:32:838  INFO 7632 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [ReadBody]
-15:20:32:838  INFO 7632 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [RemoteAddr]
-15:20:32:838  INFO 7632 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [XForwardedRemoteAddr]
-15:20:32:838  INFO 7632 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Weight]
-15:20:32:838  INFO 7632 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [CloudFoundryRouteService]
-15:20:33:482  INFO 7632 --- [main] com.alibaba.nacos.common.remote.client   : [RpcClientFactory] create a new rpc client of df6bf0f4-3731-49b2-a439-459f18326eb8
-15:20:33:482  INFO 7632 --- [main] com.alibaba.nacos.common.remote.client   : [df6bf0f4-3731-49b2-a439-459f18326eb8] RpcClient init label, labels = {module=naming, source=sdk}
-15:20:33:483  INFO 7632 --- [main] com.alibaba.nacos.common.remote.client   : [df6bf0f4-3731-49b2-a439-459f18326eb8] RpcClient init, ServerListFactory = com.alibaba.nacos.client.naming.core.ServerListManager
-15:20:33:483  INFO 7632 --- [main] com.alibaba.nacos.common.remote.client   : [df6bf0f4-3731-49b2-a439-459f18326eb8] Registry connection listener to current client:com.alibaba.nacos.client.naming.remote.gprc.redo.NamingGrpcRedoService
-15:20:33:484  INFO 7632 --- [main] com.alibaba.nacos.common.remote.client   : [df6bf0f4-3731-49b2-a439-459f18326eb8] Register server push request handler:com.alibaba.nacos.client.naming.remote.gprc.NamingPushRequestHandler
-15:20:33:484  INFO 7632 --- [main] com.alibaba.nacos.common.remote.client   : [df6bf0f4-3731-49b2-a439-459f18326eb8] Try to connect to server on start up, server: {serverIp = '172.16.102.52', server main port = 8848}
-15:20:33:635  INFO 7632 --- [main] com.alibaba.nacos.common.remote.client   : [df6bf0f4-3731-49b2-a439-459f18326eb8] Success to connect to server [172.16.102.52:8848] on start up, connectionId = 1784099773185_172.16.102.252_50938
-15:20:33:635  INFO 7632 --- [main] com.alibaba.nacos.common.remote.client   : [df6bf0f4-3731-49b2-a439-459f18326eb8] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$ConnectResetRequestHandler
-15:20:33:635  INFO 7632 --- [main] com.alibaba.nacos.common.remote.client   : [df6bf0f4-3731-49b2-a439-459f18326eb8] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$$Lambda$466/0x000000080043dc40
-15:20:33:635  INFO 7632 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [df6bf0f4-3731-49b2-a439-459f18326eb8] Notify connected event to listeners.
-15:20:33:990  INFO 7632 --- [main] o.s.b.web.embedded.netty.NettyWebServer  : Netty started on port 8300
-15:20:34:220  INFO 7632 --- [nacos-grpc-client-executor-6] com.alibaba.nacos.common.remote.client   : [df6bf0f4-3731-49b2-a439-459f18326eb8] Receive server push request, request = NotifySubscriberRequest, requestId = 517
-15:20:34:223  INFO 7632 --- [nacos-grpc-client-executor-6] com.alibaba.nacos.common.remote.client   : [df6bf0f4-3731-49b2-a439-459f18326eb8] Ack server push request, request = NotifySubscriberRequest, requestId = 517
-15:20:34:941  INFO 7632 --- [main] c.a.c.n.registry.NacosServiceRegistry    : nacos registry, DEFAULT_GROUP zksy-gateway 192.168.110.235:8300 register finished
-15:20:34:963  INFO 7632 --- [main] com.zksy.gateway.GatewayApplication      : Started GatewayApplication in 8.679 seconds (JVM running for 9.498)
-15:20:34:968  INFO 7632 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=zksy-gateway.yaml, group=DEFAULT_GROUP
-15:20:34:969  INFO 7632 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=zksy-gateway-druid.yaml, group=DEFAULT_GROUP
-15:20:34:969  INFO 7632 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=zksy-gateway, group=DEFAULT_GROUP
-15:20:35:512  INFO 7632 --- [nacos-grpc-client-executor-11] com.alibaba.nacos.common.remote.client   : [df6bf0f4-3731-49b2-a439-459f18326eb8] Receive server push request, request = NotifySubscriberRequest, requestId = 519
-15:20:35:517  INFO 7632 --- [nacos-grpc-client-executor-11] com.alibaba.nacos.common.remote.client   : [df6bf0f4-3731-49b2-a439-459f18326eb8] Ack server push request, request = NotifySubscriberRequest, requestId = 519
-15:20:41:412  WARN 7632 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Start destroying common HttpClient
-15:20:41:412  WARN 7632 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Start destroying Publisher
-15:20:41:412  WARN 7632 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Destruction of the end
-15:20:41:412  WARN 7632 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Destruction of the end
-15:20:41:441  INFO 7632 --- [SpringApplicationShutdownHook] c.a.c.n.registry.NacosServiceRegistry    : De-registering from Nacos Server now...
-15:20:41:458  INFO 7632 --- [SpringApplicationShutdownHook] c.a.c.n.registry.NacosServiceRegistry    : De-registration finished.
-15:20:42:017  INFO 7632 --- [nacos-grpc-client-executor-14] com.alibaba.nacos.common.remote.client   : [df6bf0f4-3731-49b2-a439-459f18326eb8] Receive server push request, request = NotifySubscriberRequest, requestId = 521
-15:20:42:022  INFO 7632 --- [nacos-grpc-client-executor-14] com.alibaba.nacos.common.remote.client   : [df6bf0f4-3731-49b2-a439-459f18326eb8] Ack server push request, request = NotifySubscriberRequest, requestId = 521
-15:20:42:066  INFO 7632 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Shutdown rpc client, set status to shutdown
-15:20:42:066  INFO 7632 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Shutdown client event executor java.util.concurrent.ScheduledThreadPoolExecutor@3c74595a[Running, pool size = 2, active threads = 2, queued tasks = 0, completed tasks = 0]
-15:20:42:066  INFO 7632 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Close current connection 1784099773185_172.16.102.252_50938
-15:20:42:070  INFO 7632 --- [SpringApplicationShutdownHook] c.a.n.c.remote.client.grpc.GrpcClient    : Shutdown grpc executor java.util.concurrent.ThreadPoolExecutor@3c553517[Running, pool size = 15, active threads = 0, queued tasks = 0, completed tasks = 15]
-15:27:17:316  INFO 32992 --- [main] com.zksy.gateway.GatewayApplication      : The following 1 profile is active: "druid"
-15:27:17:810  INFO 32992 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
-15:27:17:812  INFO 32992 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-15:27:17:836  INFO 32992 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 9 ms. Found 0 Redis repository interfaces.
-15:27:17:993  INFO 32992 --- [main] o.s.cloud.context.scope.GenericScope     : BeanFactory id=199a82ad-c94f-33fa-ad13-d1e13c782744
-15:27:18:051  INFO 32992 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration' of type [org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-15:27:18:053  INFO 32992 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration$ReactorDeferringLoadBalancerFilterConfig' of type [org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration$ReactorDeferringLoadBalancerFilterConfig] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-15:27:18:054  INFO 32992 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'reactorDeferringLoadBalancerExchangeFilterFunction' of type [org.springframework.cloud.client.loadbalancer.reactive.DeferringLoadBalancerExchangeFilterFunction] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-15:27:18:554 DEBUG 32992 --- [main] c.zksy.gateway.route.DynamicRouteLoader  : 监听到路由配置变更,[
-    {
-        "id": "pipe",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/pipe/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://pipe-network-service"
-    },
-    {
-        "id": "environment",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/environment/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://environment-service"
-    },
-    {
-        "id": "pressure",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/pressure/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://pressure-service"
-    },
-    {
-        "id": "gas",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/gas/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://gas-service"
-    }
-]
-15:27:20:594  INFO 32992 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [After]
-15:27:20:594  INFO 32992 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Before]
-15:27:20:595  INFO 32992 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Between]
-15:27:20:595  INFO 32992 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Cookie]
-15:27:20:595  INFO 32992 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Header]
-15:27:20:595  INFO 32992 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Host]
-15:27:20:595  INFO 32992 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Method]
-15:27:20:595  INFO 32992 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Path]
-15:27:20:596  INFO 32992 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Query]
-15:27:20:596  INFO 32992 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [ReadBody]
-15:27:20:596  INFO 32992 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [RemoteAddr]
-15:27:20:596  INFO 32992 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [XForwardedRemoteAddr]
-15:27:20:596  INFO 32992 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Weight]
-15:27:20:596  INFO 32992 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [CloudFoundryRouteService]
-15:27:21:396  INFO 32992 --- [main] com.alibaba.nacos.common.remote.client   : [RpcClientFactory] create a new rpc client of b3933167-44e4-4950-9cde-c92b8b3f66bf
-15:27:21:396  INFO 32992 --- [main] com.alibaba.nacos.common.remote.client   : [b3933167-44e4-4950-9cde-c92b8b3f66bf] RpcClient init label, labels = {module=naming, source=sdk}
-15:27:21:398  INFO 32992 --- [main] com.alibaba.nacos.common.remote.client   : [b3933167-44e4-4950-9cde-c92b8b3f66bf] RpcClient init, ServerListFactory = com.alibaba.nacos.client.naming.core.ServerListManager
-15:27:21:398  INFO 32992 --- [main] com.alibaba.nacos.common.remote.client   : [b3933167-44e4-4950-9cde-c92b8b3f66bf] Registry connection listener to current client:com.alibaba.nacos.client.naming.remote.gprc.redo.NamingGrpcRedoService
-15:27:21:398  INFO 32992 --- [main] com.alibaba.nacos.common.remote.client   : [b3933167-44e4-4950-9cde-c92b8b3f66bf] Register server push request handler:com.alibaba.nacos.client.naming.remote.gprc.NamingPushRequestHandler
-15:27:21:399  INFO 32992 --- [main] com.alibaba.nacos.common.remote.client   : [b3933167-44e4-4950-9cde-c92b8b3f66bf] Try to connect to server on start up, server: {serverIp = '172.16.102.52', server main port = 8848}
-15:27:21:553  INFO 32992 --- [main] com.alibaba.nacos.common.remote.client   : [b3933167-44e4-4950-9cde-c92b8b3f66bf] Success to connect to server [172.16.102.52:8848] on start up, connectionId = 1784100181104_172.16.102.252_52944
-15:27:21:553  INFO 32992 --- [main] com.alibaba.nacos.common.remote.client   : [b3933167-44e4-4950-9cde-c92b8b3f66bf] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$ConnectResetRequestHandler
-15:27:21:553  INFO 32992 --- [main] com.alibaba.nacos.common.remote.client   : [b3933167-44e4-4950-9cde-c92b8b3f66bf] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$$Lambda$466/0x000000080043d440
-15:27:21:553  INFO 32992 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [b3933167-44e4-4950-9cde-c92b8b3f66bf] Notify connected event to listeners.
-15:27:21:962  INFO 32992 --- [main] o.s.b.web.embedded.netty.NettyWebServer  : Netty started on port 8300
-15:27:22:127  INFO 32992 --- [nacos-grpc-client-executor-6] com.alibaba.nacos.common.remote.client   : [b3933167-44e4-4950-9cde-c92b8b3f66bf] Receive server push request, request = NotifySubscriberRequest, requestId = 531
-15:27:22:129  INFO 32992 --- [nacos-grpc-client-executor-6] com.alibaba.nacos.common.remote.client   : [b3933167-44e4-4950-9cde-c92b8b3f66bf] Ack server push request, request = NotifySubscriberRequest, requestId = 531
-15:27:22:914  INFO 32992 --- [main] c.a.c.n.registry.NacosServiceRegistry    : nacos registry, DEFAULT_GROUP zksy-gateway 192.168.110.235:8300 register finished
-15:27:22:941  INFO 32992 --- [main] com.zksy.gateway.GatewayApplication      : Started GatewayApplication in 8.991 seconds (JVM running for 9.77)
-15:27:22:945  INFO 32992 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=zksy-gateway.yaml, group=DEFAULT_GROUP
-15:27:22:945  INFO 32992 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=zksy-gateway-druid.yaml, group=DEFAULT_GROUP
-15:27:22:946  INFO 32992 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=zksy-gateway, group=DEFAULT_GROUP
-15:27:23:422  INFO 32992 --- [nacos-grpc-client-executor-11] com.alibaba.nacos.common.remote.client   : [b3933167-44e4-4950-9cde-c92b8b3f66bf] Receive server push request, request = NotifySubscriberRequest, requestId = 533
-15:27:23:426  INFO 32992 --- [nacos-grpc-client-executor-11] com.alibaba.nacos.common.remote.client   : [b3933167-44e4-4950-9cde-c92b8b3f66bf] Ack server push request, request = NotifySubscriberRequest, requestId = 533
-15:27:28:390  WARN 32992 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Start destroying Publisher
-15:27:28:390  WARN 32992 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Start destroying common HttpClient
-15:27:28:390  WARN 32992 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Destruction of the end
-15:27:28:390  WARN 32992 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Destruction of the end
-15:27:28:420  INFO 32992 --- [SpringApplicationShutdownHook] c.a.c.n.registry.NacosServiceRegistry    : De-registering from Nacos Server now...
-15:27:28:437  INFO 32992 --- [SpringApplicationShutdownHook] c.a.c.n.registry.NacosServiceRegistry    : De-registration finished.
-15:27:29:027  INFO 32992 --- [nacos-grpc-client-executor-14] com.alibaba.nacos.common.remote.client   : [b3933167-44e4-4950-9cde-c92b8b3f66bf] Receive server push request, request = NotifySubscriberRequest, requestId = 535
-15:27:29:031  INFO 32992 --- [nacos-grpc-client-executor-14] com.alibaba.nacos.common.remote.client   : [b3933167-44e4-4950-9cde-c92b8b3f66bf] Ack server push request, request = NotifySubscriberRequest, requestId = 535
-15:27:29:044  INFO 32992 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Shutdown rpc client, set status to shutdown
-15:27:29:044  INFO 32992 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Shutdown client event executor java.util.concurrent.ScheduledThreadPoolExecutor@2f45164c[Running, pool size = 2, active threads = 2, queued tasks = 0, completed tasks = 0]
-15:27:29:044  INFO 32992 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Close current connection 1784100181104_172.16.102.252_52944
-15:27:29:046  INFO 32992 --- [SpringApplicationShutdownHook] c.a.n.c.remote.client.grpc.GrpcClient    : Shutdown grpc executor java.util.concurrent.ThreadPoolExecutor@5891aab2[Running, pool size = 15, active threads = 0, queued tasks = 0, completed tasks = 15]
-16:03:42:225  INFO 35152 --- [main] com.zksy.gateway.GatewayApplication      : The following 1 profile is active: "druid"
-16:03:43:026  INFO 35152 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
-16:03:43:028  INFO 35152 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-16:03:43:051  INFO 35152 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 7 ms. Found 0 Redis repository interfaces.
-16:03:43:172  INFO 35152 --- [main] o.s.cloud.context.scope.GenericScope     : BeanFactory id=199a82ad-c94f-33fa-ad13-d1e13c782744
-16:03:43:241  INFO 35152 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration' of type [org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-16:03:43:242  INFO 35152 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration$ReactorDeferringLoadBalancerFilterConfig' of type [org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration$ReactorDeferringLoadBalancerFilterConfig] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-16:03:43:243  INFO 35152 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'reactorDeferringLoadBalancerExchangeFilterFunction' of type [org.springframework.cloud.client.loadbalancer.reactive.DeferringLoadBalancerExchangeFilterFunction] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-16:03:43:765 DEBUG 35152 --- [main] c.zksy.gateway.route.DynamicRouteLoader  : 监听到路由配置变更,[
-    {
-        "id": "pipe",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/pipe/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://pipe-network-service"
-    },
-    {
-        "id": "environment",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/environment/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://environment-service"
-    },
-    {
-        "id": "pressure",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/pressure/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://pressure-service"
-    },
-    {
-        "id": "gas",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/gas/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://gas-service"
-    }
-]
-16:03:46:014  INFO 35152 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [After]
-16:03:46:014  INFO 35152 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Before]
-16:03:46:014  INFO 35152 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Between]
-16:03:46:014  INFO 35152 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Cookie]
-16:03:46:014  INFO 35152 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Header]
-16:03:46:014  INFO 35152 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Host]
-16:03:46:014  INFO 35152 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Method]
-16:03:46:015  INFO 35152 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Path]
-16:03:46:015  INFO 35152 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Query]
-16:03:46:015  INFO 35152 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [ReadBody]
-16:03:46:015  INFO 35152 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [RemoteAddr]
-16:03:46:015  INFO 35152 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [XForwardedRemoteAddr]
-16:03:46:015  INFO 35152 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Weight]
-16:03:46:015  INFO 35152 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [CloudFoundryRouteService]
-16:03:46:851  INFO 35152 --- [main] com.alibaba.nacos.common.remote.client   : [RpcClientFactory] create a new rpc client of e056e204-dcfe-42ab-bc43-946f41af1652
-16:03:46:851  INFO 35152 --- [main] com.alibaba.nacos.common.remote.client   : [e056e204-dcfe-42ab-bc43-946f41af1652] RpcClient init label, labels = {module=naming, source=sdk}
-16:03:46:853  INFO 35152 --- [main] com.alibaba.nacos.common.remote.client   : [e056e204-dcfe-42ab-bc43-946f41af1652] RpcClient init, ServerListFactory = com.alibaba.nacos.client.naming.core.ServerListManager
-16:03:46:853  INFO 35152 --- [main] com.alibaba.nacos.common.remote.client   : [e056e204-dcfe-42ab-bc43-946f41af1652] Registry connection listener to current client:com.alibaba.nacos.client.naming.remote.gprc.redo.NamingGrpcRedoService
-16:03:46:854  INFO 35152 --- [main] com.alibaba.nacos.common.remote.client   : [e056e204-dcfe-42ab-bc43-946f41af1652] Register server push request handler:com.alibaba.nacos.client.naming.remote.gprc.NamingPushRequestHandler
-16:03:46:854  INFO 35152 --- [main] com.alibaba.nacos.common.remote.client   : [e056e204-dcfe-42ab-bc43-946f41af1652] Try to connect to server on start up, server: {serverIp = '172.16.102.52', server main port = 8848}
-16:03:47:012  INFO 35152 --- [main] com.alibaba.nacos.common.remote.client   : [e056e204-dcfe-42ab-bc43-946f41af1652] Success to connect to server [172.16.102.52:8848] on start up, connectionId = 1784102366580_172.16.102.252_58936
-16:03:47:012  INFO 35152 --- [main] com.alibaba.nacos.common.remote.client   : [e056e204-dcfe-42ab-bc43-946f41af1652] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$ConnectResetRequestHandler
-16:03:47:012  INFO 35152 --- [main] com.alibaba.nacos.common.remote.client   : [e056e204-dcfe-42ab-bc43-946f41af1652] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$$Lambda$466/0x000000080043dc40
-16:03:47:012  INFO 35152 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [e056e204-dcfe-42ab-bc43-946f41af1652] Notify connected event to listeners.
-16:03:47:452  INFO 35152 --- [main] o.s.b.web.embedded.netty.NettyWebServer  : Netty started on port 8300
-16:03:47:634  INFO 35152 --- [nacos-grpc-client-executor-6] com.alibaba.nacos.common.remote.client   : [e056e204-dcfe-42ab-bc43-946f41af1652] Receive server push request, request = NotifySubscriberRequest, requestId = 543
-16:03:47:637  INFO 35152 --- [nacos-grpc-client-executor-6] com.alibaba.nacos.common.remote.client   : [e056e204-dcfe-42ab-bc43-946f41af1652] Ack server push request, request = NotifySubscriberRequest, requestId = 543
-16:03:48:485  INFO 35152 --- [main] c.a.c.n.registry.NacosServiceRegistry    : nacos registry, DEFAULT_GROUP zksy-gateway 192.168.110.235:8300 register finished
-16:03:48:515  INFO 35152 --- [main] com.zksy.gateway.GatewayApplication      : Started GatewayApplication in 9.899 seconds (JVM running for 10.7)
-16:03:48:520  INFO 35152 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=zksy-gateway.yaml, group=DEFAULT_GROUP
-16:03:48:521  INFO 35152 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=zksy-gateway-druid.yaml, group=DEFAULT_GROUP
-16:03:48:522  INFO 35152 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=zksy-gateway, group=DEFAULT_GROUP
-16:03:49:023  INFO 35152 --- [nacos-grpc-client-executor-10] com.alibaba.nacos.common.remote.client   : [e056e204-dcfe-42ab-bc43-946f41af1652] Receive server push request, request = NotifySubscriberRequest, requestId = 545
-16:03:49:027  INFO 35152 --- [nacos-grpc-client-executor-10] com.alibaba.nacos.common.remote.client   : [e056e204-dcfe-42ab-bc43-946f41af1652] Ack server push request, request = NotifySubscriberRequest, requestId = 545
-16:04:57:135  WARN 35152 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Start destroying common HttpClient
-16:04:57:135  WARN 35152 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Start destroying Publisher
-16:04:57:135  WARN 35152 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Destruction of the end
-16:04:57:136  WARN 35152 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Destruction of the end
-16:04:57:167  INFO 35152 --- [SpringApplicationShutdownHook] c.a.c.n.registry.NacosServiceRegistry    : De-registering from Nacos Server now...
-16:04:57:183  INFO 35152 --- [SpringApplicationShutdownHook] c.a.c.n.registry.NacosServiceRegistry    : De-registration finished.
-16:04:57:490  INFO 35152 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Shutdown rpc client, set status to shutdown
-16:04:57:490  INFO 35152 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Shutdown client event executor java.util.concurrent.ScheduledThreadPoolExecutor@777e0861[Running, pool size = 2, active threads = 2, queued tasks = 0, completed tasks = 0]
-16:04:57:490  INFO 35152 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Close current connection 1784102366580_172.16.102.252_58936
-16:04:57:493  INFO 35152 --- [SpringApplicationShutdownHook] c.a.n.c.remote.client.grpc.GrpcClient    : Shutdown grpc executor java.util.concurrent.ThreadPoolExecutor@3dce44de[Running, pool size = 7, active threads = 0, queued tasks = 0, completed tasks = 29]
-16:10:53:486  INFO 34000 --- [main] com.zksy.gateway.GatewayApplication      : The following 1 profile is active: "druid"
-16:10:54:006  INFO 34000 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
-16:10:54:008  INFO 34000 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-16:10:54:026  INFO 34000 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 6 ms. Found 0 Redis repository interfaces.
-16:10:54:133  INFO 34000 --- [main] o.s.cloud.context.scope.GenericScope     : BeanFactory id=199a82ad-c94f-33fa-ad13-d1e13c782744
-16:10:54:171  INFO 34000 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration' of type [org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-16:10:54:171  INFO 34000 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration$ReactorDeferringLoadBalancerFilterConfig' of type [org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration$ReactorDeferringLoadBalancerFilterConfig] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-16:10:54:172  INFO 34000 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'reactorDeferringLoadBalancerExchangeFilterFunction' of type [org.springframework.cloud.client.loadbalancer.reactive.DeferringLoadBalancerExchangeFilterFunction] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-16:10:54:686 DEBUG 34000 --- [main] c.zksy.gateway.route.DynamicRouteLoader  : 监听到路由配置变更,[
-    {
-        "id": "pipe",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/pipe/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://pipe-network-service"
-    },
-    {
-        "id": "environment",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/environment/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://environment-service"
-    },
-    {
-        "id": "pressure",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/pressure/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://pressure-service"
-    },
-    {
-        "id": "gas",
-        "predicates": [{
-            "name": "Path",
-            "args": {"_genkey_0":"/gas/**"}
-        }],
-        "filters": [
-            {
-                "name": "StripPrefix",
-                "args": {"partsToStrip": 1}
-            }
-        ],
-        "uri": "lb://gas-service"
-    }
-]
-16:10:56:825  INFO 34000 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [After]
-16:10:56:825  INFO 34000 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Before]
-16:10:56:825  INFO 34000 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Between]
-16:10:56:825  INFO 34000 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Cookie]
-16:10:56:825  INFO 34000 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Header]
-16:10:56:825  INFO 34000 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Host]
-16:10:56:825  INFO 34000 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Method]
-16:10:56:826  INFO 34000 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Path]
-16:10:56:826  INFO 34000 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Query]
-16:10:56:826  INFO 34000 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [ReadBody]
-16:10:56:826  INFO 34000 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [RemoteAddr]
-16:10:56:826  INFO 34000 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [XForwardedRemoteAddr]
-16:10:56:826  INFO 34000 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [Weight]
-16:10:56:826  INFO 34000 --- [main] o.s.c.g.r.RouteDefinitionRouteLocator    : Loaded RoutePredicateFactory [CloudFoundryRouteService]
-16:10:57:619  INFO 34000 --- [main] com.alibaba.nacos.common.remote.client   : [RpcClientFactory] create a new rpc client of 82c1655d-a2c0-4cde-8cd1-d54bef18c9ba
-16:10:57:619  INFO 34000 --- [main] com.alibaba.nacos.common.remote.client   : [82c1655d-a2c0-4cde-8cd1-d54bef18c9ba] RpcClient init label, labels = {module=naming, source=sdk}
-16:10:57:621  INFO 34000 --- [main] com.alibaba.nacos.common.remote.client   : [82c1655d-a2c0-4cde-8cd1-d54bef18c9ba] RpcClient init, ServerListFactory = com.alibaba.nacos.client.naming.core.ServerListManager
-16:10:57:621  INFO 34000 --- [main] com.alibaba.nacos.common.remote.client   : [82c1655d-a2c0-4cde-8cd1-d54bef18c9ba] Registry connection listener to current client:com.alibaba.nacos.client.naming.remote.gprc.redo.NamingGrpcRedoService
-16:10:57:621  INFO 34000 --- [main] com.alibaba.nacos.common.remote.client   : [82c1655d-a2c0-4cde-8cd1-d54bef18c9ba] Register server push request handler:com.alibaba.nacos.client.naming.remote.gprc.NamingPushRequestHandler
-16:10:57:622  INFO 34000 --- [main] com.alibaba.nacos.common.remote.client   : [82c1655d-a2c0-4cde-8cd1-d54bef18c9ba] Try to connect to server on start up, server: {serverIp = '172.16.102.52', server main port = 8848}
-16:10:57:775  INFO 34000 --- [main] com.alibaba.nacos.common.remote.client   : [82c1655d-a2c0-4cde-8cd1-d54bef18c9ba] Success to connect to server [172.16.102.52:8848] on start up, connectionId = 1784102797347_172.16.102.252_60937
-16:10:57:775  INFO 34000 --- [main] com.alibaba.nacos.common.remote.client   : [82c1655d-a2c0-4cde-8cd1-d54bef18c9ba] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$ConnectResetRequestHandler
-16:10:57:775  INFO 34000 --- [main] com.alibaba.nacos.common.remote.client   : [82c1655d-a2c0-4cde-8cd1-d54bef18c9ba] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$$Lambda$466/0x000000080043d440
-16:10:57:775  INFO 34000 --- [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.common.remote.client   : [82c1655d-a2c0-4cde-8cd1-d54bef18c9ba] Notify connected event to listeners.
-16:10:58:183  INFO 34000 --- [main] o.s.b.web.embedded.netty.NettyWebServer  : Netty started on port 8300
-16:10:58:326  INFO 34000 --- [nacos-grpc-client-executor-6] com.alibaba.nacos.common.remote.client   : [82c1655d-a2c0-4cde-8cd1-d54bef18c9ba] Receive server push request, request = NotifySubscriberRequest, requestId = 554
-16:10:58:328  INFO 34000 --- [nacos-grpc-client-executor-6] com.alibaba.nacos.common.remote.client   : [82c1655d-a2c0-4cde-8cd1-d54bef18c9ba] Ack server push request, request = NotifySubscriberRequest, requestId = 554
-16:10:58:935  INFO 34000 --- [main] c.a.c.n.registry.NacosServiceRegistry    : nacos registry, DEFAULT_GROUP zksy-gateway 192.168.110.235:8300 register finished
-16:10:58:951  INFO 34000 --- [main] com.zksy.gateway.GatewayApplication      : Started GatewayApplication in 8.745 seconds (JVM running for 9.598)
-16:10:58:953  INFO 34000 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=zksy-gateway.yaml, group=DEFAULT_GROUP
-16:10:58:954  INFO 34000 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=zksy-gateway-druid.yaml, group=DEFAULT_GROUP
-16:10:58:955  INFO 34000 --- [main] c.a.c.n.refresh.NacosContextRefresher    : [Nacos Config] Listening config: dataId=zksy-gateway, group=DEFAULT_GROUP
-16:10:59:516  INFO 34000 --- [nacos-grpc-client-executor-10] com.alibaba.nacos.common.remote.client   : [82c1655d-a2c0-4cde-8cd1-d54bef18c9ba] Receive server push request, request = NotifySubscriberRequest, requestId = 556
-16:10:59:521  INFO 34000 --- [nacos-grpc-client-executor-10] com.alibaba.nacos.common.remote.client   : [82c1655d-a2c0-4cde-8cd1-d54bef18c9ba] Ack server push request, request = NotifySubscriberRequest, requestId = 556
-16:11:50:360  WARN 34000 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Start destroying common HttpClient
-16:11:50:360  WARN 34000 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Start destroying Publisher
-16:11:50:360  WARN 34000 --- [Thread-5] c.a.nacos.common.notify.NotifyCenter     : [NotifyCenter] Destruction of the end
-16:11:50:361  WARN 34000 --- [Thread-1] c.a.n.common.http.HttpClientBeanHolder   : [HttpClientBeanHolder] Destruction of the end
-16:11:50:407  INFO 34000 --- [SpringApplicationShutdownHook] c.a.c.n.registry.NacosServiceRegistry    : De-registering from Nacos Server now...
-16:11:50:426  INFO 34000 --- [SpringApplicationShutdownHook] c.a.c.n.registry.NacosServiceRegistry    : De-registration finished.
-16:11:50:733  INFO 34000 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Shutdown rpc client, set status to shutdown
-16:11:50:733  INFO 34000 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Shutdown client event executor java.util.concurrent.ScheduledThreadPoolExecutor@8075af2[Running, pool size = 2, active threads = 2, queued tasks = 0, completed tasks = 0]
-16:11:50:733  INFO 34000 --- [SpringApplicationShutdownHook] com.alibaba.nacos.common.remote.client   : Close current connection 1784102797347_172.16.102.252_60937
-16:11:50:747  INFO 34000 --- [nacos-grpc-client-executor-26] c.a.n.c.remote.client.grpc.GrpcClient    : [1784102797347_172.16.102.252_60937]Ignore complete event,isRunning:false,isAbandon=false
-16:11:50:754  INFO 34000 --- [SpringApplicationShutdownHook] c.a.n.c.remote.client.grpc.GrpcClient    : Shutdown grpc executor java.util.concurrent.ThreadPoolExecutor@2cb03df4[Running, pool size = 6, active threads = 0, queued tasks = 0, completed tasks = 27]

+ 5 - 13
manhole-service/src/main/java/com/zksy/manhole/utils/MessageHandler.java

@@ -1,12 +1,9 @@
 package com.zksy.manhole.utils;
 
-import static com.zksy.common.utils.CollectionSideEffects.*;
-
 import com.zksy.common.exception.InvalidMessageException;
 import com.zksy.manhole.domain.ManholeData;
 import com.zksy.manhole.service.ManholeDataService;
 import io.netty.buffer.ByteBuf;
-import io.netty.util.ReferenceCountUtil;
 import io.netty.buffer.Unpooled;
 import io.netty.channel.ChannelHandler;
 import io.netty.channel.ChannelHandlerContext;
@@ -58,20 +55,15 @@ public class MessageHandler extends ChannelInboundHandlerAdapter {
 				ManholeData resultData = DataParser.parseMessage(msgString);
 				// 更新设备最后一次接收数据的时间,并标记设备在线
 				String imeiCardNumber = resultData.getImeiCardNumber();
-				run(imeiCardNumber, "接收时间更新", () -> DeviceOfflineCheckTask.deviceLastReceiveTimeMap.put(imeiCardNumber, new Date()));
-                Integer saved = messageParseResultService.saveManholeData(resultData);
-                requireSaved(saved != null && saved > 0);
-                run(imeiCardNumber, "在线状态同步", () -> deviceOfflineCheckTask.markDeviceOnline(imeiCardNumber));
+				DeviceOfflineCheckTask.deviceLastReceiveTimeMap.put(imeiCardNumber, new Date());
+				deviceOfflineCheckTask.markDeviceOnline(imeiCardNumber);
+				messageParseResultService.saveManholeData(resultData);
 			}
 		} catch (InvalidMessageException e) {
 			logger.error("数据入库失败: {}", e.getMessage());
 			ctx.writeAndFlush(Unpooled.copiedBuffer("数据入库失败".getBytes()));
-        } catch (Exception e) {
-            logger.error("当前采集报文处理失败,连接继续接收后续数据", e);
-        } finally {
-            ReferenceCountUtil.release(msg);
-        }
-    }
+		}
+	}
 
 	private String printHexBinary(byte[] bytes) {
 		StringBuilder sb = new StringBuilder();

+ 2 - 2
pipe-network-service/sql/migration_case_workorder_list_menu.sql

@@ -7,7 +7,7 @@
 --       两者展示与运维工单列表 index.vue 一致,现统一指向新页面
 --       subSystem/pipeNetwork/ops/workOrder/list.vue(只读,无新增工单)。
 --
--- 业务口径(两个菜单都只查 equipment_type.parent_type_id = 4 的案件类设备工单):
+-- 业务口径(两个菜单都只查 equipment_type.parent_id = 4 的案件类设备工单):
 --       经办工单:order_status IN (0 待派单, 1 待接单, 2 已接单, 3 处理中, 4 待验收, 6 延期中)
 --       办结工单:order_status = 5 已结案
 --   该口径由前端固定传 orderStatus / deviceTypeParentId,后端
@@ -50,7 +50,7 @@ UPDATE sys_menu
 --        路由 path 含 'handling' 或 菜单名含 '经办'  → 经办工单(未办结状态集合)
 --      判定顺序为先「办结」后「经办」,避免 path 中的父级目录 caseHandling 被误判为经办。
 --      若菜单 path 与菜单名都不是上述关键字,请同步调整 MENU_SCOPES,否则会退化为
---      「不限状态 + parent_type_id = 4」,页面不报错但查询范围不符合预期。
+--      「不限状态 + parent_id = 4」,页面不报错但查询范围不符合预期。
 --    - 已无菜单引用、已删除的旧页面:
 --        subSystem/manholeCover/caseHandling/handlingWorkO.vue(已删除)
 --        subSystem/manholeCover/caseHandling/closeWorkOrder.vue(已删除)

+ 1 - 1
pipe-network-service/sql/migration_gas_workorder_menu.sql

@@ -8,7 +8,7 @@
 -- 业务口径:燃气菜单只查询「燃气类设备」产生的工单,过滤链路为
 --       work_order.device_id      -> equipment_base.equipment_id
 --       equipment_base.equipment_type_id -> equipment_type.id
---       equipment_type.parent_type_id    = '3'
+--       equipment_type.parent_id    = '3'
 --   该过滤由前端固定传 deviceTypeParentId=3、后端 WorkOrderPageDTO /
 --   WorkOrderServiceImpl#applyDeviceTypeScope 实现;运维菜单不传该参数,仍查全量。
 --

+ 8 - 8
pipe-network-service/sql/migration_workorder_menu_reuse.sql

@@ -7,14 +7,14 @@
 -- 业务口径:按菜单收窄为各自业务设备产生的工单,过滤链路统一为
 --       work_order.device_id            -> equipment_base.equipment_id
 --       equipment_base.equipment_type_id -> equipment_type.id
---       equipment_type.parent_type_id     = 各业务的父类别ID
+--       equipment_type.parent_id     = 各业务的父类别ID
 --
 --   父类别取值:
---       燃气   parent_type_id = '3'  菜单 燃气工单-工单管理     → dispose.vue
---       排水   parent_type_id = '2'  菜单 工单管理-排水工单     → dispose.vue
---       案件   parent_type_id = '4'  菜单 案件管理-工单处置管理 → dispose.vue
---       供水   parent_type_id = '1'  菜单 设备维修派单         → dispose.vue
---       供水   parent_type_id = '1'  菜单 设备维修记录         → index.vue(列表页)
+--       燃气   parent_id = '3'  菜单 燃气工单-工单管理     → dispose.vue
+--       排水   parent_id = '2'  菜单 工单管理-排水工单     → dispose.vue
+--       案件   parent_id = '4'  菜单 案件管理-工单处置管理 → dispose.vue
+--       供水   parent_id = '1'  菜单 设备维修派单         → dispose.vue
+--       供水   parent_id = '1'  菜单 设备维修记录         → index.vue(列表页)
 --
 --   该过滤由前端固定传 deviceTypeParentId、后端 WorkOrderPageDTO /
 --   WorkOrderServiceImpl#applyDeviceTypeScope 实现;
@@ -39,14 +39,14 @@ UPDATE sys_menu
    SET component = 'subSystem/pipeNetwork/ops/workOrder/dispose'
  WHERE component = 'subSystem/manholeCover/caseHandling/orderDisposal';
 
--- 4. 监测设备 - 设备维修派单:复用工单处置页 dispose.vue(parent_type_id = 1)
+-- 4. 监测设备 - 设备维修派单:复用工单处置页 dispose.vue(parent_id = 1)
 --    用 LIKE 匹配,兼容 component 实际值带 .vue 后缀或前缀写法不同的情况
 UPDATE sys_menu
    SET component = 'subSystem/pipeNetwork/ops/workOrder/dispose'
  WHERE component LIKE '%waterSupply/device/maintain%'
    AND component NOT LIKE '%ops/workOrder%';
 
--- 5. 监测设备 - 设备维修记录:复用工单列表页 index.vue(parent_type_id = 1)
+-- 5. 监测设备 - 设备维修记录:复用工单列表页 index.vue(parent_id = 1)
 --    注意这里是 index.vue(列表页),不是 dispose.vue
 UPDATE sys_menu
    SET component = 'subSystem/pipeNetwork/ops/workOrder/index'

+ 191 - 0
pipe-network-service/sql/water_supply_alarm_test_data.sql

@@ -0,0 +1,191 @@
+-- ============================================================
+-- 供水管网-监测报警模块 测试数据脚本(人大金仓 KingbaseES / PostgreSQL 兼容)
+-- 说明:
+--   1. 测试数据使用 TEST- / test- 前缀,可安全重复执行(先删除再插入)。
+--   2. 若设备类别中已存在顶级类型"供水",则复用;否则自动创建测试顶级类型。
+--   3. 清理请执行本文件末尾的清理脚本,或单独执行 water_supply_alarm_test_cleanup.sql。
+-- ============================================================
+
+-- ------------------------------------------------------------
+-- 0. 清理历史测试数据(保证可重复执行)
+-- ------------------------------------------------------------
+DELETE FROM app_user.alarm_audit WHERE alarm_id LIKE 'test-alarm-%';
+DELETE FROM app_user.work_order_log WHERE order_id IN
+    (SELECT order_id FROM app_user.work_order WHERE alarm_id LIKE 'test-alarm-%' OR order_no = 'TEST-WO-001');
+DELETE FROM app_user.work_order WHERE alarm_id LIKE 'test-alarm-%' OR order_no = 'TEST-WO-001';
+DELETE FROM app_user.alarm_data WHERE id LIKE 'test-alarm-%';
+DELETE FROM app_user.warning_threshold WHERE id LIKE 'test-thr-%' OR device_code LIKE 'TEST-%';
+DELETE FROM app_user.equipment_base WHERE equipment_id LIKE 'TEST-EQ-%';
+DELETE FROM app_user.equipment_type WHERE id LIKE 'TEST-WATER-%';
+
+-- ------------------------------------------------------------
+-- 1. 设备类别与设备基础信息
+-- ------------------------------------------------------------
+DO $$
+DECLARE
+    v_top_id       varchar(64);
+    v_level_id     varchar(64);
+    v_pressure_id  varchar(64);
+    v_flow_id      varchar(64);
+BEGIN
+    -- 顶级类型"供水"(parent_id = 0),不存在则创建
+    SELECT id INTO v_top_id FROM app_user.equipment_type
+     WHERE type_name = '供水' AND parent_id = 0 LIMIT 1;
+    -- 测试类型主键取 9100 段,避免与 EquipmentTypeEnum 的真实类型冲突
+    IF v_top_id IS NULL THEN
+        INSERT INTO app_user.equipment_type (id, type_name, parent_id, remark)
+        VALUES (9100, '供水', 0, '供水监测报警测试-顶级类型(可清理)')
+        RETURNING id INTO v_top_id;
+    END IF;
+
+    -- 子类型:水位 / 压力 / 流量
+    SELECT id INTO v_level_id FROM app_user.equipment_type WHERE id = 9101 LIMIT 1;
+    IF v_level_id IS NULL THEN
+        INSERT INTO app_user.equipment_type (id, type_name, parent_id, remark)
+        VALUES (9101, '水位监测(测试)', v_top_id, '供水监测报警测试子类型')
+        RETURNING id INTO v_level_id;
+    END IF;
+
+    SELECT id INTO v_pressure_id FROM app_user.equipment_type WHERE id = 9102 LIMIT 1;
+    IF v_pressure_id IS NULL THEN
+        INSERT INTO app_user.equipment_type (id, type_name, parent_id, remark)
+        VALUES (9102, '压力监测(测试)', v_top_id, '供水监测报警测试子类型')
+        RETURNING id INTO v_pressure_id;
+    END IF;
+
+    SELECT id INTO v_flow_id FROM app_user.equipment_type WHERE id = 9103 LIMIT 1;
+    IF v_flow_id IS NULL THEN
+        INSERT INTO app_user.equipment_type (id, type_name, parent_id, remark)
+        VALUES (9103, '流量监测(测试)', v_top_id, '供水监测报警测试子类型')
+        RETURNING id INTO v_flow_id;
+    END IF;
+
+    -- 4 台测试设备(均带经纬度,供一张图点位使用)
+    INSERT INTO app_user.equipment_base
+        (equipment_id, equipment_code, equipment_name, equipment_model, equipment_type_id,
+         longitude, latitude, equipment_location, maintainer, maintainer_phone, ownership_unit,
+         remark, create_time, update_time, del_flag, district)
+    VALUES
+        ('TEST-EQ-WL-001', 'TEST-WL-001', '测试水位监测点1', 'WL-TEST-1', v_level_id,
+         113.28000000, 23.12000000, '测试大道1号', '测试维护员', '13800000001', '测试供水公司',
+         '供水监测报警测试数据', now(), now(), '0', '测试区'),
+        ('TEST-EQ-WL-002', 'TEST-WL-002', '测试水位监测点2', 'WL-TEST-2', v_level_id,
+         113.29000000, 23.13000000, '测试大道2号', '测试维护员', '13800000002', '测试供水公司',
+         '供水监测报警测试数据', now(), now(), '0', '测试区'),
+        ('TEST-EQ-PR-001', 'TEST-PR-001', '测试压力监测点1', 'PR-TEST-1', v_pressure_id,
+         113.30000000, 23.14000000, '测试大道3号', '测试维护员', '13800000003', '测试供水公司',
+         '供水监测报警测试数据', now(), now(), '0', '测试区'),
+        ('TEST-EQ-FL-001', 'TEST-FL-001', '测试流量监测点1', 'FL-TEST-1', v_flow_id,
+         113.31000000, 23.15000000, '测试大道4号', '测试维护员', '13800000004', '测试供水公司',
+         '供水监测报警测试数据', now(), now(), '0', '测试区');
+END $$;
+
+-- ------------------------------------------------------------
+-- 2. 报警数据(alarm_data)
+--    预期统计:实时报警3个设备 / 今日报警6条 / 平均响应25.00分钟 / 设备异常率75%
+-- ------------------------------------------------------------
+INSERT INTO app_user.alarm_data
+    (id, device_code, device_name, device_type, warning_type, warning_code,
+     actual_value, min_value, max_value, alarm_status, alarm_level, deviation_ratio,
+     alarm_time, handle_time, handle_user, handle_remark, remark, create_time, update_time)
+VALUES
+    -- 未处理:水位1级(今日)
+    ('test-alarm-001', 'TEST-WL-001', '测试水位监测点1', '水位监测', '水位预警', 'WARN-WATER-LEVEL-TEST',
+     0.20, 0.50, 3.00, 0, 1, 40.00,
+     now() - interval '180 minutes', NULL, NULL, NULL, '供水监测报警测试数据',
+     now() - interval '180 minutes', now() - interval '180 minutes'),
+    -- 未处理:水位2级(今日,同设备第二条)
+    ('test-alarm-002', 'TEST-WL-001', '测试水位监测点1', '水位监测', '水位预警', 'WARN-WATER-LEVEL-TEST',
+     0.30, 0.50, 3.00, 0, 2, 35.00,
+     now() - interval '150 minutes', NULL, NULL, NULL, '供水监测报警测试数据',
+     now() - interval '150 minutes', now() - interval '150 minutes'),
+    -- 已处理:水位3级(今日,响应35分钟)→ 关联测试工单
+    ('test-alarm-003', 'TEST-WL-002', '测试水位监测点2', '水位监测', '水位预警', 'WARN-WATER-LEVEL-TEST',
+     3.80, 0.50, 3.00, 1, 3, 25.00,
+     now() - interval '120 minutes', now() - interval '85 minutes', '测试用户', '现场处理完成',
+     '供水监测报警测试数据', now() - interval '120 minutes', now() - interval '85 minutes'),
+    -- 未处理:压力1级(今日,一张图最高级点位)
+    ('test-alarm-004', 'TEST-PR-001', '测试压力监测点1', '压力监测', '压力预警', 'WARN-PRESSURE-TEST',
+     0.95, 0.40, 0.80, 0, 1, 30.00,
+     now() - interval '100 minutes', NULL, NULL, NULL, '供水监测报警测试数据',
+     now() - interval '100 minutes', now() - interval '100 minutes'),
+    -- 已处理:压力2级(今日,响应30分钟)
+    ('test-alarm-005', 'TEST-PR-001', '测试压力监测点1', '压力监测', '压力预警', 'WARN-PRESSURE-TEST',
+     0.90, 0.40, 0.80, 1, 2, 28.00,
+     now() - interval '90 minutes', now() - interval '60 minutes', '测试用户', '压力调整',
+     '供水监测报警测试数据', now() - interval '90 minutes', now() - interval '60 minutes'),
+    -- 已处理:流量4级(昨日,不计入今日统计)
+    ('test-alarm-006', 'TEST-FL-001', '测试流量监测点1', '流量监测', '流量预警', 'WARN-FLOW-TEST',
+     120.00, 10.00, 100.00, 1, 4, 20.00,
+     now() - interval '1 day' - interval '60 minutes', now() - interval '1 day',
+     '测试用户', '流量恢复正常', '供水监测报警测试数据',
+     now() - interval '1 day' - interval '60 minutes', now() - interval '1 day'),
+    -- 未处理:流量3级(昨日,用于实时列表/历史过滤/解除测试)
+    ('test-alarm-007', 'TEST-FL-001', '测试流量监测点1', '流量监测', '流量预警', 'WARN-FLOW-TEST',
+     115.00, 10.00, 100.00, 0, 3, 15.00,
+     now() - interval '1 day' - interval '30 minutes', NULL, NULL, NULL, '供水监测报警测试数据',
+     now() - interval '1 day' - interval '30 minutes', now() - interval '1 day' - interval '30 minutes'),
+    -- 已处理:水位2级(今日,响应10分钟)
+    ('test-alarm-008', 'TEST-WL-002', '测试水位监测点2', '水位监测', '水位预警', 'WARN-WATER-LEVEL-TEST',
+     3.50, 0.50, 3.00, 1, 2, 18.00,
+     now() - interval '300 minutes', now() - interval '290 minutes', '测试用户', '水位回落',
+     '供水监测报警测试数据', now() - interval '300 minutes', now() - interval '290 minutes');
+
+-- ------------------------------------------------------------
+-- 3. 阈值数据(warning_threshold,含分时阈值)
+-- ------------------------------------------------------------
+INSERT INTO app_user.warning_threshold
+    (id, device_code, warning_type, warning_code, min_value, max_value,
+     period_start, period_end, remark, create_time, update_time)
+VALUES
+    ('test-thr-001', 'TEST-WL-001', '水位预警', 'WARN-WATER-LEVEL-TEST', 0.50, 3.00,
+     NULL, NULL, '供水监测报警测试-全天阈值', now(), now()),
+    ('test-thr-002', 'TEST-WL-002', '水位预警', 'WARN-WATER-LEVEL-TEST', 0.60, 3.20,
+     NULL, NULL, '供水监测报警测试-全天阈值', now(), now()),
+    ('test-thr-003', 'TEST-PR-001', '压力预警', 'WARN-PRESSURE-TEST', 0.40, 0.80,
+     '08:00', '20:00', '供水监测报警测试-分时阈值(08:00-20:00)', now(), now()),
+    ('test-thr-004', 'TEST-FL-001', '流量预警', 'WARN-FLOW-TEST', 10.00, 100.00,
+     NULL, NULL, '供水监测报警测试-全天阈值', now(), now());
+
+-- ------------------------------------------------------------
+-- 4. 工单与工单日志(关联 test-alarm-003,用于全流程跟踪测试)
+-- ------------------------------------------------------------
+INSERT INTO app_user.work_order
+    (order_no, alarm_id, case_id, case_no, device_id, device_code,
+     order_type, order_level, order_desc, dept_id, dispatch_user, dispatch_time,
+     receive_user, order_status, delayed_reason, delayed_deadline, plan_finish_time,
+     real_finish_time, repair_result, verify_user, verify_time, create_time, update_time,
+     work_image, hazard_id, hazard_no)
+VALUES
+    ('TEST-WO-001', 'test-alarm-003', NULL, NULL, 'TEST-EQ-WL-002', 'TEST-WL-002',
+     1, 2, '供水监测报警测试工单-水位超限', NULL, NULL, NULL,
+     NULL, 5, NULL, NULL, NULL,
+     NULL, '现场已处理', NULL, NULL, now(), now(),
+     NULL, NULL, NULL);
+
+INSERT INTO app_user.work_order_log
+    (order_id, oper_type, oper_desc, oper_user_id, oper_user_name, oper_time)
+SELECT order_id, 5, '供水监测报警测试-提交验收', 1, '测试用户', now()
+  FROM app_user.work_order WHERE order_no = 'TEST-WO-001';
+
+-- ------------------------------------------------------------
+-- 5. 报警审核记录(关联 test-alarm-002,用于审核记录/全流程测试)
+-- ------------------------------------------------------------
+INSERT INTO app_user.alarm_audit
+    (alarm_id, audit_action, audit_result, audit_opinion, attach_url,
+     audit_user_id, audit_user_name, audit_time, create_time, update_time)
+VALUES
+    ('test-alarm-002', 1, 1, '测试审核:现场核实报警属实', NULL,
+     1, '测试用户', now(), now(), now());
+
+-- ============================================================
+-- 清理脚本(如需清理测试数据,执行以下语句)
+-- ============================================================
+-- DELETE FROM app_user.alarm_audit WHERE alarm_id LIKE 'test-alarm-%';
+-- DELETE FROM app_user.work_order_log WHERE order_id IN
+--     (SELECT order_id FROM app_user.work_order WHERE alarm_id LIKE 'test-alarm-%' OR order_no = 'TEST-WO-001');
+-- DELETE FROM app_user.work_order WHERE alarm_id LIKE 'test-alarm-%' OR order_no = 'TEST-WO-001';
+-- DELETE FROM app_user.alarm_data WHERE id LIKE 'test-alarm-%';
+-- DELETE FROM app_user.warning_threshold WHERE id LIKE 'test-thr-%' OR device_code LIKE 'TEST-%';
+-- DELETE FROM app_user.equipment_base WHERE equipment_id LIKE 'TEST-EQ-%';
+-- DELETE FROM app_user.equipment_type WHERE id LIKE 'TEST-WATER-%';

+ 31 - 31
pipe-network-service/sql/water_supply_monitoring_alarm_rebuild_test_data.sql

@@ -6,13 +6,13 @@
 --   water_supply_alarm_audit_test_data.sql
 --
 -- 背景:
---   equipment_type 迁移后,供水子类型以库中现值为权威:
---     ultrasonic_flowmeter(11) 超声波外夹流量计
---     pressure_gauge(12)       压力计
---     leak_monitor(14)         漏失在线监测仪
---   旧脚本按已不存在的 ws_flow/ws_pressure/ws_leak 取类型(执行到一半即中断),
+--   equipment_type 主键改造后,供水子类型以整数主键为权威(见 EquipmentTypeEnum):
+--     11 超声波外夹流量计
+--     12 压力计
+--     13 漏失在线监测仪
+--   旧脚本按已删除的 type_id 业务编码(ws_flow/ws_pressure/ws_leak)取类型(执行到一半即中断),
 --   或写入的报警引用了并不存在的设备,导致:运行监测三页空列表、设备台账类型错位、
---   报警台账只剩少量能对上设备的记录。本脚本不新增任何设备类型,一律按 type_id + parent_type_id 取现有类型 id。
+--   报警台账只剩少量能对上设备的记录。本脚本不新增任何设备类型,一律按 id + parent_id 取现有类型。
 --
 -- 用法与安全边界:
 --   1. 幂等,可重复执行;只写入 wrb- 前缀的测试数据与设备台账,不修改表结构、不删其它系统设备。
@@ -44,11 +44,11 @@ DECLARE
     v_pressure varchar(64);
     v_leak     varchar(64);
 BEGIN
-    SELECT id INTO v_flow     FROM app_user.equipment_type WHERE type_id = 'ultrasonic_flowmeter' AND parent_type_id = '1' LIMIT 1;
-    SELECT id INTO v_pressure FROM app_user.equipment_type WHERE type_id = 'pressure_gauge'        AND parent_type_id = '1' LIMIT 1;
-    SELECT id INTO v_leak     FROM app_user.equipment_type WHERE type_id = 'leak_monitor'          AND parent_type_id = '1' LIMIT 1;
+    SELECT id INTO v_flow     FROM app_user.equipment_type WHERE id = 11 AND parent_id = 1 LIMIT 1;
+    SELECT id INTO v_pressure FROM app_user.equipment_type WHERE id = 12        AND parent_id = 1 LIMIT 1;
+    SELECT id INTO v_leak     FROM app_user.equipment_type WHERE id = 13          AND parent_id = 1 LIMIT 1;
     IF v_flow IS NULL OR v_pressure IS NULL OR v_leak IS NULL THEN
-        RAISE EXCEPTION '供水监测子类型缺失:需要 ultrasonic_flowmeter / pressure_gauge / leak_monitor 且 parent_type_id=1;本脚本不新增设备类型';
+        RAISE EXCEPTION '供水监测子类型缺失:需要主键 11 / 12 / 13 且 parent_id=1;本脚本不新增设备类型';
     END IF;
 END $$;
 
@@ -80,7 +80,7 @@ CREATE TEMP TABLE wsr_deleted_devices (equipment_id varchar(64), equipment_code
 INSERT INTO wsr_deleted_devices (equipment_id, equipment_code)
 SELECT equipment_id, equipment_code
   FROM app_user.equipment_base
- WHERE (equipment_type_id IN (SELECT id FROM app_user.equipment_type WHERE parent_type_id = '1')
+ WHERE (equipment_type_id IN (SELECT id FROM app_user.equipment_type WHERE parent_id = 1)
         AND (equipment_id LIKE 'WRB-EQ-%'
              OR equipment_id LIKE 'WS-TEST-EQ-%'
              OR equipment_id LIKE 'T6-%'
@@ -160,63 +160,63 @@ INSERT INTO app_user.equipment_base
      remark, create_time, update_time, del_flag, district)
 VALUES
     ('WRB-EQ-FL-01', 'CN-GS-202609160201', '城南主轴流量监测点', 'WRB-FL-1',
-     (SELECT id FROM app_user.equipment_type WHERE type_id = 'ultrasonic_flowmeter' AND parent_type_id = '1' LIMIT 1),
+     (SELECT id FROM app_user.equipment_type WHERE id = 11 AND parent_id = 1 LIMIT 1),
      113.28100000, 23.12100000, '城南大道201号', '张巡维', '13800000301', '市供水公司',
      '#56统一重建-流量监测', now(), now(), '0', '城南'),
     ('WRB-EQ-FL-02', 'CB-GS-202609160202', '城北出厂流量监测点', 'WRB-FL-2',
-     (SELECT id FROM app_user.equipment_type WHERE type_id = 'ultrasonic_flowmeter' AND parent_type_id = '1' LIMIT 1),
+     (SELECT id FROM app_user.equipment_type WHERE id = 11 AND parent_id = 1 LIMIT 1),
      113.31200000, 23.17200000, '城北大道202号', '李巡维', '13800000302', '市供水公司',
      '#56统一重建-流量监测', now(), now(), '0', '城北'),
     ('WRB-EQ-FL-03', 'TC-GS-202609160203', '太常厂区流量监测点', 'WRB-FL-3',
-     (SELECT id FROM app_user.equipment_type WHERE type_id = 'ultrasonic_flowmeter' AND parent_type_id = '1' LIMIT 1),
+     (SELECT id FROM app_user.equipment_type WHERE id = 11 AND parent_id = 1 LIMIT 1),
      113.25100000, 23.09100000, '太常路203号', '王巡维', '13800000303', '市供水公司',
      '#56统一重建-流量监测', now(), now(), '0', '太常'),
     ('WRB-EQ-FL-04', 'CN-GS-202609160204', '城南支线流量监测点', 'WRB-FL-4',
-     (SELECT id FROM app_user.equipment_type WHERE type_id = 'ultrasonic_flowmeter' AND parent_type_id = '1' LIMIT 1),
+     (SELECT id FROM app_user.equipment_type WHERE id = 11 AND parent_id = 1 LIMIT 1),
      113.28600000, 23.12600000, '城南大道204号', '赵巡维', '13800000304', '市供水公司',
      '#56统一重建-流量监测', now(), now(), '0', '城南'),
     ('WRB-EQ-FL-05', 'CB-GS-202609160205', '城北支线流量监测点', 'WRB-FL-5',
-     (SELECT id FROM app_user.equipment_type WHERE type_id = 'ultrasonic_flowmeter' AND parent_type_id = '1' LIMIT 1),
+     (SELECT id FROM app_user.equipment_type WHERE id = 11 AND parent_id = 1 LIMIT 1),
      113.31600000, 23.17600000, '城北大道205号', '孙巡维', '13800000305', '市供水公司',
      '#56统一重建-流量监测', now(), now(), '0', '城北'),
     ('WRB-EQ-FL-06', 'TC-GS-202609160206', '太常支线流量监测点', 'WRB-FL-6',
-     (SELECT id FROM app_user.equipment_type WHERE type_id = 'ultrasonic_flowmeter' AND parent_type_id = '1' LIMIT 1),
+     (SELECT id FROM app_user.equipment_type WHERE id = 11 AND parent_id = 1 LIMIT 1),
      113.25600000, 23.09600000, '太常路206号', '周巡维', '13800000306', '市供水公司',
      '#56统一重建-无设备状态记录(报警状态回退分支)', now(), now(), '0', '太常'),
     ('WRB-EQ-PR-01', 'CN-GS-202609160211', '城南加压站压力监测点', 'WRB-PR-1',
-     (SELECT id FROM app_user.equipment_type WHERE type_id = 'pressure_gauge' AND parent_type_id = '1' LIMIT 1),
+     (SELECT id FROM app_user.equipment_type WHERE id = 12 AND parent_id = 1 LIMIT 1),
      113.28200000, 23.12200000, '城南大道211号', '张巡维', '13800000311', '市供水公司',
      '#56统一重建-压力监测', now(), now(), '0', '城南'),
     ('WRB-EQ-PR-02', 'CB-GS-202609160212', '城北末梢压力监测点', 'WRB-PR-2',
-     (SELECT id FROM app_user.equipment_type WHERE type_id = 'pressure_gauge' AND parent_type_id = '1' LIMIT 1),
+     (SELECT id FROM app_user.equipment_type WHERE id = 12 AND parent_id = 1 LIMIT 1),
      113.31300000, 23.17300000, '城北大道212号', '李巡维', '13800000312', '市供水公司',
      '#56统一重建-压力监测', now(), now(), '0', '城北'),
     ('WRB-EQ-PR-03', 'TC-GS-202609160213', '太常主管压力监测点', 'WRB-PR-3',
-     (SELECT id FROM app_user.equipment_type WHERE type_id = 'pressure_gauge' AND parent_type_id = '1' LIMIT 1),
+     (SELECT id FROM app_user.equipment_type WHERE id = 12 AND parent_id = 1 LIMIT 1),
      113.25200000, 23.09200000, '太常路213号', '王巡维', '13800000313', '市供水公司',
      '#56统一重建-压力监测', now(), now(), '0', '太常'),
     ('WRB-EQ-PR-04', 'CN-GS-202609160214', '城南小区入口压力监测点', 'WRB-PR-4',
-     (SELECT id FROM app_user.equipment_type WHERE type_id = 'pressure_gauge' AND parent_type_id = '1' LIMIT 1),
+     (SELECT id FROM app_user.equipment_type WHERE id = 12 AND parent_id = 1 LIMIT 1),
      113.28700000, 23.12700000, '城南大道214号', '赵巡维', '13800000314', '市供水公司',
      '#56统一重建-压力监测', now(), now(), '0', '城南'),
     ('WRB-EQ-PR-05', 'CB-GS-202609160215', '城北高位水池压力监测点', 'WRB-PR-5',
-     (SELECT id FROM app_user.equipment_type WHERE type_id = 'pressure_gauge' AND parent_type_id = '1' LIMIT 1),
+     (SELECT id FROM app_user.equipment_type WHERE id = 12 AND parent_id = 1 LIMIT 1),
      113.31700000, 23.17700000, '城北大道215号', '孙巡维', '13800000315', '市供水公司',
      '#56统一重建-压力监测', now(), now(), '0', '城北'),
     ('WRB-EQ-LK-01', 'CN-GS-202609160221', '城南漏失声波监测点', 'WRB-LK-1',
-     (SELECT id FROM app_user.equipment_type WHERE type_id = 'leak_monitor' AND parent_type_id = '1' LIMIT 1),
+     (SELECT id FROM app_user.equipment_type WHERE id = 13 AND parent_id = 1 LIMIT 1),
      113.28300000, 23.12300000, '城南大道221号', '张巡维', '13800000321', '市供水公司',
      '#56统一重建-漏失监测', now(), now(), '0', '城南'),
     ('WRB-EQ-LK-02', 'CB-GS-202609160222', '城北漏失声波监测点', 'WRB-LK-2',
-     (SELECT id FROM app_user.equipment_type WHERE type_id = 'leak_monitor' AND parent_type_id = '1' LIMIT 1),
+     (SELECT id FROM app_user.equipment_type WHERE id = 13 AND parent_id = 1 LIMIT 1),
      113.31400000, 23.17400000, '城北大道222号', '李巡维', '13800000322', '市供水公司',
      '#56统一重建-漏失监测', now(), now(), '0', '城北'),
     ('WRB-EQ-LK-03', 'TC-GS-202609160223', '太常漏失声波监测点', 'WRB-LK-3',
-     (SELECT id FROM app_user.equipment_type WHERE type_id = 'leak_monitor' AND parent_type_id = '1' LIMIT 1),
+     (SELECT id FROM app_user.equipment_type WHERE id = 13 AND parent_id = 1 LIMIT 1),
      113.25300000, 23.09300000, '太常路223号', '王巡维', '13800000323', '市供水公司',
      '#56统一重建-漏失监测', now(), now(), '0', '太常'),
     ('WRB-EQ-LK-04', 'CN-GS-202609160224', '城南老城区漏失监测点', 'WRB-LK-4',
-     (SELECT id FROM app_user.equipment_type WHERE type_id = 'leak_monitor' AND parent_type_id = '1' LIMIT 1),
+     (SELECT id FROM app_user.equipment_type WHERE id = 13 AND parent_id = 1 LIMIT 1),
      113.28800000, 23.12800000, '城南大道224号', '赵巡维', '13800000324', '市供水公司',
      '#56统一重建-漏失监测', now(), now(), '0', '城南');
 
@@ -426,22 +426,22 @@ VALUES
 -- ------------------------------------------------------------
 SELECT '供水设备' AS item, count(*)::varchar AS value
   FROM app_user.equipment_base
- WHERE equipment_type_id IN (SELECT id FROM app_user.equipment_type WHERE parent_type_id = '1');
+ WHERE equipment_type_id IN (SELECT id FROM app_user.equipment_type WHERE parent_id = 1);
 SELECT '运行监测-流量' AS item, count(*)::varchar AS value
   FROM app_user.equipment_base e
- WHERE e.equipment_type_id = (SELECT id FROM app_user.equipment_type WHERE type_id = 'ultrasonic_flowmeter' AND parent_type_id = '1' LIMIT 1)
+ WHERE e.equipment_type_id = (SELECT id FROM app_user.equipment_type WHERE id = 11 AND parent_id = 1 LIMIT 1)
    AND (EXISTS (SELECT 1 FROM app_user.radar_data r WHERE r.device_code = e.equipment_code)
         OR EXISTS (SELECT 1 FROM app_user.telemetry_data t WHERE t.device_code = e.equipment_code))
 UNION ALL
 SELECT '运行监测-压力', count(DISTINCT e.equipment_code)::varchar
   FROM app_user.equipment_base e
   JOIN app_user.firefighting_pressure p ON p.telemetering_station = e.equipment_code
- WHERE e.equipment_type_id = (SELECT id FROM app_user.equipment_type WHERE type_id = 'pressure_gauge' AND parent_type_id = '1' LIMIT 1)
+ WHERE e.equipment_type_id = (SELECT id FROM app_user.equipment_type WHERE id = 12 AND parent_id = 1 LIMIT 1)
 UNION ALL
 SELECT '运行监测-漏失', count(DISTINCT e.equipment_code)::varchar
   FROM app_user.equipment_base e
   JOIN app_user.noise_info n ON n.encode = e.equipment_code
- WHERE e.equipment_type_id = (SELECT id FROM app_user.equipment_type WHERE type_id = 'leak_monitor' AND parent_type_id = '1' LIMIT 1);
+ WHERE e.equipment_type_id = (SELECT id FROM app_user.equipment_type WHERE id = 13 AND parent_id = 1 LIMIT 1);
 SELECT '报警-等级分布' AS item, string_agg(concat(lv::varchar, '级=', cnt::varchar), ' / ' ORDER BY lv) AS value
   FROM (SELECT alarm_level lv, count(*) cnt FROM app_user.alarm_data WHERE id LIKE 'wrb-alarm-%' GROUP BY alarm_level) t;
 SELECT '报警-类型分布' AS item, string_agg(concat(warning_type, '=', cnt::varchar), ' / ' ORDER BY warning_type) AS value
@@ -470,7 +470,7 @@ SELECT '死引用设备' AS item, count(*)::varchar AS value
 SELECT '供水设备缺测量值' AS item, count(*)::varchar AS value
   FROM app_user.equipment_base e
  WHERE e.equipment_type_id IN (SELECT id FROM app_user.equipment_type
-                                WHERE parent_type_id = '1'
+                                WHERE parent_id = 1
                                   AND type_id IN ('ultrasonic_flowmeter', 'pressure_gauge', 'leak_monitor'))
    AND NOT EXISTS (SELECT 1 FROM app_user.radar_data r WHERE r.device_code = e.equipment_code)
    AND NOT EXISTS (SELECT 1 FROM app_user.telemetry_data t WHERE t.device_code = e.equipment_code)

+ 11 - 12
pipe-network-service/sql/water_supply_threshold_test_data.sql

@@ -1,9 +1,8 @@
 -- ============================================================
 -- 供水管网 T5 阈值管理 测试数据脚本(KingbaseES)
 -- 说明:
---   1. 依赖 water_supply_monitoring_alarm_rebuild_test_data.sql 初始化后的供水监测设备;
---      设备类型一律以库中现值为权威:ultrasonic_flowmeter / pressure_gauge / leak_monitor,
---      父类型 parent_type_id=1(不再引用已不存在的旧监测类型标识)。
+--   1. 依赖 T4 已初始化的规范设备类型和供水监测设备:
+--      11 / 12 / 13,父类型 parent_id=1。
 --   2. 阈值测试主键使用 WS-TEST-THR- 前缀,可重复执行。
 --   3. 覆盖全天生效、分时生效、流量/压力/漏失三类传感器和筛选场景。
 -- ============================================================
@@ -20,10 +19,10 @@ DECLARE
 BEGIN
     SELECT count(*) INTO v_type_count
       FROM app_user.equipment_type
-     WHERE type_id IN ('ultrasonic_flowmeter', 'pressure_gauge', 'leak_monitor')
-       AND parent_type_id = '1';
+     WHERE type_id IN ('11', '12', '13')
+       AND parent_id = 1;
     IF v_type_count <> 3 THEN
-        RAISE EXCEPTION '缺少规范供水监测子类型:ultrasonic_flowmeter/pressure_gauge/leak_monitor 必须 parent_type_id=1';
+        RAISE EXCEPTION '缺少规范供水监测子类型:11/12/13 必须 parent_id=1';
     END IF;
 END $$;
 
@@ -31,22 +30,22 @@ INSERT INTO app_user.warning_threshold
     (id, device_code, warning_type, warning_code, min_value, max_value,
      period_start, period_end, remark, create_time, update_time)
 VALUES
-    ('WS-TEST-THR-FLOW-ALL', 'CN-GS-202609160201', '流量预警', 'WARN-T5-FLOW',
+    ('WS-TEST-THR-FLOW-ALL', 'CN-GS-202609020001', '流量预警', 'WARN-T5-FLOW',
      20.00, 40.00, NULL, NULL, '供水T5阈值测试-流量全天生效',
      now(), now()),
-    ('WS-TEST-THR-FLOW-PERIOD', 'CB-GS-202609160202', '流量预警', 'WARN-T5-FLOW',
+    ('WS-TEST-THR-FLOW-PERIOD', 'CN-GS-202609020002', '流量预警', 'WARN-T5-FLOW',
      25.00, 45.00, '08:00', '20:00', '供水T5阈值测试-流量分时生效',
      now(), now()),
-    ('WS-TEST-THR-PRESSURE-ALL', 'CN-GS-202609160211', '压力预警', 'WARN-T5-PRESSURE',
+    ('WS-TEST-THR-PRESSURE-ALL', 'CB-GS-202609020001', '压力预警', 'WARN-T5-PRESSURE',
      0.30, 0.60, NULL, NULL, '供水T5阈值测试-压力全天生效',
      now(), now()),
-    ('WS-TEST-THR-LEAK-PERIOD', 'CN-GS-202609160221', '漏失预警', 'WARN-T5-LEAK',
+    ('WS-TEST-THR-LEAK-PERIOD', 'TC-GS-202609020001', '漏失预警', 'WARN-T5-LEAK',
      8.00, 15.00, '08:00', '20:00', '供水T5阈值测试-漏失分时生效',
      now(), now());
 
 -- 快速核验:
 --   阈值分页 total=4;
---   设备编码筛选 CN-GS-202609160201 返回 1 条;
+--   设备编码筛选 CN-GS-202609020001 返回 1 条;
 --   预警分类筛选 流量预警 返回 2 条;
---   WARN-T5-FLOW 在 CB-GS-202609160202 上已存在 08:00-20:00,
+--   WARN-T5-FLOW 在 CN-GS-202609020002 上已存在 08:00-20:00,
 --   再次保存 19:00-21:00 应返回重叠时段错误。

+ 13 - 57
pipe-network-service/zksy-admin/src/main/java/com/zksy/web/controller/alarm/AlarmController.java

@@ -3,15 +3,11 @@ package com.zksy.web.controller.alarm;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.zksy.base.alarm.domain.AlarmData;
 import com.zksy.base.alarm.service.AlarmDataService;
-import com.zksy.base.domain.EquipmentBase;
-import com.zksy.ops.domain.WorkOrder;
-import com.zksy.base.mapper.EquipmentBaseMapper;
 import com.zksy.ops.service.WorkOrderService;
 import com.zksy.common.annotation.Anonymous;
 import com.zksy.common.annotation.Log;
 import com.zksy.common.core.domain.AjaxResult;
 import com.zksy.common.enums.BusinessType;
-import com.zksy.common.utils.SecurityUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
@@ -35,9 +31,6 @@ public class AlarmController {
     @Autowired
     private WorkOrderService businessWorkOrderService;
 
-    @Autowired
-    private EquipmentBaseMapper equipmentBaseMapper;
-
     @GetMapping("/findByPage")
     @ApiOperation("报警分页查询")
     @Anonymous
@@ -62,58 +55,21 @@ public class AlarmController {
             return AjaxResult.error("报警信息不存在");
         }
 
-        WorkOrder existingOrder = businessWorkOrderService.lambdaQuery()
-                .eq(WorkOrder::getAlarmId, alarmId)
-                .orderByDesc(WorkOrder::getOrderId)
-                .last("LIMIT 1")
-                .one();
-        if (existingOrder != null) {
-            // 历史数据可能已经建单但未同步 alarm_status,审核接口按幂等成功处理。
-            if (!Integer.valueOf(1).equals(alarm.getAlarmStatus())) {
-                alarm.setAlarmStatus(1);
-                alarm.setHandleTime(LocalDateTime.now());
-                alarm.setHandleUser(SecurityUtils.getUsername());
-                alarm.setHandleRemark("报警已审核,关联工单已存在:" + existingOrder.getOrderId());
-                alarm.setUpdateTime(LocalDateTime.now());
-                service.updateById(alarm);
-            }
-            return AjaxResult.success("该报警已审核,关联工单已存在", existingOrder.getOrderId());
-        }
-
-        EquipmentBase equipment = alarm.getDeviceCode() == null ? null
-                : equipmentBaseMapper.selectOne(new com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper<EquipmentBase>()
-                        .eq(EquipmentBase::getEquipmentCode, alarm.getDeviceCode())
-                        .last("LIMIT 1"));
-        WorkOrder order = new WorkOrder();
-        order.setAlarmId(alarmId);
-        order.setDeviceId(equipment != null ? equipment.getEquipmentId() : alarm.getDeviceCode());
-        order.setDeviceCode(alarm.getDeviceCode());
         Object orderLevel = body.get("orderLevel");
-        order.setOrderLevel(orderLevel == null ? mapAlarmLevel(alarm.getAlarmLevel()) : Integer.valueOf(orderLevel.toString()));
         Object orderDesc = body.get("orderDesc");
-        order.setOrderDesc(orderDesc == null || orderDesc.toString().trim().isEmpty()
-                ? buildOrderDesc(alarm) : orderDesc.toString());
-        Long orderId = businessWorkOrderService.createWorkOrder(order);
-
-        alarm.setAlarmStatus(1);
-        alarm.setHandleTime(LocalDateTime.now());
-        alarm.setHandleUser(SecurityUtils.getUsername());
-        alarm.setHandleRemark("审核通过,已上传工单:" + orderId);
-        alarm.setUpdateTime(LocalDateTime.now());
-        service.updateById(alarm);
-        return AjaxResult.success("审核通过,工单创建成功", orderId);
-    }
-
-    private Integer mapAlarmLevel(Integer alarmLevel) {
-        if (alarmLevel == null || alarmLevel == 1) return 0;
-        if (alarmLevel == 4) return 2;
-        return 1;
-    }
-
-    private String buildOrderDesc(AlarmData alarm) {
-        String value = alarm.getActualValue() == null ? "-" : alarm.getActualValue().toPlainString();
-        return (alarm.getWarningType() == null ? "监测报警" : alarm.getWarningType())
-                + ",当前值:" + value + ",请现场核实处理";
+        Integer level = null;
+        if (orderLevel != null && !orderLevel.toString().trim().isEmpty()) {
+            try {
+                level = Integer.valueOf(orderLevel.toString());
+            } catch (NumberFormatException e) {
+                return AjaxResult.error("工单优先级格式不正确");
+            }
+        }
+        Long orderId = businessWorkOrderService.createWorkOrderFromAlarm(
+                alarmId,
+                level,
+                orderDesc == null ? null : orderDesc.toString());
+        return AjaxResult.success("报警已关联工单", orderId);
     }
 
     @GetMapping("/getById/{id}")

+ 5 - 5
pipe-network-service/zksy-admin/src/main/java/com/zksy/web/controller/base/EquipmentTypeController.java

@@ -28,7 +28,7 @@ public class EquipmentTypeController {
     @GetMapping("/getById/{id}")
     @ApiOperation(value = "设备类别搜索getById")
     @Anonymous
-    public AjaxResult getById(@PathVariable String id) {
+    public AjaxResult getById(@PathVariable Integer id) {
         EquipmentType equipmentType = service.getById(id);
         if(equipmentType==null){
             return AjaxResult.error("该设备类别不存在");
@@ -40,9 +40,9 @@ public class EquipmentTypeController {
     @ApiOperation(value = "设备类别分页")
     @Anonymous
     public Page findByPage(long pageNum, long pageSize,
-                           @RequestParam(required = false)String typeId,
+                           @RequestParam(required = false)Integer typeId,
                            @RequestParam(required = false)String typeName,
-                           @RequestParam(required = false)String parentTypeId) throws Exception {
+                           @RequestParam(required = false)Integer parentTypeId) throws Exception {
         return service.findByPage(pageNum, pageSize, typeId,typeName,parentTypeId);
     }
 
@@ -88,7 +88,7 @@ public class EquipmentTypeController {
     @DeleteMapping("/deleteById")
     @ApiOperation(value = "设备类别删除")
     @Log(title = "删除设备类别", businessType = BusinessType.DELETE)
-    public AjaxResult deleteById(String id) {
+    public AjaxResult deleteById(Integer id) {
         boolean deleted = service.removeWithCheck(id);
         return deleted ? AjaxResult.success("删除成功",deleted)
                 : AjaxResult.error("删除失败",deleted);
@@ -97,7 +97,7 @@ public class EquipmentTypeController {
     @DeleteMapping("/deleteBatchById")
     @ApiOperation(value = "设备类别批量删除")
     @Log(title = "设备类别批量删除", businessType = BusinessType.DELETE)
-    public AjaxResult deleteBatchById(@RequestParam List<String> ids) {
+    public AjaxResult deleteBatchById(@RequestParam List<Integer> ids) {
         boolean deleted = service.removeBatchWithCheck(ids);
         return deleted ? AjaxResult.success("删除成功",deleted)
                 : AjaxResult.error("删除失败",deleted);

+ 5 - 5
pipe-network-service/zksy-admin/src/main/java/com/zksy/web/controller/drainage/DrainageEquipmentController.java

@@ -147,16 +147,16 @@ public class DrainageEquipmentController {
     public Page<EquipmentType> typePage(
             @ApiParam("页码") @RequestParam(defaultValue = "1") long pageNum,
             @ApiParam("每页数量") @RequestParam(defaultValue = "10") long pageSize,
-            @ApiParam("类别ID") @RequestParam(required = false) String typeId,
+            @ApiParam("类别ID") @RequestParam(required = false) Integer typeId,
             @ApiParam("类别名称") @RequestParam(required = false) String typeName,
-            @ApiParam("父类别ID") @RequestParam(required = false) String parentTypeId) {
+            @ApiParam("父类别ID") @RequestParam(required = false) Integer parentTypeId) {
         return equipmentTypeService.findByPage(pageNum, pageSize, typeId, typeName, parentTypeId);
     }
 
     @Anonymous
     @GetMapping("/type/{id}")
     @ApiOperation(value = "查询设备类别详情")
-    public AjaxResult typeGetById(@PathVariable String id) {
+    public AjaxResult typeGetById(@PathVariable Integer id) {
         EquipmentType entity = equipmentTypeService.getById(id);
         if (entity == null) {
             return AjaxResult.error("该设备类别不存在");
@@ -196,7 +196,7 @@ public class DrainageEquipmentController {
     @ApiOperation(value = "删除设备类别")
     @Log(title = "删除设备类别", businessType = BusinessType.DELETE)
     @Transactional
-    public AjaxResult typeDelete(@PathVariable String id) {
+    public AjaxResult typeDelete(@PathVariable Integer id) {
         boolean deleted = equipmentTypeService.removeWithCheck(id);
         return deleted ? AjaxResult.success("删除成功") : AjaxResult.error("删除失败");
     }
@@ -206,7 +206,7 @@ public class DrainageEquipmentController {
     @ApiOperation(value = "批量删除设备类别")
     @Log(title = "批量删除设备类别", businessType = BusinessType.DELETE)
     @Transactional
-    public AjaxResult typeDeleteBatch(@RequestBody List<String> ids) {
+    public AjaxResult typeDeleteBatch(@RequestBody List<Integer> ids) {
         boolean deleted = equipmentTypeService.removeBatchWithCheck(ids);
         return deleted ? AjaxResult.success("批量删除成功") : AjaxResult.error("批量删除失败");
     }

+ 4 - 4
pipe-network-service/zksy-admin/src/main/java/com/zksy/web/controller/drainage/DrainageEquipmentTypeController.java

@@ -34,10 +34,10 @@ public class DrainageEquipmentTypeController {
     @GetMapping("/list")
     @ApiOperation(value = "查询设备类型列表(按父类型ID过滤)")
     public AjaxResult list(
-            @ApiParam("父类型ID(如2为排水子类型)") @RequestParam(required = false) String parentTypeId) {
+            @ApiParam("父类型ID(如2为排水子类型)") @RequestParam(required = false) Integer parentTypeId) {
         LambdaQueryWrapper<EquipmentType> wrapper = new LambdaQueryWrapper<>();
-        if (parentTypeId != null && !parentTypeId.isEmpty()) {
-            wrapper.eq(EquipmentType::getParentTypeId, parentTypeId);
+        if (parentTypeId != null) {
+            wrapper.eq(EquipmentType::getParentId, parentTypeId);
         }
         wrapper.orderByAsc(EquipmentType::getId);
         List<EquipmentType> list = equipmentTypeService.list(wrapper);
@@ -47,7 +47,7 @@ public class DrainageEquipmentTypeController {
     @Anonymous
     @GetMapping("/{id}")
     @ApiOperation(value = "根据ID查询设备类型")
-    public AjaxResult getById(@PathVariable String id) {
+    public AjaxResult getById(@PathVariable Integer id) {
         EquipmentType entity = equipmentTypeService.getById(id);
         if (entity == null) {
             return AjaxResult.error("该设备类型不存在");

+ 72 - 10
pipe-network-service/zksy-admin/src/main/java/com/zksy/web/controller/gasbasic/GasAlarmController.java

@@ -6,8 +6,13 @@ import com.zksy.base.alarm.domain.AlarmData;
 import com.zksy.base.alarm.service.AlarmDataService;
 import com.zksy.base.domain.EquipmentBase;
 import com.zksy.base.domain.EquipmentType;
+import com.zksy.base.enums.EquipmentTypeEnum;
 import com.zksy.base.mapper.EquipmentBaseMapper;
 import com.zksy.base.mapper.EquipmentTypeMapper;
+import com.zksy.ops.domain.WorkOrder;
+import com.zksy.ops.enums.WorkOrderStatusEnum;
+import com.zksy.ops.mapper.WorkOrderMapper;
+import com.zksy.ops.service.WorkOrderService;
 import com.zksy.base.constant.GasEquipmentTypeEnum;
 import com.zksy.common.annotation.Anonymous;
 import com.zksy.common.core.domain.AjaxResult;
@@ -32,12 +37,17 @@ public class GasAlarmController {
     @Autowired private AlarmDataService alarmDataService;
     @Autowired private EquipmentTypeMapper equipmentTypeMapper;
     @Autowired private EquipmentBaseMapper equipmentBaseMapper;
+    @Autowired private WorkOrderService workOrderService;
+    @Autowired private WorkOrderMapper workOrderMapper;
 
-    /** 获取燃气探测器设备编码集合 (type_id = gas_detector) */
+    /** 获取燃气探测器设备编码集合(可燃气体检测仪 id=EquipmentTypeEnum.COMBUSTIBLE_GAS_DETECTOR) */
     private Set<String> getDetectorCodes() {
         List<EquipmentType> types = equipmentTypeMapper.selectList(
-                new LambdaQueryWrapper<EquipmentType>().eq(EquipmentType::getTypeId, GasEquipmentTypeEnum.GAS_DETECTOR));
-        Set<String> detectorTypeIds = types.stream().map(EquipmentType::getId).collect(Collectors.toSet());
+                new LambdaQueryWrapper<EquipmentType>()
+                        .eq(EquipmentType::getId, EquipmentTypeEnum.COMBUSTIBLE_GAS_DETECTOR.getId()));
+        Set<String> detectorTypeIds = types.stream()
+                .map(type -> String.valueOf(type.getId()))
+                .collect(Collectors.toSet());
         List<EquipmentBase> eqs = detectorTypeIds.isEmpty()
                 ? Collections.emptyList()
                 : equipmentBaseMapper.selectList(
@@ -53,7 +63,7 @@ public class GasAlarmController {
 
     private static final java.time.format.DateTimeFormatter FMT = java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
 
-    private Map<String, Object> toVo(AlarmData a, Map<String, EquipmentBase> eqMap) {
+    private Map<String, Object> toVo(AlarmData a, Map<String, EquipmentBase> eqMap, WorkOrder order) {
         EquipmentBase eq = eqMap.get(a.getDeviceCode());
         Map<String, Object> m = new LinkedHashMap<>();
         m.put("id", a.getId());
@@ -70,9 +80,25 @@ public class GasAlarmController {
         m.put("resolveTime", a.getHandleTime() != null ? a.getHandleTime().format(FMT) : null);
         m.put("handler", a.getHandleUser());
         m.put("remark", a.getHandleRemark());
+        m.put("hasWorkOrder", order != null);
+        m.put("workOrderId", order == null ? null : order.getOrderId());
+        m.put("workOrderStatus", order == null ? null : order.getOrderStatus());
+        m.put("workOrderStatusText", order == null ? null : WorkOrderStatusEnum.getDescByCode(order.getOrderStatus()));
         return m;
     }
 
+    private Map<String, WorkOrder> loadWorkOrderMap(Collection<String> alarmIds) {
+        if (alarmIds == null || alarmIds.isEmpty()) {
+            return Collections.emptyMap();
+        }
+        List<WorkOrder> orders = workOrderMapper.selectList(new LambdaQueryWrapper<WorkOrder>()
+                .in(WorkOrder::getAlarmId, alarmIds)
+                .orderByDesc(WorkOrder::getOrderId));
+        return orders.stream()
+                .filter(order -> order.getAlarmId() != null)
+                .collect(Collectors.toMap(WorkOrder::getAlarmId, order -> order, (first, ignored) -> first));
+    }
+
     /** 获取所有探测器设备(去重),含最新报警数据 */
     @GetMapping("/equipment")
     @ApiOperation("燃气探测器设备列表(含最新报警值)")
@@ -87,6 +113,9 @@ public class GasAlarmController {
                         .orderByDesc(AlarmData::getAlarmTime));
         Map<String, AlarmData> latestMap = allAlarms.stream()
                 .collect(Collectors.toMap(AlarmData::getDeviceCode, a -> a, (a, b) -> a));
+        // 设备列表只展示每个设备最新报警的工单状态,避免把全部历史报警 ID 拼成大 IN 条件。
+        Map<String, WorkOrder> orderMap = loadWorkOrderMap(latestMap.values().stream()
+                .map(AlarmData::getId).filter(Objects::nonNull).collect(Collectors.toSet()));
 
         List<Map<String, Object>> rows = new ArrayList<>();
         for (EquipmentBase eq : eqs) {
@@ -101,6 +130,12 @@ public class GasAlarmController {
             m.put("latestThreshold", latest != null ? latest.getMaxValue() : null);
             m.put("latestAlarmTime", latest != null && latest.getAlarmTime() != null ? latest.getAlarmTime().format(FMT) : null);
             m.put("latestAlarmLevel", latest != null ? latest.getAlarmLevel() : null);
+            WorkOrder order = latest == null ? null : orderMap.get(latest.getId());
+            m.put("latestAlarmId", latest == null ? null : latest.getId());
+            m.put("latestHasWorkOrder", order != null);
+            m.put("latestWorkOrderId", order == null ? null : order.getOrderId());
+            m.put("latestWorkOrderStatus", order == null ? null : order.getOrderStatus());
+            m.put("latestWorkOrderStatusText", order == null ? null : WorkOrderStatusEnum.getDescByCode(order.getOrderStatus()));
             rows.add(m);
         }
         return AjaxResult.success(rows);
@@ -127,7 +162,11 @@ public class GasAlarmController {
         qw.orderByDesc(AlarmData::getAlarmTime);
         Page<AlarmData> page = alarmDataService.page(new Page<>(pageNum, pageSize), qw);
         Map<String, EquipmentBase> eqMap = loadEquipMap();
-        List<Map<String, Object>> rows = page.getRecords().stream().map(a -> toVo(a, eqMap)).collect(Collectors.toList());
+        Map<String, WorkOrder> orderMap = loadWorkOrderMap(page.getRecords().stream()
+                .map(AlarmData::getId).filter(Objects::nonNull).collect(Collectors.toSet()));
+        List<Map<String, Object>> rows = page.getRecords().stream()
+                .map(a -> toVo(a, eqMap, orderMap.get(a.getId())))
+                .collect(Collectors.toList());
         Map<String, Object> result = new LinkedHashMap<>();
         result.put("records", rows);
         result.put("total", page.getTotal());
@@ -161,21 +200,44 @@ public class GasAlarmController {
     @PutMapping("/resolve/{id}")
     @ApiOperation("标记已处理")
     @Anonymous
-    public AjaxResult resolve(@PathVariable String id) {
+    public AjaxResult resolve(@PathVariable String id,
+                              @RequestParam(required = false) String handleRemark) {
         AlarmData e = alarmDataService.getById(id);
         if (e == null) return AjaxResult.error("记录不存在");
         e.setAlarmStatus(1);
         e.setHandleTime(java.time.LocalDateTime.now());
         e.setHandleUser("当前用户");
+        e.setHandleRemark(handleRemark == null || handleRemark.trim().isEmpty() ? "标记已处理" : handleRemark.trim());
         alarmDataService.updateById(e);
         return AjaxResult.success("已处理");
     }
 
     @PostMapping("/dispatch/{id}")
-    @ApiOperation("派发工单(伪)")
+    @ApiOperation("将可燃气体报警转为运维工单")
     @Anonymous
-    public AjaxResult dispatch(@PathVariable String id) {
-        // TODO: 后续调用工单系统接口实现真正的派单逻辑
-        return AjaxResult.success("工单已派发(伪)");
+    public AjaxResult dispatch(@PathVariable String id,
+                               @RequestBody(required = false) Map<String, Object> body) {
+        try {
+            Integer orderLevel = parseOrderLevel(body);
+            String orderDesc = body == null || body.get("orderDesc") == null
+                    ? null : body.get("orderDesc").toString();
+            Long orderId = workOrderService.createWorkOrderFromAlarm(id, orderLevel, orderDesc);
+            return AjaxResult.success("工单派发成功", orderId);
+        } catch (Exception e) {
+            log.error("可燃气体报警转工单失败:alarmId={}", id, e);
+            return AjaxResult.error("工单派发失败:" + e.getMessage());
+        }
+    }
+
+    private Integer parseOrderLevel(Map<String, Object> body) {
+        if (body == null || body.get("orderLevel") == null
+                || body.get("orderLevel").toString().trim().isEmpty()) {
+            return null;
+        }
+        try {
+            return Integer.valueOf(body.get("orderLevel").toString());
+        } catch (NumberFormatException e) {
+            throw new IllegalArgumentException("工单优先级格式不正确");
+        }
     }
 }

+ 1 - 1
pipe-network-service/zksy-admin/src/main/java/com/zksy/web/controller/gasbasic/GasPipePointController.java

@@ -127,7 +127,7 @@ public class GasPipePointController {
                     .collect(Collectors.toList());
             Map<String, String> typeNameMap = CollUtil.isEmpty(typeIds) ? Map.of() :
                     equipmentTypeMapper.selectBatchIds(typeIds).stream()
-                            .collect(Collectors.toMap(EquipmentType::getId, EquipmentType::getTypeName, (a, b) -> a));
+                            .collect(Collectors.toMap(type -> String.valueOf(type.getId()), EquipmentType::getTypeName, (a, b) -> a));
 
             for (GasPipePointDeviceRel rel : list) {
                 if (StrUtil.isBlank(rel.getEquipmentName()) || StrUtil.isBlank(rel.getEquipmentType())) {

+ 34 - 1
pipe-network-service/zksy-admin/src/main/java/com/zksy/web/controller/gasbasic/GisController.java

@@ -6,6 +6,7 @@ import com.zksy.base.domain.PipeNetworkBase;
 import com.zksy.base.service.EquipmentBaseService;
 import com.zksy.base.service.ManholeBaseService;
 import com.zksy.base.service.PipeNetworkBaseService;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.zksy.common.annotation.Anonymous;
 import com.zksy.common.core.domain.AjaxResult;
 import io.swagger.annotations.Api;
@@ -36,7 +37,35 @@ public class GisController {
     @Anonymous
     public AjaxResult getPipeLines(@RequestParam(required = false) String networkType,
                                     @RequestParam(required = false) String status) {
-        List<PipeNetworkBase> list = pipeNetworkService.list();
+        LambdaQueryWrapper<PipeNetworkBase> query = new LambdaQueryWrapper<>();
+        if (networkType != null && !networkType.trim().isEmpty()) {
+            String type = networkType.trim();
+            // 设施类型标准编码:0-燃气、1-排水、2-供水;兼容历史页面传入的 gas/drainage/water。
+            if ("0".equals(type) || "gas".equalsIgnoreCase(type)) {
+                query.and(w -> w.eq(PipeNetworkBase::getNetworkType, "0")
+                        .or().eq(PipeNetworkBase::getNetworkType, "gas")
+                        .or().eq(PipeNetworkBase::getNetworkType, "GAS")
+                        .or().eq(PipeNetworkBase::getNetworkType, "燃气")
+                        .or().eq(PipeNetworkBase::getNetworkType, "燃气管网"));
+            } else if ("1".equals(type) || "drainage".equalsIgnoreCase(type)) {
+                query.and(w -> w.eq(PipeNetworkBase::getNetworkType, "1")
+                        .or().eq(PipeNetworkBase::getNetworkType, "drainage")
+                        .or().eq(PipeNetworkBase::getNetworkType, "DRAINAGE")
+                        .or().eq(PipeNetworkBase::getNetworkType, "排水"));
+            } else if ("2".equals(type) || "water".equalsIgnoreCase(type) || "water_supply".equalsIgnoreCase(type)) {
+                query.and(w -> w.eq(PipeNetworkBase::getNetworkType, "2")
+                        .or().eq(PipeNetworkBase::getNetworkType, "water")
+                        .or().eq(PipeNetworkBase::getNetworkType, "WATER")
+                        .or().eq(PipeNetworkBase::getNetworkType, "WATER_SUPPLY")
+                        .or().eq(PipeNetworkBase::getNetworkType, "供水"));
+            } else {
+                query.eq(PipeNetworkBase::getNetworkType, type);
+            }
+        }
+        if (status != null && !status.trim().isEmpty()) {
+            query.eq(PipeNetworkBase::getStatus, status.trim());
+        }
+        List<PipeNetworkBase> list = pipeNetworkService.list(query);
         List<Map<String, Object>> features = new ArrayList<>();
         for (PipeNetworkBase pipe : list) {
             // 检查起终点是否完整
@@ -53,8 +82,12 @@ public class GisController {
             props.put("networkName", pipe.getNetworkName());
             props.put("networkType", pipe.getNetworkType());
             props.put("networkCode", pipe.getNetworkCode());
+            props.put("networkLevel", pipe.getNetworkLevel());
             props.put("status", pipe.getStatus());
             props.put("material", pipe.getMaterial());
+            props.put("location", pipe.getLocation());
+            props.put("length", pipe.getLength());
+            props.put("diameter", pipe.getDiameter());
             props.put("startLongitude", pipe.getStartLongitude());
             props.put("startLatitude", pipe.getStartLatitude());
             props.put("endLongitude", pipe.getEndLongitude());

+ 74 - 8
pipe-network-service/zksy-admin/src/main/java/com/zksy/web/controller/gasbasic/PressureAlarmController.java

@@ -7,12 +7,17 @@ import com.zksy.base.alarm.service.AlarmDataService;
 import com.zksy.base.constant.GasEquipmentTypeEnum;
 import com.zksy.base.domain.EquipmentBase;
 import com.zksy.base.domain.EquipmentType;
+import com.zksy.base.enums.EquipmentTypeEnum;
 import com.zksy.base.mapper.EquipmentBaseMapper;
 import com.zksy.base.mapper.EquipmentTypeMapper;
+import com.zksy.ops.domain.WorkOrder;
+import com.zksy.ops.enums.WorkOrderStatusEnum;
+import com.zksy.ops.mapper.WorkOrderMapper;
 import com.zksy.common.annotation.Anonymous;
 import com.zksy.common.core.domain.AjaxResult;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
@@ -23,6 +28,7 @@ import java.util.stream.Collectors;
 /**
  * 管线压力异常报警
  */
+@Slf4j
 @RestController
 @RequestMapping("/api/pressure-alarm")
 @Api(tags = "燃气监测-压力报警")
@@ -31,13 +37,20 @@ public class PressureAlarmController {
     @Autowired private AlarmDataService alarmDataService;
     @Autowired private EquipmentTypeMapper equipmentTypeMapper;
     @Autowired private EquipmentBaseMapper equipmentBaseMapper;
+    @Autowired private com.zksy.ops.service.WorkOrderService workOrderService;
+    @Autowired private WorkOrderMapper workOrderMapper;
 
     private static final DateTimeFormatter FMT = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
 
+    /** 获取燃气压力类设备编码集合:燃气类型树下名称含“压力”的类型 */
     private Set<String> getPressureCodes() {
         List<EquipmentType> types = equipmentTypeMapper.selectList(
-                new LambdaQueryWrapper<EquipmentType>().eq(EquipmentType::getTypeId, GasEquipmentTypeEnum.PRESSURE));
-        Set<String> typeIds = types.stream().map(EquipmentType::getId).collect(Collectors.toSet());
+                new LambdaQueryWrapper<EquipmentType>()
+                        .eq(EquipmentType::getParentId, EquipmentTypeEnum.ROOT_GAS_DEVICE.getId())
+                        .like(EquipmentType::getTypeName, "压力"));
+        Set<String> typeIds = types.stream()
+                .map(type -> String.valueOf(type.getId()))
+                .collect(Collectors.toSet());
         if (typeIds.isEmpty()) return Collections.emptySet();
         return equipmentBaseMapper.selectList(
                 new LambdaQueryWrapper<EquipmentBase>().in(EquipmentBase::getEquipmentTypeId, typeIds))
@@ -49,7 +62,7 @@ public class PressureAlarmController {
                 .collect(Collectors.toMap(EquipmentBase::getEquipmentCode, e -> e, (a, b) -> a));
     }
 
-    private Map<String, Object> toVo(AlarmData a, Map<String, EquipmentBase> eqMap) {
+    private Map<String, Object> toVo(AlarmData a, Map<String, EquipmentBase> eqMap, WorkOrder order) {
         EquipmentBase eq = eqMap.get(a.getDeviceCode());
         Map<String, Object> m = new LinkedHashMap<>();
         m.put("id", a.getId()); m.put("deviceCode", a.getDeviceCode());
@@ -62,9 +75,25 @@ public class PressureAlarmController {
         m.put("statusText", a.getAlarmStatus() != null && a.getAlarmStatus() == 0 ? "待处理" : "已处理");
         m.put("resolveTime", a.getHandleTime() != null ? a.getHandleTime().format(FMT) : null);
         m.put("handler", a.getHandleUser()); m.put("remark", a.getHandleRemark());
+        m.put("hasWorkOrder", order != null);
+        m.put("workOrderId", order == null ? null : order.getOrderId());
+        m.put("workOrderStatus", order == null ? null : order.getOrderStatus());
+        m.put("workOrderStatusText", order == null ? null : WorkOrderStatusEnum.getDescByCode(order.getOrderStatus()));
         return m;
     }
 
+    private Map<String, WorkOrder> loadWorkOrderMap(Collection<String> alarmIds) {
+        if (alarmIds == null || alarmIds.isEmpty()) {
+            return Collections.emptyMap();
+        }
+        List<WorkOrder> orders = workOrderMapper.selectList(new LambdaQueryWrapper<WorkOrder>()
+                .in(WorkOrder::getAlarmId, alarmIds)
+                .orderByDesc(WorkOrder::getOrderId));
+        return orders.stream()
+                .filter(order -> order.getAlarmId() != null)
+                .collect(Collectors.toMap(WorkOrder::getAlarmId, order -> order, (first, ignored) -> first));
+    }
+
     @GetMapping("/equipment")
     @ApiOperation("压力设备列表(含最新报警值)") @Anonymous
     public AjaxResult equipment() {
@@ -76,6 +105,9 @@ public class PressureAlarmController {
                         .orderByDesc(AlarmData::getAlarmTime));
         Map<String, AlarmData> latestMap = all.stream()
                 .collect(Collectors.toMap(AlarmData::getDeviceCode, a -> a, (a, b) -> a));
+        // 设备列表只展示每个设备最新报警的工单状态,避免把全部历史报警 ID 拼成大 IN 条件。
+        Map<String, WorkOrder> orderMap = loadWorkOrderMap(latestMap.values().stream()
+                .map(AlarmData::getId).filter(Objects::nonNull).collect(Collectors.toSet()));
         List<Map<String, Object>> rows = new ArrayList<>();
         for (EquipmentBase eq : eqs) {
             AlarmData latest = latestMap.get(eq.getEquipmentCode());
@@ -87,6 +119,12 @@ public class PressureAlarmController {
             m.put("latestThreshold", latest != null ? latest.getMaxValue() : null);
             m.put("latestAlarmTime", latest != null && latest.getAlarmTime() != null ? latest.getAlarmTime().format(FMT) : null);
             m.put("latestAlarmLevel", latest != null ? latest.getAlarmLevel() : null);
+            m.put("latestAlarmId", latest == null ? null : latest.getId());
+            WorkOrder order = latest == null ? null : orderMap.get(latest.getId());
+            m.put("latestHasWorkOrder", order != null);
+            m.put("latestWorkOrderId", order == null ? null : order.getOrderId());
+            m.put("latestWorkOrderStatus", order == null ? null : order.getOrderStatus());
+            m.put("latestWorkOrderStatusText", order == null ? null : WorkOrderStatusEnum.getDescByCode(order.getOrderStatus()));
             rows.add(m);
         }
         return AjaxResult.success(rows);
@@ -112,7 +150,11 @@ public class PressureAlarmController {
         qw.orderByDesc(AlarmData::getAlarmTime);
         Page<AlarmData> page = alarmDataService.page(new Page<>(pageNum, pageSize), qw);
         Map<String, EquipmentBase> eqMap = loadEquipMap();
-        List<Map<String, Object>> rows = page.getRecords().stream().map(a -> toVo(a, eqMap)).collect(Collectors.toList());
+        Map<String, WorkOrder> orderMap = loadWorkOrderMap(page.getRecords().stream()
+                .map(AlarmData::getId).filter(Objects::nonNull).collect(Collectors.toSet()));
+        List<Map<String, Object>> rows = page.getRecords().stream()
+                .map(a -> toVo(a, eqMap, orderMap.get(a.getId())))
+                .collect(Collectors.toList());
         Map<String, Object> result = new LinkedHashMap<>();
         result.put("records", rows); result.put("total", page.getTotal());
         return AjaxResult.success(result);
@@ -135,16 +177,40 @@ public class PressureAlarmController {
     }
 
     @PutMapping("/resolve/{id}") @ApiOperation("标记已处理") @Anonymous
-    public AjaxResult resolve(@PathVariable String id) {
+    public AjaxResult resolve(@PathVariable String id,
+                              @RequestParam(required = false) String handleRemark) {
         AlarmData e = alarmDataService.getById(id);
         if (e == null) return AjaxResult.error("记录不存在");
         e.setAlarmStatus(1); e.setHandleTime(java.time.LocalDateTime.now()); e.setHandleUser("当前用户");
+        e.setHandleRemark(handleRemark == null || handleRemark.trim().isEmpty() ? "标记已处理" : handleRemark.trim());
         alarmDataService.updateById(e);
         return AjaxResult.success("已处理");
     }
 
-    @PostMapping("/dispatch/{id}") @ApiOperation("派发工单(伪)") @Anonymous
-    public AjaxResult dispatch(@PathVariable String id) {
-        return AjaxResult.success("工单已派发(伪)");
+    @PostMapping("/dispatch/{id}") @ApiOperation("将管线压力报警转为运维工单") @Anonymous
+    public AjaxResult dispatch(@PathVariable String id,
+                               @RequestBody(required = false) Map<String, Object> body) {
+        try {
+            Integer orderLevel = parseOrderLevel(body);
+            String orderDesc = body == null || body.get("orderDesc") == null
+                    ? null : body.get("orderDesc").toString();
+            Long orderId = workOrderService.createWorkOrderFromAlarm(id, orderLevel, orderDesc);
+            return AjaxResult.success("工单派发成功", orderId);
+        } catch (Exception e) {
+            log.error("管线压力报警转工单失败:alarmId={}", id, e);
+            return AjaxResult.error("工单派发失败:" + e.getMessage());
+        }
+    }
+
+    private Integer parseOrderLevel(Map<String, Object> body) {
+        if (body == null || body.get("orderLevel") == null
+                || body.get("orderLevel").toString().trim().isEmpty()) {
+            return null;
+        }
+        try {
+            return Integer.valueOf(body.get("orderLevel").toString());
+        } catch (NumberFormatException e) {
+            throw new IllegalArgumentException("工单优先级格式不正确");
+        }
     }
 }

+ 2 - 1
pipe-network-service/zksy-admin/src/main/java/com/zksy/web/controller/manhole/ManholeDeviceController.java

@@ -399,7 +399,8 @@ public class ManholeDeviceController extends BaseController
             List<EquipmentType> typeList = equipmentTypeService.list(
                     new LambdaQueryWrapper<EquipmentType>().in(EquipmentType::getId, typeIds));
             if (CollUtil.isNotEmpty(typeList)) {
-                typeMap = typeList.stream().collect(Collectors.toMap(EquipmentType::getId, t -> t, (a, b) -> b));
+                typeMap = typeList.stream()
+                        .collect(Collectors.toMap(type -> String.valueOf(type.getId()), t -> t, (a, b) -> b));
             }
         }
         // 4. 逐个查询最新监测数据(按设备类型路由)

+ 1 - 1
pipe-network-service/zksy-system/src/main/java/com/zksy/WaterSupply/MonitorAlarm/service/impl/WaterSupplyAlarmServiceImpl.java

@@ -579,7 +579,7 @@ public class WaterSupplyAlarmServiceImpl implements IWaterSupplyAlarmService {
                 .collect(Collectors.toList());
         Map<String, String> typeNames = typeIds.isEmpty() ? Collections.emptyMap()
                 : equipmentTypeMapper.selectBatchIds(typeIds).stream()
-                .collect(Collectors.toMap(EquipmentType::getId, EquipmentType::getTypeName, (a, b) -> a));
+                .collect(Collectors.toMap(type -> String.valueOf(type.getId()), EquipmentType::getTypeName, (a, b) -> a));
         return buildRatio(rows, row -> {
             EquipmentBase eq = row.getDeviceCode() == null ? null : eqMap.get(row.getDeviceCode());
             return eq == null ? null : typeNames.get(eq.getEquipmentTypeId());

+ 4 - 4
pipe-network-service/zksy-system/src/main/java/com/zksy/WaterSupply/importing/WaterDeviceLedgerImportService.java

@@ -90,7 +90,7 @@ public class WaterDeviceLedgerImportService {
     private String resolveWaterTypeId(String typeName) {
         List<EquipmentType> allTypes = equipmentTypeMapper.selectList(Wrappers.emptyWrapper());
         Map<String, EquipmentType> typesById = allTypes.stream()
-                .collect(Collectors.toMap(EquipmentType::getId, Function.identity(), (left, right) -> left));
+                .collect(Collectors.toMap(type -> String.valueOf(type.getId()), Function.identity(), (left, right) -> left));
         List<EquipmentType> matches = allTypes.stream()
                 .filter(type -> typeName.equals(type.getTypeName()))
                 .collect(Collectors.toList());
@@ -100,7 +100,7 @@ public class WaterDeviceLedgerImportService {
 
         Set<String> waterTypeIds = matches.stream()
                 .filter(type -> isWaterType(type, typesById))
-                .map(EquipmentType::getId)
+                .map(type -> String.valueOf(type.getId()))
                 .collect(Collectors.toSet());
         if (waterTypeIds.isEmpty()) {
             throw new IllegalArgumentException("导入失败:设备类型不属于供水:" + typeName);
@@ -116,10 +116,10 @@ public class WaterDeviceLedgerImportService {
         int guard = 0;
         while (cursor != null && guard++ <= typesById.size()) {
             if (WATER_TOP_TYPE_NAME.equals(cursor.getTypeName())
-                    && "0".equals(cursor.getParentTypeId())) {
+                    && Integer.valueOf(0).equals(cursor.getParentId())) {
                 return true;
             }
-            cursor = typesById.get(cursor.getParentTypeId());
+            cursor = typesById.get(String.valueOf(cursor.getParentId()));
         }
         return false;
     }

+ 1 - 1
pipe-network-service/zksy-system/src/main/java/com/zksy/base/alarm/service/impl/WarningThresholdServiceImpl.java

@@ -119,7 +119,7 @@ public class WarningThresholdServiceImpl extends ServiceImpl<WarningThresholdMap
                 .filter(v -> v != null && !v.isEmpty()).collect(Collectors.toSet());
         if (!typeIds.isEmpty()) {
             for (EquipmentType type : equipmentTypeMapper.selectBatchIds(typeIds)) {
-                if (type.getId() != null && type.getTypeName() != null) typeNames.put(type.getId(), type.getTypeName());
+                if (type.getId() != null && type.getTypeName() != null) typeNames.put(String.valueOf(type.getId()), type.getTypeName());
             }
         }
         Map<String, EquipmentBase> byCode = new HashMap<>();

+ 4 - 2
pipe-network-service/zksy-system/src/main/java/com/zksy/base/constant/GasEquipmentTypeEnum.java

@@ -1,12 +1,14 @@
 package com.zksy.base.constant;
 
+import com.zksy.base.enums.EquipmentTypeEnum;
+
 /** 燃气设备类型常量 */
 public final class GasEquipmentTypeEnum {
 
     private GasEquipmentTypeEnum() {}
 
-    /** 燃气顶级分类 parent_type_id */
-    public static final String PARENT_TYPE_ID = "3";
+    /** 燃气顶级分类 parent_id(整数主键,取值见 EquipmentTypeEnum) */
+    public static final Integer parent_id = EquipmentTypeEnum.ROOT_GAS_DEVICE.getId();
 
     /** 可燃气体探测器 type_id */
     public static final String GAS_DETECTOR = "gas_detector";

+ 9 - 14
pipe-network-service/zksy-system/src/main/java/com/zksy/base/domain/EquipmentType.java

@@ -9,7 +9,7 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 
 /**
- * 设备类别表
+ * 设备类型表
  */
 @Data
 @AllArgsConstructor
@@ -17,29 +17,24 @@ import lombok.NoArgsConstructor;
 @TableName(value = "equipment_type", schema = "app_user")
 public class EquipmentType {
 
-    @TableId(value = "id", type = IdType.ASSIGN_UUID)
     /**
-     * 数据库主键ID
+     * ID
      */
-    private String id;
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
 
     /**
-     * 类别ID
-     */
-    private String typeId;
-
-    /**
-     * 类别名称(如生产设备、办公设备等)
+     * 类别名称
      */
     private String typeName;
 
     /**
-     * 父类别ID,用于多级分类,0表示无父类
+     * 父类别ID
      */
-    private String parentTypeId;
+    private Integer parentId;
 
     /**
-     * 类别备注信息
+     * 备注
      */
-    private String typeRemark;
+    private String remark;
 }

+ 4 - 4
pipe-network-service/zksy-system/src/main/java/com/zksy/base/domain/vo/DeviceTypeStatisticsVO.java

@@ -10,14 +10,14 @@ import java.util.List;
 @ApiModel("设备分类统计VO")
 public class DeviceTypeStatisticsVO {
 
-    @ApiModelProperty("类别ID")
-    private String typeId;
+    @ApiModelProperty("类别ID(equipment_type.id)")
+    private Integer typeId;
 
     @ApiModelProperty("类别名称")
     private String typeName;
 
-    @ApiModelProperty("父类别ID")
-    private String parentTypeId;
+    @ApiModelProperty("父类别ID(0 表示顶级)")
+    private Integer parentTypeId;
 
     @ApiModelProperty("设备数量(当前类别直接包含的)")
     private Integer deviceCount;

+ 6 - 6
pipe-network-service/zksy-system/src/main/java/com/zksy/base/drill/service/impl/DrillSimulationServiceImpl.java

@@ -37,12 +37,12 @@ public class DrillSimulationServiceImpl implements DrillSimulationService {
         EquipmentType topType = equipmentTypeMapper.selectOne(
                 new LambdaQueryWrapper<EquipmentType>()
                         .eq(EquipmentType::getTypeName, category)
-                        .eq(EquipmentType::getParentTypeId, "0"));
+                        .eq(EquipmentType::getParentId, 0));
         if (topType == null) {
             throw new IllegalArgumentException("未找到项目类型对应的设备分类:" + category);
         }
         List<String> typeIds = new ArrayList<>();
-        typeIds.add(topType.getId());
+        typeIds.add(String.valueOf(topType.getId()));
         collectChildTypeIds(topType.getId(), typeIds);
 
         List<EquipmentBase> equipments = equipmentBaseMapper.selectList(
@@ -52,7 +52,7 @@ public class DrillSimulationServiceImpl implements DrillSimulationService {
             throw new IllegalArgumentException("未找到" + category + "类型下的设备");
         }
         Map<String, String> typeNameMap = equipmentTypeMapper.selectBatchIds(typeIds).stream()
-                .collect(Collectors.toMap(EquipmentType::getId, EquipmentType::getTypeName, (a, b) -> a));
+                .collect(Collectors.toMap(type -> String.valueOf(type.getId()), EquipmentType::getTypeName, (a, b) -> a));
 
         int successCount = 0, failCount = 0;
         LocalDateTime now = LocalDateTime.now();
@@ -91,12 +91,12 @@ public class DrillSimulationServiceImpl implements DrillSimulationService {
         return result;
     }
 
-    private void collectChildTypeIds(String parentId, List<String> typeIds) {
+    private void collectChildTypeIds(Integer parentId, List<String> typeIds) {
         List<EquipmentType> children = equipmentTypeMapper.selectList(
                 new LambdaQueryWrapper<EquipmentType>()
-                        .eq(EquipmentType::getParentTypeId, parentId));
+                        .eq(EquipmentType::getParentId, parentId));
         for (EquipmentType child : children) {
-            typeIds.add(child.getId());
+            typeIds.add(String.valueOf(child.getId()));
             collectChildTypeIds(child.getId(), typeIds);
         }
     }

+ 15 - 0
pipe-network-service/zksy-system/src/main/java/com/zksy/base/dto/HazardPageInDTO.java

@@ -20,6 +20,12 @@ public class HazardPageInDTO implements Serializable {
     @ApiModelProperty(value = "隐患状态")
     private String hazardStatus;
 
+    @ApiModelProperty(value = "隐患来源")
+    private String hazardSource;
+
+    @ApiModelProperty(value = "关键词(隐患编号、描述、上报单位)")
+    private String keyword;
+
     @ApiModelProperty(value = "是否已报送:0-未报送 1-已报送")
     private Integer isSubmitted;
 
@@ -29,6 +35,15 @@ public class HazardPageInDTO implements Serializable {
     @ApiModelProperty(value = "关联设备ID")
     private String equipmentId;
 
+    @ApiModelProperty(value = "查询开始日期,格式 yyyy-MM-dd")
+    private String startDate;
+
+    @ApiModelProperty(value = "查询结束日期,格式 yyyy-MM-dd")
+    private String endDate;
+
+    @ApiModelProperty(value = "时间字段:report-上报时间,submit-报送时间")
+    private String timeType;
+
     @ApiModelProperty(value = "当前记录起始索引", required = true)
     private Long pageNum;
 

+ 102 - 0
pipe-network-service/zksy-system/src/main/java/com/zksy/base/enums/EquipmentTypeEnum.java

@@ -0,0 +1,102 @@
+package com.zksy.base.enums;
+
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Objects;
+
+/**
+ * 设备类型枚举
+ *
+ * @author zengy
+ */
+@Getter
+@AllArgsConstructor
+public enum EquipmentTypeEnum {
+    // ========== 一级根节点 parentId = 0 ==========
+    ROOT_WATER_SUPPLY_DEVICE(1, 0, "供水设备"),
+    ROOT_DRAINAGE_DEVICE(2, 0, "排水设备"),
+    ROOT_GAS_DEVICE(3, 0, "燃气设备"),
+    ROOT_MANHOLE_DEVICE(4, 0, "窨井设备"),
+
+    // ========== 二级子设备 ==========
+    ULTRASONIC_FLOWMETER(11, 1, "超声波外夹流量计"),
+    PRESSURE_GAUGE(12, 1, "压力计"),
+    LEAK_MONITOR(13, 1, "漏失在线监测仪"),
+    FIRE_HYDRANT_PRESSURE_TERMINAL(14, 1, "消火栓压力监测终端"),
+
+    RENKE_4G_COLLECTOR(15, 2, "仁科4G采集器"),
+    RADAR_LEVEL_GAUGE(16, 2, "雷达液位计"),
+    FLOWMETER(17, 2, "流量计"),
+    TELEMETRY_TERMINAL_GENERAL(18, 2, "遥测终端机(通用)"),
+    WATER_LEVEL_GAUGE_FLOOD(19, 2, "水位计(易涝点)"),
+    VIDEO_MONITOR_OUT_WL(20, 2, "视频监控(排口+内涝点)"),
+
+    ELECTRIC_CONTROL_VALVE(21, 3, "电动控制阀"),
+    COMBUSTIBLE_GAS_DETECTOR(22, 3, "可燃气体检测仪"),
+    VIDEO_MONITOR_STATION(23, 3, "视频监控(场站)"),
+
+    MANHOLE_COVER_MONITOR(24, 4, "窨井盖监测");
+
+    /**
+     * 设备类型ID(主键id)
+     */
+    private final Integer id;
+    /**
+     * 父节点ID(parent_id)
+     */
+    private final Integer parentId;
+    /**
+     * 设备名称
+     */
+    private final String desc;
+
+    /**
+     * 按 id 获取枚举
+     */
+    public static EquipmentTypeEnum getById(Integer id) {
+        if (id == null) {
+            return null;
+        }
+        for (EquipmentTypeEnum item : values()) {
+            if (Objects.equals(item.id, id)) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    /**
+     * 按 id 获取描述,未知返回空字符串
+     */
+    public static String getDescById(Integer id) {
+        EquipmentTypeEnum item = getById(id);
+        return item == null ? "" : item.getDesc();
+    }
+
+    /**
+     * 判断是否为根节点
+     */
+    public boolean isRoot() {
+        return Objects.equals(this.parentId, 0);
+    }
+
+    /**
+     * 根据父节点id,查询其下所有子设备
+     */
+    public static List<EquipmentTypeEnum> getChildrenByParentId(Integer parentId) {
+        List<EquipmentTypeEnum> children = new ArrayList<>();
+        if (parentId == null) {
+            return children;
+        }
+        for (EquipmentTypeEnum item : values()) {
+            if (!item.isRoot() && Objects.equals(item.parentId, parentId)) {
+                children.add(item);
+            }
+        }
+        return children;
+    }
+}

+ 3 - 3
pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/EquipmentTypeService.java

@@ -10,7 +10,7 @@ import java.util.List;
 @Service
 public interface EquipmentTypeService extends IService<EquipmentType> {
 
-    Page<EquipmentType> findByPage(long pageNum, long pageSize, String typeId,String typeName,String parentTypeId);
+    Page<EquipmentType> findByPage(long pageNum, long pageSize, Integer typeId, String typeName, Integer parentTypeId);
 
     /**
      * 新增设备类别
@@ -38,12 +38,12 @@ public interface EquipmentTypeService extends IService<EquipmentType> {
      * @param id
      * @return
      */
-    boolean removeWithCheck(String id);
+    boolean removeWithCheck(Integer id);
 
     /**
      * 设备类别批量删除
      * @param ids
      * @return
      */
-    boolean removeBatchWithCheck(List<String> ids);
+    boolean removeBatchWithCheck(List<Integer> ids);
 }

+ 2 - 1
pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/CaseInfoServiceImpl.java

@@ -90,7 +90,8 @@ public class CaseInfoServiceImpl extends ServiceImpl<CaseInfoMapper, CaseInfo>
             List<EquipmentType> equipmentTypeList = equipmentTypeMapper.selectBatchIds(equipmentTypeIdList);
             Map<String, EquipmentType> equipmentTypeMap = new HashMap<>();
             if(CollUtil.isNotEmpty(equipmentTypeList)){
-                equipmentTypeMap.putAll(equipmentTypeList.stream().collect(Collectors.toMap(EquipmentType::getId, Function.identity(), (key1, key2) -> key2)));
+                equipmentTypeMap.putAll(equipmentTypeList.stream().collect(
+                        Collectors.toMap(type -> String.valueOf(type.getId()), Function.identity(), (key1, key2) -> key2)));
             }
             for(CaseInfoOutDTO outDTO : outDTOList) {
                 EquipmentBase equipmentBase = equipmentBaseMap.get(outDTO.getDeviceId());

+ 6 - 6
pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/DrillSimulationServiceImpl.java

@@ -37,12 +37,12 @@ public class DrillSimulationServiceImpl implements DrillSimulationService {
         EquipmentType topType = equipmentTypeMapper.selectOne(
                 new LambdaQueryWrapper<EquipmentType>()
                         .eq(EquipmentType::getTypeName, category)
-                        .eq(EquipmentType::getParentTypeId, "0"));
+                        .eq(EquipmentType::getParentId, 0));
         if (topType == null) {
             throw new IllegalArgumentException("未找到项目类型对应的设备分类:" + category);
         }
         List<String> typeIds = new ArrayList<>();
-        typeIds.add(topType.getId());
+        typeIds.add(String.valueOf(topType.getId()));
         collectChildTypeIds(topType.getId(), typeIds);
 
         List<EquipmentBase> equipments = equipmentBaseMapper.selectList(
@@ -52,7 +52,7 @@ public class DrillSimulationServiceImpl implements DrillSimulationService {
             throw new IllegalArgumentException("未找到" + category + "类型下的设备");
         }
         Map<String, String> typeNameMap = equipmentTypeMapper.selectBatchIds(typeIds).stream()
-                .collect(Collectors.toMap(EquipmentType::getId, EquipmentType::getTypeName, (a, b) -> a));
+                .collect(Collectors.toMap(type -> String.valueOf(type.getId()), EquipmentType::getTypeName, (a, b) -> a));
 
         int successCount = 0, failCount = 0;
         LocalDateTime now = LocalDateTime.now();
@@ -91,12 +91,12 @@ public class DrillSimulationServiceImpl implements DrillSimulationService {
         return result;
     }
 
-    private void collectChildTypeIds(String parentId, List<String> typeIds) {
+    private void collectChildTypeIds(Integer parentId, List<String> typeIds) {
         List<EquipmentType> children = equipmentTypeMapper.selectList(
                 new LambdaQueryWrapper<EquipmentType>()
-                        .eq(EquipmentType::getParentTypeId, parentId));
+                        .eq(EquipmentType::getParentId, parentId));
         for (EquipmentType child : children) {
-            typeIds.add(child.getId());
+            typeIds.add(String.valueOf(child.getId()));
             collectChildTypeIds(child.getId(), typeIds);
         }
     }

+ 13 - 8
pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/EquipmentAbnormalServiceImpl.java

@@ -34,8 +34,8 @@ public class EquipmentAbnormalServiceImpl implements EquipmentAbnormalService {
     @Autowired
     private EquipmentTypeMapper equipmentTypeMapper;
 
-    /** 燃气顶级类型 parent_type_id */
-    private static final String GAS_PARENT_TYPE_ID = GasEquipmentTypeEnum.PARENT_TYPE_ID;
+    /** 燃气顶级类型 parent_id */
+    private static final Integer GAS_parent_id = GasEquipmentTypeEnum.parent_id;
 
     // 故障等级文本
     private static final Map<Integer, String> LEVEL_MAP = new HashMap<>();
@@ -60,7 +60,7 @@ public class EquipmentAbnormalServiceImpl implements EquipmentAbnormalService {
         // 1. 先查出所有燃气设备(equipment_type_id以GAS-开头)
         List<EquipmentType> gasTypes = equipmentTypeMapper.selectList(
                 new LambdaQueryWrapper<EquipmentType>()
-                        .eq(EquipmentType::getParentTypeId, GAS_PARENT_TYPE_ID)
+                        .eq(EquipmentType::getParentId, GAS_parent_id)
         );
         if (gasTypes.isEmpty()) {
             Map<String, Object> emptyResult = new LinkedHashMap<>();
@@ -68,7 +68,10 @@ public class EquipmentAbnormalServiceImpl implements EquipmentAbnormalService {
             emptyResult.put("rows", new ArrayList<>());
             return emptyResult;
         }
-        Set<String> gasTypeIds = gasTypes.stream().map(EquipmentType::getId).collect(Collectors.toSet());
+        // equipment_base.equipment_type_id 为字符串列,此处按主键id的字符串形式关联
+        Set<String> gasTypeIds = gasTypes.stream()
+                .map(item -> String.valueOf(item.getId()))
+                .collect(Collectors.toSet());
 
         List<EquipmentBase> gasEquipments = equipmentBaseMapper.selectList(
                 new LambdaQueryWrapper<EquipmentBase>()
@@ -86,7 +89,7 @@ public class EquipmentAbnormalServiceImpl implements EquipmentAbnormalService {
 
         // 类型ID → 类型名称
         Map<String, String> typeNameMap = gasTypes.stream()
-                .collect(Collectors.toMap(EquipmentType::getId, EquipmentType::getTypeName, (a, b) -> a));
+                .collect(Collectors.toMap(item -> String.valueOf(item.getId()), EquipmentType::getTypeName, (a, b) -> a));
 
         // 2. 查询terminal_fault,过滤燃气设备
         LambdaQueryWrapper<TerminalFault> queryWrapper = new LambdaQueryWrapper<>();
@@ -152,12 +155,14 @@ public class EquipmentAbnormalServiceImpl implements EquipmentAbnormalService {
     public Map<String, Object> getStats() {
         // 燃气设备总故障统计
         List<EquipmentType> gasTypes = equipmentTypeMapper.selectList(
-                new LambdaQueryWrapper<EquipmentType>().eq(EquipmentType::getParentTypeId, GAS_PARENT_TYPE_ID)
+                new LambdaQueryWrapper<EquipmentType>().eq(EquipmentType::getParentId, GAS_parent_id)
         );
         if (gasTypes.isEmpty()) {
             return buildEmptyStats();
         }
-        Set<String> gasTypeIds = gasTypes.stream().map(EquipmentType::getId).collect(Collectors.toSet());
+        Set<String> gasTypeIds = gasTypes.stream()
+                .map(type -> String.valueOf(type.getId()))
+                .collect(Collectors.toSet());
         List<EquipmentBase> gasEquipments = equipmentBaseMapper.selectList(
                 new LambdaQueryWrapper<EquipmentBase>().in(EquipmentBase::getEquipmentTypeId, gasTypeIds)
         );
@@ -166,7 +171,7 @@ public class EquipmentAbnormalServiceImpl implements EquipmentAbnormalService {
         }
         Set<String> gasEquipmentIds = gasEquipments.stream().map(EquipmentBase::getEquipmentId).collect(Collectors.toSet());
         Map<String, String> typeNameMap = gasTypes.stream()
-                .collect(Collectors.toMap(EquipmentType::getId, EquipmentType::getTypeName, (a, b) -> a));
+                .collect(Collectors.toMap(type -> String.valueOf(type.getId()), EquipmentType::getTypeName, (a, b) -> a));
 
         List<TerminalFault> allFaults;
         if (!gasEquipmentIds.isEmpty()) {

+ 32 - 50
pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/EquipmentBaseServiceImpl.java

@@ -11,6 +11,7 @@ import com.zksy.base.alarm.domain.WarningThreshold;
 import com.zksy.base.alarm.mapper.WarningThresholdMapper;
 import com.zksy.base.constant.GasEquipmentTypeEnum;
 import com.zksy.base.domain.*;
+import com.zksy.base.enums.EquipmentTypeEnum;
 import com.zksy.base.domain.vo.EquipmentFullVO;
 import com.zksy.base.event.DeviceStatusChangePublisher;
 import com.zksy.base.manhole.domain.ManholeData;
@@ -188,13 +189,13 @@ public class EquipmentBaseServiceImpl extends ServiceImpl<EquipmentBaseMapper, E
         equipmentMaintainMapper.delete(maintainWrapper);
         log.info("已删除设备[{}]的维护记录", equipmentId);
 
-        // equipment_status / equipment_point_rel 带 @TableLogic,delete(wrapper) 只会逻辑删除,
-        // 行仍物理存在会继续触发 fk_equipment_status,导致下面的物理删除失败(#52)。
+        // equipment_status / equipment_point_rel 带外键且标注了 @TableLogic,
+        // 逻辑删除只改 del_flag、行仍存在,会挡住 equipment_base 的物理删除,必须走物理删除语句(#52)
         equipmentStatusMapper.deletePhysicallyByEquipmentId(equipmentId);
-        log.info("已物理删除设备[{}]的状态记录", equipmentId);
+        log.info("已删除设备[{}]的状态记录", equipmentId);
 
         equipmentPointRelMapper.deletePhysicallyByEquipmentId(equipmentId);
-        log.info("已物理删除设备[{}]的监测点关联", equipmentId);
+        log.info("已删除设备[{}]的监测点关联", equipmentId);
 
         // 现在 WarningThreshold 有了 equipmentId 字段,直接匹配
         /*LambdaQueryWrapper<WarningThreshold> thresholdWrapper = new LambdaQueryWrapper<>();
@@ -237,12 +238,12 @@ public class EquipmentBaseServiceImpl extends ServiceImpl<EquipmentBaseMapper, E
         equipmentMaintainMapper.delete(maintainWrapper);
         log.info("已批量删除{}条设备的维护记录", existIds.size());
 
-        // 与单条删除同理:逻辑删除的行仍会被外键 fk_equipment_status 拦住(#52)。
+        // 同上:批量删除也必须物理删除从属行,且一条语句完成,避免逐台删除放大请求
         equipmentStatusMapper.deletePhysicallyByEquipmentIds(existIds);
-        log.info("已批量物理删除{}条设备的状态记录", existIds.size());
+        log.info("已批量删除{}条设备的状态记录", existIds.size());
 
         equipmentPointRelMapper.deletePhysicallyByEquipmentIds(existIds);
-        log.info("已批量物理删除{}条设备的监测点关联", existIds.size());
+        log.info("已批量删除{}条设备的监测点关联", existIds.size());
 
         // 现在 WarningThreshold 有了 equipmentId 字段,直接匹配
         /*LambdaQueryWrapper<WarningThreshold> thresholdWrapper = new LambdaQueryWrapper<>();
@@ -890,14 +891,14 @@ public class EquipmentBaseServiceImpl extends ServiceImpl<EquipmentBaseMapper, E
             // 查找该类型是否为父类(parent_type_id=0);入参 equipmentTypeId 统一为 equipment_type.id
             LambdaQueryWrapper<EquipmentType> typeQw = new LambdaQueryWrapper<>();
             typeQw.eq(EquipmentType::getId, equipmentTypeId);
-            typeQw.eq(EquipmentType::getParentTypeId, "0");
+            typeQw.eq(EquipmentType::getParentId, "0");
             List<EquipmentType> parentTypes = equipmentTypeMapper.selectList(typeQw);
 
             if (parentTypes != null && !parentTypes.isEmpty()) {
                 // 是父类,查找所有子类型的id
                 EquipmentType parentType = parentTypes.get(0);
                 LambdaQueryWrapper<EquipmentType> childQw = new LambdaQueryWrapper<>();
-                childQw.eq(EquipmentType::getParentTypeId, String.valueOf(parentType.getId()));
+                childQw.eq(EquipmentType::getParentId, String.valueOf(parentType.getId()));
                 List<EquipmentType> childTypes = equipmentTypeMapper.selectList(childQw);
                 List<String> typeIds = childTypes.stream()
                         .map(t -> String.valueOf(t.getId())).collect(Collectors.toList());
@@ -1055,7 +1056,7 @@ public class EquipmentBaseServiceImpl extends ServiceImpl<EquipmentBaseMapper, E
                 long count = this.count(new LambdaQueryWrapper<EquipmentBase>()
                         .eq(EquipmentBase::getEquipmentTypeId, type.getId()));
                 EquipmentCountByTypeOutDTO outDTO = new EquipmentCountByTypeOutDTO();
-                outDTO.setEquipmentTypeId(type.getId());
+                outDTO.setEquipmentTypeId(String.valueOf(type.getId()));
                 outDTO.setEquipmentTypeName(type.getTypeName());
                 outDTO.setDeviceCount((int) count);
                 result.add(outDTO);
@@ -1064,14 +1065,14 @@ public class EquipmentBaseServiceImpl extends ServiceImpl<EquipmentBaseMapper, E
             // 查询子类别
             List<EquipmentType> childTypes = equipmentTypeMapper.selectList(
                     new LambdaQueryWrapper<EquipmentType>()
-                            .eq(EquipmentType::getParentTypeId, equipmentTypeId));
+                            .eq(EquipmentType::getParentId, equipmentTypeId));
             if(CollUtil.isNotEmpty(childTypes)){
                 // 有子类别:按子类别分组统计
                 for(EquipmentType childType : childTypes){
                     long count = this.count(new LambdaQueryWrapper<EquipmentBase>()
                             .eq(EquipmentBase::getEquipmentTypeId, childType.getId()));
                     EquipmentCountByTypeOutDTO outDTO = new EquipmentCountByTypeOutDTO();
-                    outDTO.setEquipmentTypeId(childType.getId());
+                    outDTO.setEquipmentTypeId(String.valueOf(childType.getId()));
                     outDTO.setEquipmentTypeName(childType.getTypeName());
                     outDTO.setDeviceCount((int) count);
                     result.add(outDTO);
@@ -1117,7 +1118,7 @@ public class EquipmentBaseServiceImpl extends ServiceImpl<EquipmentBaseMapper, E
         if(CollUtil.isNotEmpty(typeIds)){
             List<EquipmentType> typeList = equipmentTypeMapper.selectBatchIds(typeIds);
             typeNameMap = typeList.stream()
-                    .collect(Collectors.toMap(EquipmentType::getId, EquipmentType::getTypeName, (k1, k2) -> k1));
+                    .collect(Collectors.toMap(t -> String.valueOf(t.getId()), EquipmentType::getTypeName, (k1, k2) -> k1));
         }
         // 一次性查询所有设备状态
         List<String> equipmentIds = equipmentList.stream()
@@ -1183,10 +1184,10 @@ public class EquipmentBaseServiceImpl extends ServiceImpl<EquipmentBaseMapper, E
         List<EquipmentType> topTypes = equipmentTypeMapper.selectList(
                 new LambdaQueryWrapper<EquipmentType>()
                         .eq(EquipmentType::getTypeName, typeName)
-                        .eq(EquipmentType::getParentTypeId, "0")
+                        .eq(EquipmentType::getParentId, 0)
                         .last("LIMIT 1"));
         if (CollUtil.isNotEmpty(topTypes)) {
-            String topId = topTypes.get(0).getId();
+            String topId = String.valueOf(topTypes.get(0).getId());
             if (StringUtils.isNotEmpty(topId)) {
                 typeIds.add(topId);
                 parentIds.add(topId);
@@ -1198,39 +1199,20 @@ public class EquipmentBaseServiceImpl extends ServiceImpl<EquipmentBaseMapper, E
         if (StringUtils.isNotEmpty(typeName) && typeName.contains("燃气")) {
             List<EquipmentType> gasRoots = equipmentTypeMapper.selectList(
                     new LambdaQueryWrapper<EquipmentType>()
-                            .and(w -> w.eq(EquipmentType::getId, GasEquipmentTypeEnum.PARENT_TYPE_ID)
-                                    .or().eq(EquipmentType::getTypeId, GasEquipmentTypeEnum.PARENT_TYPE_ID))
+                            .eq(EquipmentType::getId, GasEquipmentTypeEnum.parent_id)
                             .last("LIMIT 1"));
-            if (CollUtil.isNotEmpty(gasRoots) && StringUtils.isNotEmpty(gasRoots.get(0).getId())) {
+            if (CollUtil.isNotEmpty(gasRoots) && gasRoots.get(0).getId() != null) {
                 EquipmentType gasRoot = gasRoots.get(0);
-                typeIds.add(gasRoot.getId());
-                parentIds.add(gasRoot.getId());
+                typeIds.add(String.valueOf(gasRoot.getId()));
+                parentIds.add(String.valueOf(gasRoot.getId()));
             }
             List<EquipmentType> gasChildren = equipmentTypeMapper.selectList(
                     new LambdaQueryWrapper<EquipmentType>()
-                            .eq(EquipmentType::getParentTypeId, GasEquipmentTypeEnum.PARENT_TYPE_ID));
+                            .eq(EquipmentType::getParentId, GasEquipmentTypeEnum.parent_id));
             for (EquipmentType child : gasChildren) {
-                if (child != null && StringUtils.isNotEmpty(child.getId())) {
-                    typeIds.add(child.getId());
-                    parentIds.add(child.getId());
-                }
-            }
-        }
-
-        // 供水模块的顶级类型在库中名为“供水设备”而非“供水”,名称匹配会落空;
-        // 设备类型树以 equipment_type 为权威,这里按稳定 type_id='water_supply' 兜底,
-        // 与排水模块的处理方式保持一致。
-        if (typeIds.isEmpty() && StringUtils.isNotEmpty(typeName) && typeName.contains("供水")) {
-            List<EquipmentType> waterSupplyTypes = equipmentTypeMapper.selectList(
-                    new LambdaQueryWrapper<EquipmentType>()
-                            .eq(EquipmentType::getTypeId, "water_supply")
-                            .eq(EquipmentType::getParentTypeId, "0")
-                            .last("LIMIT 1"));
-            if (CollUtil.isNotEmpty(waterSupplyTypes)) {
-                String waterSupplyId = waterSupplyTypes.get(0).getId();
-                if (StringUtils.isNotEmpty(waterSupplyId)) {
-                    typeIds.add(waterSupplyId);
-                    parentIds.add(waterSupplyId);
+                if (child != null && child.getId() != null) {
+                    typeIds.add(String.valueOf(child.getId()));
+                    parentIds.add(String.valueOf(child.getId()));
                 }
             }
         }
@@ -1239,11 +1221,11 @@ public class EquipmentBaseServiceImpl extends ServiceImpl<EquipmentBaseMapper, E
         if (typeIds.isEmpty() && StringUtils.isNotEmpty(typeName) && typeName.contains("排水")) {
             List<EquipmentType> drainageTypes = equipmentTypeMapper.selectList(
                     new LambdaQueryWrapper<EquipmentType>()
-                            .eq(EquipmentType::getTypeId, "drainage")
-                            .eq(EquipmentType::getParentTypeId, "0")
+                            .eq(EquipmentType::getId, EquipmentTypeEnum.ROOT_DRAINAGE_DEVICE.getId())
+                            .eq(EquipmentType::getParentId, 0)
                             .last("LIMIT 1"));
             if (CollUtil.isNotEmpty(drainageTypes)) {
-                String drainageId = drainageTypes.get(0).getId();
+                String drainageId = String.valueOf(drainageTypes.get(0).getId());
                 if (StringUtils.isNotEmpty(drainageId)) {
                     typeIds.add(drainageId);
                     parentIds.add(drainageId);
@@ -1259,11 +1241,11 @@ public class EquipmentBaseServiceImpl extends ServiceImpl<EquipmentBaseMapper, E
         while (!parentIds.isEmpty()) {
             List<EquipmentType> children = equipmentTypeMapper.selectList(
                     new LambdaQueryWrapper<EquipmentType>()
-                            .in(EquipmentType::getParentTypeId, parentIds));
+                            .in(EquipmentType::getParentId, parentIds));
             Set<String> nextParentIds = new LinkedHashSet<>();
             for (EquipmentType child : children) {
-                if (typeIds.add(child.getId())) {
-                    nextParentIds.add(child.getId());
+                if (typeIds.add(String.valueOf(child.getId()))) {
+                    nextParentIds.add(String.valueOf(child.getId()));
                 }
             }
             parentIds = nextParentIds;
@@ -1278,8 +1260,8 @@ public class EquipmentBaseServiceImpl extends ServiceImpl<EquipmentBaseMapper, E
         List<EquipmentType> equipmentTypes = equipmentTypeMapper.selectList(
                 new LambdaQueryWrapper<EquipmentType>().in(EquipmentType::getId, new ArrayList<>(typeIds)));
         for (EquipmentType type : equipmentTypes) {
-            if (type != null && StringUtils.isNotEmpty(type.getId())) {
-                typeNameMap.put(type.getId(), type.getTypeName());
+            if (type != null && type.getId() != null) {
+                typeNameMap.put(String.valueOf(type.getId()), type.getTypeName());
             }
         }
         equipmentList.forEach(equipment -> {

+ 60 - 56
pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/EquipmentTypeServiceImpl.java

@@ -25,6 +25,19 @@ import java.util.stream.Collectors;
 public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, EquipmentType>
         implements EquipmentTypeService {
 
+    /**
+     * 顶级类别的父ID:0 表示无父类。
+     * equipment_type.id / parent_id 均为整数,取值见 com.zksy.base.enums.EquipmentTypeEnum。
+     */
+    private static final Integer ROOT_PARENT_ID = 0;
+
+    /**
+     * equipment_base.equipment_type_id 仍是字符串列,与 Integer 主键比较时统一转成字符串。
+     */
+    private static List<String> toTypeKeyTexts(Collection<Integer> ids) {
+        return ids.stream().map(String::valueOf).collect(Collectors.toList());
+    }
+
     @Autowired
     private EquipmentBaseMapper equipmentBaseMapper;
 
@@ -32,13 +45,14 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
     private EquipmentBaseService equipmentBaseService;
 
     @Override
-    public Page<EquipmentType> findByPage(long pageNum, long pageSize, String typeId,String typeName,String parentTypeId) {
+    public Page<EquipmentType> findByPage(long pageNum, long pageSize, Integer typeId,
+                                          String typeName, Integer parentTypeId) {
         Page<EquipmentType> page = new Page<>(pageNum, pageSize);
         LambdaQueryWrapper<EquipmentType> queryWrapper = new LambdaQueryWrapper<>();
-        queryWrapper.eq(EquipmentType::getId,typeId)
-                    .eq(EquipmentType::getTypeName,typeName)
-                    .eq(EquipmentType::getParentTypeId,parentTypeId);
-        return this.page(page,queryWrapper);
+        queryWrapper.eq(EquipmentType::getId, typeId)
+                    .eq(EquipmentType::getTypeName, typeName)
+                    .eq(EquipmentType::getParentId, parentTypeId);
+        return this.page(page, queryWrapper);
     }
 
     /**
@@ -49,9 +63,9 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
     @Override
     public boolean saveWithCheck(EquipmentType entity) {
         //校验父类别是否存在
-        String parentId = entity.getParentTypeId();
+        Integer parentId = entity.getParentId();
         // 0表示无父类,无需校验
-        if (!"0".equals(parentId)) {
+        if (!ROOT_PARENT_ID.equals(parentId)) {
             EquipmentType parent = this.getById(parentId);
             if (parent == null) {
                 throw new ServiceException("父类别不存在:" + parentId);
@@ -60,7 +74,7 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
 
         //校验同一父类别下,类别名称是否重复
         LambdaQueryWrapper<EquipmentType> wrapper = new LambdaQueryWrapper<>();
-        wrapper.eq(EquipmentType::getParentTypeId, parentId)
+        wrapper.eq(EquipmentType::getParentId, parentId)
                 .eq(EquipmentType::getTypeName, entity.getTypeName());
         if (this.count(wrapper) > 0) {
             throw new ServiceException("同一父类别下已存在同名类别:" + entity.getTypeName());
@@ -73,11 +87,11 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
     @Transactional
     public boolean saveBatchWithCheck(List<EquipmentType> entityList) {
 
-        Set<String> parentIds = new HashSet<>(); // 所有父类别ID
-        Map<String, Set<String>> sameParentNames = new HashMap<>(); // 同一父类下的名称集合
+        Set<Integer> parentIds = new HashSet<>(); // 所有父类别ID
+        Map<Integer, Set<String>> sameParentNames = new HashMap<>(); // 同一父类下的名称集合
 
         for (EquipmentType entity : entityList) {
-            String parentId = entity.getParentTypeId() == null ? "0" : entity.getParentTypeId();
+            Integer parentId = entity.getParentId() == null ? ROOT_PARENT_ID : entity.getParentId();
             parentIds.add(parentId);
 
             // 检查列表内同一父类下是否有重复名称
@@ -86,24 +100,24 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
         }
 
         //批量校验父类别是否存在
-        List<String> existParentIds = this.listByIds(parentIds).stream()
+        List<Integer> existParentIds = this.listByIds(parentIds).stream()
                 .map(EquipmentType::getId)
                 .collect(Collectors.toList());
         // 过滤出不存在的父类别ID
-        Set<String> invalidParentIds = parentIds.stream()
-                .filter(id -> !"0".equals(id) && !existParentIds.contains(id))
+        Set<Integer> invalidParentIds = parentIds.stream()
+                .filter(id -> !ROOT_PARENT_ID.equals(id) && !existParentIds.contains(id))
                 .collect(Collectors.toSet());
         if (!invalidParentIds.isEmpty()) {
             throw new ServiceException("存在无效父类别ID:" + invalidParentIds);
         }
 
         //校验数据库中是否存在同名类别
-        for (Map.Entry<String, Set<String>> entry : sameParentNames.entrySet()) {
-            String parentId = entry.getKey();
+        for (Map.Entry<Integer, Set<String>> entry : sameParentNames.entrySet()) {
+            Integer parentId = entry.getKey();
             Set<String> names = entry.getValue();
 
             LambdaQueryWrapper<EquipmentType> wrapper = new LambdaQueryWrapper<>();
-            wrapper.eq(EquipmentType::getParentTypeId, parentId)
+            wrapper.eq(EquipmentType::getParentId, parentId)
                     .in(EquipmentType::getTypeName, names);
 
             List<String> existNames = this.list(wrapper).stream()
@@ -127,19 +141,19 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
     @Transactional
     public boolean updateWithCheck(EquipmentType entity) {
         //校验当前类别是否存在
-        String typeId = entity.getId();
+        Integer typeId = entity.getId();
         EquipmentType oldType = this.getById(typeId);
         if (oldType == null) {
             throw new ServiceException("设备类别不存在:" + typeId);
         }
 
         //处理父类别变更
-        String newParentId = entity.getParentTypeId() == null ? "0" : entity.getParentTypeId();
-        String oldParentId = oldType.getParentTypeId() == null ? "0" : oldType.getParentTypeId();
+        Integer newParentId = entity.getParentId() == null ? ROOT_PARENT_ID : entity.getParentId();
+        Integer oldParentId = oldType.getParentId() == null ? ROOT_PARENT_ID : oldType.getParentId();
 
         if (!newParentId.equals(oldParentId)) {
             //新父类别必须存在
-            if (!"0".equals(newParentId)) {
+            if (!ROOT_PARENT_ID.equals(newParentId)) {
                 EquipmentType newParent = this.getById(newParentId);
                 if (newParent == null) {
                     throw new ServiceException("新父类别不存在:" + newParentId);
@@ -155,7 +169,7 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
         if (newName != null && !newName.equals(oldType.getTypeName())) {
             // 同一父类别下不能有同名
             LambdaQueryWrapper<EquipmentType> wrapper = new LambdaQueryWrapper<>();
-            wrapper.eq(EquipmentType::getParentTypeId, newParentId)
+            wrapper.eq(EquipmentType::getParentId, newParentId)
                     .eq(EquipmentType::getTypeName, newName)
                     .ne(EquipmentType::getId, typeId); // 排除自身
 
@@ -174,7 +188,7 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
      * @return
      */
     @Transactional
-    public boolean removeWithCheck1(String typeId) {
+    public boolean removeWithCheck1(Integer typeId) {
         // 校验类别是否存在
         EquipmentType type = this.getById(typeId);
         if (type == null) {
@@ -183,7 +197,7 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
 
         //校验是否有子设备关联
         LambdaQueryWrapper<EquipmentBase> eqWrapper = new LambdaQueryWrapper<>();
-        eqWrapper.eq(EquipmentBase::getEquipmentTypeId, typeId);
+        eqWrapper.eq(EquipmentBase::getEquipmentTypeId, String.valueOf(typeId));
         //TODO 待完善
         long relatedEqCount = equipmentBaseMapper.selectCount(eqWrapper);
         if (relatedEqCount > 0) {
@@ -192,17 +206,12 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
 
         //校验是否有子类别依赖
         LambdaQueryWrapper<EquipmentType> childWrapper = new LambdaQueryWrapper<>();
-        childWrapper.eq(EquipmentType::getParentTypeId, typeId);
+        childWrapper.eq(EquipmentType::getParentId, typeId);
         long childTypeCount = this.count(childWrapper);
         if (childTypeCount > 0) {
             throw new ServiceException("该类别下存在" + childTypeCount + "个子类别,无法删除");
         }
 
-        // 4. 执行删除
-//        boolean deleted = this.removeById(typeId);
-//        if (!deleted) {
-//            throw new ServiceException("设备类别删除失败:" + typeId);
-//        }
         return this.removeById(typeId);
     }
 
@@ -214,7 +223,7 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
 
     @Transactional
     //TODO 这部分逻辑待优化,考虑删还是不删除,的概率是要删的
-    public boolean removeBatchWithCheck1(List<String> typeIds) {
+    public boolean removeBatchWithCheck1(List<Integer> typeIds) {
         // 1. 基础校验:ID列表不能为空
         if (CollectionUtils.isEmpty(typeIds)) {
             throw new ServiceException("批量删除失败:类别ID列表不能为空");
@@ -225,11 +234,11 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
         if (existTypes.isEmpty()) {
             throw new ServiceException("批量删除失败:所有类别ID均不存在");
         }
-        List<String> existIds = existTypes.stream()
+        List<Integer> existIds = existTypes.stream()
                 .map(EquipmentType::getId)
                 .collect(Collectors.toList());
         // 记录无效ID(仅警告,不阻断)
-        List<String> invalidIds = typeIds.stream()
+        List<Integer> invalidIds = typeIds.stream()
                 .filter(id -> !existIds.contains(id))
                 .collect(Collectors.toList());
         if (!invalidIds.isEmpty()) {
@@ -238,7 +247,7 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
 
         // 3. 校验是否有关联设备(批量检查)
         LambdaQueryWrapper<EquipmentBase> eqWrapper = new LambdaQueryWrapper<>();
-        eqWrapper.in(EquipmentBase::getEquipmentTypeId, existIds);
+        eqWrapper.in(EquipmentBase::getEquipmentTypeId, toTypeKeyTexts(existIds));
         //TODO 待完善,不确定方法用对没
         List<String> relatedTypeIds = equipmentBaseMapper.selectList(eqWrapper).stream()
                 .map(EquipmentBase::getEquipmentTypeId)
@@ -250,9 +259,9 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
 
         // 4. 校验是否有子类别依赖(批量检查)
         LambdaQueryWrapper<EquipmentType> childWrapper = new LambdaQueryWrapper<>();
-        childWrapper.in(EquipmentType::getParentTypeId, existIds);
-        List<String> hasChildTypeIds = this.list(childWrapper).stream()
-                .map(EquipmentType::getParentTypeId)
+        childWrapper.in(EquipmentType::getParentId, existIds);
+        List<Integer> hasChildTypeIds = this.list(childWrapper).stream()
+                .map(EquipmentType::getParentId)
                 .distinct() // 去重,获取有子类别依赖的类别ID
                 .collect(Collectors.toList());
         if (!hasChildTypeIds.isEmpty()) {
@@ -260,11 +269,6 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
         }
 
         // 5. 执行批量删除
-//        boolean deleted = this.removeByIds(existIds);
-//        if (!deleted) {
-//            throw new ServiceException("设备类别批量删除失败");
-//        }
-//        log.info("成功批量删除{}个设备类别", existIds.size());
         return this.removeByIds(existIds);
     }
 
@@ -273,7 +277,7 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
      */
     @Override
     @Transactional
-    public boolean removeWithCheck(String typeId) {
+    public boolean removeWithCheck(Integer typeId) {
         // 校验类别是否存在
         EquipmentType type = this.getById(typeId);
         if (type == null) {
@@ -282,7 +286,7 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
 
         // 先删除关联的设备
         LambdaQueryWrapper<EquipmentBase> eqWrapper = new LambdaQueryWrapper<>();
-        eqWrapper.eq(EquipmentBase::getEquipmentTypeId, typeId);
+        eqWrapper.eq(EquipmentBase::getEquipmentTypeId, String.valueOf(typeId));
         //TODO 待完善,不确定方法用对没
         List<String> relatedEqIds = equipmentBaseMapper.selectList(eqWrapper).stream()
                 .map(EquipmentBase::getEquipmentId)
@@ -294,8 +298,8 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
 
         // 先删除子类别
         LambdaQueryWrapper<EquipmentType> childWrapper = new LambdaQueryWrapper<>();
-        childWrapper.eq(EquipmentType::getParentTypeId, typeId);
-        List<String> childTypeIds = this.list(childWrapper).stream()
+        childWrapper.eq(EquipmentType::getParentId, typeId);
+        List<Integer> childTypeIds = this.list(childWrapper).stream()
                 .map(EquipmentType::getId)
                 .collect(Collectors.toList());
         if (!childTypeIds.isEmpty()) {
@@ -311,7 +315,7 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
      */
     @Override
     @Transactional
-    public boolean removeBatchWithCheck(List<String> typeIds) {
+    public boolean removeBatchWithCheck(List<Integer> typeIds) {
         if (CollectionUtils.isEmpty(typeIds)) {
             throw new ServiceException("批量删除失败:类别ID列表不能为空");
         }
@@ -321,10 +325,10 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
         if (existTypes.isEmpty()) {
             throw new ServiceException("批量删除失败:所有类别ID均不存在");
         }
-        List<String> existIds = existTypes.stream()
+        List<Integer> existIds = existTypes.stream()
                 .map(EquipmentType::getId)
                 .collect(Collectors.toList());
-        List<String> invalidIds = typeIds.stream()
+        List<Integer> invalidIds = typeIds.stream()
                 .filter(id -> !existIds.contains(id))
                 .collect(Collectors.toList());
         if (!invalidIds.isEmpty()) {
@@ -333,7 +337,7 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
 
         //先批量删除所有关联的设备
         LambdaQueryWrapper<EquipmentBase> eqWrapper = new LambdaQueryWrapper<>();
-        eqWrapper.in(EquipmentBase::getEquipmentTypeId, existIds);
+        eqWrapper.in(EquipmentBase::getEquipmentTypeId, toTypeKeyTexts(existIds));
         //TODO 待完善,不确定方法用对没
         List<String> relatedEqIds = equipmentBaseMapper.selectList(eqWrapper).stream()
                 .map(EquipmentBase::getEquipmentId)
@@ -344,7 +348,7 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
         }
 
         //先批量删除所有子类别
-        List<String> allChildTypeIds = new ArrayList<>();
+        List<Integer> allChildTypeIds = new ArrayList<>();
         collectAllChildTypes(existIds, allChildTypeIds); // 递归收集所有子类别ID
         if (!allChildTypeIds.isEmpty()) {
             this.removeBatchWithCheck(allChildTypeIds); // 批量删除所有子类别
@@ -357,10 +361,10 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
     /**
      * 递归收集所有层级的子类别ID
      */
-    private void collectAllChildTypes(List<String> parentTypeIds, List<String> allChildTypeIds) {
+    private void collectAllChildTypes(List<Integer> parentTypeIds, List<Integer> allChildTypeIds) {
         LambdaQueryWrapper<EquipmentType> wrapper = new LambdaQueryWrapper<>();
-        wrapper.in(EquipmentType::getParentTypeId, parentTypeIds);
-        List<String> childIds = this.list(wrapper).stream()
+        wrapper.in(EquipmentType::getParentId, parentTypeIds);
+        List<Integer> childIds = this.list(wrapper).stream()
                 .map(EquipmentType::getId)
                 .collect(Collectors.toList());
         if (!childIds.isEmpty()) {
@@ -370,14 +374,14 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
     }
 
     //检查targetId是否是currentId的子类别或自身
-    private boolean isChildOrSelf(String targetId, String currentId) {
+    private boolean isChildOrSelf(Integer targetId, Integer currentId) {
         if (targetId.equals(currentId)) {
             //自身不能作为父类别
             return true;
         }
         // 查询targetId的所有子类别
         LambdaQueryWrapper<EquipmentType> wrapper = new LambdaQueryWrapper<>();
-        wrapper.eq(EquipmentType::getParentTypeId, targetId);
+        wrapper.eq(EquipmentType::getParentId, targetId);
         List<EquipmentType> children = this.list(wrapper);
         for (EquipmentType child : children) {
             if (child.getId().equals(currentId) || isChildOrSelf(child.getId(), currentId)) {

+ 3 - 3
pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/GasDashboardServiceImpl.java

@@ -66,8 +66,8 @@ public class GasDashboardServiceImpl implements GasDashboardService {
 
         // 2. 燃气设备 + 异常设备统计
         List<String> gasTypeIds = equipmentTypeMapper.selectList(null).stream()
-                .filter(t -> GasEquipmentTypeEnum.PARENT_TYPE_ID.equals(t.getParentTypeId()))
-                .map(EquipmentType::getId)
+                .filter(t -> GasEquipmentTypeEnum.parent_id.equals(t.getParentId()))
+                .map(type -> String.valueOf(type.getId()))
                 .collect(Collectors.toList());
         List<EquipmentBase> gasEquipments;
         if (gasTypeIds.isEmpty()) {
@@ -122,7 +122,7 @@ public class GasDashboardServiceImpl implements GasDashboardService {
         // ---- 设备统计 ----
         // 门阀数 = 燃气设备中类型名称含"阀"的数量
         Map<String, String> typeIdToName = equipmentTypeMapper.selectList(null).stream()
-                .collect(Collectors.toMap(EquipmentType::getId, EquipmentType::getTypeName, (a, b) -> a));
+                .collect(Collectors.toMap(type -> String.valueOf(type.getId()), EquipmentType::getTypeName, (a, b) -> a));
         long valveCount = gasEquipments.stream()
                 .filter(e -> {
                     String typeName = typeIdToName.getOrDefault(e.getEquipmentTypeId(), "");

+ 3 - 3
pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/GasEquipmentServiceImpl.java

@@ -167,10 +167,10 @@ public class GasEquipmentServiceImpl implements GasEquipmentService {
     public Page<EquipmentFullVO> findFullByPage(long pageNum, long pageSize,
                                                  String equipmentCode, String equipmentName,
                                                  String equipmentModel, String manufacturer,String district) {
-        // 只查燃气类型设备: parent_type_id = "3"
+        // 只查燃气类型设备:parent_id = 燃气根节点主键
         List<String> gasTypeIds = equipmentTypeMapper.selectList(
-                new LambdaQueryWrapper<EquipmentType>().eq(EquipmentType::getParentTypeId, GasEquipmentTypeEnum.PARENT_TYPE_ID)
-        ).stream().map(EquipmentType::getId).collect(Collectors.toList());
+                new LambdaQueryWrapper<EquipmentType>().eq(EquipmentType::getParentId, GasEquipmentTypeEnum.parent_id)
+        ).stream().map(type -> String.valueOf(type.getId())).collect(Collectors.toList());
 
         Page<EquipmentBase> page = new Page<>(pageNum, pageSize);
         LambdaQueryWrapper<EquipmentBase> qw = new LambdaQueryWrapper<>();

+ 5 - 4
pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/GasMonitorServiceImpl.java

@@ -7,6 +7,7 @@ import com.zksy.base.domain.EquipmentType;
 import com.zksy.base.domain.MonitorPoint;
 import com.zksy.base.environment.domain.ERealTimeData;
 import com.zksy.base.environment.mapper.ERealTimeDataMapper;
+import com.zksy.base.enums.EquipmentTypeEnum;
 import com.zksy.base.gas.domain.GasMonitorData;
 import com.zksy.base.gas.mapper.GasMonitorDataMapper;
 import com.zksy.base.mapper.EquipmentBaseMapper;
@@ -43,8 +44,8 @@ public class GasMonitorServiceImpl implements GasMonitorService {
 
     private static final DateTimeFormatter DT_FMT = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
 
-    /** 燃气设备父类ID */
-    private static final String GAS_PARENT_TYPE_ID = "3";
+    /** 燃气设备父类ID(整数主键,取值见 EquipmentTypeEnum) */
+    private static final Integer GAS_parent_id = EquipmentTypeEnum.ROOT_GAS_DEVICE.getId();
 
     @Override
     public List<Map<String, Object>> getPoints() {
@@ -224,9 +225,9 @@ public class GasMonitorServiceImpl implements GasMonitorService {
     private Set<String> getGasParentTypeIds() {
         List<EquipmentType> gasTypes = equipmentTypeMapper.selectList(
                 new LambdaQueryWrapper<EquipmentType>()
-                        .eq(EquipmentType::getParentTypeId, GAS_PARENT_TYPE_ID));
+                        .eq(EquipmentType::getParentId, GAS_parent_id));
         return gasTypes.stream()
-                .map(EquipmentType::getId)
+                .map(type -> String.valueOf(type.getId()))
                 .collect(Collectors.toSet());
     }
 }

+ 23 - 0
pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/HazardHiddenAccountServiceImpl.java

@@ -44,9 +44,32 @@ public class HazardHiddenAccountServiceImpl extends ServiceImpl<HazardHiddenAcco
         wrapper.eq(dto.getHazardType() != null && !dto.getHazardType().isEmpty(), HazardHiddenAccount::getHazardType, dto.getHazardType());
         wrapper.eq(dto.getHazardLevel() != null && !dto.getHazardLevel().isEmpty(), HazardHiddenAccount::getHazardLevel, dto.getHazardLevel());
         wrapper.eq(dto.getHazardStatus() != null && !dto.getHazardStatus().isEmpty(), HazardHiddenAccount::getHazardStatus, dto.getHazardStatus());
+        wrapper.eq(StringUtils.hasText(dto.getHazardSource()), HazardHiddenAccount::getHazardSource, dto.getHazardSource());
         wrapper.eq(dto.getIsSubmitted() != null, HazardHiddenAccount::getIsSubmitted, dto.getIsSubmitted());
         wrapper.eq(dto.getNetworkId() != null && !dto.getNetworkId().isEmpty(), HazardHiddenAccount::getNetworkId, dto.getNetworkId());
         wrapper.eq(dto.getEquipmentId() != null && !dto.getEquipmentId().isEmpty(), HazardHiddenAccount::getEquipmentId, dto.getEquipmentId());
+        if (StringUtils.hasText(dto.getKeyword())) {
+            wrapper.and(item -> item.like(HazardHiddenAccount::getHazardNo, dto.getKeyword())
+                    .or().like(HazardHiddenAccount::getHazardDesc, dto.getKeyword())
+                    .or().like(HazardHiddenAccount::getReportUnit, dto.getKeyword()));
+        }
+        boolean querySubmitTime = "submit".equalsIgnoreCase(dto.getTimeType());
+        if (StringUtils.hasText(dto.getStartDate())) {
+            LocalDateTime startTime = LocalDate.parse(dto.getStartDate()).atStartOfDay();
+            if (querySubmitTime) {
+                wrapper.ge(HazardHiddenAccount::getSubmitTime, startTime);
+            } else {
+                wrapper.ge(HazardHiddenAccount::getReportTime, startTime);
+            }
+        }
+        if (StringUtils.hasText(dto.getEndDate())) {
+            LocalDateTime endTime = LocalDate.parse(dto.getEndDate()).atTime(LocalTime.MAX);
+            if (querySubmitTime) {
+                wrapper.le(HazardHiddenAccount::getSubmitTime, endTime);
+            } else {
+                wrapper.le(HazardHiddenAccount::getReportTime, endTime);
+            }
+        }
         wrapper.orderByDesc(HazardHiddenAccount::getCreateTime);
         return this.page(page, wrapper);
     }

+ 6 - 2
pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/ManholeLayerServiceImpl.java

@@ -100,11 +100,15 @@ public class ManholeLayerServiceImpl implements ManholeLayerService {
                 .collect(Collectors.toList());
         Map<String, EquipmentType> typeMap = new HashMap<>();
         if (CollUtil.isNotEmpty(equipmentTypeIdList)) {
+            List<Integer> typeIdNumbers = equipmentTypeIdList.stream()
+                    .filter(id -> id != null && id.matches("\\d+"))
+                    .map(Integer::valueOf)
+                    .collect(Collectors.toList());
             List<EquipmentType> typeList = equipmentTypeService.list(new LambdaQueryWrapper<EquipmentType>()
-                    .in(EquipmentType::getId, equipmentTypeIdList));
+                    .in(EquipmentType::getId, typeIdNumbers));
             if (CollUtil.isNotEmpty(typeList)) {
                 typeMap = typeList.stream().collect(
-                        Collectors.toMap(EquipmentType::getId, Function.identity(), (key1, key2) -> key2));
+                        Collectors.toMap(type -> String.valueOf(type.getId()), Function.identity(), (key1, key2) -> key2));
             }
         }
 

+ 12 - 21
pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/MonitoringServiceImpl.java

@@ -8,6 +8,7 @@ import com.zksy.base.audio.domain.NoiseInfo;
 import com.zksy.base.audio.mapper.NoiseInfoMapper;
 import com.zksy.base.domain.EquipmentBase;
 import com.zksy.base.domain.EquipmentType;
+import com.zksy.base.enums.EquipmentTypeEnum;
 import com.zksy.base.domain.vo.FlowMonitoringVO;
 import com.zksy.base.domain.vo.LeakageMonitoringVO;
 import com.zksy.base.domain.vo.PressureMonitoringVO;
@@ -34,15 +35,7 @@ public class MonitoringServiceImpl implements MonitoringService {
     private static final String RADAR_SOURCE = "雷达流量计";
     private static final String TELEMETRY_SOURCE = "遥测终端";
 
-    private static final String WATER_SUPPLY_ROOT_ID = "1";
-    private static final String WATER_SUPPLY_ROOT_TYPE_ID = "water_supply";
-    private static final String WATER_SUPPLY_ROOT_PARENT_ID = "0";
-    // 监测类型以库中 equipment_type 为权威(供水设备 parent_type_id=1 下的真实子类型):
-    // 超声波外夹流量计 / 压力计 / 漏失在线监测仪;此前的 ws_flow / ws_pressure / ws_leak
-    // 在现网类型表中并不存在,会导致运行监测三个页面取不到任何设备。
-    private static final String FLOW_TYPE_ID = "ultrasonic_flowmeter";
-    private static final String PRESSURE_TYPE_ID = "pressure_gauge";
-    private static final String LEAKAGE_TYPE_ID = "leak_monitor";
+    // 供水监测口径的设备类型主键,取值见 com.zksy.base.enums.EquipmentTypeEnum
 
     @Autowired
     private EquipmentBaseMapper equipmentBaseMapper;
@@ -321,7 +314,7 @@ public class MonitoringServiceImpl implements MonitoringService {
             return Collections.emptyMap();
         }
         return equipmentTypeMapper.selectList(new LambdaQueryWrapper<>()).stream()
-                .collect(Collectors.toMap(EquipmentType::getId, Function.identity(), (left, right) -> left));
+                .collect(Collectors.toMap(type -> String.valueOf(type.getId()), Function.identity(), (left, right) -> left));
     }
 
     private Map<String, RadarData> selectLatestRadar(List<EquipmentBase> devices,
@@ -522,33 +515,31 @@ public class MonitoringServiceImpl implements MonitoringService {
 
     /** Restrict monitoring pages and trends to the canonical water-supply monitoring types. */
     private Set<String> selectMonitoringTypeIds(String monitorKind) {
-        String typeId;
+        Integer typeId;
         switch (monitorKind) {
             case "pressure":
-                typeId = PRESSURE_TYPE_ID;
+                typeId = EquipmentTypeEnum.PRESSURE_GAUGE.getId();
                 break;
             case "leakage":
-                typeId = LEAKAGE_TYPE_ID;
+                typeId = EquipmentTypeEnum.LEAK_MONITOR.getId();
                 break;
             case "flow":
-                typeId = FLOW_TYPE_ID;
+                typeId = EquipmentTypeEnum.ULTRASONIC_FLOWMETER.getId();
                 break;
             default:
                 return Collections.emptySet();
         }
         List<EquipmentType> types = equipmentTypeMapper.selectList(new LambdaQueryWrapper<>());
+        // 以 EquipmentTypeEnum 中定义的规范类型为准:供水根节点存在且层级正确才继续
         boolean hasCanonicalWaterSupplyRoot = types.stream()
-                .anyMatch(type -> WATER_SUPPLY_ROOT_ID.equals(type.getId())
-                        && WATER_SUPPLY_ROOT_TYPE_ID.equals(type.getTypeId())
-                        && WATER_SUPPLY_ROOT_PARENT_ID.equals(type.getParentTypeId()));
+                .anyMatch(type -> EquipmentTypeEnum.ROOT_WATER_SUPPLY_DEVICE.getId().equals(type.getId())
+                        && EquipmentTypeEnum.ROOT_WATER_SUPPLY_DEVICE.getParentId().equals(type.getParentId()));
         if (!hasCanonicalWaterSupplyRoot) {
             return Collections.emptySet();
         }
         return types.stream()
-                .filter(type -> typeId.equals(type.getTypeId()))
-                .filter(type -> WATER_SUPPLY_ROOT_ID.equals(type.getParentTypeId()))
-                .map(EquipmentType::getId)
-                .filter(StrUtil::isNotBlank)
+                .filter(type -> typeId.equals(type.getId()))
+                .map(type -> String.valueOf(type.getId()))
                 .collect(Collectors.toSet());
     }
 }

+ 99 - 55
pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/WaterSupplyDeviceServiceImpl.java

@@ -18,6 +18,7 @@ import com.zksy.ops.domain.WorkOrder;
 import com.zksy.base.domain.vo.*;
 import com.zksy.base.event.DeviceStatusChangePublisher;
 import com.zksy.base.environment.domain.ERealTimeData;
+import com.zksy.ops.enums.WorkOrderStatusEnum;
 import com.zksy.ops.dto.WorkOrderDispatchDTO;
 import com.zksy.base.environment.mapper.ERealTimeDataMapper;
 import com.zksy.base.gas.domain.GasMonitorData;
@@ -26,6 +27,7 @@ import com.zksy.base.mapper.EquipmentBaseMapper;
 import com.zksy.base.mapper.EquipmentMaintainMapper;
 import com.zksy.base.mapper.EquipmentStatusMapper;
 import com.zksy.base.mapper.EquipmentTypeMapper;
+import com.zksy.ops.mapper.WorkOrderMapper;
 import com.zksy.base.pressure.domain.FirefightingPressure;
 import com.zksy.base.pressure.mapper.FirefightingPressureMapper;
 import com.zksy.base.radar.domain.RadarData;
@@ -43,6 +45,7 @@ import com.zksy.ops.service.WorkOrderService;
 import com.zksy.system.service.ISysUserService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -96,7 +99,7 @@ public class WaterSupplyDeviceServiceImpl extends ServiceImpl<EquipmentBaseMappe
     private EquipmentBaseService equipmentBaseService;
 
     @Autowired
-    private WaterSupplyQueryService waterSupplyQueryService;
+    private WorkOrderMapper workOrderMapper;
 
     @Autowired
     private WorkOrderService businessWorkOrderService;
@@ -104,6 +107,9 @@ public class WaterSupplyDeviceServiceImpl extends ServiceImpl<EquipmentBaseMappe
     @Autowired
     private ISysUserService sysUserService;
 
+    @Value("${waterSupply.device.top-level-type:供水}")
+    private String waterTopLevelTypeName = "供水";
+
     @Autowired(required = false)
     private SmsTemplate smsTemplate;
 
@@ -119,39 +125,42 @@ public class WaterSupplyDeviceServiceImpl extends ServiceImpl<EquipmentBaseMappe
                 .collect(Collectors.groupingBy(EquipmentBase::getEquipmentTypeId, Collectors.counting()));
 
         List<EquipmentType> allTypes = equipmentTypeMapper.selectList(
-                new LambdaQueryWrapper<EquipmentType>().orderByAsc(EquipmentType::getTypeId)
+                new LambdaQueryWrapper<EquipmentType>().orderByAsc(EquipmentType::getId)
         );
         if (CollUtil.isEmpty(allTypes)) {
             return new ArrayList<>();
         }
         Set<String> waterTypeRecordIds = resolveOwnedTypeRecordIds(allTypes, typeCountMap.keySet());
 
+        // equipment_base.equipment_type_id 仍为字符串,此处统一用 id 字符串做 key
         Map<String, DeviceTypeStatisticsVO> voMap = new HashMap<>();
         for (EquipmentType type : allTypes) {
-            if (!waterTypeRecordIds.contains(type.getId())) {
+            String recordId = String.valueOf(type.getId());
+            if (!waterTypeRecordIds.contains(recordId)) {
                 continue;
             }
             DeviceTypeStatisticsVO vo = new DeviceTypeStatisticsVO();
-            vo.setTypeId(type.getTypeId());
+            vo.setTypeId(type.getId());
             vo.setTypeName(type.getTypeName());
-            vo.setParentTypeId(type.getParentTypeId());
-            vo.setDeviceCount(typeCountMap.getOrDefault(type.getId(), 0L).intValue());
+            vo.setParentTypeId(type.getParentId());
+            vo.setDeviceCount(typeCountMap.getOrDefault(recordId, 0L).intValue());
             vo.setChildren(new ArrayList<>());
-            voMap.put(type.getId(), vo);
+            voMap.put(recordId, vo);
         }
 
         List<DeviceTypeStatisticsVO> roots = new ArrayList<>();
         for (EquipmentType type : allTypes) {
-            DeviceTypeStatisticsVO vo = voMap.get(type.getId());
+            DeviceTypeStatisticsVO vo = voMap.get(String.valueOf(type.getId()));
             if (vo == null) {
                 continue;
             }
-            String parentRecordId = type.getParentTypeId();
-            if (parentRecordId == null || "0".equals(parentRecordId)
-                    || !voMap.containsKey(parentRecordId)) {
+            Integer parentRecordId = type.getParentId();
+            String parentRecordKey = String.valueOf(parentRecordId);
+            if (parentRecordId == null || Integer.valueOf(0).equals(parentRecordId)
+                    || !voMap.containsKey(parentRecordKey)) {
                 roots.add(vo);
             } else {
-                voMap.get(parentRecordId).getChildren().add(vo);
+                voMap.get(parentRecordKey).getChildren().add(vo);
             }
         }
 
@@ -317,7 +326,21 @@ public class WaterSupplyDeviceServiceImpl extends ServiceImpl<EquipmentBaseMappe
     }
 
     private boolean isWaterTypeRecord(EquipmentType type) {
-        return waterSupplyQueryService.isWaterTypeRecord(type);
+        List<EquipmentType> allTypes = equipmentTypeMapper.selectList(new LambdaQueryWrapper<EquipmentType>());
+        Map<String, EquipmentType> typesById = new HashMap<>();
+        for (EquipmentType item : allTypes) {
+            typesById.putIfAbsent(String.valueOf(item.getId()), item);
+        }
+        EquipmentType cursor = type;
+        int guard = 0;
+        while (cursor != null && guard++ <= typesById.size()) {
+            if (waterTopLevelTypeName.equals(cursor.getTypeName())
+                    && Integer.valueOf(0).equals(cursor.getParentId())) {
+                return true;
+            }
+            cursor = typesById.get(String.valueOf(cursor.getParentId()));
+        }
+        return false;
     }
 
     @Override
@@ -534,7 +557,7 @@ public class WaterSupplyDeviceServiceImpl extends ServiceImpl<EquipmentBaseMappe
                                                          String equipmentName, String equipmentCode,
                                                          String equipmentTypeId, Integer alertLevel,
                                                          Boolean dispatchableOnly) {
-        return getAbnormalDevicePage(pageNum, pageSize, equipmentName, equipmentCode,
+        return queryAbnormalDevices(pageNum, pageSize, equipmentName, equipmentCode,
                 equipmentTypeId, alertLevel, null, null, dispatchableOnly);
     }
 
@@ -543,7 +566,7 @@ public class WaterSupplyDeviceServiceImpl extends ServiceImpl<EquipmentBaseMappe
                                                          String equipmentName, String equipmentCode,
                                                          String equipmentTypeId, Integer alertLevel,
                                                          String abnormalType, String region) {
-        return getAbnormalDevicePage(pageNum, pageSize, equipmentName, equipmentCode,
+        return queryAbnormalDevices(pageNum, pageSize, equipmentName, equipmentCode,
                 equipmentTypeId, alertLevel, abnormalType, region, false);
     }
 
@@ -616,8 +639,7 @@ public class WaterSupplyDeviceServiceImpl extends ServiceImpl<EquipmentBaseMappe
 
         LambdaQueryWrapper<EquipmentStatus> statusWrapper = new LambdaQueryWrapper<>();
         statusWrapper.and(w -> w.eq(EquipmentStatus::getAlarmStatus, 1)
-                .or().eq(EquipmentStatus::getCurrentStatus, 3)
-                .or().eq(EquipmentStatus::getOnlineStatus, 0));
+                .or().eq(EquipmentStatus::getCurrentStatus, 3));
 
         List<EquipmentStatus> allAbnormalStatus = equipmentStatusMapper.selectList(statusWrapper);
         Map<String, EquipmentStatus> statusMap = allAbnormalStatus.stream()
@@ -631,8 +653,7 @@ public class WaterSupplyDeviceServiceImpl extends ServiceImpl<EquipmentBaseMappe
                         return activeAlarmMap.containsKey(device.getEquipmentCode());
                     }
                     return Objects.equals(status.getAlarmStatus(), 1)
-                            || Objects.equals(status.getCurrentStatus(), 3)
-                            || Objects.equals(status.getOnlineStatus(), 0);
+                            || Objects.equals(status.getCurrentStatus(), 3);
                 })
                 .filter(device -> matchesLedgerFilters(device, equipmentName, equipmentCode, equipmentTypeId))
                 .filter(device -> matchesAbnormalType(device, statusMap.get(device.getEquipmentId()),
@@ -689,6 +710,25 @@ public class WaterSupplyDeviceServiceImpl extends ServiceImpl<EquipmentBaseMappe
                 equipmentTypeId, alertLevel, abnormalType, region, false).getRecords();
     }
 
+    private boolean matchesAbnormalType(EquipmentBase device, EquipmentStatus status,
+                                        Map<String, AlarmData> activeAlarmMap, String abnormalType) {
+        if (StrUtil.isBlank(abnormalType)) {
+            return true;
+        }
+        boolean alarmAbnormal = status != null && Objects.equals(status.getAlarmStatus(), 1)
+                || (status == null && activeAlarmMap.containsKey(device.getEquipmentCode()));
+        if ("alarm".equals(abnormalType)) {
+            return alarmAbnormal;
+        }
+        if ("repair".equals(abnormalType)) {
+            return status != null && Objects.equals(status.getCurrentStatus(), 3);
+        }
+        if ("offline".equals(abnormalType)) {
+            return status != null && Objects.equals(status.getOnlineStatus(), 0);
+        }
+        return false;
+    }
+
     @Override
     public List<AbnormalDeviceVO> getAbnormalDeviceGisPoints(String equipmentTypeId) {
         List<EquipmentBase> ownedDevices = findWaterDevices();
@@ -866,7 +906,7 @@ public class WaterSupplyDeviceServiceImpl extends ServiceImpl<EquipmentBaseMappe
     }
 
     private List<EquipmentBase> findWaterDevices() {
-        return waterSupplyQueryService.findWaterDevices();
+        return equipmentBaseService.findByTopLevelType(waterTopLevelTypeName);
     }
 
     private EquipmentBase findWaterDeviceById(String equipmentId) {
@@ -881,21 +921,21 @@ public class WaterSupplyDeviceServiceImpl extends ServiceImpl<EquipmentBaseMappe
 
     private Set<String> resolveOwnedTypeRecordIds(List<EquipmentType> allTypes, Set<String> usedTypeIds) {
         Map<String, List<EquipmentType>> childrenByParent = allTypes.stream()
-                .filter(type -> StrUtil.isNotBlank(type.getParentTypeId()))
-                .collect(Collectors.groupingBy(EquipmentType::getParentTypeId));
+                .filter(type -> type.getParentId() != null)
+                .collect(Collectors.groupingBy(type -> String.valueOf(type.getParentId())));
         Map<String, EquipmentType> typesById = allTypes.stream()
-                .collect(Collectors.toMap(EquipmentType::getId, type -> type, (left, right) -> left));
+                .collect(Collectors.toMap(type -> String.valueOf(type.getId()), type -> type, (left, right) -> left));
 
         Set<String> ownedIds = new HashSet<>();
         for (String usedTypeId : usedTypeIds) {
             EquipmentType type = typesById.get(usedTypeId);
-            while (type != null && type.getParentTypeId() != null
-                    && !"0".equals(type.getParentTypeId())
-                    && ownedIds.add(type.getId())) {
-                type = typesById.get(type.getParentTypeId());
+            while (type != null && type.getParentId() != null
+                    && !Integer.valueOf(0).equals(type.getParentId())
+                    && ownedIds.add(String.valueOf(type.getId()))) {
+                type = typesById.get(String.valueOf(type.getParentId()));
             }
             if (type != null) {
-                ownedIds.add(type.getId());
+                ownedIds.add(String.valueOf(type.getId()));
             }
         }
 
@@ -910,8 +950,8 @@ public class WaterSupplyDeviceServiceImpl extends ServiceImpl<EquipmentBaseMappe
                                     Map<String, List<EquipmentType>> childrenByParent,
                                     Set<String> result) {
         for (EquipmentType child : childrenByParent.getOrDefault(parentId, Collections.emptyList())) {
-            if (result.add(child.getId())) {
-                expandChildTypeIds(child.getId(), childrenByParent, result);
+            if (result.add(String.valueOf(child.getId()))) {
+                expandChildTypeIds(String.valueOf(child.getId()), childrenByParent, result);
             }
         }
     }
@@ -925,25 +965,6 @@ public class WaterSupplyDeviceServiceImpl extends ServiceImpl<EquipmentBaseMappe
                 && (StrUtil.isBlank(equipmentTypeId) || equipmentTypeId.equals(device.getEquipmentTypeId()));
     }
 
-    private boolean matchesAbnormalType(EquipmentBase device, EquipmentStatus status,
-                                        Map<String, AlarmData> activeAlarmMap, String abnormalType) {
-        if (StrUtil.isBlank(abnormalType)) {
-            return true;
-        }
-        boolean alarmAbnormal = status != null && Objects.equals(status.getAlarmStatus(), 1)
-                || (status == null && activeAlarmMap.containsKey(device.getEquipmentCode()));
-        if ("alarm".equals(abnormalType)) {
-            return alarmAbnormal;
-        }
-        if ("repair".equals(abnormalType)) {
-            return status != null && Objects.equals(status.getCurrentStatus(), 3);
-        }
-        if ("offline".equals(abnormalType)) {
-            return status != null && Objects.equals(status.getOnlineStatus(), 0);
-        }
-        return false;
-    }
-
     private <T> Page<T> paginate(List<T> records, long pageNum, long pageSize) {
         Page<T> page = new Page<>(pageNum, pageSize, records.size());
         if (pageNum < 1 || pageSize < 1) {
@@ -1012,9 +1033,27 @@ public class WaterSupplyDeviceServiceImpl extends ServiceImpl<EquipmentBaseMappe
         if (CollUtil.isEmpty(devices)) {
             return new HashMap<>();
         }
-        return waterSupplyQueryService.latestActiveOrdersByDeviceIds(devices.stream()
+        List<String> equipmentIds = devices.stream()
                 .map(EquipmentBase::getEquipmentId)
-                .collect(Collectors.toList()));
+                .filter(StrUtil::isNotBlank)
+                .collect(Collectors.toList());
+        if (CollUtil.isEmpty(equipmentIds)) {
+            return new HashMap<>();
+        }
+        List<WorkOrder> orders = workOrderMapper.selectList(
+                new LambdaQueryWrapper<WorkOrder>()
+                        .in(WorkOrder::getDeviceId, equipmentIds)
+                        .notIn(WorkOrder::getOrderStatus, WorkOrderStatusEnum.finishedCodes())
+                        .orderByDesc(WorkOrder::getCreateTime)
+        );
+        Map<String, WorkOrder> result = new HashMap<>();
+        for (WorkOrder order : orders) {
+            if (WorkOrderStatusEnum.isFinished(order.getOrderStatus())) {
+                continue;
+            }
+            result.putIfAbsent(order.getDeviceId(), order);
+        }
+        return result;
     }
 
     private Integer resolveAlertLevel(EquipmentBase device, EquipmentStatus status, Map<String, AlarmData> alarmMap) {
@@ -1043,8 +1082,6 @@ public class WaterSupplyDeviceServiceImpl extends ServiceImpl<EquipmentBaseMappe
             vo.setAlarmTime(alarm.getAlarmTime());
         } else if (Objects.equals(vo.getCurrentStatus(), 3)) {
             vo.setAbnormalReason("设备维修中");
-        } else if (Objects.equals(vo.getOnlineStatus(), 0)) {
-            vo.setAbnormalReason("设备离线");
         } else {
             vo.setAbnormalReason("设备异常");
         }
@@ -1087,7 +1124,14 @@ public class WaterSupplyDeviceServiceImpl extends ServiceImpl<EquipmentBaseMappe
     }
 
     private Map<String, EquipmentStatus> getStatusMap(List<String> equipmentIds) {
-        return waterSupplyQueryService.statusesByDeviceIds(equipmentIds);
+        if (CollUtil.isEmpty(equipmentIds)) {
+            return new HashMap<>();
+        }
+        List<EquipmentStatus> statusList = equipmentStatusMapper.selectList(
+                new LambdaQueryWrapper<EquipmentStatus>().in(EquipmentStatus::getEquipmentId, equipmentIds)
+        );
+        return statusList.stream()
+                .collect(Collectors.toMap(EquipmentStatus::getEquipmentId, s -> s, (a, b) -> a));
     }
 
     private Map<String, EquipmentType> getTypeMap(List<EquipmentBase> devices) {
@@ -1102,7 +1146,7 @@ public class WaterSupplyDeviceServiceImpl extends ServiceImpl<EquipmentBaseMappe
         }
         List<EquipmentType> types = equipmentTypeMapper.selectBatchIds(typeIds);
         return types.stream()
-                .collect(Collectors.toMap(EquipmentType::getId, t -> t, (a, b) -> a));
+                .collect(Collectors.toMap(type -> String.valueOf(type.getId()), t -> t, (a, b) -> a));
     }
 
     private Map<String, EquipmentMaintain> getLatestMaintainMap(List<String> equipmentIds) {

+ 2 - 21
pipe-network-service/zksy-system/src/main/java/com/zksy/base/service/impl/WaterSupplyQueryService.java

@@ -63,37 +63,18 @@ public class WaterSupplyQueryService {
         return equipmentBaseService.findByTopLevelType(topLevelTypeName);
     }
 
-    /** 给定设备类型记录是否位于供水类型树下(用于新增设备的准入校验)。 */
-    public boolean isWaterTypeRecord(EquipmentType type) {
-        if (type == null) {
-            return false;
-        }
-        List<EquipmentType> allTypes = equipmentTypeMapper.selectList(new LambdaQueryWrapper<>());
-        Map<String, EquipmentType> typesById = new HashMap<>();
-        for (EquipmentType item : allTypes) {
-            typesById.putIfAbsent(item.getId(), item);
-        }
-        EquipmentType cursor = type;
-        int guard = 0;
-        while (cursor != null && guard++ <= typesById.size()) {
-            if (topLevelTypeName.equals(cursor.getTypeName()) && "0".equals(cursor.getParentTypeId())) {
-                return true;
-            }
-            cursor = typesById.get(cursor.getParentTypeId());
-        }
-        return false;
-    }
-
     public Set<String> waterDeviceCodes() {
         return nonBlankKeys(findWaterDevices().stream()
                 .map(EquipmentBase::getEquipmentCode).collect(Collectors.toList()));
     }
 
+    /** 供水设备主键集合,供按设备维度过滤的工单统计使用。 */
     public Set<String> waterDeviceIds() {
         return nonBlankKeys(findWaterDevices().stream()
                 .map(EquipmentBase::getEquipmentId).collect(Collectors.toList()));
     }
 
+
     /** 仅补充当前结果涉及的设备信息;空集合不得退化为全表查询。 */
     public Map<String, EquipmentBase> equipmentByCodes(Collection<String> deviceCodes) {
         Set<String> codes = nonBlankKeys(deviceCodes);

+ 9 - 8
pipe-network-service/zksy-system/src/main/java/com/zksy/drainage/service/impl/DrainageWarningServiceImpl.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.zksy.common.exception.ServiceException;
 import com.zksy.base.domain.EquipmentBase;
+import com.zksy.base.enums.EquipmentTypeEnum;
 import com.zksy.base.mapper.EquipmentBaseMapper;
 import com.zksy.drainage.domain.DrainageWarning;
 import com.zksy.drainage.domain.WarningScopeUser;
@@ -90,11 +91,11 @@ public class DrainageWarningServiceImpl extends ServiceImpl<DrainageWarningMappe
         }
         // device_code 保存设备类型业务编码;历史预警按排水设备类型树筛选。
         if ("drainage".equalsIgnoreCase(equipmentType)) {
+            // device_code 保存设备类型主键(字符串形式),按排水类型树筛选:根节点或其直接子类型
             wrapper.inSql(DrainageWarning::getDeviceCode,
-                    "SELECT et.type_id FROM app_user.equipment_type et "
-                            + "WHERE et.type_id IS NOT NULL AND "
-                            + "(et.type_id = 'drainage' OR et.parent_type_id = '2' OR et.parent_type_id IN "
-                            + "(SELECT id FROM app_user.equipment_type WHERE type_id = 'drainage'))");
+                    "SELECT CAST(et.id AS varchar) FROM app_user.equipment_type et "
+                            + "WHERE et.id = " + EquipmentTypeEnum.ROOT_DRAINAGE_DEVICE.getId()
+                            + " OR et.parent_id = " + EquipmentTypeEnum.ROOT_DRAINAGE_DEVICE.getId());
         }
         // 附加筛选条件
         if (warningLevel != null) {
@@ -225,11 +226,11 @@ public class DrainageWarningServiceImpl extends ServiceImpl<DrainageWarningMappe
         }
         // device_code 保存设备类型的 type_id;当前预警按排水设备类型树筛选。
         if ("drainage".equalsIgnoreCase(equipmentType)) {
+            // device_code 保存设备类型主键(字符串形式),按排水类型树筛选:根节点或其直接子类型
             wrapper.inSql(DrainageWarning::getDeviceCode,
-                    "SELECT et.type_id FROM app_user.equipment_type et "
-                            + "WHERE et.type_id IS NOT NULL AND "
-                            + "(et.type_id = 'drainage' OR et.parent_type_id = '2' OR et.parent_type_id IN "
-                            + "(SELECT id FROM app_user.equipment_type WHERE type_id = 'drainage'))");
+                    "SELECT CAST(et.id AS varchar) FROM app_user.equipment_type et "
+                            + "WHERE et.id = " + EquipmentTypeEnum.ROOT_DRAINAGE_DEVICE.getId()
+                            + " OR et.parent_id = " + EquipmentTypeEnum.ROOT_DRAINAGE_DEVICE.getId());
         }
         if (equipmentName != null && !equipmentName.isEmpty()) {
             wrapper.like(DrainageWarning::getEquipmentName, equipmentName);

+ 1 - 1
pipe-network-service/zksy-system/src/main/java/com/zksy/ops/dto/WorkOrderPageDTO.java

@@ -66,7 +66,7 @@ public class WorkOrderPageDTO extends BaseEntity {
      * 设备父类别ID,用于按业务口径收窄工单范围(如燃气工单管理页只查燃气类设备的工单)。
      *
      * <p>过滤链路:work_order.device_id → equipment_base.equipment_id
-     * → equipment_base.equipment_type_id → equipment_type.id → equipment_type.parent_type_id
+     * → equipment_base.equipment_type_id → equipment_type.id → equipment_type.parent_id
      *
      * <p>为空表示不限制,兼容原有的全量工单查询与各既有调用方。
      */

+ 13 - 0
pipe-network-service/zksy-system/src/main/java/com/zksy/ops/service/WorkOrderService.java

@@ -76,6 +76,19 @@ public interface WorkOrderService extends IService<WorkOrder> {
      */
     Long createWorkOrder(WorkOrder workOrder);
 
+    /**
+     * 从报警记录创建工单(初始状态:待派单)。
+     *
+     * <p>同一报警记录重复调用时返回已有工单 ID,不重复建单;报警记录与工单的
+     * 状态回写由本方法在同一事务内完成。</p>
+     *
+     * @param alarmId    报警记录 ID
+     * @param orderLevel 工单优先级,传空时按报警等级映射
+     * @param orderDesc  工单问题描述,传空时按报警信息生成
+     * @return 工单 ID
+     */
+    Long createWorkOrderFromAlarm(String alarmId, Integer orderLevel, String orderDesc);
+
     /**
      * 从隐患创建工单(初始状态:待派单)
      *

+ 109 - 3
pipe-network-service/zksy-system/src/main/java/com/zksy/ops/service/impl/WorkOrderServiceImpl.java

@@ -7,6 +7,8 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.zksy.base.domain.EquipmentBase;
 import com.zksy.base.domain.EquipmentType;
 import com.zksy.base.domain.HazardHiddenAccount;
+import com.zksy.base.alarm.domain.AlarmData;
+import com.zksy.base.alarm.service.AlarmDataService;
 import com.zksy.ops.domain.WorkOrder;
 import com.zksy.ops.domain.WorkOrderLog;
 import com.zksy.ops.domain.vo.WorkOrderLogVO;
@@ -48,6 +50,7 @@ import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
 
 import java.text.SimpleDateFormat;
+import java.time.LocalDateTime;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collections;
@@ -119,6 +122,9 @@ public class WorkOrderServiceImpl extends ServiceImpl<WorkOrderMapper, WorkOrder
     @Autowired
     private HazardHiddenAccountMapper hazardHiddenAccountMapper;
 
+    @Autowired
+    private AlarmDataService alarmDataService;
+
     @Autowired
     private ISysUserService sysUserService;
 
@@ -283,6 +289,79 @@ public class WorkOrderServiceImpl extends ServiceImpl<WorkOrderMapper, WorkOrder
         return workOrder.getOrderId();
     }
 
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Long createWorkOrderFromAlarm(String alarmId, Integer orderLevel, String orderDesc) {
+        if (StringUtils.isEmpty(alarmId)) {
+            throw new ServiceException("报警ID不能为空");
+        }
+
+        AlarmData alarm = alarmDataService.getById(alarmId);
+        if (alarm == null) {
+            throw new ServiceException("报警信息不存在");
+        }
+
+        // 报警转工单必须幂等:重复点击直接返回已有工单,不重复生成工单。
+        WorkOrder existing = this.lambdaQuery()
+                .eq(WorkOrder::getAlarmId, alarmId)
+                .orderByDesc(WorkOrder::getOrderId)
+                .last("LIMIT 1")
+                .one();
+        if (existing != null) {
+            if (!Objects.equals(alarm.getAlarmStatus(), 1)) {
+                LocalDateTime now = LocalDateTime.now();
+                alarm.setAlarmStatus(1);
+                alarm.setHandleTime(now);
+                alarm.setHandleUser(currentUserName());
+                alarm.setHandleRemark("已关联工单:" + existing.getOrderNo());
+                alarm.setUpdateTime(now);
+                alarmDataService.updateById(alarm);
+            }
+            return existing.getOrderId();
+        }
+
+        EquipmentBase equipment = null;
+        if (StringUtils.isNotEmpty(alarm.getDeviceCode())) {
+            equipment = equipmentBaseMapper.selectOne(new LambdaQueryWrapper<EquipmentBase>()
+                    .eq(EquipmentBase::getEquipmentCode, alarm.getDeviceCode())
+                    .last("LIMIT 1"));
+        }
+        String deviceId = equipment == null ? alarm.getDeviceCode() : equipment.getEquipmentId();
+        checkDeviceOrderConflict(deviceId);
+
+        Date now = new Date();
+        WorkOrder workOrder = new WorkOrder();
+        workOrder.setAlarmId(alarmId);
+        workOrder.setOrderNo(generateOrderNo());
+        workOrder.setDeviceId(deviceId);
+        workOrder.setDeviceCode(alarm.getDeviceCode());
+        workOrder.setOrderLevel(orderLevel == null
+                ? mapAlarmLevelToOrderLevel(alarm.getAlarmLevel()).getCode()
+                : WorkOrderLevelEnum.getByCode(orderLevel).getCode());
+        workOrder.setOrderDesc(StringUtils.isNotEmpty(orderDesc) ? orderDesc : buildAlarmOrderDesc(alarm));
+        workOrder.setFaultTime(alarm.getAlarmTime() == null
+                ? now
+                : java.sql.Timestamp.valueOf(alarm.getAlarmTime()));
+        workOrder.setDeptId(assignScopeSupport.currentDeptId());
+        workOrder.setOrderStatus(WorkOrderStatusEnum.PENDING_DISPATCH.getCode());
+        workOrder.setDelayApplyStatus(WorkOrderDelayApplyStatusEnum.NONE.getCode());
+        workOrder.setCreateTime(now);
+        workOrder.setUpdateTime(now);
+        this.save(workOrder);
+
+        writeLog(workOrder.getOrderId(), WorkOrderLogOperTypeEnum.CREATE,
+                buildDesc("由报警[" + alarmId + "]创建工单", workOrder.getOrderDesc()), null);
+
+        LocalDateTime alarmUpdateTime = LocalDateTime.now();
+        alarm.setAlarmStatus(1);
+        alarm.setHandleTime(alarmUpdateTime);
+        alarm.setHandleUser(currentUserName());
+        alarm.setHandleRemark("已派发工单:" + workOrder.getOrderNo());
+        alarm.setUpdateTime(alarmUpdateTime);
+        alarmDataService.updateById(alarm);
+        return workOrder.getOrderId();
+    }
+
     @Override
     @Transactional(rollbackFor = Exception.class)
     public Long createWorkOrderFromHazard(String hazardId, String hazardNo, String hazardDesc, String equipmentId, String hazardLevel, String hazardImages, Date planFinishTime) {
@@ -599,7 +678,7 @@ public class WorkOrderServiceImpl extends ServiceImpl<WorkOrderMapper, WorkOrder
      * 按设备父类别收窄工单查询范围(业务口径过滤)。
      *
      * <p>过滤链路:work_order.device_id → equipment_base.equipment_id
-     * → equipment_base.equipment_type_id → equipment_type.id → equipment_type.parent_type_id。
+     * → equipment_base.equipment_type_id → equipment_type.id → equipment_type.parent_id。
      * 采用 EXISTS 子查询而非 JOIN,避免设备表一对多时放大分页结果集,也不影响已有的
      * 数据权限片段(dataScope)与 MyBatis-Plus 分页计数。</p>
      *
@@ -612,7 +691,7 @@ public class WorkOrderServiceImpl extends ServiceImpl<WorkOrderMapper, WorkOrder
         if (StringUtils.isEmpty(parentTypeId)) {
             return;
         }
-        wrapper.apply("EXISTS (SELECT 1 FROM app_user.equipment_base eb " + "INNER JOIN app_user.equipment_type et ON et.id = eb.equipment_type_id " + "WHERE eb.equipment_id = app_user.work_order.device_id " + "AND et.parent_type_id = {0})", parentTypeId.trim());
+        wrapper.apply("EXISTS (SELECT 1 FROM app_user.equipment_base eb " + "INNER JOIN app_user.equipment_type et ON et.id = eb.equipment_type_id " + "WHERE eb.equipment_id = app_user.work_order.device_id " + "AND et.parent_id = {0})", parentTypeId.trim());
     }
 
     /**
@@ -736,6 +815,33 @@ public class WorkOrderServiceImpl extends ServiceImpl<WorkOrderMapper, WorkOrder
         return WorkOrderLevelEnum.NORMAL;
     }
 
+    /** 报警等级映射工单优先级:1级最高为紧急,4级最低为低,其余为一般。 */
+    private WorkOrderLevelEnum mapAlarmLevelToOrderLevel(Integer alarmLevel) {
+        if (alarmLevel == null || alarmLevel == 1) {
+            return WorkOrderLevelEnum.URGENT;
+        }
+        if (alarmLevel == 4) {
+            return WorkOrderLevelEnum.LOW;
+        }
+        return WorkOrderLevelEnum.NORMAL;
+    }
+
+    /** 生成报警转工单时的默认问题描述。 */
+    private String buildAlarmOrderDesc(AlarmData alarm) {
+        StringBuilder sb = new StringBuilder();
+        sb.append(StringUtils.isEmpty(alarm.getWarningType()) ? "监测报警" : alarm.getWarningType());
+        sb.append(",当前值:").append(alarm.getActualValue() == null ? "-" : alarm.getActualValue().toPlainString());
+        if (alarm.getMinValue() != null || alarm.getMaxValue() != null) {
+            sb.append("(阈值:")
+                    .append(alarm.getMinValue() == null ? "-" : alarm.getMinValue().toPlainString())
+                    .append("~")
+                    .append(alarm.getMaxValue() == null ? "-" : alarm.getMaxValue().toPlainString())
+                    .append(")");
+        }
+        sb.append(",请现场核实处理");
+        return sb.toString();
+    }
+
     private String resolveDeviceCode(String deviceId) {
         try {
             EquipmentBase equipment = equipmentBaseMapper.selectById(deviceId);
@@ -916,7 +1022,7 @@ public class WorkOrderServiceImpl extends ServiceImpl<WorkOrderMapper, WorkOrder
         Map<String, String> typeNameMap = new HashMap<>();
         for (EquipmentType type : types) {
             if (StringUtils.isNotEmpty(type.getTypeName())) {
-                typeNameMap.putIfAbsent(type.getId(), type.getTypeName());
+                typeNameMap.putIfAbsent(String.valueOf(type.getId()), type.getTypeName());
             }
         }
         return typeNameMap;

+ 22 - 16
pipe-network-service/zksy-system/src/main/resources/mapper/warning/EarlyWarningMapper.xml

@@ -993,28 +993,37 @@
         FROM early_warning
     </select>
 
-    <!-- 行业处置分析:兼容 device_code 存设备实例编码或设备类别业务编码两种历史格式。 -->
+    <!-- 行业处置分析:兼容 device_code 存设备实例编码或设备类别主键两种历史格式。
+         设备类别主键改为整数后,业态由根节点 id 决定:1=供水 2=排水 3=燃气 4=窨井,
+         对外仍以 water_supply/drainage/gas/manhole 作为 industry_code,保持接口契约不变。 -->
     <sql id="IndustryWarningCte">
         WITH RECURSIVE type_tree AS (
-            SELECT et.id AS leaf_id, et.id AS current_id, et.type_id AS current_type_id,
-                   et.type_name AS current_name, et.parent_type_id, CAST(0 AS bigint) AS depth
+            SELECT et.id AS leaf_id, et.id AS current_id,
+                   et.type_name AS current_name, et.parent_id, CAST(0 AS bigint) AS depth
             FROM app_user.equipment_type et
             UNION ALL
-            SELECT tree.leaf_id, parent.id, parent.type_id, parent.type_name,
-                   parent.parent_type_id, tree.depth + 1
+            SELECT tree.leaf_id, parent.id, parent.type_name,
+                   parent.parent_id, tree.depth + 1
             FROM type_tree tree
-            INNER JOIN app_user.equipment_type parent ON parent.id = tree.parent_type_id
+            INNER JOIN app_user.equipment_type parent ON parent.id = tree.parent_id
         ),
         root_ranked AS (
-            SELECT leaf_id, current_type_id AS industry_code, current_name AS industry_name,
+            SELECT leaf_id, current_id AS industry_id, current_name AS industry_name,
                    ROW_NUMBER() OVER (PARTITION BY leaf_id ORDER BY depth DESC) AS row_num
             FROM type_tree
         ),
         type_roots AS (
-            SELECT leaf_id, industry_code, industry_name
+            SELECT leaf_id,
+                   CASE industry_id
+                       WHEN 1 THEN 'water_supply'
+                       WHEN 2 THEN 'drainage'
+                       WHEN 3 THEN 'gas'
+                       WHEN 4 THEN 'manhole'
+                   END AS industry_code,
+                   industry_name
             FROM root_ranked
             WHERE row_num = 1
-              AND industry_code IN ('water_supply', 'drainage', 'gas', 'manhole')
+              AND industry_id IN (1, 2, 3, 4)
         ),
         equipment_map AS (
             SELECT equipment_code, MIN(equipment_type_id) AS equipment_type_id
@@ -1022,18 +1031,15 @@
             WHERE del_flag = '0'
             GROUP BY equipment_code
         ),
-        type_code_map AS (
-            SELECT type_id, MIN(id) AS id
-            FROM app_user.equipment_type
-            GROUP BY type_id
-        ),
         warning_industry AS (
             SELECT w.*, roots.industry_code, roots.industry_name
             FROM app_user.early_warning w
             LEFT JOIN equipment_map equipment ON equipment.equipment_code = w.device_code
-            LEFT JOIN type_code_map direct_type ON direct_type.type_id = w.device_code
+            LEFT JOIN app_user.equipment_type direct_type
+                   ON CAST(direct_type.id AS varchar) = w.device_code
             INNER JOIN type_roots roots
-                    ON roots.leaf_id = COALESCE(equipment.equipment_type_id, direct_type.id)
+                    ON CAST(roots.leaf_id AS varchar) =
+                       COALESCE(equipment.equipment_type_id, CAST(direct_type.id AS varchar))
             WHERE w.status != 'DRAFT'
             <if test="startTime != null">
                 AND w.publish_time &gt;= #{startTime}

+ 4 - 4
pipe-network-service/zksy-system/src/test/java/com/zksy/WaterSupply/MonitorAlarm/WaterSupplyAlarmDashboardServiceTest.java

@@ -86,12 +86,12 @@ class WaterSupplyAlarmDashboardServiceTest {
         ReflectionTestUtils.setField(service, "workOrderMapper", workOrderMapper);
         ReflectionTestUtils.setField(service, "alarmAuditMapper", alarmAuditMapper);
 
-        EquipmentBase pressure = device("EQ-P-1", "CN-GS-202609020001", "TYPE-P");
-        EquipmentBase flow = device("EQ-F-1", "CN-GS-202609020002", "TYPE-F");
+        EquipmentBase pressure = device("EQ-P-1", "CN-GS-202609020001", "1");
+        EquipmentBase flow = device("EQ-F-1", "CN-GS-202609020002", "2");
         when(equipmentBaseService.findByTopLevelType("供水")).thenReturn(Arrays.asList(pressure, flow));
         when(equipmentBaseMapper.selectList(any())).thenReturn(Arrays.asList(pressure, flow));
         when(equipmentTypeMapper.selectBatchIds(any())).thenReturn(Arrays.asList(
-                type("TYPE-P", "压力监测"), type("TYPE-F", "流量监测")));
+                type(1, "压力监测"), type(2, "流量监测")));
         when(alarmAuditMapper.selectList(any())).thenReturn(Collections.emptyList());
     }
 
@@ -106,7 +106,7 @@ class WaterSupplyAlarmDashboardServiceTest {
         return device;
     }
 
-    private static EquipmentType type(String id, String name) {
+    private static EquipmentType type(Integer id, String name) {
         EquipmentType type = new EquipmentType();
         type.setId(id);
         type.setTypeName(name);

+ 19 - 19
pipe-network-service/zksy-system/src/test/java/com/zksy/WaterSupply/Monitoring/MonitoringFixtureTypeContractTest.java

@@ -18,11 +18,11 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
 /**
  * Gogs #56 / T05:供水监测与报警测试数据必须以库中真实的 equipment_type 为权威。
  *
- * <p>本轮迁移后供水子类型是 {@code ultrasonic_flowmeter} / {@code pressure_gauge} /
- * {@code leak_monitor}({@code parent_type_id = '1'})。旧种子脚本按已不存在的
- * {@code ws_flow} / {@code ws_pressure} / {@code ws_leak} 取类型,执行到一半即中断,
- * 造成运行监测三页空列表、设备台账类型错位、报警台账只剩少量能对上设备的记录。
- * 本测试把「不再引用旧类型标识、旧种子已退役、统一脚本存在且不新增设备类型」钉死。</p>
+ * <p>设备类别主键改造后,equipment_type 以整数主键为准(取值见
+ * {@code com.zksy.base.enums.EquipmentTypeEnum}):超声波外夹流量计 11、压力计 12、
+ * 漏失在线监测仪 13,且都挂在供水顶级类型 parent_id = 1 之下;业务编码列 type_id 已删除。</p>
+ *
+ * <p>本测试把「代码取枚举主键、脚本不再引用旧类型标识、旧种子已退役、统一脚本存在且不新增设备类型」钉死。</p>
  */
 class MonitoringFixtureTypeContractTest {
 
@@ -38,8 +38,8 @@ class MonitoringFixtureTypeContractTest {
 
     private static final List<String> LEGACY_TYPE_TOKENS = List.of("ws_flow", "ws_pressure", "ws_leak");
 
-    private static final List<String> REAL_MONITORING_TYPE_IDS = List.of(
-            "ultrasonic_flowmeter", "pressure_gauge", "leak_monitor");
+    /** EquipmentTypeEnum 中供水监测子类型的主键。 */
+    private static final List<Integer> MONITORING_TYPE_IDS = List.of(11, 12, 13);
 
     private static final String MONITORING_SERVICE =
             "zksy-system/src/main/java/com/zksy/base/service/impl/MonitoringServiceImpl.java";
@@ -66,7 +66,7 @@ class MonitoringFixtureTypeContractTest {
             }
         }
         assertTrue(offenders.isEmpty(),
-                "供水监测类型以库中 equipment_type 为权威,以下脚本仍引用已不存在的旧类型标识:\n"
+                "供水监测类型以库中 equipment_type 主键为权威,以下脚本仍引用已不存在的旧类型标识:\n"
                         + String.join("\n", offenders));
     }
 
@@ -87,25 +87,25 @@ class MonitoringFixtureTypeContractTest {
     @Test
     void unifiedSeedUsesOnlyExistingMonitoringTypesAndAddsNoNewType() throws IOException {
         String sql = Files.readString(repoRoot().resolve(UNIFIED_SEED), StandardCharsets.UTF_8);
-        for (String typeId : REAL_MONITORING_TYPE_IDS) {
-            assertTrue(sql.contains("type_id = '" + typeId + "'"),
-                    "统一脚本必须按库中真实 type_id 定位监测类型:" + typeId);
+        for (Integer typeId : MONITORING_TYPE_IDS) {
+            assertTrue(sql.contains("id = " + typeId),
+                    "统一脚本必须按 equipment_type 主键定位监测类型:" + typeId);
         }
         assertFalse(sql.contains("INSERT INTO app_user.equipment_type"),
                 "统一脚本不得新增设备类型,只能引用 equipment_type 现有记录");
-        assertTrue(sql.contains("parent_type_id = '1'"),
-                "供水监测类型必须限定在供水顶级类型(parent_type_id = '1')之下");
+        assertTrue(sql.contains("parent_id = 1"),
+                "供水监测类型必须限定在供水顶级类型(parent_id = 1)之下");
     }
 
     @Test
     void monitoringServiceConstantsMatchTheAuthoritativeDatabaseTypeIds() throws IOException {
         String source = Files.readString(repoRoot().resolve(MONITORING_SERVICE), StandardCharsets.UTF_8);
-        assertTrue(source.contains("FLOW_TYPE_ID = \"ultrasonic_flowmeter\""),
-                "运行监测流量类型常量必须与库中 type_id 对齐");
-        assertTrue(source.contains("PRESSURE_TYPE_ID = \"pressure_gauge\""),
-                "运行监测压力类型常量必须与库中 type_id 对齐");
-        assertTrue(source.contains("LEAKAGE_TYPE_ID = \"leak_monitor\""),
-                "运行监测漏失类型常量必须与库中 type_id 对齐");
+        assertTrue(source.contains("EquipmentTypeEnum.ULTRASONIC_FLOWMETER.getId()"),
+                "运行监测流量类型必须取 EquipmentTypeEnum 的主键");
+        assertTrue(source.contains("EquipmentTypeEnum.PRESSURE_GAUGE.getId()"),
+                "运行监测压力类型必须取 EquipmentTypeEnum 的主键");
+        assertTrue(source.contains("EquipmentTypeEnum.LEAK_MONITOR.getId()"),
+                "运行监测漏失类型必须取 EquipmentTypeEnum 的主键");
     }
 
     private static Path repoRoot() {

+ 9 - 10
pipe-network-service/zksy-system/src/test/java/com/zksy/WaterSupply/importing/WaterDeviceLedgerImportServiceTest.java

@@ -34,9 +34,9 @@ class WaterDeviceLedgerImportServiceTest {
     }
     @Test
     void importDevicesSavesWaterTypeWithEquipmentImage() {
-        EquipmentType waterRoot = type("db-water-root", "water-root", "供水", "0");
-        EquipmentType pressureType = type("db-water-pressure", "water-pressure", "压力计", "db-water-root");
-        EquipmentType gasRoot = type("db-gas-root", "gas-root", "燃气", "0");
+        EquipmentType waterRoot = type(1, "供水", 0);
+        EquipmentType pressureType = type(12, "压力计", 1);
+        EquipmentType gasRoot = type(3, "燃气设备", 0);
         when(equipmentTypeMapper.selectList(any())).thenReturn(Arrays.asList(waterRoot, pressureType, gasRoot));
         when(equipmentBaseService.getOne(any(), eq(false))).thenReturn(null);
         when(equipmentBaseService.save(any(EquipmentBase.class))).thenReturn(true);
@@ -55,16 +55,16 @@ class WaterDeviceLedgerImportServiceTest {
         ArgumentCaptor<EquipmentBase> captor = ArgumentCaptor.forClass(EquipmentBase.class);
         verify(equipmentBaseService).save(captor.capture());
         assertEquals("CN-GS-202609050001", captor.getValue().getEquipmentCode());
-        assertEquals("db-water-pressure", captor.getValue().getEquipmentTypeId());
+        assertEquals("12", captor.getValue().getEquipmentTypeId());
         assertEquals("https://example.com/device.jpg", captor.getValue().getEquipmentImage());
         verify(equipmentBaseService, never()).updateById(any(EquipmentBase.class));
     }
 
     @Test
     void importDevicesRejectsNonWaterTypeWithoutSaving() {
-        EquipmentType waterRoot = type("db-water-root", "water-root", "供水", "0");
-        EquipmentType gasChild = type("db-gas-pressure", "gas-pressure", "燃气压力计", "db-gas-root");
-        EquipmentType gasRoot = type("db-gas-root", "gas-root", "燃气", "0");
+        EquipmentType waterRoot = type(1, "供水", 0);
+        EquipmentType gasChild = type(22, "燃气压力计", 3);
+        EquipmentType gasRoot = type(3, "燃气设备", 0);
         when(equipmentTypeMapper.selectList(any())).thenReturn(Arrays.asList(waterRoot, gasChild, gasRoot));
 
         WaterDeviceLedgerImportDTO row = new WaterDeviceLedgerImportDTO();
@@ -80,12 +80,11 @@ class WaterDeviceLedgerImportServiceTest {
         verify(equipmentBaseService, never()).updateById(any(EquipmentBase.class));
     }
 
-    private static EquipmentType type(String id, String typeId, String name, String parentId) {
+    private static EquipmentType type(Integer id, String name, Integer parentId) {
         EquipmentType value = new EquipmentType();
         value.setId(id);
-        value.setTypeId(typeId);
         value.setTypeName(name);
-        value.setParentTypeId(parentId);
+        value.setParentId(parentId);
         return value;
     }
 }

+ 24 - 30
pipe-network-service/zksy-system/src/test/java/com/zksy/base/service/impl/MonitoringServiceImplTest.java

@@ -79,10 +79,10 @@ class MonitoringServiceImplTest {
         ReflectionTestUtils.setField(service, "noiseInfoMapper", noiseMapper);
 
         when(equipmentTypeMapper.selectList(any())).thenReturn(Arrays.asList(
-                type("1", "water_supply", "供水", "0"),
-                type("11", "ultrasonic_flowmeter", "供水流量计", "1"),
-                type("12", "pressure_gauge", "供水压力计", "1"),
-                type("13", "leak_monitor", "供水漏失监测器", "1")
+                type(1, "供水", 0),
+                type(11, "供水流量计", 1),
+                type(12, "供水压力计", 1),
+                type(13, "供水漏失监测器", 1)
         ));
         when(radarDataMapper.selectList(any())).thenReturn(Collections.emptyList());
         when(telemetryDataMapper.selectList(any())).thenReturn(Collections.emptyList());
@@ -208,25 +208,21 @@ class MonitoringServiceImplTest {
     @Test
     void flowMonitoringUsesCanonicalTypeIdsAndRejectsLegacyRuntimeTypes() {
         when(equipmentTypeMapper.selectList(any())).thenReturn(Arrays.asList(
-                type("1", "water_supply", "供水", "0"),
-                type("11", "ultrasonic_flowmeter", "供水流量计", "1"),
-                type("99", "legacy_flow", "流量监测(旧编码)", "1"),
-                type("TEST-WATER-FLOW", "test_water_flow", "流量监测(旧测试类型)", "1"),
-                type("98", "ultrasonic_flowmeter", "错误名称但真实流量编码", "1"),
-                type("97", "ultrasonic_flowmeter", "供水流量计但父级错误", "other-root"),
-                type("other-root", "other_root", "其他系统", "0"),
-                type("other-flow", "other_flow", "流量监测", "other-root")
+                type(1, "供水", 0),
+                type(11, "供水流量计", 1),
+                type(99, "流量监测(旧类型)", 1),
+                type(97, "供水流量计但父级错误", 3),
+                type(3, "其他系统", 0),
+                type(17, "流量监测", 2)
         ));
         when(equipmentBaseMapper.selectList(any())).thenAnswer(invocation -> {
             LambdaQueryWrapper<EquipmentBase> wrapper = invocation.getArgument(0);
             Set<Object> allowedTypeIds = flattenWrapperValues(wrapper);
             return Arrays.asList(
                     device("water-flow-device", "WS-FLOW", "供水流量监测点", "11", BASE_TIME),
-                    device("legacy-flow-device", "WS-LEGACY-FLOW", "旧编码流量监测点", "99", BASE_TIME),
-                    device("old-test-flow-device", "WS-OLD-TEST-FLOW", "旧测试类型流量监测点", "TEST-WATER-FLOW", BASE_TIME),
-                    device("real-id-wrong-name-device", "WS-FLOW-WRONG-NAME", "真实编码流量监测点", "98", BASE_TIME),
+                    device("legacy-flow-device", "WS-LEGACY-FLOW", "非规范类型流量监测点", "99", BASE_TIME),
                     device("wrong-parent-flow-device", "WS-FLOW-WRONG-PARENT", "错误父级流量监测点", "97", BASE_TIME),
-                    device("other-flow-device", "OTHER-FLOW", "其他系统流量监测点", "other-flow", BASE_TIME),
+                    device("other-flow-device", "OTHER-FLOW", "其他系统流量监测点", "17", BASE_TIME),
                     device("unknown-type-device", "UNKNOWN-FLOW", "未归属流量监测点", "unknown-type", BASE_TIME)
             ).stream()
                     .filter(device -> allowedTypeIds.contains(device.getEquipmentTypeId()))
@@ -235,8 +231,6 @@ class MonitoringServiceImplTest {
         when(radarDataMapper.selectList(any())).thenReturn(Arrays.asList(
                 radar("WS-FLOW", "10", BASE_TIME),
                 radar("WS-LEGACY-FLOW", "20", BASE_TIME),
-                radar("WS-OLD-TEST-FLOW", "25", BASE_TIME),
-                radar("WS-FLOW-WRONG-NAME", "30", BASE_TIME),
                 radar("WS-FLOW-WRONG-PARENT", "40", BASE_TIME),
                 radar("OTHER-FLOW", "20", BASE_TIME),
                 radar("UNKNOWN-FLOW", "30", BASE_TIME)
@@ -245,21 +239,22 @@ class MonitoringServiceImplTest {
         Page<FlowMonitoringVO> page = service.getFlowMonitorPage(
                 1, 10, null, null, null, null, null, null, null);
 
-        assertEquals(2, page.getTotal());
+        // 只有 EquipmentTypeEnum 定义的规范流量类型(11)计入
+        assertEquals(1, page.getTotal());
         assertEquals(
-                Set.of("water-flow-device", "real-id-wrong-name-device"),
+                Set.of("water-flow-device"),
                 page.getRecords().stream().map(FlowMonitoringVO::getEquipmentId).collect(Collectors.toSet()));
     }
 
     @Test
     void trendEndpointsRejectDevicesOutsideTheWaterTypeTree() {
         when(equipmentTypeMapper.selectList(any())).thenReturn(Arrays.asList(
-                type("1", "water_supply", "供水", "0"),
-                type("11", "ultrasonic_flowmeter", "供水流量计", "1"),
-                type("other-root", "other_root", "其他系统", "0"),
-                type("other-flow", "other_flow", "流量监测", "other-root")
+                type(1, "供水", 0),
+                type(11, "供水流量计", 1),
+                type(3, "其他系统", 0),
+                type(17, "流量监测", 2)
         ));
-        EquipmentBase otherDevice = device("other-flow-device", "OTHER-FLOW", "其他系统流量监测点", "other-flow", BASE_TIME);
+        EquipmentBase otherDevice = device("other-flow-device", "OTHER-FLOW", "其他系统流量监测点", "17", BASE_TIME);
         when(equipmentBaseMapper.selectById("other-flow-device")).thenReturn(otherDevice);
         when(radarDataMapper.selectList(any())).thenReturn(Collections.singletonList(
                 radar("OTHER-FLOW", "20", BASE_TIME)
@@ -365,8 +360,8 @@ class MonitoringServiceImplTest {
         assertTrue(page.getRecords().isEmpty());
     }
 
-    private static EquipmentType type(String id, String typeId, String name) {
-        return type(id, typeId, name, "1");
+    private static EquipmentType type(Integer id, String name) {
+        return type(id, name, 1);
     }
 
     private static Set<Object> flattenWrapperValues(
@@ -393,12 +388,11 @@ class MonitoringServiceImplTest {
         return records;
     }
 
-    private static EquipmentType type(String id, String typeId, String name, String parentTypeId) {
+    private static EquipmentType type(Integer id, String name, Integer parentId) {
         EquipmentType type = new EquipmentType();
         type.setId(id);
-        type.setTypeId(typeId);
         type.setTypeName(name);
-        type.setParentTypeId(parentTypeId);
+        type.setParentId(parentId);
         return type;
     }
 

+ 33 - 202
pipe-network-service/zksy-system/src/test/java/com/zksy/base/service/impl/WaterSupplyDeviceServiceImplTest.java

@@ -12,20 +12,16 @@ import com.zksy.base.domain.EquipmentMaintain;
 import com.zksy.base.domain.EquipmentStatus;
 import com.zksy.base.domain.EquipmentType;
 import com.zksy.ops.domain.WorkOrder;
-import com.zksy.ops.enums.WorkOrderStatusEnum;
 import com.zksy.base.domain.vo.AbnormalDeviceVO;
-import com.zksy.base.domain.vo.DeviceAbnormalStatsVO;
 import com.zksy.base.domain.vo.DeviceGisVO;
 import com.zksy.base.domain.vo.DeviceLedgerStatisticsVO;
 import com.zksy.base.domain.vo.DeviceTypeStatisticsVO;
 import com.zksy.base.domain.vo.MaintainOrderVO;
 import com.zksy.base.mapper.EquipmentMaintainMapper;
-import com.zksy.base.mapper.EquipmentBaseMapper;
 import com.zksy.base.mapper.EquipmentStatusMapper;
 import com.zksy.base.mapper.EquipmentTypeMapper;
 import com.zksy.ops.mapper.WorkOrderMapper;
 import com.zksy.base.service.EquipmentBaseService;
-import com.zksy.base.service.impl.WaterSupplyQueryService;
 import com.zksy.common.core.domain.entity.SysUser;
 import com.zksy.ops.dto.WorkOrderDispatchDTO;
 import com.zksy.ops.service.WorkOrderService;
@@ -33,8 +29,6 @@ import com.zksy.system.service.ISysUserService;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.Test;
-import org.junit.jupiter.params.ParameterizedTest;
-import org.junit.jupiter.params.provider.CsvSource;
 import org.apache.ibatis.builder.MapperBuilderAssistant;
 import org.mockito.ArgumentCaptor;
 import org.mockito.Mockito;
@@ -74,7 +68,6 @@ class WaterSupplyDeviceServiceImplTest {
     private EquipmentBaseService equipmentBaseService;
     private EquipmentTypeMapper equipmentTypeMapper;
     private EquipmentStatusMapper equipmentStatusMapper;
-    private EquipmentBaseMapper equipmentBaseMapper;
     private EquipmentMaintainMapper equipmentMaintainMapper;
     private AlarmDataMapper alarmDataMapper;
     private WorkOrderMapper workOrderMapper;
@@ -82,7 +75,6 @@ class WaterSupplyDeviceServiceImplTest {
 
     private EquipmentBase pressureDevice;
     private EquipmentBase repairDevice;
-    private EquipmentBase offlineDevice;
     private EquipmentBase gasDevice;
 
     @BeforeEach
@@ -91,7 +83,6 @@ class WaterSupplyDeviceServiceImplTest {
         equipmentBaseService = mock(EquipmentBaseService.class);
         equipmentTypeMapper = mock(EquipmentTypeMapper.class);
         equipmentStatusMapper = mock(EquipmentStatusMapper.class);
-        equipmentBaseMapper = mock(EquipmentBaseMapper.class);
         equipmentMaintainMapper = mock(EquipmentMaintainMapper.class);
         alarmDataMapper = mock(AlarmDataMapper.class);
         workOrderMapper = mock(WorkOrderMapper.class);
@@ -102,45 +93,42 @@ class WaterSupplyDeviceServiceImplTest {
         ReflectionTestUtils.setField(service, "equipmentStatusMapper", equipmentStatusMapper);
         ReflectionTestUtils.setField(service, "equipmentMaintainMapper", equipmentMaintainMapper);
         ReflectionTestUtils.setField(service, "alarmDataMapper", alarmDataMapper);
+        ReflectionTestUtils.setField(service, "workOrderMapper", workOrderMapper);
         ReflectionTestUtils.setField(service, "businessWorkOrderService", businessWorkOrderService);
-        ReflectionTestUtils.setField(service, "waterSupplyQueryService",
-                new WaterSupplyQueryService(equipmentBaseService, equipmentBaseMapper,
-                        equipmentStatusMapper, equipmentTypeMapper, workOrderMapper));
 
-        pressureDevice = device("water-pressure-1", "WS-PRESSURE-001", "供水压力监测点", "water-pressure");
-        repairDevice = device("water-flow-1", "WS-FLOW-001", "供水流量监测点", "water-flow");
-        offlineDevice = device("water-offline-1", "WS-OFFLINE-001", "供水离线监测点", "water-flow");
-        gasDevice = device("gas-1", "GAS-001", "燃气监测点", "gas-root");
+        pressureDevice = device("water-pressure-1", "WS-PRESSURE-001", "供水压力监测点", "12");
+        repairDevice = device("water-flow-1", "WS-FLOW-001", "供水流量监测点", "11");
+        gasDevice = device("gas-1", "GAS-001", "燃气监测点", "3");
 
         when(equipmentBaseService.findByTopLevelType("供水")).thenReturn(Arrays.asList(
                 pressureDevice, repairDevice));
         when(equipmentTypeMapper.selectList(any())).thenReturn(Arrays.asList(
-                type("water-root", "供水", "0"),
-                type("water-pressure", "供水压力计", "water-root"),
-                type("water-flow", "供水流量计", "water-root"),
-                type("gas-root", "燃气设备", "0")));
+                type(1, "供水", 0),
+                type(12, "供水压力计", 1),
+                type(11, "供水流量计", 1),
+                type(3, "燃气设备", 0)));
         when(equipmentTypeMapper.selectBatchIds(any())).thenReturn(Arrays.asList(
-                type("water-pressure", "供水压力计", "water-root"),
-                type("water-flow", "供水流量计", "water-root"),
-                type("gas-root", "燃气设备", "0")));
+                type(12, "供水压力计", 1),
+                type(11, "供水流量计", 1),
+                type(3, "燃气设备", 0)));
     }
 
     @Test
     void typeStatisticsCountOnlyTheWaterTypeSubtree() {
         EquipmentBase secondPressure = device("water-pressure-2", "WS-PRESSURE-002",
-                "第二供水压力监测点", "water-pressure");
+                "第二供水压力监测点", "12");
         when(equipmentBaseService.findByTopLevelType("供水")).thenReturn(Arrays.asList(
                 pressureDevice, secondPressure, repairDevice));
         List<DeviceTypeStatisticsVO> roots = service.getDeviceTypeStatistics();
 
         assertEquals(1, roots.size());
-        assertEquals("water-root", roots.get(0).getTypeId());
+        assertEquals(Integer.valueOf(1), roots.get(0).getTypeId());
         assertEquals(3, roots.get(0).getDeviceCount());
-        List<String> childTypeIds = roots.get(0).getChildren().stream()
+        List<Integer> childTypeIds = roots.get(0).getChildren().stream()
                 .map(DeviceTypeStatisticsVO::getTypeId)
                 .sorted()
                 .collect(Collectors.toList());
-        assertEquals(Arrays.asList("water-flow", "water-pressure"), childTypeIds);
+        assertEquals(Arrays.asList(11, 12), childTypeIds);
     }
 
     @Test
@@ -159,11 +147,10 @@ class WaterSupplyDeviceServiceImplTest {
 
     @Test
     void ledgerResolvesTypeNameByEquipmentTypePrimaryKey() {
-        pressureDevice.setEquipmentTypeId("db-pressure-id");
+        pressureDevice.setEquipmentTypeId("99");
         when(equipmentStatusMapper.selectList(any())).thenReturn(Collections.singletonList(
                 status(pressureDevice.getEquipmentId(), 1, 0, 1)));
-        EquipmentType resolvedType = type("db-pressure-id", "business-pressure", "water-root");
-        resolvedType.setTypeId("business-pressure-code");
+        EquipmentType resolvedType = type(99, "business-pressure", 1);
         when(equipmentTypeMapper.selectBatchIds(any())).thenReturn(Collections.singletonList(resolvedType));
 
         Page<DeviceGisVO> result = service.getDeviceLedgerPage(
@@ -178,7 +165,7 @@ class WaterSupplyDeviceServiceImplTest {
         when(equipmentStatusMapper.selectList(any())).thenReturn(Collections.singletonList(
                 status(pressureDevice.getEquipmentId(), 1, 0, 1)));
         when(equipmentTypeMapper.selectBatchIds(any())).thenReturn(Collections.singletonList(
-                type("water-pressure", "water-pressure", "water-root")));
+                type(12, "water-pressure", 1)));
 
         Page<DeviceGisVO> result = service.getDeviceLedgerPage(
                 1, 10, null, null, null, null, null, null);
@@ -187,24 +174,6 @@ class WaterSupplyDeviceServiceImplTest {
                 result.getRecords().get(0).getEquipmentImage());
     }
 
-    @Test
-    void abnormalPageReturnsEquipmentImage() {
-        pressureDevice.setEquipmentImage("https://example.com/pressure-device.jpg");
-        when(equipmentStatusMapper.selectList(any())).thenReturn(Collections.singletonList(
-                status(pressureDevice.getEquipmentId(), 1, 1, 1)));
-        when(alarmDataMapper.selectList(any())).thenReturn(Collections.singletonList(
-                alarm(pressureDevice.getEquipmentCode(), "供水压力超限", 1)));
-        when(equipmentTypeMapper.selectBatchIds(any())).thenReturn(Collections.singletonList(
-                type("water-pressure", "water-pressure", "water-root")));
-
-        Page<AbnormalDeviceVO> result = service.getAbnormalDevicePage(
-                1, 10, null, null, null, null);
-
-        assertEquals(1, result.getTotal());
-        assertEquals("https://example.com/pressure-device.jpg",
-                result.getRecords().get(0).getEquipmentImage());
-    }
-
     @Test
     void ledgerPageAppliesWaterOwnershipAndCurrentStatusFilter() {
         when(equipmentStatusMapper.selectList(any())).thenReturn(Arrays.asList(
@@ -247,26 +216,26 @@ class WaterSupplyDeviceServiceImplTest {
         EquipmentBase device = new EquipmentBase();
         device.setEquipmentCode("WS-NEW-001");
         device.setEquipmentName("新增供水设备");
-        device.setEquipmentTypeId("water-child");
-        when(equipmentTypeMapper.selectById("water-child"))
-                .thenReturn(type("water-child", "供水压力计", "water-root"));
+        device.setEquipmentTypeId("12");
+        when(equipmentTypeMapper.selectById("12"))
+                .thenReturn(type(12, "供水压力计", 1));
         when(equipmentTypeMapper.selectList(any())).thenReturn(Arrays.asList(
-                type("water-root", "供水", "0"),
-                type("water-child", "供水压力计", "water-root")));
+                type(1, "供水", 0),
+                type(12, "供水压力计", 1)));
         doReturn(0L).when(service).count(any());
         doReturn(true).when(service).save(any(EquipmentBase.class));
 
         assertTrue(service.createWaterDevice(device));
-        assertEquals("water-child", device.getEquipmentTypeId());
+        assertEquals("12", device.getEquipmentTypeId());
 
         EquipmentBase gasDevice = new EquipmentBase();
         gasDevice.setEquipmentCode("GAS-NEW-001");
-        gasDevice.setEquipmentTypeId("gas-root");
-        when(equipmentTypeMapper.selectById("gas-root"))
-                .thenReturn(type("gas-root", "燃气", "0"));
+        gasDevice.setEquipmentTypeId("3");
+        when(equipmentTypeMapper.selectById("3"))
+                .thenReturn(type(3, "燃气设备", 0));
         RuntimeException error = assertThrows(RuntimeException.class,
                 () -> service.createWaterDevice(gasDevice));
-        assertEquals("设备类型不属于供水:gas-root", error.getMessage());
+        assertEquals("设备类型不属于供水:3", error.getMessage());
     }
 
     @Test
@@ -350,15 +319,8 @@ class WaterSupplyDeviceServiceImplTest {
         String orderWrapperSql = orderWrapperCaptor.getValue().getSqlSegment();
         assertTrue(orderWrapperSql.contains("order_status"), "异常设备关联工单必须限定未办结状态: " + orderWrapperSql);
         AbstractWrapper<?, ?, ?> orderWrapper = (AbstractWrapper<?, ?, ?>) orderWrapperCaptor.getValue();
-        // 未办结口径以权威枚举 WorkOrderStatusEnum.activeCodes() 为准(白名单),不再用“排除终态”的黑名单
-        for (Integer active : WorkOrderStatusEnum.activeCodes()) {
-            assertTrue(orderWrapper.getParamNameValuePairs().containsValue(active),
-                    "关联工单必须包含未办结状态 " + active);
-        }
-        for (Integer finished : WorkOrderStatusEnum.finishedCodes()) {
-            assertTrue(!orderWrapper.getParamNameValuePairs().containsValue(finished),
-                    "关联工单必须排除终态 " + finished);
-        }
+        assertTrue(orderWrapper.getParamNameValuePairs().containsValue(5), "关联工单必须排除 5-已结案");
+        assertTrue(orderWrapper.getParamNameValuePairs().containsValue(7), "关联工单必须排除 7-已取消");
     }
 
     @Test
@@ -465,31 +427,6 @@ class WaterSupplyDeviceServiceImplTest {
         assertEquals("严重告警", result.getRecords().get(0).getAbnormalReason());
     }
 
-    @Test
-    void abnormalPageUsesDeviceStatusEvenWhenAnOldAlarmRemainsUnprocessed() {
-        when(equipmentStatusMapper.selectList(any())).thenReturn(Collections.singletonList(
-                status(pressureDevice.getEquipmentId(), 0, 0, 1)));
-        when(alarmDataMapper.selectList(any())).thenReturn(Collections.singletonList(
-                alarm(pressureDevice.getEquipmentCode(), "历史压力报警", 1)));
-
-        assertEquals(0, service.getAbnormalDevicePage(1, 10, null, null, null, null).getTotal());
-    }
-
-    @ParameterizedTest
-    @CsvSource({"0,true", "1,true", "2,true", "3,true", "4,true", "6,true",
-            "5,false", "7,false", "99,false"})
-    void abnormalPageLinksOnlyAuthoritativeUnfinishedOrders(int orderStatus, boolean unfinished) {
-        when(equipmentStatusMapper.selectList(any())).thenReturn(Collections.singletonList(
-                status(pressureDevice.getEquipmentId(), 1, 1, 1)));
-        when(workOrderMapper.selectList(any())).thenReturn(Collections.singletonList(
-                workOrder(pressureDevice.getEquipmentId(), "WO-STATE", orderStatus)));
-
-        AbnormalDeviceVO row = service.getAbnormalDevicePage(1, 10, null, null, null, null)
-                .getRecords().get(0);
-
-        assertEquals(unfinished ? "WO-STATE" : null, row.getRelatedWorkOrderNo());
-    }
-
     @Test
     void abnormalPageExcludesClosedAndCancelledWorkOrders() {
         when(equipmentStatusMapper.selectList(any())).thenReturn(Collections.singletonList(
@@ -527,111 +464,6 @@ class WaterSupplyDeviceServiceImplTest {
                 .collect(Collectors.toList()));
     }
 
-    @Test
-    void abnormalStatsCountsAlarmRepairAndOfflineWaterDevices() {
-        when(equipmentBaseService.findByTopLevelType("供水")).thenReturn(Arrays.asList(
-                pressureDevice, repairDevice, offlineDevice));
-        when(equipmentStatusMapper.selectList(any())).thenReturn(Arrays.asList(
-                status(pressureDevice.getEquipmentId(), 1, 1, 1),
-                status(repairDevice.getEquipmentId(), 3, 0, 1),
-                status(offlineDevice.getEquipmentId(), 1, 0, 0),
-                status(gasDevice.getEquipmentId(), 1, 1, 1)));
-        when(alarmDataMapper.selectList(any())).thenReturn(Arrays.asList(
-                alarm(pressureDevice.getEquipmentCode(), "供水压力超限", 1),
-                alarm(gasDevice.getEquipmentCode(), "燃气浓度超限", 2)));
-
-        DeviceAbnormalStatsVO stats = service.getAbnormalDeviceStats();
-
-        assertEquals(3, stats.getTotal());
-        assertEquals(1, stats.getAlarm());
-        assertEquals(1, stats.getRepair());
-        assertEquals(1, stats.getOffline());
-    }
-
-    @Test
-    void abnormalStatsExcludeNormalAndNonWaterDevicesAndMissingStatusAlarmFallback() {
-        EquipmentBase normalDevice = device("water-normal-1", "WS-NORMAL-001", "供水正常设备", "water-pressure");
-        when(equipmentBaseService.findByTopLevelType("供水")).thenReturn(Arrays.asList(
-                pressureDevice, repairDevice, offlineDevice, normalDevice));
-        when(equipmentStatusMapper.selectList(any())).thenReturn(Arrays.asList(
-                status(repairDevice.getEquipmentId(), 3, 0, 1),
-                status(offlineDevice.getEquipmentId(), 1, 0, 0),
-                status(normalDevice.getEquipmentId(), 1, 0, 1),
-                status(gasDevice.getEquipmentId(), 1, 1, 1)));
-        when(alarmDataMapper.selectList(any())).thenReturn(Arrays.asList(
-                alarm(pressureDevice.getEquipmentCode(), "供水压力超限", 1),
-                alarm(gasDevice.getEquipmentCode(), "燃气浓度超限", 2)));
-
-        DeviceAbnormalStatsVO stats = service.getAbnormalDeviceStats();
-
-        assertEquals(3, stats.getTotal());
-        assertEquals(1, stats.getAlarm());
-        assertEquals(1, stats.getRepair());
-        assertEquals(1, stats.getOffline());
-    }
-
-    @Test
-    void abnormalPageIncludesOfflineReasonAndFiltersByAbnormalTypeAndRegion() {
-        when(equipmentBaseService.findByTopLevelType("供水")).thenReturn(Arrays.asList(
-                pressureDevice, repairDevice, offlineDevice));
-        pressureDevice.setDistrict("城南");
-        repairDevice.setDistrict("城北");
-        offlineDevice.setDistrict("太常");
-        when(equipmentStatusMapper.selectList(any())).thenReturn(Arrays.asList(
-                status(pressureDevice.getEquipmentId(), 1, 1, 1),
-                status(repairDevice.getEquipmentId(), 3, 0, 1),
-                status(offlineDevice.getEquipmentId(), 1, 0, 0),
-                status(gasDevice.getEquipmentId(), 1, 1, 1)));
-        when(alarmDataMapper.selectList(any())).thenReturn(Arrays.asList(
-                alarm(pressureDevice.getEquipmentCode(), "供水压力超限", 1),
-                alarm(gasDevice.getEquipmentCode(), "燃气浓度超限", 2)));
-        when(workOrderMapper.selectList(any())).thenReturn(Collections.emptyList());
-
-        Page<AbnormalDeviceVO> offlinePage = service.getAbnormalDevicePage(
-                1, 10, null, null, null, null, "offline", "太常");
-        assertEquals(Collections.singletonList("water-offline-1"), offlinePage.getRecords().stream()
-                .map(AbnormalDeviceVO::getEquipmentId)
-                .collect(Collectors.toList()));
-        assertEquals("设备离线", ReflectionTestUtils.getField(offlinePage.getRecords().get(0), "abnormalReason"));
-
-        Page<AbnormalDeviceVO> repairPage = service.getAbnormalDevicePage(
-                1, 10, null, null, null, null, "repair", "城北");
-        assertEquals(Collections.singletonList("water-flow-1"), repairPage.getRecords().stream()
-                .map(AbnormalDeviceVO::getEquipmentId)
-                .collect(Collectors.toList()));
-
-        Page<AbnormalDeviceVO> regionPage = service.getAbnormalDevicePage(
-                1, 10, null, null, null, null, null, "城南");
-        assertEquals(Collections.singletonList("water-pressure-1"), regionPage.getRecords().stream()
-                .map(AbnormalDeviceVO::getEquipmentId)
-                .collect(Collectors.toList()));
-    }
-
-    @Test
-    void abnormalExportAppliesAbnormalTypeAndRegionFilters() {
-        when(equipmentBaseService.findByTopLevelType("供水")).thenReturn(Arrays.asList(
-                pressureDevice, repairDevice, offlineDevice));
-        pressureDevice.setDistrict("城南");
-        repairDevice.setDistrict("城北");
-        offlineDevice.setDistrict("太常");
-        when(equipmentStatusMapper.selectList(any())).thenReturn(Arrays.asList(
-                status(pressureDevice.getEquipmentId(), 1, 1, 1),
-                status(repairDevice.getEquipmentId(), 3, 0, 1),
-                status(offlineDevice.getEquipmentId(), 1, 0, 0),
-                status(gasDevice.getEquipmentId(), 1, 1, 1)));
-        when(alarmDataMapper.selectList(any())).thenReturn(Arrays.asList(
-                alarm(pressureDevice.getEquipmentCode(), "供水压力超限", 1),
-                alarm(gasDevice.getEquipmentCode(), "燃气浓度超限", 2)));
-        when(workOrderMapper.selectList(any())).thenReturn(Collections.emptyList());
-
-        List<AbnormalDeviceVO> result = service.getAbnormalDeviceExport(
-                null, null, null, null, "alarm", "城南");
-
-        assertEquals(Collections.singletonList("water-pressure-1"), result.stream()
-                .map(AbnormalDeviceVO::getEquipmentId)
-                .collect(Collectors.toList()));
-    }
-
     @Test
     void deviceGisPointsIncludeWaterOnlyWithCoordinatesAndStatuses() {
         pressureDevice.setLongitude(new BigDecimal("113.28000000"));
@@ -641,7 +473,7 @@ class WaterSupplyDeviceServiceImplTest {
         when(equipmentStatusMapper.selectList(any())).thenReturn(Collections.singletonList(
                 status(pressureDevice.getEquipmentId(), 1, 1, 1)));
         when(equipmentTypeMapper.selectBatchIds(any())).thenReturn(Collections.singletonList(
-                type("water-pressure", "压力监测", "water-root")));
+                type(12, "压力监测", 1)));
 
         List<DeviceGisVO> points = service.getAllDeviceGisPoints(null);
 
@@ -934,12 +766,11 @@ class WaterSupplyDeviceServiceImplTest {
         return device;
     }
 
-    private static EquipmentType type(String id, String name, String parentId) {
+    private static EquipmentType type(Integer id, String name, Integer parentId) {
         EquipmentType type = new EquipmentType();
         type.setId(id);
-        type.setTypeId(id);
         type.setTypeName(name);
-        type.setParentTypeId(parentId);
+        type.setParentId(parentId);
         return type;
     }
 

+ 2 - 2
pipe-network-service/zksy-system/src/test/java/com/zksy/ops/service/impl/WorkOrderServiceImplTest.java

@@ -170,11 +170,11 @@ class WorkOrderServiceImplTest {
         device.setEquipmentCode("D-001");
         device.setEquipmentName("城南压力计");
         device.setEquipmentLocation("城南1号井");
-        device.setEquipmentTypeId("type-1");
+        device.setEquipmentTypeId("1");
         when(equipmentBaseMapper.selectBatchIds(any())).thenReturn(Collections.singletonList(device));
 
         EquipmentType type = new EquipmentType();
-        type.setId("type-1");
+        type.setId(1);
         type.setTypeName("压力计");
         when(equipmentTypeMapper.selectBatchIds(any())).thenReturn(Collections.singletonList(type));