删除不必要的文档
This commit is contained in:
215
CLAUDE.md
215
CLAUDE.md
@@ -1,215 +0,0 @@
|
||||
# CLAUDE.md
|
||||
|
||||
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
||||
|
||||
## 项目概述
|
||||
|
||||
CN_Gather是灿能公司的融合工具项目体,专门用于电能质量设备检测的企业级应用系统。采用Spring Boot多模块Maven架构,以detection模块为核心的检测业务系统。
|
||||
|
||||
## 项目架构
|
||||
|
||||
### 核心模块结构
|
||||
- **entrance**: 应用入口模块,端口18092,整合所有其他模块
|
||||
- **detection**: 核心检测业务模块,电能质量设备检测的完整业务流程
|
||||
- **storage**: 数据存储模块,处理检测数据存储和谐波数据处理
|
||||
- **system**: 基础系统模块,提供字典管理、日志管理、配置管理等基础功能
|
||||
- **user**: 用户管理模块,处理认证授权和权限控制
|
||||
|
||||
### 模块依赖关系
|
||||
```
|
||||
entrance (启动入口)
|
||||
├── system (基础服务层)
|
||||
├── user (认证授权层)
|
||||
├── detection (核心业务层) → 依赖 system, storage
|
||||
└── storage (数据存储层) → 依赖 system
|
||||
```
|
||||
|
||||
## 常用开发命令
|
||||
|
||||
### 构建和打包
|
||||
```bash
|
||||
# 编译整个项目
|
||||
mvn clean compile
|
||||
|
||||
# 打包所有模块
|
||||
mvn clean package
|
||||
|
||||
# 跳过测试打包
|
||||
mvn clean package -DskipTests
|
||||
|
||||
# 安装到本地仓库
|
||||
mvn clean install
|
||||
```
|
||||
|
||||
### 运行应用
|
||||
```bash
|
||||
# 运行主入口应用 (端口18092)
|
||||
cd entrance
|
||||
mvn spring-boot:run
|
||||
|
||||
# 运行事件智能模块 (独立应用)
|
||||
cd event_smart
|
||||
mvn spring-boot:run
|
||||
```
|
||||
|
||||
### 测试
|
||||
```bash
|
||||
# 运行所有测试
|
||||
mvn test
|
||||
|
||||
# 运行特定模块测试
|
||||
cd detection
|
||||
mvn test
|
||||
```
|
||||
|
||||
## 技术栈
|
||||
|
||||
### 核心框架
|
||||
- **Spring Boot**: 2.3.12.RELEASE
|
||||
- **MyBatis Plus**: 数据持久层框架
|
||||
- **Maven**: 项目构建管理
|
||||
- **Java**: 1.8
|
||||
|
||||
### 数据库
|
||||
- **MySQL**: 主数据库 (192.168.1.24:13306/pqs9100)
|
||||
- **Oracle**: event_smart模块使用
|
||||
- **Druid**: 数据库连接池
|
||||
|
||||
### 通信技术
|
||||
- **Netty**: Socket通信 (端口61000设备, 62000源)
|
||||
- **WebSocket**: 实时数据推送 (端口7777)
|
||||
- **RestTemplate**: HTTP客户端通信
|
||||
|
||||
### 其他关键技术
|
||||
- **Apache POI + docx4j**: Word文档报告生成
|
||||
- **FastJSON**: JSON数据处理
|
||||
- **Spring Security + JWT**: 安全认证 (event_smart模块)
|
||||
- **Redis**: 缓存服务 (event_smart模块)
|
||||
|
||||
## 关键配置
|
||||
|
||||
### 数据库配置
|
||||
- 数据库URL: `jdbc:mysql://192.168.1.24:13306/pqs9100`
|
||||
- MyBatis映射文件位置: `classpath*:com/njcn/**/mapping/*.xml`
|
||||
- 主键生成策略: `assign_uuid`
|
||||
|
||||
### Socket通信配置
|
||||
- 源设备Socket: 127.0.0.1:62000
|
||||
- 被检设备Socket: 127.0.0.1:61000
|
||||
- WebSocket端口: 7777
|
||||
|
||||
### 文件路径配置
|
||||
- 日志目录: `D:\logs`
|
||||
- 报告模板目录: `D:\template`
|
||||
- 报告输出目录: `D:\report`
|
||||
- Word模板位置: `entrance/src/main/resources/model/`
|
||||
|
||||
## detection模块核心架构
|
||||
|
||||
### 子模块功能划分
|
||||
- **device**: 设备管理 - PqDev(被检设备)、PqStandardDev(标准设备)、PqDevSub(设备子表)
|
||||
- **plan**: 检测计划管理 - AdPlan(检测计划)、AdPlanSource(计划源)、AdPlanStandardDev(计划标准设备)
|
||||
- **script**: 检测脚本管理 - PqScript(检测脚本)、PqScriptDtls(脚本详情)、PqScriptCheckData(检测数据)
|
||||
- **source**: 程控源管理 - PqSource(程控源设备)
|
||||
- **err**: 误差体系管理 - PqErrSys(误差体系)、PqErrSysDtls(误差详情)
|
||||
- **report**: 报告生成管理 - PqReport(报告模板),支持Word模板处理
|
||||
- **monitor**: 监测管理 - PqMonitor(监测点管理)
|
||||
- **icd**: ICD路径管理 - PqIcdPath(通信配置)
|
||||
- **result**: 结果管理 - 检测结果查询和数据展示
|
||||
- **type**: 设备类型管理 - DevType(设备类型字典)
|
||||
|
||||
### 核心检测流程 (PreDetectionController)
|
||||
```java
|
||||
// 主要检测接口
|
||||
@PostMapping("/startPreTest") // 检测通用入口
|
||||
@PostMapping("/ytxCheckSimulate") // 源通讯校验
|
||||
@PostMapping("/startSimulateTest") // 启动程控源检测
|
||||
@PostMapping("/coefficientCheck") // 系数校验
|
||||
@PostMapping("/startContrastTest") // 比对检测
|
||||
@PostMapping("/devPhaseSequence") // 设备相序检测
|
||||
```
|
||||
|
||||
### Socket通信架构
|
||||
- **SocketManager**: Socket会话管理,存储userId与Channel映射
|
||||
- **WebServiceManager**: WebSocket服务管理,实时数据推送
|
||||
- **通信处理器**:
|
||||
- SocketSourceResponseService: 程控源响应处理
|
||||
- SocketDevResponseService: 设备响应处理
|
||||
- SocketContrastResponseService: 比对检测响应处理
|
||||
- **通信工具**:
|
||||
- CnSocketUtil: Socket连接工具
|
||||
- FormalTestManager: 正式检测管理
|
||||
- XiNumberManager: 系数管理
|
||||
|
||||
### 暂态检测参数
|
||||
- 暂态前时间: 2秒
|
||||
- 写入时间: 0.001秒
|
||||
- 写出时间: 0.001秒
|
||||
- 暂态后时间: 3秒
|
||||
|
||||
### 闪变参数
|
||||
- 波形类型: CPM/SQU
|
||||
- 占空比: 50%
|
||||
|
||||
## 开发注意事项
|
||||
|
||||
### detection模块包结构
|
||||
```
|
||||
detection/
|
||||
├── controller/ # 控制层 - PreDetectionController
|
||||
├── handler/ # Socket响应处理器
|
||||
├── service/ # 业务逻辑层
|
||||
│ └── impl/ # 服务实现
|
||||
├── util/ # 工具类层
|
||||
│ ├── business/ # 业务工具 - DetectionCommunicateUtil
|
||||
│ └── socket/ # Socket通信工具
|
||||
├── pojo/ # 数据模型层
|
||||
│ ├── constant/ # 常量 - DetectionCommunicateConstant
|
||||
│ ├── dto/ # 数据传输对象
|
||||
│ ├── enums/ # 枚举 - DetectionCodeEnum等
|
||||
│ ├── param/ # 请求参数
|
||||
│ ├── po/ # 持久化对象
|
||||
│ └── vo/ # 视图对象 - DetectionData等
|
||||
└── [子模块]/ # device、plan、script等子模块
|
||||
├── controller/ # 子模块控制器
|
||||
├── service/ # 子模块服务
|
||||
├── mapper/ # 数据访问层
|
||||
│ └── mapping/ # MyBatis映射文件
|
||||
└── pojo/ # 子模块数据对象
|
||||
```
|
||||
|
||||
### 检测数据处理机制
|
||||
- **任意值**: 取第一个满足条件的数据
|
||||
- **部分值**: 去除最大最小值后取值
|
||||
- **所有值**: 要求所有数据都合格
|
||||
- **CP95值**: 取95%分位数
|
||||
- **平均值**: 取算术平均值
|
||||
|
||||
### 检测项目类型
|
||||
- **频率**: FREQ
|
||||
- **电压**: V_RELATIVE(相对值)/V_ABSOLUTELY(绝对值)
|
||||
- **电流**: I_RELATIVE/I_ABSOLUTELY
|
||||
- **谐波**: HV/HI (2-50次谐波)
|
||||
- **间谐波**: HSV/HSI
|
||||
- **不平衡度**: IMBV/IMBA (三相不平衡)
|
||||
- **闪变**: F (PST)
|
||||
- **暂态**: VOLTAGE_MAG/VOLTAGE_DUR
|
||||
|
||||
### 检测模式
|
||||
- **数字式检测**: 数字接口通信
|
||||
- **模拟式检测**: 模拟信号输出
|
||||
- **比对式检测**: 多台设备比对
|
||||
|
||||
### 报告生成机制
|
||||
- **模板处理**: 使用POI和docx4j处理Word文档
|
||||
- **模板位置**: `entrance/src/main/resources/model/`
|
||||
- **支持模板**: NPQS-580、PQV-700、njcn_882系列等
|
||||
- **功能**: 书签替换、表格填充、文档合并
|
||||
- **云端上传**: 支持FTP批量上传报告
|
||||
|
||||
### 依赖组件
|
||||
项目使用灿能公司自研组件:
|
||||
- `njcn-common`: 通用工具包
|
||||
- `mybatis-plus`: MyBatis增强包
|
||||
- `spingboot2.3.12`: Spring Boot定制包
|
||||
- `RestTemplate-plugin`: HTTP客户端插件
|
||||
@@ -1,238 +0,0 @@
|
||||
# Gitea本地协作开发服务器配置指南
|
||||
|
||||
## 概述
|
||||
|
||||
本文档说明如何将本地安装的Gitea配置为团队协作开发服务器,替代原有的物理服务器环境。
|
||||
|
||||
## 1. 网络配置
|
||||
|
||||
### 1.1 确认本机IP地址
|
||||
```bash
|
||||
# Windows系统
|
||||
ipconfig
|
||||
# 查找本机局域网IP地址,通常形如 192.168.x.x 或 10.x.x.x
|
||||
```
|
||||
|
||||
### 1.2 配置Gitea服务地址
|
||||
编辑Gitea配置文件 `app.ini`:
|
||||
|
||||
```ini
|
||||
[server]
|
||||
# 将localhost改为本机IP地址,确保同事可以访问
|
||||
HTTP_ADDR = 0.0.0.0
|
||||
HTTP_PORT = 3000
|
||||
# 外部访问URL,替换为你的实际IP
|
||||
ROOT_URL = http://192.168.x.x:3000/
|
||||
```
|
||||
|
||||
### 1.3 防火墙配置
|
||||
确保Windows防火墙允许Gitea端口通信:
|
||||
|
||||
```bash
|
||||
# 打开Windows防火墙入站规则
|
||||
# 添加端口3000的TCP入站规则
|
||||
```
|
||||
|
||||
或在Windows防火墙中:
|
||||
- 控制面板 → 系统和安全 → Windows Defender防火墙 → 高级设置
|
||||
- 入站规则 → 新建规则 → 端口 → TCP → 特定本地端口: 3000
|
||||
|
||||
## 2. Gitea服务配置
|
||||
|
||||
### 2.1 启动Gitea服务
|
||||
```bash
|
||||
# 进入Gitea安装目录
|
||||
cd C:\gitea # 或你的安装路径
|
||||
gitea.exe web
|
||||
```
|
||||
|
||||
### 2.2 配置为Windows服务(推荐)
|
||||
创建Windows服务确保开机自启:
|
||||
|
||||
1. 下载NSSM (Non-Sucking Service Manager)
|
||||
2. 以管理员身份运行命令提示符:
|
||||
```bash
|
||||
nssm install Gitea
|
||||
# 在弹出界面中配置:
|
||||
# Path: C:\gitea\gitea.exe
|
||||
# Arguments: web
|
||||
# Working directory: C:\gitea
|
||||
```
|
||||
|
||||
3. 启动服务:
|
||||
```bash
|
||||
net start Gitea
|
||||
```
|
||||
|
||||
### 2.3 数据库配置优化
|
||||
如果使用SQLite(默认),确保数据文件路径正确:
|
||||
```ini
|
||||
[database]
|
||||
DB_TYPE = sqlite3
|
||||
PATH = data/gitea.db
|
||||
```
|
||||
|
||||
如果需要更好性能,考虑配置MySQL:
|
||||
```ini
|
||||
[database]
|
||||
DB_TYPE = mysql
|
||||
HOST = 127.0.0.1:3306
|
||||
NAME = gitea
|
||||
USER = gitea
|
||||
PASSWD = your_password
|
||||
```
|
||||
|
||||
## 3. 同事访问配置
|
||||
|
||||
### 3.1 提供访问地址
|
||||
向同事提供访问地址:
|
||||
```
|
||||
http://你的IP地址:3000
|
||||
例如: http://192.168.1.100:3000
|
||||
```
|
||||
|
||||
### 3.2 用户账号管理
|
||||
1. 访问管理界面创建用户账号
|
||||
2. 或开启用户自注册:
|
||||
```ini
|
||||
[service]
|
||||
DISABLE_REGISTRATION = false
|
||||
REQUIRE_SIGNIN_VIEW = false
|
||||
```
|
||||
|
||||
### 3.3 权限配置
|
||||
为协作项目设置适当权限:
|
||||
- 项目所有者:完全控制权限
|
||||
- 协作者:推送/拉取权限
|
||||
- 读者:仅读取权限
|
||||
|
||||
## 4. 代码仓库迁移
|
||||
|
||||
### 4.1 从原服务器迁移仓库
|
||||
如果原服务器数据可恢复:
|
||||
```bash
|
||||
# 在原服务器或备份中找到Git裸仓库
|
||||
# 复制到新Gitea的repositories目录
|
||||
# 通常位于 gitea-repositories/用户名/仓库名.git
|
||||
```
|
||||
|
||||
### 4.2 重新创建仓库
|
||||
如果需要重新创建:
|
||||
1. 在Gitea界面创建新仓库
|
||||
2. 本地添加新的远程地址:
|
||||
```bash
|
||||
git remote remove origin
|
||||
git remote add origin http://你的IP:3000/用户名/仓库名.git
|
||||
git push -u origin master
|
||||
```
|
||||
|
||||
## 5. 开发工作流配置
|
||||
|
||||
### 5.1 分支保护规则
|
||||
为主要分支设置保护规则:
|
||||
- 设置 → 分支 → 分支保护规则
|
||||
- 保护master分支,要求代码审查
|
||||
|
||||
### 5.2 Webhook配置
|
||||
如果需要CI/CD集成:
|
||||
```
|
||||
设置 → Webhooks → 添加Webhook
|
||||
配置自动构建触发器
|
||||
```
|
||||
|
||||
## 6. 备份策略
|
||||
|
||||
### 6.1 定期备份
|
||||
```bash
|
||||
# 备份Gitea数据目录
|
||||
# 包括:repositories/, data/, log/, custom/
|
||||
robocopy "C:\gitea" "D:\backup\gitea" /MIR /Z /R:3 /W:10
|
||||
```
|
||||
|
||||
### 6.2 自动备份脚本
|
||||
创建批处理文件实现定期备份:
|
||||
```batch
|
||||
@echo off
|
||||
set BACKUP_DIR=D:\backup\gitea_%date:~0,4%%date:~5,2%%date:~8,2%
|
||||
robocopy "C:\gitea" "%BACKUP_DIR%" /MIR /Z /R:3 /W:10
|
||||
echo Backup completed to %BACKUP_DIR%
|
||||
```
|
||||
|
||||
## 7. 常见问题排查
|
||||
|
||||
### 7.1 访问问题
|
||||
- 检查防火墙设置
|
||||
- 确认IP地址和端口正确
|
||||
- 验证Gitea服务是否正常运行
|
||||
|
||||
### 7.2 权限问题
|
||||
- 检查用户账号状态
|
||||
- 确认仓库权限设置
|
||||
- 验证SSH密钥配置(如使用SSH)
|
||||
|
||||
### 7.3 性能优化
|
||||
```ini
|
||||
[server]
|
||||
# 调整并发连接数
|
||||
HTTP_ADDR = 0.0.0.0
|
||||
HTTP_PORT = 3000
|
||||
|
||||
[database]
|
||||
# 数据库连接池配置
|
||||
MAX_IDLE_CONNS = 30
|
||||
MAX_OPEN_CONNS = 300
|
||||
```
|
||||
|
||||
## 8. 安全建议
|
||||
|
||||
1. **网络安全**:
|
||||
- 仅在受信任的局域网环境中开放
|
||||
- 考虑使用VPN访问
|
||||
- 定期更新Gitea版本
|
||||
|
||||
2. **访问控制**:
|
||||
- 禁用不必要的公开注册
|
||||
- 使用强密码策略
|
||||
- 启用双因子认证
|
||||
|
||||
3. **数据安全**:
|
||||
- 定期备份重要数据
|
||||
- 监控异常访问
|
||||
- 记录操作日志
|
||||
|
||||
## 9. 同事操作指南
|
||||
|
||||
### 9.1 首次设置
|
||||
```bash
|
||||
# 克隆仓库
|
||||
git clone http://你的IP:3000/用户名/CN_Gather.git
|
||||
|
||||
# 配置用户信息
|
||||
git config user.name "姓名"
|
||||
git config user.email "邮箱"
|
||||
```
|
||||
|
||||
### 9.2 日常协作
|
||||
```bash
|
||||
# 拉取最新代码
|
||||
git pull origin master
|
||||
|
||||
# 创建功能分支
|
||||
git checkout -b feature/新功能
|
||||
|
||||
# 提交更改
|
||||
git add .
|
||||
git commit -m "描述信息"
|
||||
git push origin feature/新功能
|
||||
|
||||
# 在Gitea界面创建Pull Request
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
**联系信息**:
|
||||
- Gitea服务地址:http://你的IP:3000
|
||||
- 管理员:[你的联系方式]
|
||||
- 紧急联系:[备用联系方式]
|
||||
|
||||
**注意**:请确保定期备份重要代码,避免数据丢失。
|
||||
Reference in New Issue
Block a user