Compare commits

...

25 Commits

  1. 5
      pom.xml
  2. 6
      ruoyi-admin/pom.xml
  3. 2
      ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java
  4. 6
      ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java
  5. 62
      ruoyi-admin/src/main/resources/application-dev.yml
  6. 10
      ruoyi-admin/src/main/resources/application.yml
  7. 113
      ruoyi-modules/guoyan-platform/pom.xml
  8. 70
      ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/controller/TestController.java
  9. 45
      ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/domain/ProjectManager.java
  10. 124
      ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/domain/WorkOrderInfo.java
  11. 137
      ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/domain/bo/WorkOrderInfoBo.java
  12. 147
      ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/domain/vo/WorkOrderInfoVo.java
  13. 63
      ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/listener/ProjectManagerListener.java
  14. 36
      ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/mapper/ProjectManagerMapper.java
  15. 15
      ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/mapper/WorkOrderInfoMapper.java
  16. 28
      ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/service/ProjectManagerService.java
  17. 38
      ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/service/impl/ProjectManagerServiceImpl.java
  18. 145
      ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/service/impl/WorkOrderInfoServiceImpl.java
  19. 11
      ruoyi-modules/guoyan-platform/src/main/resources/mapper/platform/ProjectManagerMapper.xml
  20. 1
      ruoyi-modules/pom.xml
  21. 33
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/DemoController.java
  22. 117
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/DeviceInfoController.java
  23. 105
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/OrderManagementInfoController.java
  24. 105
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/PeopleCheckInfoController.java
  25. 113
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/PlanInfoController.java
  26. 105
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/PmDataManagementInfoController.java
  27. 105
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/SparePartsInfoController.java
  28. 105
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/StationFaultInfoController.java
  29. 129
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/StationInfoController.java
  30. 105
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/StationParamChangeController.java
  31. 105
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/WebSiteNetDataAnalysisController.java
  32. 58
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/WorkOrderInfoController.java
  33. 105
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/ZeroAdjustmentAnalysisController.java
  34. 1
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/package-info.java
  35. 2
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/MailController.java
  36. 2
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/RedisCacheController.java
  37. 2
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/RedisLockController.java
  38. 2
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/RedisPubSubController.java
  39. 2
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/RedisRateLimiterController.java
  40. 2
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/SmsController.java
  41. 2
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/Swagger3DemoController.java
  42. 2
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/TestBatchController.java
  43. 2
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/TestDemoController.java
  44. 2
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/TestEncryptController.java
  45. 2
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/TestExcelController.java
  46. 2
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/TestI18nController.java
  47. 2
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/TestSensitiveController.java
  48. 2
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/TestTreeController.java
  49. 2
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/WeSocketController.java
  50. 1
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/package-info.java
  51. 104
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/DeviceInfo.java
  52. 86
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/OrderManagementInfo.java
  53. 77
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/PeopleCheckInfo.java
  54. 85
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/PlanInfo.java
  55. 94
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/PmDataManagementInfo.java
  56. 77
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/SparePartsInfo.java
  57. 94
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/StationFaultInfo.java
  58. 82
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/StationInfo.java
  59. 79
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/StationParamChange.java
  60. 82
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/WebSiteNetDataAnalysis.java
  61. 77
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/WorkOrderInfo.java
  62. 109
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/ZeroAdjustmentAnalysis.java
  63. 100
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/DeviceInfoBo.java
  64. 92
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/OrderManagementInfoBo.java
  65. 77
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/PeopleCheckInfoBo.java
  66. 92
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/PlanInfoBo.java
  67. 97
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/PmDataManagementInfoBo.java
  68. 77
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/SparePartsInfoBo.java
  69. 105
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/StationFaultInfoBo.java
  70. 84
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/StationInfoBo.java
  71. 83
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/StationParamChangeBo.java
  72. 83
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/WebSiteNetDataAnalysisBo.java
  73. 80
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/WorkOrderInfoBo.java
  74. 115
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/ZeroAdjustmentAnalysisBo.java
  75. 100
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/DeviceInfoVo.java
  76. 83
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/OrderManagementInfoVo.java
  77. 82
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/PeopleCheckInfoVo.java
  78. 97
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/PlanInfoVo.java
  79. 14
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/PlanSelectVo.java
  80. 106
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/PmDataManagementInfoVo.java
  81. 16
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/RegionVo.java
  82. 85
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/SparePartsInfoVo.java
  83. 113
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/StationFaultInfoVo.java
  84. 93
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/StationInfoVo.java
  85. 91
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/StationParamChangeVo.java
  86. 15
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/StationSelectVo.java
  87. 92
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/WebSiteNetDataAnalysisVo.java
  88. 85
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/WorkOrderInfoVo.java
  89. 124
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/ZeroAdjustmentAnalysisVo.java
  90. 15
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/DeviceInfoMapper.java
  91. 15
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/OrderManagementInfoMapper.java
  92. 15
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/PeopleCheckInfoMapper.java
  93. 15
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/PlanInfoMapper.java
  94. 15
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/PmDataManagementInfoMapper.java
  95. 15
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/SparePartsInfoMapper.java
  96. 15
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/StationFaultInfoMapper.java
  97. 15
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/StationInfoMapper.java
  98. 15
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/StationParamChangeMapper.java
  99. 15
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/WebSiteNetDataAnalysisMapper.java
  100. 15
      ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/WorkOrderInfoMapper.java

5
pom.xml

@ -346,11 +346,6 @@
<version>${revision}</version>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>guoyan-platform</artifactId>
<version>${revision}</version>
</dependency>
<!-- 工作流模块 -->
<dependency>

6
ruoyi-admin/pom.xml

@ -86,11 +86,7 @@
<groupId>org.dromara</groupId>
<artifactId>ruoyi-demo</artifactId>
</dependency>
<!-- guoyan-platform-->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>guoyan-platform</artifactId>
</dependency>
<!-- 工作流模块 -->
<dependency>

2
ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java

