新增 readme
This commit is contained in:
parent
d47b0beefc
commit
7b9edc2fed
211
README.md
Normal file
211
README.md
Normal file
@ -0,0 +1,211 @@
|
||||
# 生产管理系统
|
||||
|
||||
一个基于 Flask + 原生 JavaScript 的轻量级生产管理系统,用于管理生产流程、物料采购、发货跟踪和质量控制。
|
||||
|
||||
## 功能特性
|
||||
|
||||
### 📊 仪表盘
|
||||
- 实时显示生产良品率、直通良品率
|
||||
- 发货数量统计
|
||||
- 不良品数量监控
|
||||
|
||||
### 📦 生产管理
|
||||
- **工单管理** - 创建、跟踪生产工单
|
||||
- **BOM 物料清单** - 定义产品的物料组成
|
||||
- **期初库存** - 管理物料初始库存
|
||||
- **采购需求** - 自动计算采购需求
|
||||
|
||||
### 🚚 发货管理
|
||||
- **发货记录** - 记录发货信息
|
||||
- **发货查询** - 按 SN/MAC 查询发货记录
|
||||
- **发货汇总** - 发货数据统计分析
|
||||
|
||||
### 📋 订单与对账
|
||||
- **客户订单** - 管理客户订单信息
|
||||
- **对账管理** - 订单对账功能
|
||||
- **物料采购** - 采购单管理
|
||||
|
||||
### 👥 系统管理
|
||||
- **用户管理** - 支持超级管理员、管理员、普通用户角色
|
||||
- **通知系统** - 操作通知推送
|
||||
- **操作日志** - 记录用户操作历史
|
||||
- **SOP 文件管理** - 上传和管理标准作业程序文件
|
||||
|
||||
## 技术栈
|
||||
|
||||
### 后端
|
||||
- **Flask** - Python Web 框架
|
||||
- **SQLite** - 轻量级数据库
|
||||
- **Redis** - 缓存和实时数据存储(可选)
|
||||
|
||||
### 前端
|
||||
- **原生 JavaScript** - 无框架依赖
|
||||
- **CSS3** - 现代化 UI 样式
|
||||
- **组件化架构** - 模块化的 JS 组件
|
||||
|
||||
## 项目结构
|
||||
|
||||
```
|
||||
生产管理系统/
|
||||
├── server/ # 后端服务
|
||||
│ ├── app.py # Flask 应用主文件
|
||||
│ ├── data.db # SQLite 数据库
|
||||
│ └── requirements.txt # Python 依赖
|
||||
├── frontend/ # 前端资源
|
||||
│ ├── index.html # 主页面
|
||||
│ ├── login.html # 登录页面
|
||||
│ ├── assets/ # 静态资源(CSS、图片)
|
||||
│ ├── js/
|
||||
│ │ ├── app.js # 应用入口
|
||||
│ │ ├── api.js # API 请求封装
|
||||
│ │ ├── router.js # 前端路由
|
||||
│ │ └── components/ # 页面组件
|
||||
│ └── sop_files/ # SOP 文件存储
|
||||
├── deploy/ # 部署配置
|
||||
│ ├── nginx/ # Nginx 配置
|
||||
│ └── systemd/ # Systemd 服务配置
|
||||
├── .env.example # 环境变量示例
|
||||
└── README.md
|
||||
```
|
||||
|
||||
## 快速开始
|
||||
|
||||
### 环境要求
|
||||
- Python 3.8+
|
||||
- Redis(可选,用于缓存和实时数据)
|
||||
|
||||
### 安装步骤
|
||||
|
||||
1. **克隆项目**
|
||||
```bash
|
||||
cd 生产管理系统
|
||||
```
|
||||
|
||||
2. **创建虚拟环境**
|
||||
```bash
|
||||
python3 -m venv venv
|
||||
source venv/bin/activate # Linux/macOS
|
||||
# 或 venv\Scripts\activate # Windows
|
||||
```
|
||||
|
||||
3. **安装依赖**
|
||||
```bash
|
||||
pip install -r server/requirements.txt
|
||||
```
|
||||
|
||||
4. **配置环境变量**
|
||||
```bash
|
||||
cp .env.example .env
|
||||
# 编辑 .env 文件,配置 Redis 和管理员密码
|
||||
```
|
||||
|
||||
5. **启动服务**
|
||||
```bash
|
||||
cd server
|
||||
python app.py
|
||||
```
|
||||
|
||||
6. **访问系统**
|
||||
|
||||
打开浏览器访问 `http://localhost:5000`
|
||||
|
||||
### 默认账户
|
||||
- **用户名**: `admin`
|
||||
- **密码**: `admin123`(或通过环境变量 `ADMIN_PASSWORD` 配置)
|
||||
|
||||
## 环境变量配置
|
||||
|
||||
| 变量名 | 说明 | 默认值 |
|
||||
|--------|------|--------|
|
||||
| `REDIS_HOST` | Redis 服务器地址 | `127.0.0.1` |
|
||||
| `REDIS_PORT` | Redis 端口 | `6379` |
|
||||
| `REDIS_DB` | Redis 数据库编号 | `0` |
|
||||
| `REDIS_PASSWORD` | Redis 密码 | - |
|
||||
| `ADMIN_PASSWORD` | 默认管理员密码 | `admin123` |
|
||||
| `SUPERADMIN_USERNAME` | 超级管理员用户名 | - |
|
||||
| `SUPERADMIN_PASSWORD` | 超级管理员密码 | - |
|
||||
| `APP_SECRET` | Flask Session 密钥 | `change-me` |
|
||||
| `HOST` | 服务监听地址 | `0.0.0.0` |
|
||||
| `PORT` | 服务监听端口 | `5000` |
|
||||
|
||||
## 生产部署
|
||||
|
||||
### 使用 Systemd
|
||||
|
||||
1. 复制服务配置文件:
|
||||
```bash
|
||||
sudo cp deploy/systemd/production-system.service /etc/systemd/system/
|
||||
```
|
||||
|
||||
2. 启动服务:
|
||||
```bash
|
||||
sudo systemctl enable production-system
|
||||
sudo systemctl start production-system
|
||||
```
|
||||
|
||||
### 使用 Nginx 反向代理
|
||||
|
||||
1. 复制 Nginx 配置:
|
||||
```bash
|
||||
sudo cp deploy/nginx/production-system.conf /etc/nginx/sites-available/
|
||||
sudo ln -s /etc/nginx/sites-available/production-system.conf /etc/nginx/sites-enabled/
|
||||
```
|
||||
|
||||
2. 重载 Nginx:
|
||||
```bash
|
||||
sudo nginx -t
|
||||
sudo systemctl reload nginx
|
||||
```
|
||||
|
||||
## API 接口
|
||||
|
||||
### 认证
|
||||
- `POST /api/auth/login` - 用户登录
|
||||
- `GET /api/auth/me` - 获取当前用户信息
|
||||
- `POST /api/auth/logout` - 用户登出
|
||||
- `GET /api/auth/captcha` - 获取验证码
|
||||
|
||||
### 仪表盘
|
||||
- `GET /api/dashboard` - 获取仪表盘数据
|
||||
|
||||
### 工单管理
|
||||
- `GET /api/work-orders` - 获取工单列表
|
||||
- `POST /api/work-orders` - 创建工单
|
||||
|
||||
### 发货管理
|
||||
- `GET /api/shipments` - 获取发货记录
|
||||
- `POST /api/shipments` - 创建发货记录
|
||||
|
||||
更多 API 详见 `server/app.py`。
|
||||
|
||||
## 开发说明
|
||||
|
||||
### 前端组件开发
|
||||
|
||||
前端采用组件化架构,每个页面对应一个 JS 组件文件:
|
||||
|
||||
```javascript
|
||||
// frontend/js/components/example.js
|
||||
export function render() {
|
||||
return `<div class="page">...</div>`;
|
||||
}
|
||||
|
||||
export function init() {
|
||||
// 初始化逻辑
|
||||
}
|
||||
```
|
||||
|
||||
### 添加新路由
|
||||
|
||||
在 `frontend/js/router.js` 中添加路由配置:
|
||||
|
||||
```javascript
|
||||
const routes = {
|
||||
'/example': () => import('./components/example.js'),
|
||||
// ...
|
||||
};
|
||||
```
|
||||
|
||||
## 许可证
|
||||
|
||||
MIT License
|
||||
Loading…
Reference in New Issue
Block a user