opt:md文件优化
This commit is contained in:
@@ -1,2 +1,202 @@
|
||||
# nladmin
|
||||
# NL Admin System
|
||||
|
||||
诺力智能仓储管理ACS系统后端服务
|
||||
|
||||
## 项目简介
|
||||
|
||||
本项目是诺力智能仓储管理ACS系统后端服务标准版,基于 Spring Boot 框架构建,提供完整的用户认证、设备管理、任务调度、AGV调度、设备管理等核心功能。
|
||||
|
||||
## 技术栈
|
||||
|
||||
| 技术 | 版本 | 说明 |
|
||||
| :--- | :--- | :--- |
|
||||
| Java | 1.8 | 开发语言 |
|
||||
| Spring Boot | 2.2.x | 应用框架 |
|
||||
| Sa-Token | 1.31.0 | 权限认证框架 |
|
||||
| MyBatis Plus | 3.4.0 | ORM框架 |
|
||||
| Redis | - | 缓存与会话管理 |
|
||||
| MySQL/Oracle | - | 数据库 |
|
||||
| Lucene | 8.2.0 | 全文搜索 |
|
||||
| WebSocket | - | 实时通信 |
|
||||
|
||||
## 项目结构
|
||||
|
||||
```
|
||||
nladmin-system/
|
||||
├── nlsso-server/ # 后端服务模块
|
||||
│ ├── src/main/java/org/nl/
|
||||
│ │ ├── AppRun.java # 启动类
|
||||
│ │ ├── acs/ # 设备控制模块
|
||||
│ │ │ ├── apiAdd/ # 地址管理
|
||||
│ │ │ ├── autoThread/ # 自动线程管理
|
||||
│ │ │ ├── device/ # 设备管理
|
||||
│ │ │ ├── iot/ # IoT数据处理
|
||||
│ │ │ ├── layout/ # 布局管理
|
||||
│ │ │ ├── log/ # 日志管理
|
||||
│ │ │ └── task/ # 任务调度
|
||||
│ │ ├── common/ # 通用模块
|
||||
│ │ │ ├── annotation/ # 自定义注解
|
||||
│ │ │ ├── base/ # 基础类
|
||||
│ │ │ ├── db/ # 数据库工具
|
||||
│ │ │ ├── domain/ # 通用领域模型
|
||||
│ │ │ ├── enums/ # 枚举类
|
||||
│ │ │ ├── exception/ # 异常处理
|
||||
│ │ │ ├── logging/ # 日志切面
|
||||
│ │ │ ├── mnt/ # 监控与维护
|
||||
│ │ │ ├── security/ # 安全配置
|
||||
│ │ │ └── utils/ # 工具类
|
||||
│ │ ├── config/ # 配置类
|
||||
│ │ │ ├── jackson/ # JSON配置
|
||||
│ │ │ ├── language/ # 国际化配置
|
||||
│ │ │ ├── lucene/ # 搜索配置
|
||||
│ │ │ ├── mybatis/ # MyBatis配置
|
||||
│ │ │ ├── redis/ # Redis配置
|
||||
│ │ │ ├── saconfig/ # Sa-Token配置
|
||||
│ │ │ └── thread/ # 线程池配置
|
||||
│ │ ├── extInterface/ # 外部接口
|
||||
│ │ │ ├── agvKit/ # AGV接口
|
||||
│ │ │ └── wms/ # WMS接口
|
||||
│ │ └── system/ # 系统管理
|
||||
│ │ └── controller/ # 系统控制器
|
||||
│ └── pom.xml # Maven配置
|
||||
└── README.md # 项目说明
|
||||
```
|
||||
|
||||
## 快速开始
|
||||
|
||||
### 环境要求
|
||||
|
||||
- JDK 1.8+
|
||||
- Maven 3.6+
|
||||
- Redis 3.2+
|
||||
- MySQL 5.7+ / Oracle 11g+
|
||||
|
||||
### 配置说明
|
||||
|
||||
#### 1. 数据库配置
|
||||
|
||||
修改 `src/main/resources/application.yml`:
|
||||
|
||||
```yaml
|
||||
spring:
|
||||
datasource:
|
||||
url: jdbc:mysql://localhost:3306/nladmin?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
|
||||
username: admin
|
||||
password: password
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
```
|
||||
|
||||
#### 2. Redis 配置
|
||||
|
||||
```yaml
|
||||
spring:
|
||||
redis:
|
||||
host: localhost
|
||||
port: 6379
|
||||
password:
|
||||
timeout: 10000ms
|
||||
```
|
||||
|
||||
#### 3. Sa-Token 配置
|
||||
|
||||
```yaml
|
||||
sa-token:
|
||||
token-name: Authorization
|
||||
timeout: 86400000
|
||||
active-timeout: -1
|
||||
is-concurrent: true
|
||||
is-share: true
|
||||
token-style: uuid
|
||||
is-log: false
|
||||
```
|
||||
|
||||
### 启动方式
|
||||
|
||||
```bash
|
||||
java -jar target/nlsso-server.jar
|
||||
```
|
||||
|
||||
## 核心功能
|
||||
|
||||
### 1. 用户认证
|
||||
- 登录/登出
|
||||
- 在线用户管理
|
||||
- Token 验证
|
||||
- 权限校验
|
||||
|
||||
### 2. 设备管理
|
||||
- 设备信息管理
|
||||
- 设备协议管理
|
||||
- 货位管理
|
||||
- 设备扩展信息
|
||||
|
||||
### 3. 任务调度
|
||||
- 任务创建与执行
|
||||
- 任务历史记录
|
||||
- 任务指令管理
|
||||
- 任务优先级调度
|
||||
|
||||
### 4. 外部接口
|
||||
- AGV 系统对接
|
||||
- WMS 系统对接
|
||||
- 数据交互协议
|
||||
|
||||
### 5. 日志管理
|
||||
- 操作日志记录
|
||||
- 设备执行日志
|
||||
- Lucene 全文检索
|
||||
|
||||
## API 接口
|
||||
|
||||
### 认证接口
|
||||
|
||||
| 接口 | 方法 | 描述 |
|
||||
| :--- | :--- | :--- |
|
||||
| `/api/auth/login` | POST | 用户登录 |
|
||||
| `/api/auth/logout` | POST | 用户登出 |
|
||||
| `/api/auth/online` | GET | 获取在线用户列表 |
|
||||
|
||||
### 设备接口
|
||||
|
||||
| 接口 | 方法 | 描述 |
|
||||
| :--- | :--- | :--- |
|
||||
| `/api/device` | GET | 获取设备列表 |
|
||||
| `/api/device/{id}` | GET | 获取设备详情 |
|
||||
| `/api/device` | POST | 创建设备 |
|
||||
| `/api/device/{id}` | PUT | 更新设备 |
|
||||
| `/api/device/{id}` | DELETE | 删除设备 |
|
||||
|
||||
### 任务接口
|
||||
|
||||
| 接口 | 方法 | 描述 |
|
||||
| :--- | :--- | :--- |
|
||||
| `/api/task` | GET | 获取任务列表 |
|
||||
| `/api/task/{id}` | GET | 获取任务详情 |
|
||||
| `/api/task` | POST | 创建任务 |
|
||||
| `/api/task/{id}/execute` | POST | 执行任务 |
|
||||
|
||||
## 安全说明
|
||||
|
||||
1. **密码加密**:采用 RSA 非对称加密传输,MD5 加盐存储
|
||||
2. **Token 管理**:基于 Sa-Token 的会话管理,支持多端登录控制
|
||||
3. **权限控制**:基于注解的细粒度权限控制
|
||||
4. **请求限流**:支持接口限流配置
|
||||
5. **SQL 注入防护**:使用 MyBatis Plus 参数化查询
|
||||
|
||||
## 开发规范
|
||||
|
||||
### 命名规范
|
||||
- 包名:小写字母,使用点分隔
|
||||
- 类名:大驼峰命名法(PascalCase)
|
||||
- 方法名:小驼峰命名法(camelCase)
|
||||
- 变量名:小驼峰命名法(camelCase)
|
||||
|
||||
### 代码规范
|
||||
- 遵循阿里巴巴 Java 开发手册
|
||||
- 使用 Lombok 简化代码
|
||||
- 异常处理统一使用全局异常处理器
|
||||
- 日志记录使用 SLF4J
|
||||
|
||||
## 许可证
|
||||
|
||||
Apache License 2.0
|
||||
|
||||
Reference in New Issue
Block a user