# pyoa **Repository Path**: webicc/pyoa ## Basic Information - **Project Name**: pyoa - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-02 - **Last Updated**: 2026-06-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 企业 OA 系统 - PyOA 一个功能齐全的企业级 OA(办公自动化)系统,基于 Django + Vue3 + Element Plus 构建。 ## 技术栈 ### 后端 - **框架**: Django 4.2 - **数据库**: SQLite (开发) / PostgreSQL (生产) - **REST API**: Django REST Framework - **认证**: JWT (djangorestframework-simplejwt) - **任务队列**: Celery + Redis - **缓存**: Redis ### 前端 - **框架**: Vue 3.x - **UI 组件库**: Element Plus - **状态管理**: Pinia - **路由**: Vue Router - **HTTP 客户端**: Axios - **构建工具**: Vite ## 功能模块 ### 1. 系统管理 - 用户管理 - 角色权限管理 - 菜单管理 - 数据字典 - 操作日志 - 登录日志 ### 2. 组织架构 - 部门管理(多级树形结构) - 岗位管理 - 员工档案管理 - 员工异动记录 ### 3. 流程引擎 - 可视化流程设计器 - 表单设计器 - 流程版本管理 - 会签/或签支持 - 条件分支流转 ### 4. 审批中心 - 请假申请 - 出差申请 - 加班申请 - 用车申请 - 用印申请 - 采购申请 - 费用报销 ### 5. 行政管理 - 会议室管理 - 会议管理 - 车辆管理 - 办公用品管理 - 固定资产管理 ### 6. 人力资源 - 招聘管理 - 培训管理 - 考勤管理 - 绩效考核 ### 7. 文档管理 - 公文管理(发文/收文/签报) - 企业文档库 - 个人文档 - 文档权限控制 ### 8. 知识管理 - 知识库 - 制度规范 - 经验分享 - 常见问题(FAQ) ### 9. 日程会议 - 个人日程 - 工作日志(日报/周报/月报) - 工作计划 ### 10. 报表统计 - 流程统计 - 考勤统计 - 自定义报表 ## 快速开始 ### 环境要求 - Python 3.8+ - Node.js 16+ - Redis (可选,用于 Celery 和缓存) ### 后端部署 ```bash cd backend # 创建虚拟环境(推荐) python -m venv venv # Windows venv\Scripts\activate # Linux/Mac source venv/bin/activate # 安装依赖 pip install -r requirements.txt # 数据库迁移 python manage.py makemigrations python manage.py migrate # 创建超级管理员 python manage.py createsuperuser # 启动开发服务器 python manage.py runserver ``` 访问:http://localhost:8000/admin ### 前端部署 ```bash cd frontend # 安装依赖 npm install # 启动开发服务器 npm run dev ``` 访问:http://localhost:5173 ## API 文档 启动后端后,访问 Swagger UI: http://localhost:8000/api/docs/ ## 项目结构 ``` pyoa/ ├── backend/ # Django 后端 │ ├── apps/ # 应用模块 │ │ ├── system/ # 系统管理 │ │ ├── organization/ # 组织架构 │ │ ├── workflow/ # 流程引擎 │ │ ├── approval/ # 审批中心 │ │ ├── admin_mgt/ # 行政管理 │ │ ├── hr_mgt/ # 人力资源 │ │ ├── document/ # 文档管理 │ │ ├── knowledge/ # 知识管理 │ │ ├── schedule/ # 日程会议 │ │ ├── log/ # 日志审计 │ │ └── report/ # 报表统计 │ ├── config/ # 项目配置 │ ├── utils/ # 工具类 │ ├── manage.py # Django 管理脚本 │ └── requirements.txt # Python 依赖 ├── frontend/ # Vue 前端 │ ├── src/ │ │ ├── api/ # API 接口 │ │ ├── views/ # 页面 │ │ ├── components/ # 组件 │ │ ├── stores/ # 状态管理 │ │ ├── router/ # 路由 │ │ └── utils/ # 工具 │ └── package.json # Node 依赖 └── README.md # 项目说明 ``` ## 数据库迁移 本项目使用 Django Migrations 管理数据库结构变更: ```bash # 生成迁移文件 python manage.py makemigrations # 执行迁移 python manage.py migrate # 查看迁移状态 python manage.py showmigrations ``` ## 从 SQLite 迁移到 PostgreSQL 1. 修改 `config/settings.py` 中的数据库配置 2. 安装 PostgreSQL 驱动:`pip install psycopg2-binary` 3. 创建新的 PostgreSQL 数据库 4. 导出 SQLite 数据(可选) 5. 执行迁移:`python manage.py migrate` ## 安全建议 1. 修改 `SECRET_KEY` 2. 设置 `DEBUG = False` 3. 配置正确的 `ALLOWED_HOSTS` 4. 使用强密码策略 5. 定期备份数据库 6. 启用 HTTPS ## 开发计划 - [ ] 完善流程引擎核心算法 - [ ] 实现移动端适配 - [ ] 集成企业微信/钉钉 - [ ] 添加更多审批模板 - [ ] 实现全文检索 - [ ] 数据导入导出功能 - [ ] 单元测试覆盖 ## 许可证 MIT License ## 联系方式 如有问题,请提交 Issue 或联系开发团队。