@ -103,7 +103,7 @@ public class AuthController {
Long userId = LoginHelper.getUserId();
scheduledExecutorService.schedule(() -> {
SseMessageDto dto = new SseMessageDto();
dto.setMessage("欢迎登录RuoYi-Vue-Plus后台管理系统");
dto.setMessage("欢迎登录国研空气质量监控系统运维监理及考核平台");
dto.setUserIds(List.of(userId));
SseMessageUtils.publishMessage(dto);
}, 5, TimeUnit.SECONDS);

6
ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java

@ -59,9 +59,9 @@ public class PasswordAuthStrategy implements IAuthStrategy {
boolean captchaEnabled = captchaProperties.getEnable();
// 验证码开关
if (captchaEnabled) {
validateCaptcha(tenantId, username, code, uuid);
}
// if (captchaEnabled) {
// validateCaptcha(tenantId, username, code, uuid);
// }
LoginUser loginUser = TenantHelper.dynamic(tenantId, () -> {
SysUserVo user = loadUserByUsername(username);
loginService.checkLogin(LoginType.PASSWORD, tenantId, username, () -> !BCrypt.checkpw(password, user.getPassword()));

62
ruoyi-admin/src/main/resources/application-dev.yml

@ -1,7 +1,7 @@
--- # 监控中心配置
spring.boot.admin.client:
# 增加客户端开关
enabled: true
enabled: false
url: http://localhost:9090/admin
instance:
service-host-type: IP
@ -13,7 +13,7 @@ spring.boot.admin.client:
--- # snail-job 配置
snail-job:
enabled: true
enabled: false
# 需要在 SnailJob 后台组管理创建对应名称的组,然后创建任务的时候选择对应的组,才能正确分派任务
group: "ruoyi_group"
# SnailJob 接入验证令牌 详见 script/sql/snail_job.sql `sj_group_config` 表
@ -47,35 +47,35 @@ spring:
driverClassName: com.mysql.cj.jdbc.Driver
# jdbc 所有参数配置参考 https://lionli.blog.csdn.net/article/details/122018562
# rewriteBatchedStatements=true 批处理优化 大幅提升批量插入更新删除性能(对数据库有性能损耗 使用批量操作应考虑性能问题)
url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true
url: jdbc:mysql://localhost:3306/air_quality?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true
username: root
password: root
password: 1234
# 从库数据源
slave:
lazy: true
type: ${spring.datasource.type}
driverClassName: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true
username:
password:
# oracle:
# type: ${spring.datasource.type}
# driverClassName: oracle.jdbc.OracleDriver
# url: jdbc:oracle:thin:@//localhost:1521/XE
# username: ROOT
# password: root
# postgres:
# type: ${spring.datasource.type}
# driverClassName: org.postgresql.Driver
# url: jdbc:postgresql://localhost:5432/postgres?useUnicode=true&characterEncoding=utf8&useSSL=true&autoReconnect=true&reWriteBatchedInserts=true
# username: root
# password: root
# sqlserver:
# type: ${spring.datasource.type}
# driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver
# url: jdbc:sqlserver://localhost:1433;DatabaseName=tempdb;SelectMethod=cursor;encrypt=false;rewriteBatchedStatements=true
# username: SA
# password: root
# slave:
# lazy: true
# type: ${spring.datasource.type}
# driverClassName: com.mysql.cj.jdbc.Driver
# url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true
# username:
# password:
# oracle:
# type: ${spring.datasource.type}
# driverClassName: oracle.jdbc.OracleDriver
# url: jdbc:oracle:thin:@//localhost:1521/XE
# username: ROOT
# password: root
# postgres:
# type: ${spring.datasource.type}
# driverClassName: org.postgresql.Driver
# url: jdbc:postgresql://localhost:5432/postgres?useUnicode=true&characterEncoding=utf8&useSSL=true&autoReconnect=true&reWriteBatchedInserts=true
# username: root
# password: root
# sqlserver:
# type: ${spring.datasource.type}
# driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver
# url: jdbc:sqlserver://localhost:1433;DatabaseName=tempdb;SelectMethod=cursor;encrypt=false;rewriteBatchedStatements=true
# username: SA
# password: root
hikari:
# 最大连接池数量
maxPoolSize: 20
@ -100,9 +100,9 @@ spring.data:
# 端口,默认为6379
port: 6379
# 数据库索引
database: 0
database: 11
# redis 密码必须配置
password: ruoyi123
# password: ruoyi123
# 连接超时时间
timeout: 10s
# 是否开启ssl

10
ruoyi-admin/src/main/resources/application.yml

@ -21,7 +21,7 @@ captcha:
# 开发环境配置
server:
# 服务器的HTTP端口,默认为8080
# 服务器的HTTP端口,默认为8080 远程dev:8084
port: 8080
servlet:
# 应用的访问路径
@ -70,7 +70,7 @@ spring:
# 国际化资源文件路径
basename: i18n/messages
profiles:
active: @profiles.active@
active: dev
# 文件上传
servlet:
multipart:
@ -185,9 +185,9 @@ springdoc:
api-docs:
# 是否开启接口文档
enabled: true
# swagger-ui:
# # 持久化认证数据
# persistAuthorization: true
# swagger-ui:
# # 持久化认证数据
# persistAuthorization: true
info:
# 标题
title: '标题:${ruoyi.name}多租户管理系统_接口文档'

113
ruoyi-modules/guoyan-platform/pom.xml

@ -1,113 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>ruoyi-modules</artifactId>
<groupId>org.dromara</groupId>
<version>5.2.3</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>guoyan-platform</artifactId>
<dependencies>
<!-- 通用工具-->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-core</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-doc</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-sms</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-mail</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-redis</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-idempotent</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-mybatis</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-log</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-excel</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-security</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-web</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-ratelimiter</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-translation</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-sensitive</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-encrypt</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-tenant</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-websocket</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-demo</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-system</artifactId>
</dependency>
</dependencies>
</project>

70
ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/controller/TestController.java

@ -1,70 +0,0 @@
package org.dromara.platform.controller;
import com.alibaba.excel.EasyExcel;
import jakarta.annotation.Resource;
import jakarta.servlet.http.HttpServletResponse;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.dromara.platform.domain.ProjectManager;
import org.dromara.platform.listener.ProjectManagerListener;
import org.dromara.platform.service.ProjectManagerService;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
import java.net.URLEncoder;
import java.time.LocalDate;
/**
* @Author gejunhao
* @Date 2025/1/10 14:11
* @Description: 测试接口
*/
@RequiredArgsConstructor
@RestController
@Slf4j
@RequestMapping("/test")
public class TestController {
@GetMapping("/hello")
public void test(HttpServletResponse response) throws IOException {
log.warn("hello word!");
response.setContentType("text/html;charset=utf8");
response.getWriter().println("调用接口成功!");
}
@Resource
private ProjectManagerService projectManagerService;
@PostMapping("/uploadProjectManager")
public void upload(MultipartFile file, HttpServletResponse response) throws IOException {
long t1 = System.currentTimeMillis();
EasyExcel.read(file.getInputStream(), ProjectManager.class, new ProjectManagerListener(projectManagerService)).sheet().doRead();
response.setContentType("text/html;charset=utf8");
long t2 = System.currentTimeMillis();
response.getWriter().println("导入数据成功!,共用时:"+(t2-t1));
log.info("导入项目负责人数据成功! 共用时:{}ms",(t2-t1));
}
@GetMapping("/downloadProjectManager")
public void download(HttpServletResponse response) throws IOException {
// 这里注意 有同学反应使用swagger 会导致各种问题,请直接用浏览器或者用postman
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
response.setCharacterEncoding("utf-8");
String flag = "项目负责人信息";
// 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系
LocalDate currentDate = LocalDate.now();
System.out.println("当前日期: " + currentDate);
String fileName = URLEncoder.encode( flag+currentDate, "UTF-8")
.replaceAll("\\+", "%20");
response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx");
EasyExcel.write(response.getOutputStream(), ProjectManager.class)
.sheet("项目联系人信息"+currentDate)
.doWrite(projectManagerService.getData());
}
}

45
ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/domain/ProjectManager.java

@ -1,45 +0,0 @@
package org.dromara.platform.domain;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
/**
*
* @author 14212
* @TableName project_manager
*/
@TableName(value ="project_manager")
@Data
public class ProjectManager implements Serializable {
@ExcelProperty(value = "序号")
//@TableId(type = IdType.AUTO)
@TableField(exist = false)
private Integer id;
@ExcelProperty(value = "项目名称")
private String projectName;
/**
* 可以有多个项目负责人
*/
@ExcelProperty(value = "项目负责人")
private String manager;
@ExcelProperty(value = "联系方式")
private String phone;
@ExcelIgnore
private String tenantId;
@TableField(exist = false)
private static final long serialVersionUID = 1L;
}

124
ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/domain/WorkOrderInfo.java

@ -1,124 +0,0 @@
package org.dromara.platform.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.translation.annotation.Translation;
import org.dromara.common.translation.constant.TransConstant;
import java.io.Serial;
/**
* 工单信息对象 work_order_info
*
* @author gejunhao
* @date 2025-01-13
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("work_order_info")
public class WorkOrderInfo extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 工单ID
*/
@TableId(value = "id")
private String id;
/**
* 所属项目
*/
private String projectName;
/**
* 报修人员
*/
private String repairer;
/**
* 保修人员ID
*/
private Long repairerId;
/**
* 是否事故 (0: , 1: )
*/
private Long isAccident;
/**
* 响应级别 (0: 常规, 1: 紧急, 2: 特急)
*/
private String responseLevel;
/**
* 响应时限
*/
private Long responseTime;
/**
* 故障大类
*/
private String faultCategory;
/**
* 故障小类 (0: 电源故障, 1: 光缆故障, 2: 设备故障, 3: 监控故障, 4: 抓拍方向偏移, 5: 树枝遮挡, 6: 无图像, 7: 图像模糊)
*/
private String faultSubcategory;
/**
* 所属机构
*/
private String institution;
/**
* 故障地点
*/
private String faultLocation;
/**
* 故障描述
*/
private String faultDescription;
/**
* 故障图片
*/
private String faultImage;
/**
* 维护要求 (0: 修复, 1: 新增, 2: 拆除, 3: 清除, 4: 其他)
*/
private String maintenanceRequirement;
/**
* 派遣意见
*/
private String dispatchOpinion;
/**
* 是否派遣 (0: , 1: )
*/
private Long isDispatched;
/**
* 纬度
*/
private String latitude;
/**
* 经度
*/
private String longitude;
/**
* 删除标志0代表存在 2代表删除
*/
@TableLogic
private String delFlag;
}

137
ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/domain/bo/WorkOrderInfoBo.java

@ -1,137 +0,0 @@
package org.dromara.platform.domain.bo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import org.dromara.platform.domain.WorkOrderInfo;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import org.dromara.common.translation.annotation.Translation;
import org.dromara.common.translation.constant.TransConstant;
/**
* 工单信息业务对象 work_order_info
*
* @author gejunhao
* @date 2025-01-13
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = WorkOrderInfo.class, reverseConvertGenerate = false)
public class WorkOrderInfoBo extends BaseEntity {
/**
* 工单ID
*/
//@NotBlank(message = "工单ID不能为空", groups = { EditGroup.class })
@TableId(type = IdType.ASSIGN_ID)
private String id;
/**
* 所属项目
*/
@NotBlank(message = "所属项目不能为空", groups = { AddGroup.class, EditGroup.class })
private String projectName;
/**
* 报修人员
*/
@NotBlank(message = "报修人员不能为空", groups = { AddGroup.class, EditGroup.class })
private String repairer;
/**
* 保修人员ID
*/
@NotNull(message = "保修人员ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long repairerId;
/**
* 是否事故 (0: , 1: )
*/
@NotNull(message = "是否事故 (0: 否, 1: 是)不能为空", groups = { AddGroup.class, EditGroup.class })
private Long isAccident;
/**
* 响应级别 (0: 常规, 1: 紧急, 2: 特急)
*/
@NotBlank(message = "响应级别 (0: 常规, 1: 紧急, 2: 特急)不能为空", groups = { AddGroup.class, EditGroup.class })
private String responseLevel;
/**
* 响应时限
*/
@NotNull(message = "响应时限不能为空", groups = { AddGroup.class, EditGroup.class })
private Long responseTime;
/**
* 故障大类
*/
@NotBlank(message = "故障大类不能为空", groups = { AddGroup.class, EditGroup.class })
private String faultCategory;
/**
* 故障小类 (0: 电源故障, 1: 光缆故障, 2: 设备故障, 3: 监控故障, 4: 抓拍方向偏移, 5: 树枝遮挡, 6: 无图像, 7: 图像模糊)
*/
@NotBlank(message = "故障小类 (0: 电源故障, 1: 光缆故障, 2: 设备故障, 3: 监控故障, 4: 抓拍方向偏移, 5: 树枝遮挡, 6: 无图像, 7: 图像模糊)不能为空", groups = { AddGroup.class, EditGroup.class })
private String faultSubcategory;
/**
* 所属机构
*/
@NotBlank(message = "所属机构不能为空", groups = { AddGroup.class, EditGroup.class })
private String institution;
/**
* 故障地点
*/
@NotBlank(message = "故障地点不能为空", groups = { AddGroup.class, EditGroup.class })
private String faultLocation;
/**
* 故障描述
*/
@NotBlank(message = "故障描述不能为空", groups = { AddGroup.class, EditGroup.class })
private String faultDescription;
/**
* 故障图片
*/
@NotBlank(message = "故障图片不能为空", groups = { AddGroup.class, EditGroup.class })
private String faultImage;
/**
* 维护要求 (0: 修复, 1: 新增, 2: 拆除, 3: 清除, 4: 其他)
*/
@NotBlank(message = "维护要求 (0: 修复, 1: 新增, 2: 拆除, 3: 清除, 4: 其他)不能为空", groups = { AddGroup.class, EditGroup.class })
private String maintenanceRequirement;
/**
* 派遣意见
*/
@NotBlank(message = "派遣意见不能为空", groups = { AddGroup.class, EditGroup.class })
private String dispatchOpinion;
/**
* 是否派遣 (0: , 1: )
*/
@NotNull(message = "是否派遣 (0: 否, 1: 是)不能为空", groups = { AddGroup.class, EditGroup.class })
private Long isDispatched;
/**
* 纬度
*/
@NotBlank(message = "纬度不能为空", groups = { AddGroup.class, EditGroup.class })
private String latitude;
/**
* 经度
*/
@NotBlank(message = "经度不能为空", groups = { AddGroup.class, EditGroup.class })
private String longitude;
}

147
ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/domain/vo/WorkOrderInfoVo.java

@ -1,147 +0,0 @@
package org.dromara.platform.domain.vo;
import org.dromara.common.translation.annotation.Translation;
import org.dromara.common.translation.constant.TransConstant;
import org.dromara.platform.domain.WorkOrderInfo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 工单信息视图对象 work_order_info
*
* @author gejunhao
* @date 2025-01-13
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = WorkOrderInfo.class)
public class WorkOrderInfoVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 工单ID
*/
@ExcelProperty(value = "工单ID")
private String id;
/**
* 所属项目
*/
@ExcelProperty(value = "所属项目")
private String projectName;
/**
* 报修人员
*/
@ExcelProperty(value = "报修人员")
private String repairer;
/**
* 保修人员ID
*/
@ExcelProperty(value = "保修人员ID")
private Long repairerId;
/**
* 是否事故 (0: , 1: )
*/
@ExcelProperty(value = "是否事故 (0: 否, 1: 是)")
private Long isAccident;
/**
* 响应级别 (0: 常规, 1: 紧急, 2: 特急)
*/
@ExcelProperty(value = "响应级别 (0: 常规, 1: 紧急, 2: 特急)")
private String responseLevel;
/**
* 响应时限
*/
@ExcelProperty(value = "响应时限")
private Long responseTime;
/**
* 故障大类
*/
@ExcelProperty(value = "故障大类")
private String faultCategory;
/**
* 故障小类 (0: 电源故障, 1: 光缆故障, 2: 设备故障, 3: 监控故障, 4: 抓拍方向偏移, 5: 树枝遮挡, 6: 无图像, 7: 图像模糊)
*/
@ExcelProperty(value = "故障小类 (0: 电源故障, 1: 光缆故障, 2: 设备故障, 3: 监控故障, 4: 抓拍方向偏移, 5: 树枝遮挡, 6: 无图像, 7: 图像模糊)")
private String faultSubcategory;
/**
* 所属机构
*/
@ExcelProperty(value = "所属机构")
private String institution;
/**
* 故障地点
*/
@ExcelProperty(value = "故障地点")
private String faultLocation;
/**
* 故障描述
*/
@ExcelProperty(value = "故障描述")
private String faultDescription;
/**
* 故障图片
*/
@ExcelProperty(value = "故障图片")
private String faultImage;
/**
* 故障图片Url
*/
@Translation(type = TransConstant.OSS_ID_TO_URL, mapper = "faultImage")
private String faultImageUrl;
/**
* 维护要求 (0: 修复, 1: 新增, 2: 拆除, 3: 清除, 4: 其他)
*/
@ExcelProperty(value = "维护要求 (0: 修复, 1: 新增, 2: 拆除, 3: 清除, 4: 其他)")
private String maintenanceRequirement;
/**
* 派遣意见
*/
@ExcelProperty(value = "派遣意见")
private String dispatchOpinion;
/**
* 是否派遣 (0: , 1: )
*/
@ExcelProperty(value = "是否派遣 (0: 否, 1: 是)")
private Long isDispatched;
/**
* 纬度
*/
@ExcelProperty(value = "纬度")
private String latitude;
/**
* 经度
*/
@ExcelProperty(value = "经度")
private String longitude;
}

63
ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/listener/ProjectManagerListener.java

@ -1,63 +0,0 @@
package org.dromara.platform.listener;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.read.listener.ReadListener;
import lombok.extern.slf4j.Slf4j;
import org.dromara.platform.domain.ProjectManager;
import org.dromara.platform.service.ProjectManagerService;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.ArrayList;
import java.util.List;
/**
* 自定义监听器读数据
* @author gjh
*/
@Slf4j
public class ProjectManagerListener implements ReadListener<ProjectManager> {
private List<ProjectManager> list = new ArrayList<>();
/**
* 自己定义一个缓冲量
*/
private static final int BATCH_COUNT = 20;
@Autowired
private ProjectManagerService projectManagerService;
public ProjectManagerListener(ProjectManagerService projectManagerService) {
this.projectManagerService = projectManagerService;
}
/**
* 每读一行数据都会调用这个方法
*
* @param projectManager
* @param analysisContext
*/
@Override
public void invoke(ProjectManager projectManager, AnalysisContext analysisContext) {
// 读取一行数据就添加到集合
list.add(projectManager);
// 判断是否到达缓存量了
if (list.size() >= BATCH_COUNT){
// 操作数据库
projectManagerService.addData(list);
list = new ArrayList<>(BATCH_COUNT);
}
}
/**
* 读完整个excel之后再调用这个方法
*
* @param analysisContext
*/
@Override
public void doAfterAllAnalysed(AnalysisContext analysisContext) {
if (list.size()>0){
projectManagerService.addData(list);
}
}
}

36
ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/mapper/ProjectManagerMapper.java

@ -1,36 +0,0 @@
package org.dromara.platform.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.ResultType;
import org.apache.ibatis.annotations.Select;
import org.dromara.platform.domain.ProjectManager;
import java.util.List;
/**
* @author 14212
* @description 针对表project_manager的数据库操作Mapper
* @createDate 2025-01-08 09:22:14
* @Entity com.gejunhao.pojo.ProjectManager
*/
public interface ProjectManagerMapper extends BaseMapper<ProjectManager> {
/**
*从数据库中获取数据
* @return
*/
@Select("select * from project_manager")
@ResultType(ProjectManager.class)
List<ProjectManager> getDate();
/**
* xml写法
* @return
*/
@ResultType(ProjectManager.class)
List<ProjectManager> selectAll();
}

15
ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/mapper/WorkOrderInfoMapper.java

@ -1,15 +0,0 @@
package org.dromara.platform.mapper;
import org.dromara.platform.domain.WorkOrderInfo;
import org.dromara.platform.domain.vo.WorkOrderInfoVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 工单信息Mapper接口
*
* @author gejunhao
* @date 2025-01-10
*/
public interface WorkOrderInfoMapper extends BaseMapperPlus<WorkOrderInfo, WorkOrderInfoVo> {
}

28
ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/service/ProjectManagerService.java

@ -1,28 +0,0 @@
package org.dromara.platform.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.dromara.platform.domain.ProjectManager;
import java.util.List;
/**
* @author 14212
* @description 针对表project_manager的数据库操作Service
* @createDate 2025-01-08 09:22:14
*/
public interface ProjectManagerService extends IService<ProjectManager> {
/**
* 批量插入数据
* @param list
*/
public void addData(List<ProjectManager> list);
/**
* 从数据库中获取数据
* @return
*/
public List<ProjectManager> getData();
}

38
ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/service/impl/ProjectManagerServiceImpl.java

@ -1,38 +0,0 @@
package org.dromara.platform.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import jakarta.annotation.Resource;
import org.dromara.platform.domain.ProjectManager;
import org.dromara.platform.mapper.ProjectManagerMapper;
import org.dromara.platform.service.ProjectManagerService;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @author 14212
* @description 针对表project_manager的数据库操作Service实现
* @createDate 2025-01-08 09:22:14
*/
@Service
public class ProjectManagerServiceImpl extends ServiceImpl<ProjectManagerMapper, ProjectManager>
implements ProjectManagerService {
@Resource
private ProjectManagerMapper projectManagerMapper;
@Override
public void addData(List<ProjectManager> list) {
this.saveBatch(list);
}
@Override
public List<ProjectManager> getData() {
List<ProjectManager> projectManagers = projectManagerMapper.selectAll();
return projectManagers;
}
}

145
ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/service/impl/WorkOrderInfoServiceImpl.java

@ -1,145 +0,0 @@
package org.dromara.platform.service.impl;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.dromara.platform.domain.bo.WorkOrderInfoBo;
import org.dromara.platform.domain.vo.WorkOrderInfoVo;
import org.dromara.platform.domain.WorkOrderInfo;
import org.dromara.platform.mapper.WorkOrderInfoMapper;
import org.dromara.platform.service.IWorkOrderInfoService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 工单信息Service业务层处理
*
* @author gejunhao
* @date 2025-01-13
*/
@RequiredArgsConstructor
@Service
public class WorkOrderInfoServiceImpl implements IWorkOrderInfoService {
private final WorkOrderInfoMapper baseMapper;
/**
* 查询工单信息
*
* @param id 主键
* @return 工单信息
*/
@Override
public WorkOrderInfoVo queryById(String id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询工单信息列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 工单信息分页列表
*/
@Override
public TableDataInfo<WorkOrderInfoVo> queryPageList(WorkOrderInfoBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<WorkOrderInfo> lqw = buildQueryWrapper(bo);
Page<WorkOrderInfoVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的工单信息列表
*
* @param bo 查询条件
* @return 工单信息列表
*/
@Override
public List<WorkOrderInfoVo> queryList(WorkOrderInfoBo bo) {
LambdaQueryWrapper<WorkOrderInfo> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<WorkOrderInfo> buildQueryWrapper(WorkOrderInfoBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<WorkOrderInfo> lqw = Wrappers.lambdaQuery();
lqw.like(StringUtils.isNotBlank(bo.getProjectName()), WorkOrderInfo::getProjectName, bo.getProjectName());
lqw.eq(StringUtils.isNotBlank(bo.getRepairer()), WorkOrderInfo::getRepairer, bo.getRepairer());
lqw.eq(bo.getRepairerId() != null, WorkOrderInfo::getRepairerId, bo.getRepairerId());
lqw.eq(bo.getIsAccident() != null, WorkOrderInfo::getIsAccident, bo.getIsAccident());
lqw.eq(StringUtils.isNotBlank(bo.getResponseLevel()), WorkOrderInfo::getResponseLevel, bo.getResponseLevel());
lqw.eq(bo.getResponseTime() != null, WorkOrderInfo::getResponseTime, bo.getResponseTime());
lqw.eq(StringUtils.isNotBlank(bo.getFaultCategory()), WorkOrderInfo::getFaultCategory, bo.getFaultCategory());
lqw.eq(StringUtils.isNotBlank(bo.getFaultSubcategory()), WorkOrderInfo::getFaultSubcategory, bo.getFaultSubcategory());
lqw.eq(StringUtils.isNotBlank(bo.getInstitution()), WorkOrderInfo::getInstitution, bo.getInstitution());
lqw.eq(StringUtils.isNotBlank(bo.getFaultLocation()), WorkOrderInfo::getFaultLocation, bo.getFaultLocation());
lqw.eq(StringUtils.isNotBlank(bo.getFaultDescription()), WorkOrderInfo::getFaultDescription, bo.getFaultDescription());
lqw.eq(StringUtils.isNotBlank(bo.getFaultImage()), WorkOrderInfo::getFaultImage, bo.getFaultImage());
lqw.eq(StringUtils.isNotBlank(bo.getMaintenanceRequirement()), WorkOrderInfo::getMaintenanceRequirement, bo.getMaintenanceRequirement());
lqw.eq(StringUtils.isNotBlank(bo.getDispatchOpinion()), WorkOrderInfo::getDispatchOpinion, bo.getDispatchOpinion());
lqw.eq(bo.getIsDispatched() != null, WorkOrderInfo::getIsDispatched, bo.getIsDispatched());
lqw.eq(StringUtils.isNotBlank(bo.getLatitude()), WorkOrderInfo::getLatitude, bo.getLatitude());
lqw.eq(StringUtils.isNotBlank(bo.getLongitude()), WorkOrderInfo::getLongitude, bo.getLongitude());
return lqw;
}
/**
* 新增工单信息
*
* @param bo 工单信息
* @return 是否新增成功
*/
@Override
public Boolean insertByBo(WorkOrderInfoBo bo) {
WorkOrderInfo add = MapstructUtils.convert(bo, WorkOrderInfo.class);
//validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}
return flag;
}
/**
* 修改工单信息
*
* @param bo 工单信息
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(WorkOrderInfoBo bo) {
WorkOrderInfo update = MapstructUtils.convert(bo, WorkOrderInfo.class);
//validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(WorkOrderInfo entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除工单信息信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

11
ruoyi-modules/guoyan-platform/src/main/resources/mapper/platform/ProjectManagerMapper.xml

@ -1,11 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.dromara.platform.mapper.ProjectManagerMapper">
<select id="selectAll" resultType="org.dromara.platform.domain.ProjectManager">
select * from project_manager
</select>
</mapper>

1
ruoyi-modules/pom.xml

@ -15,7 +15,6 @@
<module>ruoyi-job</module>
<module>ruoyi-system</module>
<module>ruoyi-workflow</module>
<module>guoyan-platform</module>
</modules>
<artifactId>ruoyi-modules</artifactId>

33
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/DemoController.java

@ -0,0 +1,33 @@
package org.dromara.demo.controller;
import jakarta.servlet.http.HttpServletResponse;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.io.IOException;
/**
* @Author gejunhao
* @Date 2025/1/10 14:11
* @Description: 测试接口
*/
@Slf4j
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/test")
public class DemoController {
@GetMapping("/hello")
public void test(HttpServletResponse response) throws IOException {
log.info("hello word!");
response.setContentType("text/html;charset=utf8");
response.getWriter().println("GJH-调用接口成功!");
}
}

117
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/DeviceInfoController.java

@ -0,0 +1,117 @@
package org.dromara.demo.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.dromara.demo.domain.vo.StationSelectVo;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.demo.domain.vo.DeviceInfoVo;
import org.dromara.demo.domain.bo.DeviceInfoBo;
import org.dromara.demo.service.IDeviceInfoService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 设备信息
*
* @author GJH
* @date 2025-07-01
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/air/deviceInfo")
public class DeviceInfoController extends BaseController {
private final IDeviceInfoService deviceInfoService;
/**
* 查询设备信息列表
*/
//@SaCheckPermission("air:deviceInfo:list")
@GetMapping("/list")
public TableDataInfo<DeviceInfoVo> list(DeviceInfoBo bo, PageQuery pageQuery) {
return deviceInfoService.queryPageList(bo, pageQuery);
}
/**
* 导出设备信息列表
*/
//@SaCheckPermission("air:deviceInfo:export")
@Log(title = "设备信息", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(DeviceInfoBo bo, HttpServletResponse response) {
List<DeviceInfoVo> list = deviceInfoService.queryList(bo);
ExcelUtil.exportExcel(list, "设备信息", DeviceInfoVo.class, response);
}
/**
* 获取设备信息详细信息
*
* @param id 主键
*/
//@SaCheckPermission("air:deviceInfo:query")
@GetMapping("/{id}")
public R<DeviceInfoVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable String id) {
return R.ok(deviceInfoService.queryById(id));
}
/**
* 新增设备信息
*/
//@SaCheckPermission("air:deviceInfo:add")
@Log(title = "设备信息", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody DeviceInfoBo bo) {
return toAjax(deviceInfoService.insertByBo(bo));
}
/**
* 修改设备信息
*/
//@SaCheckPermission("air:deviceInfo:edit")
@Log(title = "设备信息", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody DeviceInfoBo bo) {
return toAjax(deviceInfoService.updateByBo(bo));
}
/**
* 删除设备信息
*
* @param ids 主键串
*/
//@SaCheckPermission("air:deviceInfo:remove")
@Log(title = "设备信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable String[] ids) {
return toAjax(deviceInfoService.deleteWithValidByIds(List.of(ids), true));
}
/**
* 获取站点名称下拉框列表
* @return
*/
@GetMapping("/getStationList")
public R< List<StationSelectVo>> getStationList() {
List<StationSelectVo> stationList = deviceInfoService.getStationList();
return R.ok(stationList);
}
}

105
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/OrderManagementInfoController.java

@ -0,0 +1,105 @@
package org.dromara.demo.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.demo.domain.vo.OrderManagementInfoVo;
import org.dromara.demo.domain.bo.OrderManagementInfoBo;
import org.dromara.demo.service.IOrderManagementInfoService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 现场核查单管理信息
*
* @author GJH
* @date 2025-07-02
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/air/managementInfo")
public class OrderManagementInfoController extends BaseController {
private final IOrderManagementInfoService orderManagementInfoService;
/**
* 查询现场核查单管理信息列表
*/
//@SaCheckPermission("air:managementInfo:list")
@GetMapping("/list")
public TableDataInfo<OrderManagementInfoVo> list(OrderManagementInfoBo bo, PageQuery pageQuery) {
return orderManagementInfoService.queryPageList(bo, pageQuery);
}
/**
* 导出现场核查单管理信息列表
*/
//@SaCheckPermission("air:managementInfo:export")
@Log(title = "现场核查单管理信息", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(OrderManagementInfoBo bo, HttpServletResponse response) {
List<OrderManagementInfoVo> list = orderManagementInfoService.queryList(bo);
ExcelUtil.exportExcel(list, "现场核查单管理信息", OrderManagementInfoVo.class, response);
}
/**
* 获取现场核查单管理信息详细信息
*
* @param id 主键
*/
//@SaCheckPermission("air:managementInfo:query")
@GetMapping("/{id}")
public R<OrderManagementInfoVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable String id) {
return R.ok(orderManagementInfoService.queryById(id));
}
/**
* 新增现场核查单管理信息
*/
//@SaCheckPermission("air:managementInfo:add")
@Log(title = "现场核查单管理信息", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody OrderManagementInfoBo bo) {
return toAjax(orderManagementInfoService.insertByBo(bo));
}
/**
* 修改现场核查单管理信息
*/
//@SaCheckPermission("air:managementInfo:edit")
@Log(title = "现场核查单管理信息", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody OrderManagementInfoBo bo) {
return toAjax(orderManagementInfoService.updateByBo(bo));
}
/**
* 删除现场核查单管理信息
*
* @param ids 主键串
*/
//@SaCheckPermission("air:managementInfo:remove")
@Log(title = "现场核查单管理信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable String[] ids) {
return toAjax(orderManagementInfoService.deleteWithValidByIds(List.of(ids), true));
}
}

105
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/PeopleCheckInfoController.java

@ -0,0 +1,105 @@
package org.dromara.demo.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.demo.domain.vo.PeopleCheckInfoVo;
import org.dromara.demo.domain.bo.PeopleCheckInfoBo;
import org.dromara.demo.service.IPeopleCheckInfoService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 人员签到统计
*
* @author GJH
* @date 2025-07-08
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/air/checkInfo")
public class PeopleCheckInfoController extends BaseController {
private final IPeopleCheckInfoService peopleCheckInfoService;
/**
* 查询人员签到统计列表
*/
//@SaCheckPermission("air:checkInfo:list")
@GetMapping("/list")
public TableDataInfo<PeopleCheckInfoVo> list(PeopleCheckInfoBo bo, PageQuery pageQuery) {
return peopleCheckInfoService.queryPageList(bo, pageQuery);
}
/**
* 导出人员签到统计列表
*/
//@SaCheckPermission("air:checkInfo:export")
@Log(title = "人员签到统计", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(PeopleCheckInfoBo bo, HttpServletResponse response) {
List<PeopleCheckInfoVo> list = peopleCheckInfoService.queryList(bo);
ExcelUtil.exportExcel(list, "人员签到统计", PeopleCheckInfoVo.class, response);
}
/**
* 获取人员签到统计详细信息
*
* @param id 主键
*/
//@SaCheckPermission("air:checkInfo:query")
@GetMapping("/{id}")
public R<PeopleCheckInfoVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable String id) {
return R.ok(peopleCheckInfoService.queryById(id));
}
/**
* 新增人员签到统计
*/
//@SaCheckPermission("air:checkInfo:add")
@Log(title = "人员签到统计", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody PeopleCheckInfoBo bo) {
return toAjax(peopleCheckInfoService.insertByBo(bo));
}
/**
* 修改人员签到统计
*/
//@SaCheckPermission("air:checkInfo:edit")
@Log(title = "人员签到统计", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody PeopleCheckInfoBo bo) {
return toAjax(peopleCheckInfoService.updateByBo(bo));
}
/**
* 删除人员签到统计
*
* @param ids 主键串
*/
//@SaCheckPermission("air:checkInfo:remove")
@Log(title = "人员签到统计", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable String[] ids) {
return toAjax(peopleCheckInfoService.deleteWithValidByIds(List.of(ids), true));
}
}

113
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/PlanInfoController.java

@ -0,0 +1,113 @@
package org.dromara.demo.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.dromara.demo.domain.vo.PlanSelectVo;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.demo.domain.vo.PlanInfoVo;
import org.dromara.demo.domain.bo.PlanInfoBo;
import org.dromara.demo.service.IPlanInfoService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 计划管理
*
* @author GJH
* @date 2025-07-03
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/air/planInfo")
public class PlanInfoController extends BaseController {
private final IPlanInfoService planInfoService;
/**
* 查询计划管理列表
*/
//@SaCheckPermission("air:planInfo:list")
@GetMapping("/list")
public TableDataInfo<PlanInfoVo> list(PlanInfoBo bo, PageQuery pageQuery) {
return planInfoService.queryPageList(bo, pageQuery);
}
/**
* 导出计划管理列表
*/
//@SaCheckPermission("air:planInfo:export")
@Log(title = "计划管理", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(PlanInfoBo bo, HttpServletResponse response) {
List<PlanInfoVo> list = planInfoService.queryList(bo);
ExcelUtil.exportExcel(list, "计划管理", PlanInfoVo.class, response);
}
/**
* 获取计划管理详细信息
*
* @param id 主键
*/
//@SaCheckPermission("air:planInfo:query")
@GetMapping("/{id}")
public R<PlanInfoVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable String id) {
return R.ok(planInfoService.queryById(id));
}
/**
* 新增计划管理
*/
//@SaCheckPermission("air:planInfo:add")
@Log(title = "计划管理", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody PlanInfoBo bo) {
return toAjax(planInfoService.insertByBo(bo));
}
/**
* 修改计划管理
*/
//@SaCheckPermission("air:planInfo:edit")
@Log(title = "计划管理", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody PlanInfoBo bo) {
return toAjax(planInfoService.updateByBo(bo));
}
/**
* 删除计划管理
*
* @param ids 主键串
*/
//@SaCheckPermission("air:planInfo:remove")
@Log(title = "计划管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable String[] ids) {
return toAjax(planInfoService.deleteWithValidByIds(List.of(ids), true));
}
@GetMapping("/getPlans")
public R<List<PlanSelectVo>> getPlans(PlanInfoBo bo) {
List<PlanSelectVo> rs = planInfoService.getPlans(bo);
return R.ok(rs);
}
}

105
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/PmDataManagementInfoController.java

@ -0,0 +1,105 @@
package org.dromara.demo.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.demo.domain.vo.PmDataManagementInfoVo;
import org.dromara.demo.domain.bo.PmDataManagementInfoBo;
import org.dromara.demo.service.IPmDataManagementInfoService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 颗粒物手工比对数据管理信息
*
* @author GJH
* @date 2025-07-02
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/air/dataManagementInfo")
public class PmDataManagementInfoController extends BaseController {
private final IPmDataManagementInfoService pmDataManagementInfoService;
/**
* 查询颗粒物手工比对数据管理信息列表
*/
//@SaCheckPermission("air:dataManagementInfo:list")
@GetMapping("/list")
public TableDataInfo<PmDataManagementInfoVo> list(PmDataManagementInfoBo bo, PageQuery pageQuery) {
return pmDataManagementInfoService.queryPageList(bo, pageQuery);
}
/**
* 导出颗粒物手工比对数据管理信息列表
*/
//@SaCheckPermission("air:dataManagementInfo:export")
@Log(title = "颗粒物手工比对数据管理信息", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(PmDataManagementInfoBo bo, HttpServletResponse response) {
List<PmDataManagementInfoVo> list = pmDataManagementInfoService.queryList(bo);
ExcelUtil.exportExcel(list, "颗粒物手工比对数据管理信息", PmDataManagementInfoVo.class, response);
}
/**
* 获取颗粒物手工比对数据管理信息详细信息
*
* @param id 主键
*/
//@SaCheckPermission("air:dataManagementInfo:query")
@GetMapping("/{id}")
public R<PmDataManagementInfoVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable String id) {
return R.ok(pmDataManagementInfoService.queryById(id));
}
/**
* 新增颗粒物手工比对数据管理信息
*/
//@SaCheckPermission("air:dataManagementInfo:add")
@Log(title = "颗粒物手工比对数据管理信息", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody PmDataManagementInfoBo bo) {
return toAjax(pmDataManagementInfoService.insertByBo(bo));
}
/**
* 修改颗粒物手工比对数据管理信息
*/
//@SaCheckPermission("air:dataManagementInfo:edit")
@Log(title = "颗粒物手工比对数据管理信息", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody PmDataManagementInfoBo bo) {
return toAjax(pmDataManagementInfoService.updateByBo(bo));
}
/**
* 删除颗粒物手工比对数据管理信息
*
* @param ids 主键串
*/
//@SaCheckPermission("air:dataManagementInfo:remove")
@Log(title = "颗粒物手工比对数据管理信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable String[] ids) {
return toAjax(pmDataManagementInfoService.deleteWithValidByIds(List.of(ids), true));
}
}

105
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/SparePartsInfoController.java

@ -0,0 +1,105 @@
package org.dromara.demo.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.demo.domain.vo.SparePartsInfoVo;
import org.dromara.demo.domain.bo.SparePartsInfoBo;
import org.dromara.demo.service.ISparePartsInfoService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 备品备件列
*
* @author GJH
* @date 2025-07-02
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/air/partsInfo")
public class SparePartsInfoController extends BaseController {
private final ISparePartsInfoService sparePartsInfoService;
/**
* 查询备品备件列列表
*/
//@SaCheckPermission("air:partsInfo:list")
@GetMapping("/list")
public TableDataInfo<SparePartsInfoVo> list(SparePartsInfoBo bo, PageQuery pageQuery) {
return sparePartsInfoService.queryPageList(bo, pageQuery);
}
/**
* 导出备品备件列列表
*/
//@SaCheckPermission("air:partsInfo:export")
@Log(title = "备品备件列", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(SparePartsInfoBo bo, HttpServletResponse response) {
List<SparePartsInfoVo> list = sparePartsInfoService.queryList(bo);
ExcelUtil.exportExcel(list, "备品备件列", SparePartsInfoVo.class, response);
}
/**
* 获取备品备件列详细信息
*
* @param id 主键
*/
//@SaCheckPermission("air:partsInfo:query")
@GetMapping("/{id}")
public R<SparePartsInfoVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable String id) {
return R.ok(sparePartsInfoService.queryById(id));
}
/**
* 新增备品备件列
*/
//@SaCheckPermission("air:partsInfo:add")
@Log(title = "备品备件列", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody SparePartsInfoBo bo) {
return toAjax(sparePartsInfoService.insertByBo(bo));
}
/**
* 修改备品备件列
*/
//@SaCheckPermission("air:partsInfo:edit")
@Log(title = "备品备件列", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody SparePartsInfoBo bo) {
return toAjax(sparePartsInfoService.updateByBo(bo));
}
/**
* 删除备品备件列
*
* @param ids 主键串
*/
//@SaCheckPermission("air:partsInfo:remove")
@Log(title = "备品备件列", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable String[] ids) {
return toAjax(sparePartsInfoService.deleteWithValidByIds(List.of(ids), true));
}
}

105
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/StationFaultInfoController.java

@ -0,0 +1,105 @@
package org.dromara.demo.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.demo.domain.vo.StationFaultInfoVo;
import org.dromara.demo.domain.bo.StationFaultInfoBo;
import org.dromara.demo.service.IStationFaultInfoService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 站点运维故障信息
*
* @author gejunhao
* @date 2025-07-08
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/air/stationFaultInfo")
public class StationFaultInfoController extends BaseController {
private final IStationFaultInfoService stationFaultInfoService;
/**
* 查询站点运维故障信息列表
*/
//@SaCheckPermission("air:faultInfo:list")
@GetMapping("/list")
public TableDataInfo<StationFaultInfoVo> list(StationFaultInfoBo bo, PageQuery pageQuery) {
return stationFaultInfoService.queryPageList(bo, pageQuery);
}
/**
* 导出站点运维故障信息列表
*/
//@SaCheckPermission("air:faultInfo:export")
@Log(title = "站点运维故障信息", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(StationFaultInfoBo bo, HttpServletResponse response) {
List<StationFaultInfoVo> list = stationFaultInfoService.queryList(bo);
ExcelUtil.exportExcel(list, "站点运维故障信息", StationFaultInfoVo.class, response);
}
/**
* 获取站点运维故障信息详细信息
*
* @param id 主键
*/
//@SaCheckPermission("air:faultInfo:query")
@GetMapping("/{id}")
public R<StationFaultInfoVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable String id) {
return R.ok(stationFaultInfoService.queryById(id));
}
/**
* 新增站点运维故障信息
*/
//@SaCheckPermission("air:faultInfo:add")
@Log(title = "站点运维故障信息", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody StationFaultInfoBo bo) {
return toAjax(stationFaultInfoService.insertByBo(bo));
}
/**
* 修改站点运维故障信息
*/
//@SaCheckPermission("air:faultInfo:edit")
@Log(title = "站点运维故障信息", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody StationFaultInfoBo bo) {
return toAjax(stationFaultInfoService.updateByBo(bo));
}
/**
* 删除站点运维故障信息
*
* @param ids 主键串
*/
//@SaCheckPermission("air:faultInfo:remove")
@Log(title = "站点运维故障信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable String[] ids) {
return toAjax(stationFaultInfoService.deleteWithValidByIds(List.of(ids), true));
}
}

129
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/StationInfoController.java

@ -0,0 +1,129 @@
package org.dromara.demo.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.dromara.demo.domain.vo.RegionVo;
import org.dromara.demo.domain.vo.StationSelectVo;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.demo.domain.vo.StationInfoVo;
import org.dromara.demo.domain.bo.StationInfoBo;
import org.dromara.demo.service.IStationInfoService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 子站信息
*
* @author GJH
* @date 2025-07-01
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/air/stationInfo")
public class StationInfoController extends BaseController {
private final IStationInfoService stationInfoService;
/**
* 查询子站信息列表
*/
//@SaCheckPermission("air:stationInfo:list")
@GetMapping("/list")
public TableDataInfo<StationInfoVo> list(StationInfoBo bo, PageQuery pageQuery) {
return stationInfoService.queryPageList(bo, pageQuery);
}
/**
* 导出子站信息列表
*/
//@SaCheckPermission("air:stationInfo:export")
@Log(title = "子站信息", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(StationInfoBo bo, HttpServletResponse response) {
List<StationInfoVo> list = stationInfoService.queryList(bo);
ExcelUtil.exportExcel(list, "子站信息", StationInfoVo.class, response);
}
/**
* 获取子站信息详细信息
*
* @param id 主键
*/
//@SaCheckPermission("air:stationInfo:query")
@GetMapping("/{id}")
public R<StationInfoVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable String id) {
return R.ok(stationInfoService.queryById(id));
}
/**
* 新增子站信息
*/
//@SaCheckPermission("air:stationInfo:add")
@Log(title = "子站信息", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody StationInfoBo bo) {
return toAjax(stationInfoService.insertByBo(bo));
}
/**
* 修改子站信息
*/
//@SaCheckPermission("air:stationInfo:edit")
@Log(title = "子站信息", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody StationInfoBo bo) {
return toAjax(stationInfoService.updateByBo(bo));
}
/**
* 删除子站信息
*
* @param ids 主键串
*/
//@SaCheckPermission("air:stationInfo:remove")
@Log(title = "子站信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable String[] ids) {
return toAjax(stationInfoService.deleteWithValidByIds(List.of(ids), true));
}
/**
* 获取杭州区域列表
*/
@GetMapping("/getHangzhouRegions")
public R<List<RegionVo>> getHangzhouRegions() {
return R.ok(stationInfoService.getHangzhouRegions());
}
@GetMapping("/getStationNameById")
public R<String> getStationNameById(String stationId) {
return R.ok("获取子站名称",stationInfoService.getStationNameById(stationId));
}
@GetMapping("/getStationList")
public R< List<StationSelectVo>> getStationList() {
List<StationSelectVo> stationList = stationInfoService.getStationList();
return R.ok(stationList);
}
}

105
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/StationParamChangeController.java

@ -0,0 +1,105 @@
package org.dromara.demo.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.demo.domain.vo.StationParamChangeVo;
import org.dromara.demo.domain.bo.StationParamChangeBo;
import org.dromara.demo.service.IStationParamChangeService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 站点参数变更
*
* @author gejunhao
* @date 2025-07-08
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/air/paramChange")
public class StationParamChangeController extends BaseController {
private final IStationParamChangeService stationParamChangeService;
/**
* 查询站点参数变更列表
*/
//@SaCheckPermission("air:paramChange:list")
@GetMapping("/list")
public TableDataInfo<StationParamChangeVo> list(StationParamChangeBo bo, PageQuery pageQuery) {
return stationParamChangeService.queryPageList(bo, pageQuery);
}
/**
* 导出站点参数变更列表
*/
//@SaCheckPermission("air:paramChange:export")
@Log(title = "站点参数变更", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(StationParamChangeBo bo, HttpServletResponse response) {
List<StationParamChangeVo> list = stationParamChangeService.queryList(bo);
ExcelUtil.exportExcel(list, "站点参数变更", StationParamChangeVo.class, response);
}
/**
* 获取站点参数变更详细信息
*
* @param id 主键
*/
//@SaCheckPermission("air:paramChange:query")
@GetMapping("/{id}")
public R<StationParamChangeVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable String id) {
return R.ok(stationParamChangeService.queryById(id));
}
/**
* 新增站点参数变更
*/
//@SaCheckPermission("air:paramChange:add")
@Log(title = "站点参数变更", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody StationParamChangeBo bo) {
return toAjax(stationParamChangeService.insertByBo(bo));
}
/**
* 修改站点参数变更
*/
//@SaCheckPermission("air:paramChange:edit")
@Log(title = "站点参数变更", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody StationParamChangeBo bo) {
return toAjax(stationParamChangeService.updateByBo(bo));
}
/**
* 删除站点参数变更
*
* @param ids 主键串
*/
//@SaCheckPermission("air:paramChange:remove")
@Log(title = "站点参数变更", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable String[] ids) {
return toAjax(stationParamChangeService.deleteWithValidByIds(List.of(ids), true));
}
}

105
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/WebSiteNetDataAnalysisController.java

@ -0,0 +1,105 @@
package org.dromara.demo.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.demo.domain.vo.WebSiteNetDataAnalysisVo;
import org.dromara.demo.domain.bo.WebSiteNetDataAnalysisBo;
import org.dromara.demo.service.IWebSiteNetDataAnalysisService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 站点联网数据分析
*
* @author gejunhao
* @date 2025-07-08
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/air/webSiteNetDataAnalysis")
public class WebSiteNetDataAnalysisController extends BaseController {
private final IWebSiteNetDataAnalysisService webSiteNetDataAnalysisService;
/**
* 查询站点联网数据分析列表
*/
//@SaCheckPermission("air:siteNetDataAnalysis:list")
@GetMapping("/list")
public TableDataInfo<WebSiteNetDataAnalysisVo> list(WebSiteNetDataAnalysisBo bo, PageQuery pageQuery) {
return webSiteNetDataAnalysisService.queryPageList(bo, pageQuery);
}
/**
* 导出站点联网数据分析列表
*/
//@SaCheckPermission("air:siteNetDataAnalysis:export")
@Log(title = "站点联网数据分析", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(WebSiteNetDataAnalysisBo bo, HttpServletResponse response) {
List<WebSiteNetDataAnalysisVo> list = webSiteNetDataAnalysisService.queryList(bo);
ExcelUtil.exportExcel(list, "站点联网数据分析", WebSiteNetDataAnalysisVo.class, response);
}
/**
* 获取站点联网数据分析详细信息
*
* @param id 主键
*/
//@SaCheckPermission("air:siteNetDataAnalysis:query")
@GetMapping("/{id}")
public R<WebSiteNetDataAnalysisVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable String id) {
return R.ok(webSiteNetDataAnalysisService.queryById(id));
}
/**
* 新增站点联网数据分析
*/
//@SaCheckPermission("air:siteNetDataAnalysis:add")
@Log(title = "站点联网数据分析", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody WebSiteNetDataAnalysisBo bo) {
return toAjax(webSiteNetDataAnalysisService.insertByBo(bo));
}
/**
* 修改站点联网数据分析
*/
//@SaCheckPermission("air:siteNetDataAnalysis:edit")
@Log(title = "站点联网数据分析", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody WebSiteNetDataAnalysisBo bo) {
return toAjax(webSiteNetDataAnalysisService.updateByBo(bo));
}
/**
* 删除站点联网数据分析
*
* @param ids 主键串
*/
//@SaCheckPermission("air:siteNetDataAnalysis:remove")
@Log(title = "站点联网数据分析", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable String[] ids) {
return toAjax(webSiteNetDataAnalysisService.deleteWithValidByIds(List.of(ids), true));
}
}

58
ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/controller/WorkOrderInfoController.java → ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/WorkOrderInfoController.java

@ -1,4 +1,4 @@
package org.dromara.platform.controller;
package org.dromara.demo.controller;
import java.util.List;
@ -17,86 +17,86 @@ import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.platform.domain.vo.WorkOrderInfoVo;
import org.dromara.platform.domain.bo.WorkOrderInfoBo;
import org.dromara.platform.service.IWorkOrderInfoService;
import org.dromara.demo.domain.vo.WorkOrderInfoVo;
import org.dromara.demo.domain.bo.WorkOrderInfoBo;
import org.dromara.demo.service.IWorkOrderInfoService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 工单信息
* 工单管理
*
* @author gejunhao
* @date 2025-01-13
* @author GJH
* @date 2025-07-03
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/platform/workOrder")
@RequestMapping("/air/orderInfo")
public class WorkOrderInfoController extends BaseController {
private final IWorkOrderInfoService workOrderInfoService;
/**
* 查询工单信息列表
* 查询工单管理列表
*/
@SaCheckPermission("platform:workOrder:list")
//@SaCheckPermission("air:orderInfo:list")
@GetMapping("/list")
public TableDataInfo<WorkOrderInfoVo> list(WorkOrderInfoBo bo, PageQuery pageQuery) {
return workOrderInfoService.queryPageList(bo, pageQuery);
}
/**
* 导出工单信息列表
* 导出工单管理列表
*/
@SaCheckPermission("platform:workOrder:export")
@Log(title = "工单信息", businessType = BusinessType.EXPORT)
//@SaCheckPermission("air:orderInfo:export")
@Log(title = "工单管理", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(WorkOrderInfoBo bo, HttpServletResponse response) {
List<WorkOrderInfoVo> list = workOrderInfoService.queryList(bo);
ExcelUtil.exportExcel(list, "工单信息", WorkOrderInfoVo.class, response);
ExcelUtil.exportExcel(list, "工单管理", WorkOrderInfoVo.class, response);
}
/**
* 获取工单信息详细信息
* 获取工单管理详细信息
*
* @param id 主键
*/
@SaCheckPermission("platform:workOrder:query")
//@SaCheckPermission("air:orderInfo:query")
@GetMapping("/{id}")
public R<WorkOrderInfoVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable String id) {
@PathVariable String id) {
return R.ok(workOrderInfoService.queryById(id));
}
/**
* 新增工单信息
* 新增工单管理
*/
@SaCheckPermission("platform:workOrder:add")
@Log(title = "工单信息", businessType = BusinessType.INSERT)
//@SaCheckPermission("air:orderInfo:add")
@Log(title = "工单管理", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping("/add")
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody WorkOrderInfoBo bo) {
return toAjax(workOrderInfoService.insertByBo(bo));
}
/**
* 修改工单信息
* 修改工单管理
*/
@SaCheckPermission("platform:workOrder:edit")
@Log(title = "工单信息", businessType = BusinessType.UPDATE)
//@SaCheckPermission("air:orderInfo:edit")
@Log(title = "工单管理", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping("/update")
public R<Void> edit(@RequestBody WorkOrderInfoBo bo) {
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody WorkOrderInfoBo bo) {
return toAjax(workOrderInfoService.updateByBo(bo));
}
/**
* 删除工单信息
* 删除工单管理
*
* @param ids 主键串
*/
@SaCheckPermission("platform:workOrder:remove")
@Log(title = "工单信息", businessType = BusinessType.DELETE)
//@SaCheckPermission("air:orderInfo:remove")
@Log(title = "工单管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable String[] ids) {

105
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/ZeroAdjustmentAnalysisController.java

@ -0,0 +1,105 @@
package org.dromara.demo.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.demo.domain.vo.ZeroAdjustmentAnalysisVo;
import org.dromara.demo.domain.bo.ZeroAdjustmentAnalysisBo;
import org.dromara.demo.service.IZeroAdjustmentAnalysisService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 校零校准分析
*
* @author gejunhao
* @date 2025-07-08
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/air/zeroAdjustmentAnalysis")
public class ZeroAdjustmentAnalysisController extends BaseController {
private final IZeroAdjustmentAnalysisService zeroAdjustmentAnalysisService;
/**
* 查询校零校准分析列表
*/
//@SaCheckPermission("air:adjustmentAnalysis:list")
@GetMapping("/list")
public TableDataInfo<ZeroAdjustmentAnalysisVo> list(ZeroAdjustmentAnalysisBo bo, PageQuery pageQuery) {
return zeroAdjustmentAnalysisService.queryPageList(bo, pageQuery);
}
/**
* 导出校零校准分析列表
*/
//@SaCheckPermission("air:adjustmentAnalysis:export")
@Log(title = "校零校准分析", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(ZeroAdjustmentAnalysisBo bo, HttpServletResponse response) {
List<ZeroAdjustmentAnalysisVo> list = zeroAdjustmentAnalysisService.queryList(bo);
ExcelUtil.exportExcel(list, "校零校准分析", ZeroAdjustmentAnalysisVo.class, response);
}
/**
* 获取校零校准分析详细信息
*
* @param id 主键
*/
//@SaCheckPermission("air:adjustmentAnalysis:query")
@GetMapping("/{id}")
public R<ZeroAdjustmentAnalysisVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable String id) {
return R.ok(zeroAdjustmentAnalysisService.queryById(id));
}
/**
* 新增校零校准分析
*/
//@SaCheckPermission("air:adjustmentAnalysis:add")
@Log(title = "校零校准分析", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody ZeroAdjustmentAnalysisBo bo) {
return toAjax(zeroAdjustmentAnalysisService.insertByBo(bo));
}
/**
* 修改校零校准分析
*/
//@SaCheckPermission("air:adjustmentAnalysis:edit")
@Log(title = "校零校准分析", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody ZeroAdjustmentAnalysisBo bo) {
return toAjax(zeroAdjustmentAnalysisService.updateByBo(bo));
}
/**
* 删除校零校准分析
*
* @param ids 主键串
*/
//@SaCheckPermission("air:adjustmentAnalysis:remove")
@Log(title = "校零校准分析", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable String[] ids) {
return toAjax(zeroAdjustmentAnalysisService.deleteWithValidByIds(List.of(ids), true));
}
}

1
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/package-info.java

@ -1 +0,0 @@
package org.dromara.demo.controller;

2
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/MailController.java → ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/MailController.java

@ -1,4 +1,4 @@
package org.dromara.demo.controller;
package org.dromara.demo.controller.test;
import org.dromara.common.core.domain.R;
import org.dromara.common.mail.utils.MailUtils;

2
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/RedisCacheController.java → ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/RedisCacheController.java

@ -1,4 +1,4 @@
package org.dromara.demo.controller;
package org.dromara.demo.controller.test;
import org.dromara.common.core.constant.CacheNames;
import org.dromara.common.core.domain.R;

2
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/RedisLockController.java → ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/RedisLockController.java

@ -1,4 +1,4 @@
package org.dromara.demo.controller;
package org.dromara.demo.controller.test;
import com.baomidou.lock.LockInfo;
import com.baomidou.lock.LockTemplate;

2
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/RedisPubSubController.java → ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/RedisPubSubController.java

@ -1,4 +1,4 @@
package org.dromara.demo.controller;
package org.dromara.demo.controller.test;
import org.dromara.common.core.domain.R;
import org.dromara.common.redis.utils.RedisUtils;

2
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/RedisRateLimiterController.java → ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/RedisRateLimiterController.java

@ -1,4 +1,4 @@
package org.dromara.demo.controller;
package org.dromara.demo.controller.test;
import org.dromara.common.core.domain.R;
import org.dromara.common.ratelimiter.annotation.RateLimiter;

2
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/SmsController.java → ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/SmsController.java

@ -1,4 +1,4 @@
package org.dromara.demo.controller;
package org.dromara.demo.controller.test;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;

2
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/Swagger3DemoController.java → ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/Swagger3DemoController.java

@ -1,4 +1,4 @@
package org.dromara.demo.controller;
package org.dromara.demo.controller.test;
import org.dromara.common.core.domain.R;
import org.springframework.http.MediaType;

2
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/TestBatchController.java → ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/TestBatchController.java

@ -1,4 +1,4 @@
package org.dromara.demo.controller;
package org.dromara.demo.controller.test;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.dromara.common.core.domain.R;

2
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/TestDemoController.java → ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/TestDemoController.java

@ -1,4 +1,4 @@
package org.dromara.demo.controller;
package org.dromara.demo.controller.test;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.dromara.common.core.domain.R;

2
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/TestEncryptController.java → ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/TestEncryptController.java

@ -1,4 +1,4 @@
package org.dromara.demo.controller;
package org.dromara.demo.controller.test;
import org.dromara.common.core.domain.R;
import org.dromara.demo.domain.TestDemoEncrypt;

2
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/TestExcelController.java → ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/TestExcelController.java

@ -1,4 +1,4 @@
package org.dromara.demo.controller;
package org.dromara.demo.controller.test;
import cn.hutool.core.collection.CollUtil;
import jakarta.servlet.http.HttpServletResponse;

2
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/TestI18nController.java → ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/TestI18nController.java

@ -1,4 +1,4 @@
package org.dromara.demo.controller;
package org.dromara.demo.controller.test;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.utils.MessageUtils;

2
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/TestSensitiveController.java → ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/TestSensitiveController.java

@ -1,4 +1,4 @@
package org.dromara.demo.controller;
package org.dromara.demo.controller.test;
import org.dromara.common.core.domain.R;
import org.dromara.common.web.core.BaseController;

2
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/TestTreeController.java → ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/TestTreeController.java

@ -1,4 +1,4 @@
package org.dromara.demo.controller;
package org.dromara.demo.controller.test;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.dromara.common.core.domain.R;

2
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/WeSocketController.java → ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/WeSocketController.java

@ -1,4 +1,4 @@
package org.dromara.demo.controller;
package org.dromara.demo.controller.test;
import org.dromara.common.core.domain.R;
import org.dromara.common.websocket.dto.WebSocketMessageDto;

1
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/test/package-info.java

@ -0,0 +1 @@
package org.dromara.demo.controller.test;

104
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/DeviceInfo.java

@ -0,0 +1,104 @@
package org.dromara.demo.domain;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.tenant.core.TenantEntity;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
import java.util.Date;
/**
* 设备信息对象 device_info
*
* @author GJH
* @date 2025-07-01
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("device_info")
public class DeviceInfo extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID自增
*/
@TableId(value = "id")
private String id;
/**
* 站点
*/
private String station;
/**
* 所属区域
*/
private String area;
/**
* 设备名称
*/
private String device;
/**
* 设备型号
*/
private String model;
/**
* 生产厂家
*/
private String manufacturer;
/**
* 生产日期
*/
private Date manufactureDate;
/**
* 序列号
*/
private String number;
/**
* 检测物
*/
private String testSubstance;
/**
* 监理公司
*/
private String monitorCompany;
/**
* 状态
*/
private String status;
/**
* 删除标志
*/
@TableLogic
private Long delFlag;
@TableField(exist = false)
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date startDate;
/**
* 结束日期
*/
@TableField(exist = false)
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date endDate;
}

86
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/OrderManagementInfo.java

@ -0,0 +1,86 @@
package org.dromara.demo.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
/**
* 现场核查单管理信息对象 order_management_info
*
* @author GJH
* @date 2025-07-02
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("order_management_info")
public class OrderManagementInfo extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键IDMyBatis-Plus自增
*/
@TableId(value = "id")
private String id;
/**
* 核查时间
*/
private Date checkTime;
/**
* 子站名称
*/
private String station;
/**
* 所属区域
*/
private String area;
/**
* 状态
*/
private String status;
/**
* 监理类型
*/
private String monitorType;
/**
* 核查人员
*/
private String checkPerson;
/**
* 核查得分
*/
private Long checkScore;
/**
* 删除标志
*/
@TableLogic
private Long delFlag;
@TableField(exist = false)
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date startDate;
/**
* 结束日期
*/
@TableField(exist = false)
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date endDate;
}

77
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/PeopleCheckInfo.java

@ -0,0 +1,77 @@
package org.dromara.demo.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
/**
* 人员签到统计对象 people_check_info
*
* @author GJH
* @date 2025-07-08
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("people_check_info")
public class PeopleCheckInfo extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@TableId(value = "id")
private String id;
/**
* 站点名称
*/
private String station;
/**
* 所属区域
*/
private String area;
/**
* 人员性质
*/
private String attribute;
/**
* 人员姓名
*/
private String person;
/**
* 所属公司
*/
private String company;
/**
* 签到时间
*/
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date registerTime;
/**
* 签到类型
*/
private String registerType;
/**
* 删除标志
*/
@TableLogic
private Long delFlag;
}

85
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/PlanInfo.java

@ -0,0 +1,85 @@
package org.dromara.demo.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.io.Serial;
/**
* 计划管理对象 plan_info
*
* @author GJH
* @date 2025-07-03
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("plan_info")
public class PlanInfo extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@TableId(value = "id")
private String id;
/**
* 计划号
*/
private String planNum;
/**
* 计划日期
*/
private Date planDate;
/**
* 子站名称
*/
private String station;
/**
* 子站状态
*/
private String status;
/**
* 所属区域
*/
private String area;
/**
* 运维公司
*/
private String ioCompany;
/**
* 运维人员
*/
private String ioPerson;
/**
* 监理类型
*/
private String monitorType;
/**
* 监理公司
*/
private String monitorCompany;
/**
* 删除标志
*/
@TableLogic
private Long delFlag;
private String flag;
}

94
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/PmDataManagementInfo.java

@ -0,0 +1,94 @@
package org.dromara.demo.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
/**
* 颗粒物手工比对数据管理信息对象 pm_data_management_info
*
* @author GJH
* @date 2025-07-02
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("pm_data_management_info")
public class PmDataManagementInfo extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键IDMyBatis-Plus自增
*/
@TableId(value = "id")
private String id;
/**
* 子站名称
*/
private String station;
/**
* 所属区域
*/
private String area;
/**
* 运维公司
*/
private String ioCompany;
/**
* 开始时间
*/
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date startDate;
/**
* 结束时间
*/
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date endDate;
/**
* 监测项目
*/
private String monitorProject;
/**
* 自动监测(mg/m³)
*/
private Long autoMonitor;
/**
* 手动监测(mg/m³)
*/
private Long handleMonitor;
/**
* 相对误差
*/
private Long difference;
/**
* 结论
*/
private String result;
/**
* 删除标志
*/
@TableLogic
private Long delFlag;
}

77
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/SparePartsInfo.java

@ -0,0 +1,77 @@
package org.dromara.demo.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
/**
* 备品备件列对象 spare_parts_info
*
* @author GJH
* @date 2025-07-02
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("spare_parts_info")
public class SparePartsInfo extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@TableId(value = "id")
private String id;
/**
* 品名
*/
private String name;
/**
* 类型
*/
private String type;
/**
* 型号
*/
private String model;
/**
* 数量
*/
private Long amount;
/**
* 入库日期
*/
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date indate;
/**
* 运维公司
*/
private String ioCompany;
/**
* 监理公司
*/
private String monitorCompany;
/**
* 删除标志
*/
@TableLogic
private Long delFlag;
}

94
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/StationFaultInfo.java

@ -0,0 +1,94 @@
package org.dromara.demo.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.io.Serial;
/**
* air对象 station_fault_info
*
* @author gejunhao
* @date 2025-07-08
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("station_fault_info")
public class StationFaultInfo extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@TableId(value = "id")
private String id;
/**
* 删除标志
*/
@TableLogic
private Long delFlag;
/**
* 站点
*/
private String station;
/**
* 监测项目
*/
private String monitorProject;
/**
* 故障开始时间
*/
private Date faultStartDate;
/**
* 故障结束时间
*/
private Date faultEndDate;
/**
* 运维响应时间
*/
private Date ioResponseDate;
/**
* 响应时间跨度
*/
private String responseDuration;
/**
* 故障时间跨度
*/
private String faultDuration;
/**
* 监理人员
*/
private String monitorPerson;
/**
* 监理单位
*/
private String monitorCompany;
/**
* 运维单位
*/
private String ioCompany;
/**
* 备注
*/
private String remark;
}

82
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/StationInfo.java

@ -0,0 +1,82 @@
package org.dromara.demo.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
/**
* 子站信息对象 station_info
*
* @author GJH
* @date 2025-07-01
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("station_info")
public class StationInfo extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID数据库自增
*/
@TableId(value = "id")
private String id;
/**
* 子站名称
*/
private String station;
/**
* 所属区域
*/
private String area;
/**
* 地址
*/
private String address;
/**
* 经度
*/
private String longitude;
/**
* 纬度
*/
private String latitude;
/**
* 运维公司
*/
private String ioCompany;
/**
* 运维人员
*/
private String ioPerson;
/**
* 监理公司
*/
private String monitorCompany;
/**
* 状态
*/
private String status;
/**
* 删除标志
*/
@TableLogic
private Long delFlag;
}

