mirror of
https://github.com/huge-dream/django-vue3-admin.git
synced 2026-09-23 13:13:07 +00:00
- Replace dvadmin3 framework intro with PIS project content - Add project architecture section (tech stack, directory structure, modules) - Add startup scripts documentation (start-backend.sh, start-frontend.sh, etc.) - Update all 4 README files (EN/ZH for root and web/)
5.2 KiB
5.2 KiB
PIS - 采购与供应商管理系统
项目简介
基于 Django-Vue3 的采购与供应商管理系统,采用 RBAC 权限控制。
项目架构 🏗️
技术栈
| 层级 | 技术 |
|---|---|
| 后端 | Django 4.2.14 + Django REST Framework 3.15.2 |
| 前端 | Vue 3 + TypeScript + Vite 5.4 + Element Plus 2.8 + FastCRUD |
| 数据库 | MySQL 8.0 |
| 缓存/队列 | Redis + Celery |
| 实时通信 | Django Channels (WebSocket) |
| 认证 | JWT via SimpleJWT |
目录结构
pis/
├── backend/
│ ├── application/ # Django 项目配置
│ │ ├── settings.py # 主配置(从 conf/env.py 导入配置)
│ │ ├── urls.py # 根路由
│ │ ├── asgi.py # ASGI 配置(支持 WebSocket)
│ │ ├── wsgi.py # WSGI 配置
│ │ └── celery.py # Celery 配置
│ ├── apps/
│ │ ├── pisadmin/ # 采购管理应用
│ │ │ ├── basicinfo/ # 基础信息:公司、币种、供应商、单位、编码规则
│ │ │ └── miscprocurement/ # 杂项采购:询价、价格模板、成本节
│ │ └── pissupplier/ # 供应商报价模块
│ ├── dvadmin/ # 核心 RBAC 系统
│ │ └── system/ # 用户、角色、菜单、部门、日志
│ └── conf/
│ └── env.py # 环境配置(数据库、Redis 凭证)
├── web/ # Vue 3 前端
│ └── src/
│ ├── views/pisadmin/ # 采购管理页面
│ ├── views/pissupplier/# 供应商页面
│ └── views/system/ # 系统管理页面
└── scripts/ # 服务管理脚本
├── start-backend.sh # 启动后端服务
├── start-frontend.sh # 启动前端服务
├── start-celery.sh # 启动 Celery worker/beat
├── stop-all.sh # 停止所有服务
└── check-status.sh # 查看服务状态
模块说明
| 模块 | 说明 |
|---|---|
pisadmin/basicinfo |
基础信息管理:公司、币种、供应商、单位、系统编号规则 |
pisadmin/miscprocurement |
杂项采购:询价(RFQ)、价格模板、成本节构建器 |
pissupplier |
供应商报价模块 |
dvadmin/system |
核心 RBAC 系统:用户、角色、菜单、部门、操作日志 |
配置说明
后端配置分离:
application/settings.py- Django 默认配置conf/env.py- 环境特定配置(数据库、Redis、密钥)
准备工作
Python >= 3.11.0 (最低3.9+版本)
nodejs >= 16.0
Mysql >= 8.0 (可选,默认数据库sqlite3,支持5.7+,推荐8.0版本)
Redis (可选,最新版)
快速启动
后端
方式一:脚本启动(推荐)
# 进入项目根目录
cd D:\AVC-PROJECT\pis
# 启动后端服务(开发模式)
./scripts/start-backend.sh
# 启动前端服务
./scripts/start-frontend.sh
# 启动 Celery 异步任务(可选)
./scripts/start-celery.sh
脚本功能说明:
| 脚本 | 说明 |
|---|---|
start-backend.sh |
启动后端服务(自动创建 PID 和日志文件) |
start-frontend.sh |
启动前端开发服务器 |
start-celery.sh |
启动 Celery Worker 和 Beat |
stop-all.sh |
停止所有服务 |
stop-celery.sh |
仅停止 Celery 服务 |
check-status.sh |
查看所有服务状态 |
view-logs.sh |
查看服务日志 |
查看日志:
./scripts/view-logs.sh all # 查看所有日志
./scripts/view-logs.sh backend # 仅看后端日志
./scripts/view-logs.sh celery # 仅看 Celery 日志
停止服务:
./scripts/stop-all.sh # 停止所有服务
./scripts/stop-celery.sh # 仅停止 Celery
方式二:手动启动
# 1. 进入后端目录
cd backend
# 2. 复制并配置环境文件
cp ./conf/env.example.py ./conf/env.py
# 编辑 env.py 配置数据库信息
# 3. 安装依赖
pip3 install -r requirements.txt
# 4. 执行数据库迁移
python3 manage.py makemigrations
python3 manage.py migrate
# 5. 初始化数据
python3 manage.py init
python3 manage.py init_area
# 6. 启动后端
uvicorn application.asgi:application --port 8000 --host 0.0.0.0 --workers 8
前端
# 进入前端目录
cd web
# 安装依赖
npm install yarn
yarn install --registry=https://registry.npmmirror.com
# 启动开发服务器
yarn run dev
# 浏览器访问 http://localhost:8080
# .env.development 文件中可配置启动端口等参数
# 构建生产环境
yarn run build
访问项目
- 前端地址:http://localhost:8080
- 后端接口:http://localhost:8080/api
- 默认账号:
superadmin/admin123456
Docker 部署
docker-compose up -d
# 初始化后端数据(第一次执行即可)
docker exec -ti dvadmin3-django bash
python manage.py makemigrations
python manage.py migrate
python manage.py init_area
python manage.py init
exit
# 停止服务
docker-compose down
# 重启服务
docker-compose restart
# 重新构建并启动
docker-compose up -d --build