Files
daily_publish/README.md
T
panda afcd18c54f fix: evaluation report P0/P1/P2 fixes, remove Docker, add upload UI
Backend:
- Add NotFoundException + BusinessException, return correct HTTP status (404/400)
- Add @Index on reports.project_id and reports.upload_time
- Add fileSize column to reports, populate on upload, return in DTO
- Cascade delete: deleting project now removes all reports (DB + files + PDFs)
- Delete report: also clean up pre-rendered PDF
- File upload MIME validation (extension + Content-Type)
- Remove duplicate @ExceptionHandler from ReportController
- Switch from System.err to SLF4J logger
- Handle MethodArgumentNotValid, MissingServletRequestPart, etc.

Frontend:
- Remove all Docker files (project uses 宝塔 panel deployment)
- Upgrade axios 1.6.8 -> 1.7.7 (CVE-2024-39338)
- Remove unused @vue-office/pptx + vue-demi (see CHANGELOG for rationale)
- Fix vite proxy port 37821 -> 30081
- Remove mock data fallback in production
- Add upload report UI (button + modal in ProjectDetail)
- Add create project UI (button + modal in ProjectList)
- Add filename search box in ProjectDetail
- New useApi methods: createProject, uploadReport, deleteProject, deleteReport
- FilePreview/ReportCard: show fileSize (was undefined before)

Docs:
- Add README.md (overview, quick start, structure)
- Add CHANGELOG.md (full change log + pptx removal rationale)
- Include EVALUATION_REPORT.md and blog-vibe-coding.md

Tests:
- All 73 backend tests pass
- All 43 frontend tests pass
- Updated test fixtures for new API contract
2026-06-01 21:35:13 +08:00

2.0 KiB
Raw Blame History

Publish — AI 日报分发平台

私有化部署的日报/周报管理与分发平台。后端 Spring Boot + SQLite,前端 Vue 3 + Vite。

快速开始

开发

# 后端(需要 Java 21
./mvnw.cmd spring-boot:run

# 前端
pnpm install
pnpm dev  # → http://localhost:41733

部署

本项目使用宝塔面板部署(不是 Docker)。

powershell -File deploy/package.ps1
# 生成 deploy/publish_deploy.zip
# 上传到服务器 /usr/local/publish_dishboard/ 解压覆盖

完整部署步骤见 deploy/README.md

文档

项目结构

publish/
├── src/main/java/com/reportdist/   # Spring Boot 后端
│   ├── controller/                 # REST API
│   ├── service/                    # 业务逻辑
│   ├── repository/                 # JPA 仓储
│   ├── entity/                     # 数据库实体
│   ├── dto/                        # 数据传输对象
│   └── exception/                  # 异常处理
├── src/                            # Vue 3 前端
│   ├── pages/                      # 页面
│   ├── components/                 # 组件
│   ├── composables/                # 组合式 API
│   └── router/                     # 路由
├── deploy/                         # 部署脚本与说明
├── pom.xml                         # Maven 配置
└── package.json                    # 前端依赖

技术栈

  • 后端Spring Boot 3.2.5 + Spring Data JPA + SQLite + Apache POI + PDFBox
  • 前端Vue 3.4 + Vite 5 + TailwindCSS 4 + Axios
  • 构建Maven + pnpm
  • 部署:宝塔面板 (Java 21 + Node.js)

端口约定

服务 端口
后端 (Spring Boot) 30081
前端 (Node.js static server) 30080
开发模式 - Vite 41733

许可证

私有项目