79
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/StationParamChange.java

@ -0,0 +1,79 @@
package org.dromara.demo.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.io.Serial;
/**
* 站点参数变更对象 station_param_change
*
* @author gejunhao
* @date 2025-07-08
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("station_param_change")
public class StationParamChange extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@TableId(value = "id")
private String id;
/**
* 站点名称
*/
private String station;
/**
* 监测项目
*/
private String monitorProject;
/**
* 参数名称
*/
private String arguments;
/**
* 发现时间
*/
private Date foundDate;
/**
* 监理人员
*/
private String monitorPerson;
/**
* 监理单位
*/
private String monitorCompany;
/**
* 运维单位
*/
private String ioCompany;
/**
* 备注
*/
private String remark;
/**
* 删除标志0未删除1已删除
*/
@TableLogic
private Long delFlag;
}

82
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/WebSiteNetDataAnalysis.java

@ -0,0 +1,82 @@
package org.dromara.demo.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
/**
* 站点联网数据分析对象 web_site_net_data_analysis
*
* @author gejunhao
* @date 2025-07-08
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("web_site_net_data_analysis")
public class WebSiteNetDataAnalysis extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@TableId(value = "id")
private String id;
/**
* 站点名称
*/
private String station;
/**
* 所属区域
*/
private String area;
/**
* 当前状态运行中维护中离线
*/
private String status;
/**
* 运维单位
*/
private String ioCompany;
/**
* 监理单位
*/
private String monitorCompany;
/**
* 本月应收数据金额
*/
private Long planIncome;
/**
* 本月实收数据金额
*/
private Long actualIncome;
/**
* 最新数据更新时间
*/
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date lastTime;
/**
* 删除标志0未删除1已删除
*/
@TableLogic
private Long delFlag;
}

