writeOff/README.md
haomingming 815aa04fe8 first
2026-05-20 18:21:39 +08:00

95 lines
3.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 会议核销SaaS 开发启动说明
## 目录
- `backend/`Spring Boot 后端工程(按模块分包)。
- `frontend/`Vue3 + Element Plus 前端工程(按模块路由)。
- `基金会、协会、北京欣欣会议核销系统_完整版.md`:业务需求文档。
- `会议核销SaaS系统_技术开发文档.md`:技术开发文档。
## 当前已落地MVP模块
- 后端核心接口
- `GET /api/system/health`
- `GET/POST /api/projects`
- `POST /api/projects/{id}/freeze`
- `GET/POST /api/meetings`
- `POST /api/meetings/{id}/submit`
- `GET /api/audits/tasks`
- `POST /api/audits/tasks/{id}/approve`
- `POST /api/audits/tasks/{id}/reject`
- `POST /api/audits/tasks/{id}/return`
- `GET /api/finance/projects`
- `POST /api/finance/payments`
- 后端分层结构
- 已按 `controller/service/repository/model/dto` 分层。
- 已实现业务异常、参数校验、统一响应结构、错误码处理。
- 数据库与初始化
- `backend/src/main/resources/db/schema.sql`
- `backend/src/main/resources/db/data.sql`
- 调度任务无MQ
- 已实现 `Scheduler + async_job` 内存版执行机制、重试与幂等防重。
- 前端模块页面
- 项目管理(新建/冻结/列表)
- 会议管理(新建/会议级提交)
- 审核管理(通过/拒绝/退回)
- 财务管理(支付确认/列表)
## 第二阶段已落地
- 持久化升级
- 新增 JDBC 仓储实现(项目/会议/审核/支付/任务)。
- 支持通过 `APP_REPOSITORY_MODE` 切换 `jdbc``in-memory`
- 数据库迁移
- 新增 Flyway 迁移脚本:
- `backend/src/main/resources/db/migration/V1__init_schema.sql`
- `backend/src/main/resources/db/migration/V2__seed_data.sql`
- 系统设置基础模块
- 后端新增用户与角色接口:`/api/users``/api/roles`
- 前端新增用户管理、角色管理页面与菜单。
- 文件能力
- 新增 OSS 预签名下载接口:`GET /api/files/presign-download`
## 第三阶段当前进展(已完成)
- 认证与鉴权
- 新增 JWT 登录接口:`POST /api/auth/login`
- 新增鉴权拦截器:统一校验 `Authorization: Bearer <token>`
- 新增 RBAC 权限注解:`@RequirePermission`
- 权限落地
- 项目、会议、审核、财务关键写操作已接入权限码校验。
- Flyway 迁移增强
- 新增 `V3__auth_rbac_seed.sql`,补齐用户、角色、权限与映射初始化数据。
- 前端登录与路由守卫
- 新增登录页 `/login`
- 未登录自动跳转登录token 过期自动清理并回登录页。
- 新增退出登录按钮。
## 启动方式
### 后端
1. 配置 `backend/src/main/resources/application.yml` 中的 MySQL 与 OSS 参数。
2.`backend` 目录执行:
- `mvn spring-boot:run`
### 前端
1.`frontend` 目录执行:
- `npm install`
- `npm run dev`
## 测试与构建
### 后端
-`backend` 目录执行:
- `mvn clean test`
### 前端
-`frontend` 目录执行:
- `npm run build`
## 试运行与发布
- 试运行与回滚预案见:
- `docs/MVP_试运行与发布回滚预案.md`
## 下一阶段建议
1. 接入真实 MySQL 持久化仓储(替换内存仓储)。
2. 完成租户/用户/角色/权限模块。
3. 完善审核流配置化与任务告警通知通道。
4. 落地 OSS 上传、模板治理、专家模块。