refactor: remove frontend and keep backend-only build
This commit is contained in:
@@ -1,105 +0,0 @@
|
||||
# SVN 日志 Web 工作台
|
||||
|
||||
## 功能概览
|
||||
|
||||
Web 工作台将现有 CLI 能力封装为可视化页面与 REST API,支持以下流程:
|
||||
|
||||
1. SVN 参数录入与连接测试
|
||||
2. 异步抓取日志并导出 Markdown
|
||||
3. 使用 DeepSeek 分析 Markdown 并生成 Excel
|
||||
4. 查看任务历史(状态、进度、错误、产物),支持筛选、分页与取消运行中任务
|
||||
5. 下载输出文件、配置 API Key 与输出目录
|
||||
6. 工作台展示系统健康状态(输出目录可写性、API Key 配置、任务统计)
|
||||
|
||||
批量抓取策略:多个项目按顺序执行(前一个项目完成后才开始下一个)。
|
||||
|
||||
## 启动方式
|
||||
|
||||
在仓库根目录执行:
|
||||
|
||||
```bash
|
||||
# Docker 一键启动(推荐)
|
||||
make up
|
||||
```
|
||||
|
||||
备用方式(本机 Java + Maven):
|
||||
|
||||
```bash
|
||||
mvn spring-boot:run -Dspring-boot.run.mainClass=com.svnlog.web.WebApplication
|
||||
```
|
||||
|
||||
启动后访问:
|
||||
|
||||
```text
|
||||
http://localhost:18088
|
||||
```
|
||||
|
||||
## 页面说明
|
||||
|
||||
- 工作台:最近任务统计与最近产物
|
||||
- SVN 日志抓取:SVN 地址、账号密码、版本区间、过滤用户(支持预置项目下拉与自定义地址)
|
||||
- AI 工作量分析:选择 Markdown 文件、工作周期、输出文件名
|
||||
- 任务历史:异步任务状态与产物列表,支持筛选、分页、取消任务
|
||||
- 系统设置:DeepSeek API Key、输出目录、默认 SVN 预置项目
|
||||
|
||||
## 输出目录
|
||||
|
||||
- 默认输出目录:`outputs/`
|
||||
- Markdown 输出:`outputs/md/*.md`
|
||||
- Excel 输出:`outputs/excel/*.xlsx`
|
||||
- 任务持久化:`outputs/task-history.json`(重启后可恢复历史)
|
||||
|
||||
## API Key 读取优先级
|
||||
|
||||
1. AI 分析请求中的临时 `apiKey`
|
||||
2. 设置页保存的运行时 `apiKey`
|
||||
3. 环境变量 `DEEPSEEK_API_KEY`
|
||||
|
||||
建议在生产环境优先使用环境变量,避免敏感信息暴露。
|
||||
|
||||
## SVN 预设来源与调用方式
|
||||
|
||||
- SVN 地址统一维护在 `application.properties` 的 `svn.presets[*]` 中。
|
||||
- 前端不再传 SVN URL,业务接口统一传 `presetId`,后端按 `presetId` 解析地址。
|
||||
- `GET /api/svn/presets` 仅返回 `id` 与 `name`(不返回 `url`)。
|
||||
|
||||
## 主要 API
|
||||
|
||||
- `POST /api/svn/test-connection`
|
||||
- `POST /api/svn/fetch`
|
||||
- `GET /api/svn/presets`
|
||||
- `POST /api/ai/analyze`
|
||||
- `GET /api/tasks`
|
||||
- `GET /api/tasks/query?status=&type=&keyword=&page=1&size=10`
|
||||
- `GET /api/tasks/{taskId}`
|
||||
- `GET /api/tasks/{taskId}/stream`(SSE 实时输出)
|
||||
- `POST /api/tasks/{taskId}/cancel`
|
||||
- `GET /api/health`
|
||||
- `GET /api/health/details`
|
||||
- `GET /api/files`
|
||||
- `GET /api/files/download?path=...`
|
||||
- `GET /api/settings`
|
||||
- `PUT /api/settings`
|
||||
|
||||
## 验证建议
|
||||
|
||||
至少执行:
|
||||
|
||||
```bash
|
||||
mvn clean compile
|
||||
```
|
||||
|
||||
如需验证完整流程:
|
||||
|
||||
1. 启动 Web 服务
|
||||
2. 在「SVN 日志抓取」创建任务并生成 `.md`
|
||||
3. 在「AI 工作量分析」选择 `.md` 并生成 `.xlsx`
|
||||
4. 在「任务历史」中下载产物并核验内容
|
||||
|
||||
## AI 输入校验
|
||||
|
||||
为避免误操作和资源滥用,AI 分析接口增加输入约束:
|
||||
|
||||
- 一次最多分析 20 个文件
|
||||
- 仅允许 `.md` 文件
|
||||
- 单文件大小不超过 2MB
|
||||
@@ -0,0 +1,99 @@
|
||||
# SVN 月报
|
||||
|
||||
## 报告信息
|
||||
|
||||
- **仓库**: `ERP-Backend`
|
||||
- **周期**: 2025年05月 月报
|
||||
- **来源**: SVN 远程仓库
|
||||
- **生成时间**: 2025-06-01 09:00:00
|
||||
|
||||
## 统计信息
|
||||
|
||||
- **总提交数**: 45
|
||||
- **涉及文件数**: 128
|
||||
- **活跃作者数**: 4
|
||||
- **作者提交分布**:
|
||||
- `lisi`: 18 次
|
||||
- `wangwu`: 12 次
|
||||
- `zhangsan`: 10 次
|
||||
- `zhaoliu`: 5 次
|
||||
- **涉及模块**:
|
||||
- `src`: 89 个文件
|
||||
- `webapp`: 24 个文件
|
||||
- `config`: 10 个文件
|
||||
- `docs`: 5 个文件
|
||||
|
||||
## 工作摘要
|
||||
|
||||
- 完成采购审批流程模块开发,支持三级审批链路
|
||||
- 库存预警功能上线,支持邮件和站内信双通道通知
|
||||
- 报表导出模块重构,统一使用 Apache POI 模板引擎
|
||||
- 修复财务对账模块金额精度丢失问题(BigDecimal 替换 double)
|
||||
- 前端表单校验增强,新增 15 个字段级校验规则
|
||||
- 数据库慢查询优化 8 处,平均响应时间降低 40%
|
||||
|
||||
## 风险与说明
|
||||
|
||||
- 采购审批流程尚未覆盖退货场景,计划 6 月迭代补充
|
||||
- 库存预警阈值目前为全局配置,后续需支持按品类自定义
|
||||
|
||||
## 提交明细
|
||||
|
||||
### r15230
|
||||
|
||||
**作者**: `lisi`
|
||||
**时间**: 2025-05-30 16:45:00
|
||||
**仓库**: `ERP-Backend`
|
||||
|
||||
**提交信息**:
|
||||
|
||||
```
|
||||
feat: 采购审批流程 - 三级审批链路完整实现
|
||||
```
|
||||
|
||||
**变更路径**:
|
||||
- `src/main/java/com/erp/approval/ApprovalChainService.java`
|
||||
- `src/main/java/com/erp/approval/ApprovalController.java`
|
||||
- `src/main/java/com/erp/model/ApprovalRecord.java`
|
||||
- `webapp/views/approval/list.jsp`
|
||||
|
||||
---
|
||||
|
||||
### r15218
|
||||
|
||||
**作者**: `wangwu`
|
||||
**时间**: 2025-05-28 14:20:00
|
||||
**仓库**: `ERP-Backend`
|
||||
|
||||
**提交信息**:
|
||||
|
||||
```
|
||||
feat: 库存预警功能 - 支持邮件和站内信通知
|
||||
```
|
||||
|
||||
**变更路径**:
|
||||
- `src/main/java/com/erp/inventory/AlertService.java`
|
||||
- `src/main/java/com/erp/notification/EmailSender.java`
|
||||
- `src/main/java/com/erp/notification/InboxSender.java`
|
||||
- `config/alert-rules.xml`
|
||||
|
||||
---
|
||||
|
||||
### r15205
|
||||
|
||||
**作者**: `zhangsan`
|
||||
**时间**: 2025-05-25 10:30:00
|
||||
**仓库**: `ERP-Backend`
|
||||
|
||||
**提交信息**:
|
||||
|
||||
```
|
||||
fix: 修复财务对账金额精度丢失,double 替换为 BigDecimal
|
||||
```
|
||||
|
||||
**变更路径**:
|
||||
- `src/main/java/com/erp/finance/ReconciliationService.java`
|
||||
- `src/main/java/com/erp/model/FinanceRecord.java`
|
||||
- `src/test/java/com/erp/finance/ReconciliationServiceTest.java`
|
||||
|
||||
---
|
||||
@@ -0,0 +1,115 @@
|
||||
# Git 周报
|
||||
|
||||
## 报告信息
|
||||
|
||||
- **仓库**: `demo-web-app`
|
||||
- **周期**: 2025-05-19 至 2025-05-25 周报
|
||||
- **来源**: Git 本地仓库
|
||||
- **作者过滤**: `zhangsan`
|
||||
- **生成时间**: 2025-05-25 18:30:00
|
||||
|
||||
## 统计信息
|
||||
|
||||
- **总提交数**: 12
|
||||
- **涉及文件数**: 37
|
||||
- **活跃作者数**: 1
|
||||
- **作者提交分布**:
|
||||
- `zhangsan`: 12 次
|
||||
- **涉及模块**:
|
||||
- `src`: 28 个文件
|
||||
- `docs`: 5 个文件
|
||||
- `config`: 4 个文件
|
||||
|
||||
## 工作摘要
|
||||
|
||||
- 完成用户登录模块重构,统一使用 JWT 认证方案
|
||||
- 优化首页加载性能,接口响应时间从 800ms 降至 200ms
|
||||
- 修复订单列表分页查询在大数据量下的 SQL 慢查询问题
|
||||
- 新增导出功能,支持 CSV 和 Excel 两种格式
|
||||
- 补充单元测试 15 个,覆盖率从 62% 提升至 78%
|
||||
|
||||
## 风险与说明
|
||||
|
||||
- JWT 密钥目前硬编码在配置文件中,后续需迁移至密钥管理服务
|
||||
|
||||
## 提交明细
|
||||
|
||||
### abc1234
|
||||
|
||||
**作者**: `zhangsan`
|
||||
**时间**: 2025-05-25 17:20:00
|
||||
**仓库**: `demo-web-app`
|
||||
**引用**: `develop`
|
||||
|
||||
**提交信息**:
|
||||
|
||||
```
|
||||
feat: 新增订单导出 Excel 功能
|
||||
```
|
||||
|
||||
**变更路径**:
|
||||
- `src/main/java/com/demo/service/ExportService.java`
|
||||
- `src/main/java/com/demo/controller/OrderController.java`
|
||||
- `src/test/java/com/demo/service/ExportServiceTest.java`
|
||||
|
||||
---
|
||||
|
||||
### bcd2345
|
||||
|
||||
**作者**: `zhangsan`
|
||||
**时间**: 2025-05-24 15:40:00
|
||||
**仓库**: `demo-web-app`
|
||||
**引用**: `develop`
|
||||
|
||||
**提交信息**:
|
||||
|
||||
```
|
||||
perf: 优化首页接口查询,添加缓存层
|
||||
```
|
||||
|
||||
**变更路径**:
|
||||
- `src/main/java/com/demo/service/DashboardService.java`
|
||||
- `src/main/java/com/demo/config/CacheConfig.java`
|
||||
|
||||
---
|
||||
|
||||
### cde3456
|
||||
|
||||
**作者**: `zhangsan`
|
||||
**时间**: 2025-05-23 11:15:00
|
||||
**仓库**: `demo-web-app`
|
||||
**引用**: `develop`
|
||||
|
||||
**提交信息**:
|
||||
|
||||
```
|
||||
fix: 修复订单分页查询慢查询问题,添加复合索引
|
||||
```
|
||||
|
||||
**变更路径**:
|
||||
- `src/main/resources/db/migration/V20250523__add_order_index.sql`
|
||||
- `src/main/java/com/demo/mapper/OrderMapper.java`
|
||||
|
||||
---
|
||||
|
||||
### def4567
|
||||
|
||||
**作者**: `zhangsan`
|
||||
**时间**: 2025-05-22 09:30:00
|
||||
**仓库**: `demo-web-app`
|
||||
**引用**: `develop`
|
||||
|
||||
**提交信息**:
|
||||
|
||||
```
|
||||
refactor: 重构登录模块,统一使用 JWT 认证
|
||||
```
|
||||
|
||||
**变更路径**:
|
||||
- `src/main/java/com/demo/security/JwtTokenProvider.java`
|
||||
- `src/main/java/com/demo/security/JwtAuthFilter.java`
|
||||
- `src/main/java/com/demo/controller/AuthController.java`
|
||||
- `src/main/java/com/demo/config/SecurityConfig.java`
|
||||
- `docs/auth-design.md`
|
||||
|
||||
---
|
||||
@@ -0,0 +1,78 @@
|
||||
# 发行版打包指南
|
||||
|
||||
本文档说明当前纯 `backend/` 结构下的发行版打包方式。
|
||||
|
||||
## 一键打包
|
||||
|
||||
在项目根目录执行:
|
||||
|
||||
```bash
|
||||
make release
|
||||
```
|
||||
|
||||
该命令会自动:
|
||||
|
||||
1. 在 `backend/` 执行 `mvn clean package -DskipTests`
|
||||
2. 生成 `backend/target/svn-log-tool-1.0.0-jar-with-dependencies.jar`
|
||||
3. 将 jar 复制到 `release/windows/` 和 `release/unix/`
|
||||
4. 打包 Windows、Unix、Docker 三类发行包
|
||||
|
||||
## 手动打包步骤
|
||||
|
||||
### 1. 构建后端产物
|
||||
|
||||
```bash
|
||||
cd backend
|
||||
mvn clean package -DskipTests
|
||||
```
|
||||
|
||||
### 2. 复制 jar 到发行目录
|
||||
|
||||
```bash
|
||||
cp backend/target/svn-log-tool-1.0.0-jar-with-dependencies.jar release/windows/
|
||||
cp backend/target/svn-log-tool-1.0.0-jar-with-dependencies.jar release/unix/
|
||||
```
|
||||
|
||||
### 3. 打包 Windows 版本
|
||||
|
||||
```bash
|
||||
cd release/windows
|
||||
zip -r ../svn-log-tool-1.0.0-windows.zip *
|
||||
cd ../..
|
||||
```
|
||||
|
||||
### 4. 打包 Unix 版本
|
||||
|
||||
```bash
|
||||
cd release/unix
|
||||
tar czf ../svn-log-tool-1.0.0-unix.tar.gz *
|
||||
cd ../..
|
||||
```
|
||||
|
||||
### 5. 打包 Docker 版本
|
||||
|
||||
```bash
|
||||
cd release/docker
|
||||
cp ../../Dockerfile .
|
||||
tar czf ../svn-log-tool-1.0.0-docker.tar.gz *
|
||||
rm Dockerfile
|
||||
cd ../..
|
||||
```
|
||||
|
||||
## Docker 构建说明
|
||||
|
||||
根目录 `Dockerfile` 采用多阶段构建:
|
||||
|
||||
1. `maven:3.9.6-eclipse-temurin-8` 打包 `backend/`
|
||||
2. `eclipse-temurin:8-jre` 作为最终运行镜像
|
||||
|
||||
## 发布清单
|
||||
|
||||
- [ ] Windows 发行包(.zip)
|
||||
- [ ] Unix 发行包(.tar.gz)
|
||||
- [ ] Docker 发行包(.tar.gz)
|
||||
- [ ] 用户手册
|
||||
- [ ] 快速开始指南
|
||||
- [ ] 样例报表
|
||||
- [ ] 产品截图
|
||||
- [ ] 演示视频(可选)
|
||||
@@ -0,0 +1,90 @@
|
||||
# 快速开始指南
|
||||
|
||||
3 步快速上手「SVN/Git 日报周报月报一键生成」
|
||||
|
||||
---
|
||||
|
||||
## 方式一:Docker(推荐)
|
||||
|
||||
### 第 1 步:启动服务
|
||||
|
||||
```bash
|
||||
cd release/docker
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
### 第 2 步:打开浏览器
|
||||
|
||||
访问:http://localhost:18088
|
||||
|
||||
### 第 3 步:生成报表
|
||||
|
||||
1. 点击左侧「报表生成」
|
||||
2. 选择仓库类型(SVN 或 Git)
|
||||
3. 填写仓库信息
|
||||
4. 选择报表周期(日报/周报/月报)
|
||||
5. 点击「生成 Markdown + Excel」
|
||||
|
||||
完成!报表在 `outputs/` 目录下。
|
||||
|
||||
---
|
||||
|
||||
## 方式二:Windows
|
||||
|
||||
### 第 1 步:安装 Java
|
||||
|
||||
如果尚未安装,访问 https://adoptium.net/ 下载 JRE 8 (LTS)。
|
||||
|
||||
### 第 2 步:启动服务
|
||||
|
||||
双击 `start.bat`
|
||||
|
||||
### 第 3 步:生成报表
|
||||
|
||||
浏览器打开 http://localhost:18088,按照界面提示操作。
|
||||
|
||||
---
|
||||
|
||||
## 方式三:macOS / Linux
|
||||
|
||||
### 第 1 步:启动服务
|
||||
|
||||
```bash
|
||||
cd release/unix
|
||||
./start.sh
|
||||
```
|
||||
|
||||
### 第 2 步:生成报表
|
||||
|
||||
浏览器打开 http://localhost:18088,按照界面提示操作。
|
||||
|
||||
---
|
||||
|
||||
## 示例:生成本周周报
|
||||
|
||||
1. 打开 http://localhost:18088
|
||||
2. 左侧点击「报表生成」
|
||||
3. 选择「Git」仓库类型
|
||||
4. 填写 Git 仓库路径:`/home/user/my-project`
|
||||
5. 报表周期选择「周报」
|
||||
6. 基准日期选择本周任意一天(默认今天)
|
||||
7. 点击「生成 Markdown + Excel」
|
||||
8. 等待完成,自动下载 Excel
|
||||
|
||||
---
|
||||
|
||||
## 可选:配置 AI 分析
|
||||
|
||||
如需 AI 自动生成工作摘要:
|
||||
|
||||
1. 访问 https://platform.deepseek.com 获取 API Key
|
||||
2. 在 Web 工作台 → 系统设置 → 填入 API Key
|
||||
3. 生成报表时勾选「启用 AI 摘要」
|
||||
|
||||
不配置也可正常使用基础功能。
|
||||
|
||||
---
|
||||
|
||||
## 需要帮助?
|
||||
|
||||
查看完整文档:`docs/用户手册.md`
|
||||
+253
@@ -0,0 +1,253 @@
|
||||
# SVN/Git 日报周报月报一键生成 - 用户手册
|
||||
|
||||
## 目录
|
||||
|
||||
1. [产品简介](#1-产品简介)
|
||||
2. [环境要求](#2-环境要求)
|
||||
3. [安装与启动](#3-安装与启动)
|
||||
4. [功能说明](#4-功能说明)
|
||||
5. [AI 工作量分析](#5-ai-工作量分析)
|
||||
6. [常见问题](#6-常见问题)
|
||||
|
||||
---
|
||||
|
||||
## 1. 产品简介
|
||||
|
||||
「SVN/Git 日报周报月报一键生成」是一款本地离线运行的代码仓库报表生成工具。
|
||||
|
||||
**核心能力:**
|
||||
|
||||
- 连接 SVN 远程仓库或 Git 本地仓库,自动抓取提交日志
|
||||
- 支持日报、周报、月报三种统计周期
|
||||
- 自动生成 Markdown 格式提交报表
|
||||
- 可选集成 DeepSeek AI,自动分析工作量并导出 Excel
|
||||
- Web 工作台操作,无需命令行
|
||||
|
||||
**适用场景:**
|
||||
|
||||
- 团队周报/月报编写,快速汇总代码提交记录
|
||||
- 项目经理查看团队成员工作量
|
||||
- 个人开发者整理工作日志
|
||||
- 外包项目交付工作量证明
|
||||
|
||||
**数据安全:**
|
||||
|
||||
- 所有数据本地处理,不上传任何服务器
|
||||
- AI 分析仅发送提交摘要(非源码),且可选关闭
|
||||
|
||||
---
|
||||
|
||||
## 2. 环境要求
|
||||
|
||||
### 方式一:Docker 部署(推荐)
|
||||
|
||||
- Docker 20.10+
|
||||
- Docker Compose v2+
|
||||
- 无需安装 Java
|
||||
|
||||
### 方式二:本机 Java 运行
|
||||
|
||||
- Java 8 或更高版本(JRE 即可)
|
||||
- Windows 7+ / macOS 10.12+ / Linux
|
||||
|
||||
**Java 安装指引:**
|
||||
|
||||
| 系统 | 安装方式 |
|
||||
|------|----------|
|
||||
| Windows | 访问 https://adoptium.net/ 下载 JRE 8 (LTS) |
|
||||
| macOS | `brew install openjdk@8` |
|
||||
| Ubuntu/Debian | `sudo apt install openjdk-8-jre` |
|
||||
| CentOS/RHEL | `sudo yum install java-1.8.0-openjdk` |
|
||||
|
||||
---
|
||||
|
||||
## 3. 安装与启动
|
||||
|
||||
### 3.1 Docker 方式
|
||||
|
||||
```bash
|
||||
# 进入 docker 发行包目录
|
||||
cd release/docker
|
||||
|
||||
# 一键启动
|
||||
docker compose up -d
|
||||
|
||||
# 查看状态
|
||||
docker compose ps
|
||||
|
||||
# 停止服务
|
||||
docker compose down
|
||||
```
|
||||
|
||||
启动后浏览器访问:**http://localhost:18088**
|
||||
|
||||
### 3.2 Windows 方式
|
||||
|
||||
1. 解压发行包到任意目录
|
||||
2. 双击 `start.bat`
|
||||
3. 等待控制台显示启动成功
|
||||
4. 浏览器访问:**http://localhost:18088**
|
||||
|
||||
### 3.3 macOS / Linux 方式
|
||||
|
||||
```bash
|
||||
# 进入 unix 发行包目录
|
||||
cd release/unix
|
||||
|
||||
# 启动
|
||||
./start.sh
|
||||
```
|
||||
|
||||
浏览器访问:**http://localhost:18088**
|
||||
|
||||
---
|
||||
|
||||
## 4. 功能说明
|
||||
|
||||
### 4.1 工作台
|
||||
|
||||
首页展示系统概览:
|
||||
|
||||
- **任务统计**:总任务数、执行中、失败数
|
||||
- **系统状态**:输出目录可写性、API Key 配置状态
|
||||
- **报表模板**:可用的报表模板列表
|
||||
- **最近文件**:最新生成的报表文件,可直接下载
|
||||
|
||||
### 4.2 报表生成
|
||||
|
||||
这是核心功能页面,操作步骤:
|
||||
|
||||
**第一步:选择仓库类型**
|
||||
|
||||
- **SVN**:需要填写 SVN 预设项目、用户名、密码
|
||||
- **Git**:需要填写本地 Git 仓库路径(如 `/home/user/my-project`)
|
||||
|
||||
**第二步:选择报表周期**
|
||||
|
||||
- **日报**:统计指定日期当天的提交
|
||||
- **周报**:统计指定日期所在周(周一至周日)的提交
|
||||
- **月报**:统计指定日期所在月的全部提交
|
||||
|
||||
**第三步:填写参数**
|
||||
|
||||
- **基准日期**:报表统计的参考日期(默认今天)
|
||||
- **周期标签**:报表标题中的周期描述(自动生成,可修改)
|
||||
- **作者过滤**:只统计包含指定关键词的作者(留空不过滤)
|
||||
- **输出名称**:生成文件的名称前缀(自动生成,可修改)
|
||||
|
||||
**第四步:可选 AI 增强**
|
||||
|
||||
- 勾选「启用 AI 摘要」可让 DeepSeek 自动生成工作摘要
|
||||
- 需要先在系统设置中配置 API Key
|
||||
|
||||
**第五步:点击生成**
|
||||
|
||||
- 点击「测试连接」验证仓库可访问
|
||||
- 点击「生成 Markdown + Excel」开始生成
|
||||
- 执行日志区域会实时显示进度
|
||||
- 完成后自动下载 Excel 文件
|
||||
|
||||
### 4.3 任务历史
|
||||
|
||||
查看所有历史任务:
|
||||
|
||||
- 支持按状态(PENDING/RUNNING/SUCCESS/FAILED/CANCELLED)筛选
|
||||
- 支持按类型筛选
|
||||
- 支持关键词搜索
|
||||
- 分页浏览
|
||||
- 可直接下载任务产物
|
||||
|
||||
### 4.4 系统设置
|
||||
|
||||
- **DeepSeek API Key**:配置 AI 分析所需的密钥
|
||||
- **默认 SVN 项目**:设置默认选中的 SVN 预设
|
||||
- **输出目录**:自定义报表输出路径(默认 `outputs`)
|
||||
|
||||
---
|
||||
|
||||
## 5. AI 工作量分析
|
||||
|
||||
### 5.1 获取 API Key
|
||||
|
||||
1. 访问 https://platform.deepseek.com
|
||||
2. 注册账号并登录
|
||||
3. 进入「API Keys」页面
|
||||
4. 创建新的 API Key
|
||||
5. 复制 Key(格式为 `sk-...`)
|
||||
|
||||
### 5.2 配置 API Key
|
||||
|
||||
**方式一:Web 设置页**
|
||||
|
||||
在「系统设置」页面填入 API Key 并保存。
|
||||
|
||||
**方式二:环境变量**
|
||||
|
||||
```bash
|
||||
export DEEPSEEK_API_KEY=sk-your-key-here
|
||||
```
|
||||
|
||||
Docker 方式可在 `docker-compose.yml` 中配置:
|
||||
|
||||
```yaml
|
||||
environment:
|
||||
- DEEPSEEK_API_KEY=sk-your-key-here
|
||||
```
|
||||
|
||||
### 5.3 使用说明
|
||||
|
||||
- AI 分析会将提交记录摘要发送给 DeepSeek API
|
||||
- 不会发送源代码内容,仅发送提交信息
|
||||
- 每次分析消耗少量 Token(通常 < 0.01 元)
|
||||
- 不配置 API Key 也可正常使用基础报表功能
|
||||
|
||||
---
|
||||
|
||||
## 6. 常见问题
|
||||
|
||||
### Q: 启动后无法访问 http://localhost:18088?
|
||||
|
||||
- 确认服务已启动(控制台无报错)
|
||||
- 检查端口 18088 是否被其他程序占用
|
||||
- 尝试使用 http://127.0.0.1:18088
|
||||
|
||||
### Q: SVN 连接失败?
|
||||
|
||||
- 检查 SVN 地址格式是否正确(以 `http://` 或 `https://` 开头)
|
||||
- 确认用户名和密码正确
|
||||
- 确认网络可以访问 SVN 服务器
|
||||
- 如果是 HTTPS,可能存在证书问题
|
||||
|
||||
### Q: Git 仓库路径无效?
|
||||
|
||||
- 确认路径指向 `.git` 所在的目录(不是 `.git` 本身)
|
||||
- 路径必须是本地绝对路径
|
||||
- Docker 模式下需要将 Git 仓库目录挂载到容器中
|
||||
|
||||
### Q: AI 分析报错?
|
||||
|
||||
- 检查 API Key 是否正确
|
||||
- 确认网络可以访问 api.deepseek.com
|
||||
- 检查 DeepSeek 账户余额是否充足
|
||||
|
||||
### Q: 生成的报表在哪里?
|
||||
|
||||
- 默认在程序目录下的 `outputs/` 文件夹
|
||||
- `outputs/md/` 存放 Markdown 报表
|
||||
- `outputs/excel/` 存放 Excel 工作量统计
|
||||
- 也可在 Web 工作台的「任务历史」页面直接下载
|
||||
|
||||
### Q: 如何修改端口?
|
||||
|
||||
在 jar 同目录下创建 `application.properties` 文件:
|
||||
|
||||
```properties
|
||||
server.port=8080
|
||||
```
|
||||
|
||||
Docker 方式修改 `docker-compose.yml` 中的端口映射:
|
||||
|
||||
```yaml
|
||||
ports:
|
||||
- "8080:18088"
|
||||
```
|
||||
@@ -0,0 +1,96 @@
|
||||
# 闲鱼商品文案
|
||||
|
||||
## 商品标题(30字以内)
|
||||
|
||||
SVN/Git日报周报月报一键生成工具 本地离线 AI分析
|
||||
|
||||
---
|
||||
|
||||
## 商品描述
|
||||
|
||||
### 一句话介绍
|
||||
|
||||
程序员必备效率工具!连接 SVN 或 Git 仓库,一键生成日报、周报、月报,支持 AI 自动分析工作量,导出 Markdown + Excel。
|
||||
|
||||
### 痛点场景
|
||||
|
||||
- 每周写周报要翻半天 Git 提交记录?
|
||||
- 项目经理要月度工作量统计,手动整理到崩溃?
|
||||
- 外包项目交付,需要提供工作量证明?
|
||||
- 团队成员多,汇总每个人的提交记录费时费力?
|
||||
|
||||
### 产品亮点
|
||||
|
||||
1. **一键生成**:选择仓库、选择周期、点击生成,3 步搞定
|
||||
2. **双仓库支持**:SVN 远程仓库 + Git 本地仓库都能用
|
||||
3. **三种周期**:日报 / 周报 / 月报,自动计算日期范围
|
||||
4. **AI 智能分析**:接入 DeepSeek AI,自动提炼工作摘要(可选)
|
||||
5. **Excel 导出**:直接生成工作量统计表,拿来就能用
|
||||
6. **Web 操作界面**:浏览器打开就能用,不需要命令行
|
||||
7. **本地离线运行**:数据不出你的电脑,安全放心
|
||||
8. **Docker 一键部署**:`make up` 一条命令启动
|
||||
|
||||
### 你会得到什么
|
||||
|
||||
- 完整源码(Java 8 + Spring Boot)
|
||||
- Windows 一键启动包(双击 start.bat 即可运行)
|
||||
- macOS / Linux 启动脚本
|
||||
- Docker 部署包
|
||||
- 详细用户手册 + 快速开始指南
|
||||
- 样例报表(周报 + 月报示例)
|
||||
- 售后技术支持
|
||||
|
||||
### 技术栈
|
||||
|
||||
Java 8 / Spring Boot 2.7 / SVNKit / JGit / Apache POI / DeepSeek API
|
||||
|
||||
### 适合谁
|
||||
|
||||
- 需要写日报周报月报的开发者
|
||||
- 需要统计团队工作量的项目经理
|
||||
- 需要提供工作量证明的外包团队
|
||||
- 想学习 Spring Boot + 前后端一体化项目的同学
|
||||
|
||||
### 运行环境
|
||||
|
||||
- Windows / macOS / Linux 均可
|
||||
- 需要 Java 8+(或 Docker)
|
||||
- AI 功能需要 DeepSeek API Key(免费额度够用很久)
|
||||
|
||||
---
|
||||
|
||||
## 定价建议
|
||||
|
||||
- 基础版(源码 + 文档):¥149
|
||||
- 标准版(+ 启动包 + 视频教程):¥299
|
||||
- 专业版(+ 一对一部署支持 + 定制需求沟通):¥599
|
||||
|
||||
---
|
||||
|
||||
## 商品标签(搜索关键词)
|
||||
|
||||
SVN, Git, 日报, 周报, 月报, 工作量统计, 报表工具, 程序员工具,
|
||||
AI分析, DeepSeek, Spring Boot, Java, 代码日志, 提交记录,
|
||||
工作量证明, 项目管理, 效率工具
|
||||
|
||||
---
|
||||
|
||||
## 买家常见问题(FAQ)
|
||||
|
||||
**Q: 需要什么技术基础?**
|
||||
A: 不需要编程基础。Windows 用户双击 start.bat 即可启动,打开浏览器操作。
|
||||
|
||||
**Q: AI 功能收费吗?**
|
||||
A: 工具本身不收费。AI 功能使用 DeepSeek API,新用户有免费额度,日常使用每月花费不到 1 元。不用 AI 也能正常生成报表。
|
||||
|
||||
**Q: 支持哪些 SVN/Git 服务器?**
|
||||
A: SVN 支持所有标准 SVN 服务器(VisualSVN、CollabNet 等)。Git 支持本地仓库(GitHub、GitLab、Gitee 克隆到本地的都行)。
|
||||
|
||||
**Q: 数据安全吗?**
|
||||
A: 完全本地运行,不上传任何数据。AI 分析只发送提交信息摘要(不含源码)。
|
||||
|
||||
**Q: 买了之后怎么获取更新?**
|
||||
A: 提供售后群,有更新会在群里通知。
|
||||
|
||||
**Q: 可以定制功能吗?**
|
||||
A: 专业版包含定制需求沟通,简单需求可免费实现。
|
||||
Reference in New Issue
Block a user