77
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/WorkOrderInfo.java

@ -0,0 +1,77 @@
package org.dromara.demo.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
/**
* 工单管理对象 work_order_info
*
* @author GJH
* @date 2025-07-03
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("work_order_info")
public class WorkOrderInfo extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@TableId(value = "id")
private String id;
/**
* 工单编号
*/
private String orderNum;
/**
* 工作日期
*/
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date workDate;
/**
* 子站名称
*/
private String station;
/**
* 子站状态
*/
private String status;
/**
* 所属区域
*/
private String area;
/**
* 监理类型
*/
private String monitorType;
/**
* 监理人员
*/
private String monitorPerson;
/**
* 删除标志
*/
@TableLogic
private Long delFlag;
}

109
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/ZeroAdjustmentAnalysis.java

@ -0,0 +1,109 @@
package org.dromara.demo.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
/**
* 校零校准分析对象 zero_adjustment_analysis
*
* @author gejunhao
* @date 2025-07-08
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("zero_adjustment_analysis")
public class ZeroAdjustmentAnalysis extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@TableId(value = "id")
private String id;
/**
* 站点名称
*/
private String station;
/**
* 所属区域
*/
private String area;
/**
* 监测项目
*/
private String monitorProject;
/**
* 上次校零校准时间
*/
private Date toZeroDate;
/**
* 时间跨度7天30天
*/
private String duration;
/**
* 核查开始日期
*/
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date checkStartDate;
/**
* 核查结束日期
*/
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date checkEndDate;
/**
* 实际校零校准次数
*/
private Long actualTimes;
/**
* 应校零校准次数
*/
private Long planTimes;
/**
* 监理人员
*/
private String monitorPerson;
/**
* 监理单位
*/
private String monitorCompany;
/**
* 环保知情人
*/
private String insider;
/**
* 备注
*/
private String remark;
/**
* 删除标志0未删除1已删除
*/
@TableLogic
private Long delFlag;
}

