# pipIrr 智能灌溉系统 ## 项目概述 pipIrr是一套基于Java的智能管道灌溉系统解决方案,用于实现水资源的智能化管理与灌溉控制。系统集成了远程终端控制、GIS地理信息、水资源监测与分析、微信接入等多种功能,为智慧农业和水利工程提供全面的技术支持。 ## 系统架构 系统采用微服务架构,基于Spring Boot 3构建,主要包括以下几个核心部分: - **前端应用层**:提供Web界面、移动应用、微信公众号等多种交互方式 - **业务服务层**:处理核心业务逻辑,包括灌溉管理、项目管理、数据统计等 - **中间件层**:提供RTU(远程终端单元)通信、第三方系统集成等功能 - **基础设施层**:提供数据存储、缓存、消息队列等基础服务 ## 模块说明 ### 父模块 (pipIrr-platform) 作为整个项目的父模块,管理依赖版本和构建配置。 ### 核心子模块 - **pipIrr-common**: 公共组件,提供工具类、通用配置等 - **pipIrr-global**: 全局配置和服务 - **pipIrr-web**: Web应用模块集合 - pipIrr-web-base: 基础数据服务 - pipIrr-web-sso: 单点登录服务 - pipIrr-web-irrigate: 灌溉管理 - pipIrr-web-gis: GIS地理信息服务 - pipIrr-web-project: 项目管理 - pipIrr-web-statistics: 数据统计分析 - pipIrr-web-remote: 远程控制 - pipIrr-web-wechat: 微信集成 - pipIrr-web-app: 移动应用服务 - pipIrr-web-file: 文件管理 - pipIrr-web-operation: 运维管理 - pipIrr-web-sell: 销售管理 - pipIrr-web-temp: 临时模块 - **pipIrr-mw**: 中间件服务 - pipIrr-mw-rtu: RTU设备通信 - pipIrr-mw-rtu3rd: 第三方RTU集成 - pipIrr-mw-simulate-rtu: RTU模拟器 - pipIrr-mwTest-server: 测试服务器 - pipIrr-mwTest-client: 测试客户端 ## 技术栈 - **基础框架**: Spring Boot 3.1.3 - **JDK版本**: Java 20 - **Web服务**: Tomcat 10.1.12 - **数据库**: MySQL 8.0.33 - **ORM框架**: MyBatis-Plus 3.5.3.2 - **数据库连接池**: Druid 1.2.20 - **API文档**: SpringDoc OpenAPI 2.2.0 - **JSON处理**: FastJSON 2.0.40 - **对象映射**: MapStruct 1.5.5.Final - **工具集**: Hutool 5.8.22 - **日志框架**: Log4j2 2.20.0 ## 开发环境搭建 ### 前置条件 - JDK 20 - Maven 3.8+ - MySQL 8.0+ - IDE推荐: IntelliJ IDEA ### 构建步骤 1. 克隆代码库 ```bash git clone ``` 2. 导入项目到IDE 使用IDEA导入Maven项目 3. 配置数据库 在相应配置文件中设置数据库连接信息 4. 编译项目 ```bash mvn clean package ``` ## 部署说明 ### 开发环境 ```bash mvn spring-boot:run -Dspring.profiles.active=dev ``` ### 生产环境 1. 打包应用 ```bash mvn clean package -Dspring.profiles.active=prod ``` 2. 运行jar包 ```bash java -jar <模块名>-<版本号>.jar ``` ## 项目文档 详细的项目文档位于 `pipIrr-platform/文档/` 目录下,包括: - API接口文档 - 数据库设计 - 部署指南 - 编码规范 ## 版本信息 当前版本: 1.0.0 ## 贡献指南 1. Fork 本仓库 2. 创建功能分支 (`git checkout -b feature/AmazingFeature`) 3. 提交变更 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 创建Pull Request