53 lines
1.6 KiB
Markdown
53 lines
1.6 KiB
Markdown
# AIOA
|
|
|
|
AI 原生移动办公系统。项目采用“纵向业务闭环优先”的实施方式,首个里程碑是请假审批闭环。
|
|
|
|
## 当前范围
|
|
|
|
首期只实现:
|
|
|
|
- OIDC 登录与当前用户
|
|
- 基础组织、岗位和角色
|
|
- 请假申请、审批、驳回、撤回和流程时间线
|
|
- 附件、站内通知和审计
|
|
- AI 辅助填写请假单、查询流程进度
|
|
|
|
不在首期实现:全面微服务、多 Agent、自主审批、复杂知识库、生产级 Kubernetes 集群。
|
|
|
|
## 仓库结构
|
|
|
|
```text
|
|
backend/ Kotlin + Spring Boot 模块化单体
|
|
mobile/ Flutter 移动客户端
|
|
ai-service/ Python AI 服务
|
|
contracts/ OpenAPI 与事件契约
|
|
deploy/ 本地与部署配置
|
|
docs/ 产品、架构和开发文档
|
|
scripts/ 开发辅助脚本
|
|
```
|
|
|
|
## 开发环境
|
|
|
|
- JDK 21
|
|
- Docker 28+
|
|
- Docker Compose v2
|
|
- Flutter stable(与当前主机架构一致)
|
|
- Python 3.11+
|
|
|
|
复制 `.env.example` 为 `.env` 后,可使用 `docker compose --env-file .env -f deploy/compose/compose.yaml up -d` 启动基础依赖。
|
|
|
|
本地 PostgreSQL 暴露在 `127.0.0.1:15432`,避免与系统或其他项目常用的 `5432` 端口冲突。
|
|
|
|
后端测试:
|
|
|
|
```bash
|
|
cd backend
|
|
export JAVA_HOME=/usr/local/opt/openjdk@21/libexec/openjdk.jdk/Contents/Home
|
|
export GRADLE_USER_HOME=/tmp/aioa-gradle-home
|
|
./gradlew --no-daemon test
|
|
```
|
|
|
|
当前实施范围和验收标准见 [docs/product/mvp.md](docs/product/mvp.md)。
|
|
|
|
Flutter 已实现 Schema 驱动的请假表单卡片演示,详见 [docs/engineering/mobile-schema-forms.md](docs/engineering/mobile-schema-forms.md)。
|