100
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/DeviceInfoBo.java

@ -0,0 +1,100 @@
package org.dromara.demo.domain.bo;
import org.dromara.demo.domain.DeviceInfo;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
/**
* 设备信息业务对象 device_info
*
* @author GJH
* @date 2025-07-01
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = DeviceInfo.class, reverseConvertGenerate = false)
public class DeviceInfoBo extends BaseEntity {
/**
* 主键ID自增
*/
//@NotBlank(message = "主键ID(自增)不能为空", groups = { EditGroup.class })
private String id;
/**
* 站点
*/
//@NotBlank(message = "站点不能为空", groups = { AddGroup.class, EditGroup.class })
private String station;
/**
* 所属区域
*/
//@NotBlank(message = "所属区域不能为空", groups = { AddGroup.class, EditGroup.class })
private String area;
/**
* 设备名称
*/
//@NotBlank(message = "设备名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String device;
/**
* 设备型号
*/
//@NotBlank(message = "设备型号不能为空", groups = { AddGroup.class, EditGroup.class })
private String model;
/**
* 生产厂家
*/
//@NotBlank(message = "生产厂家不能为空", groups = { AddGroup.class, EditGroup.class })
private String manufacturer;
/**
* 生产日期
*/
//@NotNull(message = "生产日期不能为空", groups = { AddGroup.class, EditGroup.class })
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date manufactureDate;
/**
* 序列号
*/
//@NotBlank(message = "序列号不能为空", groups = { AddGroup.class, EditGroup.class })
private String number;
/**
* 检测物
*/
//@NotBlank(message = "检测物不能为空", groups = { AddGroup.class, EditGroup.class })
private String testSubstance;
/**
* 状态
*/
//@NotBlank(message = "状态不能为空", groups = { AddGroup.class, EditGroup.class })
private String status;
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date startDate;
/**
* 结束日期
*/
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date endDate;
}

92
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/OrderManagementInfoBo.java

@ -0,0 +1,92 @@
package org.dromara.demo.domain.bo;
import org.dromara.demo.domain.OrderManagementInfo;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
/**
* 现场核查单管理信息业务对象 order_management_info
*
* @author GJH
* @date 2025-07-02
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = OrderManagementInfo.class, reverseConvertGenerate = false)
public class OrderManagementInfoBo extends BaseEntity {
/**
* 主键IDMyBatis-Plus自增
*/
//@NotBlank(message = "主键ID(MyBatis-Plus自增)不能为空", groups = { EditGroup.class })
private String id;
/**
* 核查时间
*/
//@NotNull(message = "核查时间不能为空", groups = { AddGroup.class, EditGroup.class })
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date checkTime;
/**
* 子站名称
*/
//@NotBlank(message = "子站名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String station;
/**
* 所属区域
*/
//@NotBlank(message = "所属区域不能为空", groups = { AddGroup.class, EditGroup.class })
private String area;
/**
* 状态
*/
//@NotBlank(message = "状态不能为空", groups = { AddGroup.class, EditGroup.class })
private String status;
/**
* 监理类型
*/
//@NotBlank(message = "监理类型不能为空", groups = { AddGroup.class, EditGroup.class })
private String monitorType;
/**
* 核查人员
*/
//@NotBlank(message = "核查人员不能为空", groups = { AddGroup.class, EditGroup.class })
private String checkPerson;
/**
* 核查得分
*/
//@NotNull(message = "核查得分不能为空", groups = { AddGroup.class, EditGroup.class })
private Long checkScore;
/**
* 子站ID
*/
private String stationId;
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date startDate;
/**
* 结束日期
*/
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date endDate;
}

77
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/PeopleCheckInfoBo.java

@ -0,0 +1,77 @@
package org.dromara.demo.domain.bo;
import org.dromara.demo.domain.PeopleCheckInfo;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
/**
* 人员签到统计业务对象 people_check_info
*
* @author GJH
* @date 2025-07-08
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = PeopleCheckInfo.class, reverseConvertGenerate = false)
public class PeopleCheckInfoBo extends BaseEntity {
/**
* 主键ID
*/
//@NotBlank(message = "主键ID不能为空", groups = { EditGroup.class })
private String id;
/**
* 站点名称
*/
//@NotBlank(message = "站点名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String station;
/**
* 所属区域
*/
//@NotBlank(message = "所属区域不能为空", groups = { AddGroup.class, EditGroup.class })
private String area;
/**
* 人员性质
*/
//@NotBlank(message = "人员性质不能为空", groups = { AddGroup.class, EditGroup.class })
private String attribute;
/**
* 人员姓名
*/
//@NotBlank(message = "人员姓名不能为空", groups = { AddGroup.class, EditGroup.class })
private String person;
/**
* 所属公司
*/
//@NotBlank(message = "所属公司不能为空", groups = { AddGroup.class, EditGroup.class })
private String company;
/**
* 签到时间
*/
//@NotNull(message = "签到时间不能为空", groups = { AddGroup.class, EditGroup.class })
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date registerTime;
/**
* 签到类型
*/
//@NotBlank(message = "签到类型不能为空", groups = { AddGroup.class, EditGroup.class })
private String registerType;
}

92
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/PlanInfoBo.java

@ -0,0 +1,92 @@
package org.dromara.demo.domain.bo;
import org.dromara.demo.domain.PlanInfo;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
/**
* 计划管理业务对象 plan_info
*
* @author GJH
* @date 2025-07-03
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = PlanInfo.class, reverseConvertGenerate = false)
public class PlanInfoBo extends BaseEntity {
/**
* 主键ID
*/
//@NotBlank(message = "主键ID不能为空", groups = { EditGroup.class })
private String id;
/**
* 计划号
*/
//@NotBlank(message = "计划号不能为空", groups = { AddGroup.class, EditGroup.class })
private String planNum;
/**
* 计划日期
*/
//@NotNull(message = "计划日期不能为空", groups = { AddGroup.class, EditGroup.class })
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date planDate;
/**
* 子站名称
*/
//@NotBlank(message = "子站名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String station;
/**
* 子站状态
*/
//@NotBlank(message = "子站状态不能为空", groups = { AddGroup.class, EditGroup.class })
private String status;
/**
* 所属区域
*/
//@NotBlank(message = "所属区域不能为空", groups = { AddGroup.class, EditGroup.class })
private String area;
/**
* 运维公司
*/
//@NotBlank(message = "运维公司不能为空", groups = { AddGroup.class, EditGroup.class })
private String ioCompany;
/**
* 运维人员
*/
//@NotBlank(message = "运维人员不能为空", groups = { AddGroup.class, EditGroup.class })
private String ioPerson;
/**
* 监理类型
*/
//@NotBlank(message = "监理类型不能为空", groups = { AddGroup.class, EditGroup.class })
private String monitorType;
/**
* 监理公司
*/
//@NotBlank(message = "监理公司不能为空", groups = { AddGroup.class, EditGroup.class })
private String monitorCompany;
/**
* 是否被添加工单
*/
private String flag;
}

97
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/PmDataManagementInfoBo.java

@ -0,0 +1,97 @@
package org.dromara.demo.domain.bo;
import org.dromara.demo.domain.PmDataManagementInfo;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
/**
* 颗粒物手工比对数据管理信息业务对象 pm_data_management_info
*
* @author GJH
* @date 2025-07-02
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = PmDataManagementInfo.class, reverseConvertGenerate = false)
public class PmDataManagementInfoBo extends BaseEntity {
/**
* 主键IDMyBatis-Plus自增
*/
//@NotBlank(message = "主键ID(MyBatis-Plus自增)不能为空", groups = { EditGroup.class })
private String id;
/**
* 子站名称
*/
//@NotBlank(message = "子站名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String station;
/**
* 所属区域
*/
//@NotBlank(message = "所属区域不能为空", groups = { AddGroup.class, EditGroup.class })
private String area;
/**
* 运维公司
*/
//@NotBlank(message = "运维公司不能为空", groups = { AddGroup.class, EditGroup.class })
private String ioCompany;
/**
* 开始时间
*/
//@NotNull(message = "开始时间不能为空", groups = { AddGroup.class, EditGroup.class })
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date startDate;
/**
* 结束时间
*/
//@NotNull(message = "结束时间不能为空", groups = { AddGroup.class, EditGroup.class })
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date endDate;
/**
* 监测项目
*/
//@NotBlank(message = "监测项目不能为空", groups = { AddGroup.class, EditGroup.class })
private String monitorProject;
/**
* 自动监测(mg/m³)
*/
//@NotNull(message = "自动监测(mg/m³)不能为空", groups = { AddGroup.class, EditGroup.class })
private Long autoMonitor;
/**
* 手动监测(mg/m³)
*/
//@NotNull(message = "手动监测(mg/m³)不能为空", groups = { AddGroup.class, EditGroup.class })
private Long handleMonitor;
/**
* 相对误差
*/
//@NotNull(message = "相对误差不能为空", groups = { AddGroup.class, EditGroup.class })
private Long difference;
/**
* 结论
*/
//@NotBlank(message = "结论不能为空", groups = { AddGroup.class, EditGroup.class })
private String result;
}

77
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/SparePartsInfoBo.java

@ -0,0 +1,77 @@
package org.dromara.demo.domain.bo;
import org.dromara.demo.domain.SparePartsInfo;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
/**
* 备品备件列业务对象 spare_parts_info
*
* @author GJH
* @date 2025-07-02
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = SparePartsInfo.class, reverseConvertGenerate = false)
public class SparePartsInfoBo extends BaseEntity {
/**
* 主键ID
*/
//@NotBlank(message = "主键ID不能为空", groups = { EditGroup.class })
private String id;
/**
* 品名
*/
//@NotBlank(message = "品名不能为空", groups = { AddGroup.class, EditGroup.class })
private String name;
/**
* 类型
*/
//@NotBlank(message = "类型不能为空", groups = { AddGroup.class, EditGroup.class })
private String type;
/**
* 型号
*/
//@NotBlank(message = "型号不能为空", groups = { AddGroup.class, EditGroup.class })
private String model;
/**
* 数量
*/
//@NotNull(message = "数量不能为空", groups = { AddGroup.class, EditGroup.class })
private Long amount;
/**
* 入库日期
*/
//@NotNull(message = "入库日期不能为空", groups = { AddGroup.class, EditGroup.class })
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date indate;
/**
* 运维公司
*/
//@NotBlank(message = "运维公司不能为空", groups = { AddGroup.class, EditGroup.class })
private String ioCompany;
/**
* 监理公司
*/
//@NotBlank(message = "监理公司不能为空", groups = { AddGroup.class, EditGroup.class })
private String monitorCompany;
}

105
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/StationFaultInfoBo.java

@ -0,0 +1,105 @@
package org.dromara.demo.domain.bo;
import org.dromara.demo.domain.StationFaultInfo;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
/**
* air业务对象 station_fault_info
*
* @author gejunhao
* @date 2025-07-08
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = StationFaultInfo.class, reverseConvertGenerate = false)
public class StationFaultInfoBo extends BaseEntity {
/**
* 主键ID
*/
//@NotBlank(message = "主键ID不能为空", groups = { EditGroup.class })
private String id;
/**
* 站点
*/
//@NotBlank(message = "站点不能为空", groups = { AddGroup.class, EditGroup.class })
private String station;
/**
* 监测项目
*/
//@NotBlank(message = "监测项目不能为空", groups = { AddGroup.class, EditGroup.class })
private String monitorProject;
/**
* 故障开始时间
*/
//@NotNull(message = "故障开始时间不能为空", groups = { AddGroup.class, EditGroup.class })
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date faultStartDate;
/**
* 故障结束时间
*/
//@NotNull(message = "故障结束时间不能为空", groups = { AddGroup.class, EditGroup.class })
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date faultEndDate;
/**
* 运维响应时间
*/
//@NotNull(message = "运维响应时间不能为空", groups = { AddGroup.class, EditGroup.class })
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date ioResponseDate;
/**
* 响应时间跨度
*/
//@NotBlank(message = "响应时间跨度不能为空", groups = { AddGroup.class, EditGroup.class })
private String responseDuration;
/**
* 故障时间跨度
*/
//@NotBlank(message = "故障时间跨度不能为空", groups = { AddGroup.class, EditGroup.class })
private String faultDuration;
/**
* 监理人员
*/
//@NotBlank(message = "监理人员不能为空", groups = { AddGroup.class, EditGroup.class })
private String monitorPerson;
/**
* 监理单位
*/
//@NotBlank(message = "监理单位不能为空", groups = { AddGroup.class, EditGroup.class })
private String monitorCompany;
/**
* 运维单位
*/
//@NotBlank(message = "运维单位不能为空", groups = { AddGroup.class, EditGroup.class })
private String ioCompany;
/**
* 备注
*/
//@NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
private String remark;
}

84
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/StationInfoBo.java

@ -0,0 +1,84 @@
package org.dromara.demo.domain.bo;
import org.dromara.demo.domain.StationInfo;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
/**
* 子站信息业务对象 station_info
*
* @author GJH
* @date 2025-07-01
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = StationInfo.class, reverseConvertGenerate = false)
public class StationInfoBo extends BaseEntity {
/**
* 主键ID数据库自增
*/
//@NotBlank(message = "主键ID(数据库自增)不能为空", groups = { EditGroup.class })
private String id;
/**
* 子站名称
*/
//@NotBlank(message = "子站名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String station;
/**
* 所属区域
*/
//@NotBlank(message = "所属区域不能为空", groups = { AddGroup.class, EditGroup.class })
private String area;
/**
* 地址
*/
//@NotBlank(message = "地址不能为空", groups = { AddGroup.class, EditGroup.class })
private String address;
/**
* 经度
*/
//@NotBlank(message = "经度不能为空", groups = { AddGroup.class, EditGroup.class })
private String longitude;
/**
* 纬度
*/
//@NotBlank(message = "纬度不能为空", groups = { AddGroup.class, EditGroup.class })
private String latitude;
/**
* 运维公司
*/
//@NotBlank(message = "运维公司不能为空", groups = { AddGroup.class, EditGroup.class })
private String ioCompany;
/**
* 运维人员
*/
//@NotBlank(message = "运维人员不能为空", groups = { AddGroup.class, EditGroup.class })
private String ioPerson;
/**
* 监理公司
*/
//@NotBlank(message = "监理公司不能为空", groups = { AddGroup.class, EditGroup.class })
private String monitorCompany;
/**
* 状态
*/
//@NotBlank(message = "状态不能为空", groups = { AddGroup.class, EditGroup.class })
private String status;
}

83
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/StationParamChangeBo.java

@ -0,0 +1,83 @@
package org.dromara.demo.domain.bo;
import org.dromara.demo.domain.StationParamChange;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
/**
* 站点参数变更业务对象 station_param_change
*
* @author gejunhao
* @date 2025-07-08
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = StationParamChange.class, reverseConvertGenerate = false)
public class StationParamChangeBo extends BaseEntity {
/**
* 主键ID
*/
//@NotBlank(message = "主键ID不能为空", groups = { EditGroup.class })
private String id;
/**
* 站点名称
*/
//@NotBlank(message = "站点名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String station;
/**
* 监测项目
*/
//@NotBlank(message = "监测项目不能为空", groups = { AddGroup.class, EditGroup.class })
private String monitorProject;
/**
* 参数名称
*/
//@NotBlank(message = "参数名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String arguments;
/**
* 发现时间
*/
//@NotNull(message = "发现时间不能为空", groups = { AddGroup.class, EditGroup.class })
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date foundDate;
/**
* 监理人员
*/
//@NotBlank(message = "监理人员不能为空", groups = { AddGroup.class, EditGroup.class })
private String monitorPerson;
/**
* 监理单位
*/
//@NotBlank(message = "监理单位不能为空", groups = { AddGroup.class, EditGroup.class })
private String monitorCompany;
/**
* 运维单位
*/
//@NotBlank(message = "运维单位不能为空", groups = { AddGroup.class, EditGroup.class })
private String ioCompany;
/**
* 备注
*/
//@NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
private String remark;
}

83
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/WebSiteNetDataAnalysisBo.java

@ -0,0 +1,83 @@
package org.dromara.demo.domain.bo;
import org.dromara.demo.domain.WebSiteNetDataAnalysis;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
/**
* 站点联网数据分析业务对象 web_site_net_data_analysis
*
* @author gejunhao
* @date 2025-07-08
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = WebSiteNetDataAnalysis.class, reverseConvertGenerate = false)
public class WebSiteNetDataAnalysisBo extends BaseEntity {
/**
* 主键ID
*/
//@NotBlank(message = "主键ID不能为空", groups = { EditGroup.class })
private String id;
/**
* 站点名称
*/
//@NotBlank(message = "站点名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String station;
/**
* 所属区域
*/
//@NotBlank(message = "所属区域不能为空", groups = { AddGroup.class, EditGroup.class })
private String area;
/**
* 当前状态运行中维护中离线
*/
//@NotBlank(message = "当前状态(如:运行中、维护中、离线)不能为空", groups = { AddGroup.class, EditGroup.class })
private String status;
/**
* 运维单位
*/
//@NotBlank(message = "运维单位不能为空", groups = { AddGroup.class, EditGroup.class })
private String ioCompany;
/**
* 监理单位
*/
//@NotBlank(message = "监理单位不能为空", groups = { AddGroup.class, EditGroup.class })
private String monitorCompany;
/**
* 本月应收数据金额
*/
//@NotNull(message = "本月应收数据金额不能为空", groups = { AddGroup.class, EditGroup.class })
private Long planIncome;
/**
* 本月实收数据金额
*/
//@NotNull(message = "本月实收数据金额不能为空", groups = { AddGroup.class, EditGroup.class })
private Long actualIncome;
/**
* 最新数据更新时间
*/
//@NotNull(message = "最新数据更新时间不能为空", groups = { AddGroup.class, EditGroup.class })
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date lastTime;
}

80
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/WorkOrderInfoBo.java

@ -0,0 +1,80 @@
package org.dromara.demo.domain.bo;
import org.dromara.demo.domain.WorkOrderInfo;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
/**
* 工单管理业务对象 work_order_info
*
* @author GJH
* @date 2025-07-03
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = WorkOrderInfo.class, reverseConvertGenerate = false)
public class WorkOrderInfoBo extends BaseEntity {
/**
* 主键ID
*/
//@NotBlank(message = "主键ID不能为空", groups = { EditGroup.class })
private String id;
/**
* 工单编号
*/
//@NotBlank(message = "工单编号不能为空", groups = { AddGroup.class, EditGroup.class })
private String orderNum;
/**
* 工作日期
*/
//@NotNull(message = "工作日期不能为空", groups = { AddGroup.class, EditGroup.class })
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date workDate;
/**
* 子站名称
*/
//@NotBlank(message = "子站名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String station;
/**
* 子站状态
*/
//@NotBlank(message = "子站状态不能为空", groups = { AddGroup.class, EditGroup.class })
private String status;
/**
* 所属区域
*/
//@NotBlank(message = "所属区域不能为空", groups = { AddGroup.class, EditGroup.class })
private String area;
/**
* 监理类型
*/
//@NotBlank(message = "监理类型不能为空", groups = { AddGroup.class, EditGroup.class })
private String monitorType;
/**
* 监理人员
*/
//@NotBlank(message = "监理人员不能为空", groups = { AddGroup.class, EditGroup.class })
private String monitorPerson;
/**
* 计划ID
*/
private String planId;
}

115
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/ZeroAdjustmentAnalysisBo.java

@ -0,0 +1,115 @@
package org.dromara.demo.domain.bo;
import org.dromara.demo.domain.ZeroAdjustmentAnalysis;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
/**
* 校零校准分析业务对象 zero_adjustment_analysis
*
* @author gejunhao
* @date 2025-07-08
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = ZeroAdjustmentAnalysis.class, reverseConvertGenerate = false)
public class ZeroAdjustmentAnalysisBo extends BaseEntity {
/**
* 主键ID
*/
//@NotBlank(message = "主键ID不能为空", groups = { EditGroup.class })
private String id;
/**
* 站点名称
*/
//@NotBlank(message = "站点名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String station;
/**
* 所属区域
*/
//@NotBlank(message = "所属区域不能为空", groups = { AddGroup.class, EditGroup.class })
private String area;
/**
* 监测项目
*/
//@NotBlank(message = "监测项目不能为空", groups = { AddGroup.class, EditGroup.class })
private String monitorProject;
/**
* 上次校零校准时间
*/
//@NotNull(message = "上次校零校准时间不能为空", groups = { AddGroup.class, EditGroup.class })
private Date toZeroDate;
/**
* 时间跨度7天30天
*/
//@NotBlank(message = "时间跨度(如:7天、30天)不能为空", groups = { AddGroup.class, EditGroup.class })
private String duration;
/**
* 核查开始日期
*/
//@NotNull(message = "核查开始日期不能为空", groups = { AddGroup.class, EditGroup.class })
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date checkStartDate;
/**
* 核查结束日期
*/
//@NotNull(message = "核查结束日期不能为空", groups = { AddGroup.class, EditGroup.class })
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date checkEndDate;
/**
* 实际校零校准次数
*/
//@NotNull(message = "实际校零校准次数不能为空", groups = { AddGroup.class, EditGroup.class })
private Long actualTimes;
/**
* 应校零校准次数
*/
//@NotNull(message = "应校零校准次数不能为空", groups = { AddGroup.class, EditGroup.class })
private Long planTimes;
/**
* 监理人员
*/
//@NotBlank(message = "监理人员不能为空", groups = { AddGroup.class, EditGroup.class })
private String monitorPerson;
/**
* 监理单位
*/
//@NotBlank(message = "监理单位不能为空", groups = { AddGroup.class, EditGroup.class })
private String monitorCompany;
/**
* 环保知情人
*/
//@NotBlank(message = "环保知情人不能为空", groups = { AddGroup.class, EditGroup.class })
private String insider;
/**
* 备注
*/
//@NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
private String remark;
}

100
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/DeviceInfoVo.java

@ -0,0 +1,100 @@
package org.dromara.demo.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.demo.domain.DeviceInfo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 设备信息视图对象 device_info
*
* @author GJH
* @date 2025-07-01
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = DeviceInfo.class)
public class DeviceInfoVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID自增
*/
@ExcelProperty(value = "主键ID", converter = ExcelDictConvert.class)
//@ExcelDictFormat(readConverterExp = "自=增")
private String id;
/**
* 站点
*/
@ExcelProperty(value = "站点")
private String station;
/**
* 所属区域
*/
@ExcelProperty(value = "所属区域")
private String area;
/**
* 设备名称
*/
@ExcelProperty(value = "设备名称")
private String device;
/**
* 设备型号
*/
@ExcelProperty(value = "设备型号")
private String model;
/**
* 生产厂家
*/
@ExcelProperty(value = "生产厂家")
private String manufacturer;
/**
* 生产日期
*/
@ExcelProperty(value = "生产日期")
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date manufactureDate;
/**
* 序列号
*/
@ExcelProperty(value = "序列号")
private String number;
/**
* 检测物
*/
@ExcelProperty(value = "检测物")
private String testSubstance;
/**
* 状态
*/
@ExcelProperty(value = "状态")
private String status;
@ExcelProperty(value = "监理公司")
private String monitorCompany;
}

83
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/OrderManagementInfoVo.java

@ -0,0 +1,83 @@
package org.dromara.demo.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.demo.domain.OrderManagementInfo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 现场核查单管理信息视图对象 order_management_info
*
* @author GJH
* @date 2025-07-02
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = OrderManagementInfo.class)
public class OrderManagementInfoVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键IDMyBatis-Plus自增
*/
@ExcelProperty(value = "主键ID", converter = ExcelDictConvert.class)
//@ExcelDictFormat(readConverterExp = "M=yBatis-Plus自增")
private String id;
/**
* 核查时间
*/
@ExcelProperty(value = "核查时间")
private Date checkTime;
/**
* 子站名称
*/
@ExcelProperty(value = "子站名称")
private String station;
/**
* 所属区域
*/
@ExcelProperty(value = "所属区域")
private String area;
/**
* 状态
*/
@ExcelProperty(value = "状态")
private String status;
/**
* 监理类型
*/
@ExcelProperty(value = "监理类型")
private String monitorType;
/**
* 核查人员
*/
@ExcelProperty(value = "核查人员")
private String checkPerson;
/**
* 核查得分
*/
@ExcelProperty(value = "核查得分")
private Long checkScore;
}

82
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/PeopleCheckInfoVo.java

@ -0,0 +1,82 @@
package org.dromara.demo.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.demo.domain.PeopleCheckInfo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 人员签到统计视图对象 people_check_info
*
* @author GJH
* @date 2025-07-08
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = PeopleCheckInfo.class)
public class PeopleCheckInfoVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@ExcelProperty(value = "主键ID")
private String id;
/**
* 站点名称
*/
@ExcelProperty(value = "站点名称")
private String station;
/**
* 所属区域
*/
@ExcelProperty(value = "所属区域")
private String area;
/**
* 人员性质
*/
@ExcelProperty(value = "人员性质")
private String attribute;
/**
* 人员姓名
*/
@ExcelProperty(value = "人员姓名")
private String person;
/**
* 所属公司
*/
@ExcelProperty(value = "所属公司")
private String company;
/**
* 签到时间
*/
@ExcelProperty(value = "签到时间")
private Date registerTime;
/**
* 签到类型
*/
@ExcelProperty(value = "签到类型")
private String registerType;
}

97
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/PlanInfoVo.java

@ -0,0 +1,97 @@
package org.dromara.demo.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.demo.domain.PlanInfo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 计划管理视图对象 plan_info
*
* @author GJH
* @date 2025-07-03
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = PlanInfo.class)
public class PlanInfoVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@ExcelProperty(value = "主键ID")
private String id;
/**
* 计划号
*/
@ExcelProperty(value = "计划号")
private String planNum;
/**
* 计划日期
*/
@ExcelProperty(value = "计划日期")
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date planDate;
/**
* 子站名称
*/
@ExcelProperty(value = "子站名称")
private String station;
/**
* 子站状态
*/
@ExcelProperty(value = "子站状态")
private String status;
/**
* 所属区域
*/
@ExcelProperty(value = "所属区域")
private String area;
/**
* 运维公司
*/
@ExcelProperty(value = "运维公司")
private String ioCompany;
/**
* 运维人员
*/
@ExcelProperty(value = "运维人员")
private String ioPerson;
/**
* 监理类型
*/
@ExcelProperty(value = "监理类型")
private String monitorType;
/**
* 监理公司
*/
@ExcelProperty(value = "监理公司")
private String monitorCompany;
}

14
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/PlanSelectVo.java

@ -0,0 +1,14 @@
package org.dromara.demo.domain.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class PlanSelectVo {
private String label;
private String value;
}

106
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/PmDataManagementInfoVo.java

@ -0,0 +1,106 @@
package org.dromara.demo.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.demo.domain.PmDataManagementInfo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 颗粒物手工比对数据管理信息视图对象 pm_data_management_info
*
* @author GJH
* @date 2025-07-02
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = PmDataManagementInfo.class)
public class PmDataManagementInfoVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键IDMyBatis-Plus自增
*/
@ExcelProperty(value = "主键ID", converter = ExcelDictConvert.class)
//@ExcelDictFormat(readConverterExp = "M=yBatis-Plus自增")
private String id;
/**
* 子站名称
*/
@ExcelProperty(value = "子站名称")
private String station;
/**
* 所属区域
*/
@ExcelProperty(value = "所属区域")
private String area;
/**
* 运维公司
*/
@ExcelProperty(value = "运维公司")
private String ioCompany;
/**
* 开始时间
*/
@ExcelProperty(value = "开始时间")
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date startDate;
/**
* 结束时间
*/
@ExcelProperty(value = "结束时间")
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date endDate;
/**
* 监测项目
*/
@ExcelProperty(value = "监测项目")
private String monitorProject;
/**
* 自动监测(mg/m³)
*/
@ExcelProperty(value = "自动监测(mg/m³)")
private Long autoMonitor;
/**
* 手动监测(mg/m³)
*/
@ExcelProperty(value = "手动监测(mg/m³)")
private Long handleMonitor;
/**
* 相对误差
*/
@ExcelProperty(value = "相对误差")
private Long difference;
/**
* 结论
*/
@ExcelProperty(value = "结论")
private String result;
}

16
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/RegionVo.java

@ -0,0 +1,16 @@
package org.dromara.demo.domain.vo;
import lombok.Data;
@Data
public class RegionVo {
private String value;
// 无参构造函数(Lombok已经帮你生成了,除非你手动写了其他构造函数)
public RegionVo() {}
// 全参构造函数
public RegionVo(String value) {
this.value = value;
}
}

85
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/SparePartsInfoVo.java

@ -0,0 +1,85 @@
package org.dromara.demo.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.demo.domain.SparePartsInfo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 备品备件列视图对象 spare_parts_info
*
* @author GJH
* @date 2025-07-02
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = SparePartsInfo.class)
public class SparePartsInfoVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@ExcelProperty(value = "主键ID")
private String id;
/**
* 品名
*/
@ExcelProperty(value = "品名")
private String name;
/**
* 类型
*/
@ExcelProperty(value = "类型")
private String type;
/**
* 型号
*/
@ExcelProperty(value = "型号")
private String model;
/**
* 数量
*/
@ExcelProperty(value = "数量")
private Long amount;
/**
* 入库日期
*/
@ExcelProperty(value = "入库日期")
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date indate;
/**
* 运维公司
*/
@ExcelProperty(value = "运维公司")
private String ioCompany;
/**
* 监理公司
*/
@ExcelProperty(value = "监理公司")
private String monitorCompany;
}

113
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/StationFaultInfoVo.java

@ -0,0 +1,113 @@
package org.dromara.demo.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.demo.domain.StationFaultInfo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* air视图对象 station_fault_info
*
* @author gejunhao
* @date 2025-07-08
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = StationFaultInfo.class)
public class StationFaultInfoVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@ExcelProperty(value = "主键ID")
private String id;
/**
* 站点
*/
@ExcelProperty(value = "站点")
private String station;
/**
* 监测项目
*/
@ExcelProperty(value = "监测项目")
private String monitorProject;
/**
* 故障开始时间
*/
@ExcelProperty(value = "故障开始时间")
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date faultStartDate;
/**
* 故障结束时间
*/
@ExcelProperty(value = "故障结束时间")
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date faultEndDate;
/**
* 运维响应时间
*/
@ExcelProperty(value = "运维响应时间")
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date ioResponseDate;
/**
* 响应时间跨度
*/
@ExcelProperty(value = "响应时间跨度")
private String responseDuration;
/**
* 故障时间跨度
*/
@ExcelProperty(value = "故障时间跨度")
private String faultDuration;
/**
* 监理人员
*/
@ExcelProperty(value = "监理人员")
private String monitorPerson;
/**
* 监理单位
*/
@ExcelProperty(value = "监理单位")
private String monitorCompany;
/**
* 运维单位
*/
@ExcelProperty(value = "运维单位")
private String ioCompany;
/**
* 备注
*/
@ExcelProperty(value = "备注")
private String remark;
}

93
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/StationInfoVo.java

@ -0,0 +1,93 @@
package org.dromara.demo.domain.vo;
import org.dromara.demo.domain.StationInfo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 子站信息视图对象 station_info
*
* @author GJH
* @date 2025-07-01
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = StationInfo.class)
public class StationInfoVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID数据库自增
*/
@ExcelProperty(value = "主键ID", converter = ExcelDictConvert.class)
//@ExcelDictFormat(readConverterExp = "数=据库自增")
private String id;
/**
* 子站名称
*/
@ExcelProperty(value = "子站名称")
private String station;
/**
* 所属区域
*/
@ExcelProperty(value = "所属区域")
private String area;
/**
* 地址
*/
@ExcelProperty(value = "地址")
private String address;
/**
* 经度
*/
@ExcelProperty(value = "经度")
private String longitude;
/**
* 纬度
*/
@ExcelProperty(value = "纬度")
private String latitude;
/**
* 运维公司
*/
@ExcelProperty(value = "运维公司")
private String ioCompany;
/**
* 运维人员
*/
@ExcelProperty(value = "运维人员")
private String ioPerson;
/**
* 监理公司
*/
@ExcelProperty(value = "监理公司")
private String monitorCompany;
/**
* 状态
*/
@ExcelProperty(value = "状态")
private String status;
}

91
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/StationParamChangeVo.java

@ -0,0 +1,91 @@
package org.dromara.demo.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.demo.domain.StationParamChange;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 站点参数变更视图对象 station_param_change
*
* @author gejunhao
* @date 2025-07-08
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = StationParamChange.class)
public class StationParamChangeVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@ExcelProperty(value = "主键ID")
private String id;
/**
* 站点名称
*/
@ExcelProperty(value = "站点名称")
private String station;
/**
* 监测项目
*/
@ExcelProperty(value = "监测项目")
private String monitorProject;
/**
* 参数名称
*/
@ExcelProperty(value = "参数名称")
private String arguments;
/**
* 发现时间
*/
@ExcelProperty(value = "发现时间")
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date foundDate;
/**
* 监理人员
*/
@ExcelProperty(value = "监理人员")
private String monitorPerson;
/**
* 监理单位
*/
@ExcelProperty(value = "监理单位")
private String monitorCompany;
/**
* 运维单位
*/
@ExcelProperty(value = "运维单位")
private String ioCompany;
/**
* 备注
*/
@ExcelProperty(value = "备注")
private String remark;
}

15
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/StationSelectVo.java

@ -0,0 +1,15 @@
package org.dromara.demo.domain.vo;
import lombok.Data;
@Data
public class StationSelectVo {
private String value;
public StationSelectVo() {}
// 全参构造函数
public StationSelectVo(String value) {
this.value = value;
}
}

92
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/WebSiteNetDataAnalysisVo.java

@ -0,0 +1,92 @@
package org.dromara.demo.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.demo.domain.WebSiteNetDataAnalysis;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 站点联网数据分析视图对象 web_site_net_data_analysis
*
* @author gejunhao
* @date 2025-07-08
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = WebSiteNetDataAnalysis.class)
public class WebSiteNetDataAnalysisVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@ExcelProperty(value = "主键ID")
private String id;
/**
* 站点名称
*/
@ExcelProperty(value = "站点名称")
private String station;
/**
* 所属区域
*/
@ExcelProperty(value = "所属区域")
private String area;
/**
* 当前状态运行中维护中离线
*/
@ExcelProperty(value = "当前状态", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "如=:运行中、维护中、离线")
private String status;
/**
* 运维单位
*/
@ExcelProperty(value = "运维单位")
private String ioCompany;
/**
* 监理单位
*/
@ExcelProperty(value = "监理单位")
private String monitorCompany;
/**
* 本月应收数据金额
*/
@ExcelProperty(value = "本月应收数据金额")
private Long planIncome;
/**
* 本月实收数据金额
*/
@ExcelProperty(value = "本月实收数据金额")
private Long actualIncome;
/**
* 最新数据更新时间
*/
@ExcelProperty(value = "最新数据更新时间")
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date lastTime;
}

85
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/WorkOrderInfoVo.java

@ -0,0 +1,85 @@
package org.dromara.demo.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.demo.domain.WorkOrderInfo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 工单管理视图对象 work_order_info
*
* @author GJH
* @date 2025-07-03
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = WorkOrderInfo.class)
public class WorkOrderInfoVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@ExcelProperty(value = "主键ID")
private String id;
/**
* 工单编号
*/
@ExcelProperty(value = "工单编号")
private String orderNum;
/**
* 工作日期
*/
@ExcelProperty(value = "工作日期")
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date workDate;
/**
* 子站名称
*/
@ExcelProperty(value = "子站名称")
private String station;
/**
* 子站状态
*/
@ExcelProperty(value = "子站状态")
private String status;
/**
* 所属区域
*/
@ExcelProperty(value = "所属区域")
private String area;
/**
* 监理类型
*/
@ExcelProperty(value = "监理类型")
private String monitorType;
/**
* 监理人员
*/
@ExcelProperty(value = "监理人员")
private String monitorPerson;
}

124
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/ZeroAdjustmentAnalysisVo.java

@ -0,0 +1,124 @@
package org.dromara.demo.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.demo.domain.ZeroAdjustmentAnalysis;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 校零校准分析视图对象 zero_adjustment_analysis
*
* @author gejunhao
* @date 2025-07-08
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = ZeroAdjustmentAnalysis.class)
public class ZeroAdjustmentAnalysisVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@ExcelProperty(value = "主键ID")
private String id;
/**
* 站点名称
*/
@ExcelProperty(value = "站点名称")
private String station;
/**
* 所属区域
*/
@ExcelProperty(value = "所属区域")
private String area;
/**
* 监测项目
*/
@ExcelProperty(value = "监测项目")
private String monitorProject;
/**
* 上次校零校准时间
*/
@ExcelProperty(value = "上次校零校准时间")
private Date toZeroDate;
/**
* 时间跨度7天30天
*/
@ExcelProperty(value = "时间跨度", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "如=:7天、30天")
private String duration;
/**
* 核查开始日期
*/
@ExcelProperty(value = "核查开始日期")
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date checkStartDate;
/**
* 核查结束日期
*/
@ExcelProperty(value = "核查结束日期")
@JsonFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date checkEndDate;
/**
* 实际校零校准次数
*/
@ExcelProperty(value = "实际校零校准次数")
private Long actualTimes;
/**
* 应校零校准次数
*/
@ExcelProperty(value = "应校零校准次数")
private Long planTimes;
/**
* 监理人员
*/
@ExcelProperty(value = "监理人员")
private String monitorPerson;
/**
* 监理单位
*/
@ExcelProperty(value = "监理单位")
private String monitorCompany;
/**
* 环保知情人
*/
@ExcelProperty(value = "环保知情人")
private String insider;
/**
* 备注
*/
@ExcelProperty(value = "备注")
private String remark;
}

15
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/DeviceInfoMapper.java

@ -0,0 +1,15 @@
package org.dromara.demo.mapper;
import org.dromara.demo.domain.DeviceInfo;
import org.dromara.demo.domain.vo.DeviceInfoVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 设备信息Mapper接口
*
* @author GJH
* @date 2025-07-01
*/
public interface DeviceInfoMapper extends BaseMapperPlus<DeviceInfo, DeviceInfoVo> {
}

15
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/OrderManagementInfoMapper.java

@ -0,0 +1,15 @@
package org.dromara.demo.mapper;
import org.dromara.demo.domain.OrderManagementInfo;
import org.dromara.demo.domain.vo.OrderManagementInfoVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 现场核查单管理信息Mapper接口
*
* @author GJH
* @date 2025-07-02
*/
public interface OrderManagementInfoMapper extends BaseMapperPlus<OrderManagementInfo, OrderManagementInfoVo> {
}

15
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/PeopleCheckInfoMapper.java

@ -0,0 +1,15 @@
package org.dromara.demo.mapper;
import org.dromara.demo.domain.PeopleCheckInfo;
import org.dromara.demo.domain.vo.PeopleCheckInfoVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 人员签到统计Mapper接口
*
* @author GJH
* @date 2025-07-08
*/
public interface PeopleCheckInfoMapper extends BaseMapperPlus<PeopleCheckInfo, PeopleCheckInfoVo> {
}

15
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/PlanInfoMapper.java

@ -0,0 +1,15 @@
package org.dromara.demo.mapper;
import org.dromara.demo.domain.PlanInfo;
import org.dromara.demo.domain.vo.PlanInfoVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 计划管理Mapper接口
*
* @author GJH
* @date 2025-07-03
*/
public interface PlanInfoMapper extends BaseMapperPlus<PlanInfo, PlanInfoVo> {
}

15
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/PmDataManagementInfoMapper.java

@ -0,0 +1,15 @@
package org.dromara.demo.mapper;
import org.dromara.demo.domain.PmDataManagementInfo;
import org.dromara.demo.domain.vo.PmDataManagementInfoVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 颗粒物手工比对数据管理信息Mapper接口
*
* @author GJH
* @date 2025-07-02
*/
public interface PmDataManagementInfoMapper extends BaseMapperPlus<PmDataManagementInfo, PmDataManagementInfoVo> {
}

15
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/SparePartsInfoMapper.java

@ -0,0 +1,15 @@
package org.dromara.demo.mapper;
import org.dromara.demo.domain.SparePartsInfo;
import org.dromara.demo.domain.vo.SparePartsInfoVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 备品备件列Mapper接口
*
* @author GJH
* @date 2025-07-02
*/
public interface SparePartsInfoMapper extends BaseMapperPlus<SparePartsInfo, SparePartsInfoVo> {
}

15
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/StationFaultInfoMapper.java

@ -0,0 +1,15 @@
package org.dromara.demo.mapper;
import org.dromara.demo.domain.StationFaultInfo;
import org.dromara.demo.domain.vo.StationFaultInfoVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* airMapper接口
*
* @author gejunhao
* @date 2025-07-08
*/
public interface StationFaultInfoMapper extends BaseMapperPlus<StationFaultInfo, StationFaultInfoVo> {
}

15
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/StationInfoMapper.java

@ -0,0 +1,15 @@
package org.dromara.demo.mapper;
import org.dromara.demo.domain.StationInfo;
import org.dromara.demo.domain.vo.StationInfoVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 子站信息Mapper接口
*
* @author GJH
* @date 2025-07-01
*/
public interface StationInfoMapper extends BaseMapperPlus<StationInfo, StationInfoVo> {
}

15
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/StationParamChangeMapper.java

@ -0,0 +1,15 @@
package org.dromara.demo.mapper;
import org.dromara.demo.domain.StationParamChange;
import org.dromara.demo.domain.vo.StationParamChangeVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 站点参数变更Mapper接口
*
* @author gejunhao
* @date 2025-07-08
*/
public interface StationParamChangeMapper extends BaseMapperPlus<StationParamChange, StationParamChangeVo> {
}

15
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/WebSiteNetDataAnalysisMapper.java

@ -0,0 +1,15 @@
package org.dromara.demo.mapper;
import org.dromara.demo.domain.WebSiteNetDataAnalysis;
import org.dromara.demo.domain.vo.WebSiteNetDataAnalysisVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 站点联网数据分析Mapper接口
*
* @author gejunhao
* @date 2025-07-08
*/
public interface WebSiteNetDataAnalysisMapper extends BaseMapperPlus<WebSiteNetDataAnalysis, WebSiteNetDataAnalysisVo> {
}

15
ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/WorkOrderInfoMapper.java

@ -0,0 +1,15 @@
package org.dromara.demo.mapper;
import org.dromara.demo.domain.WorkOrderInfo;
import org.dromara.demo.domain.vo.WorkOrderInfoVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 工单管理Mapper接口
*
* @author GJH
* @date 2025-07-03
*/
public interface WorkOrderInfoMapper extends BaseMapperPlus<WorkOrderInfo, WorkOrderInfoVo> {
}

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save