139 lines
2.5 KiB
Markdown
139 lines
2.5 KiB
Markdown
# Flask 進銷存系統
|
||
|
||
這是一個使用 Flask 建立的進銷存管理系統,提供基本的商品管理、庫存追蹤和報表功能。
|
||
|
||
## 功能特點
|
||
|
||
### 商品管理
|
||
- 自動生成商品代碼(格式:P + 年月日 + 4位序號)
|
||
- 商品基本信息管理(名稱、價格、庫存)
|
||
- 最低庫存預警功能
|
||
|
||
### 庫存管理
|
||
- 入庫/出庫操作
|
||
- 庫存變動歷史記錄
|
||
- 即時庫存監控
|
||
|
||
### 報表功能
|
||
- 庫存狀態報表
|
||
- 交易歷史報表
|
||
- Excel格式匯出
|
||
|
||
## 技術架構
|
||
|
||
- 後端框架:Flask
|
||
- 數據庫:SQLite
|
||
- ORM:SQLAlchemy
|
||
- 前端框架:Bootstrap 5
|
||
- 表單處理:WTForms
|
||
|
||
## 安裝說明
|
||
|
||
1. 創建虛擬環境:
|
||
```bash
|
||
python -m venv .venv
|
||
```
|
||
|
||
2. 啟動虛擬環境:
|
||
```bash
|
||
# Windows
|
||
.venv\Scripts\activate
|
||
|
||
# Linux/Mac
|
||
source .venv/bin/activate
|
||
```
|
||
|
||
3. 安裝依賴:
|
||
```bash
|
||
pip install -r requirements.txt
|
||
```
|
||
|
||
4. 初始化數據庫:
|
||
```bash
|
||
flask db init
|
||
flask db migrate -m "Initial migration"
|
||
flask db upgrade
|
||
```
|
||
|
||
5. 運行應用:
|
||
```bash
|
||
flask run
|
||
```
|
||
|
||
## 系統要求
|
||
|
||
- Python 3.8+
|
||
- pip 包管理器
|
||
|
||
## 目錄結構
|
||
|
||
```
|
||
Flask_IMS/
|
||
│
|
||
├── app/
|
||
│ ├── models/ # 數據模型
|
||
│ ├── services/ # 業務邏輯
|
||
│ ├── web/ # Web相關(視圖、表單)
|
||
│ └── templates/ # HTML模板
|
||
│
|
||
├── migrations/ # 數據庫遷移文件
|
||
├── instance/ # 數據庫文件
|
||
├── config.py # 配置文件
|
||
├── run.py # 啟動文件
|
||
└── requirements.txt # 依賴清單
|
||
```
|
||
|
||
## 配置說明
|
||
|
||
主要配置項(config.py):
|
||
```python
|
||
class Config:
|
||
SECRET_KEY = 'your-secret-key'
|
||
SQLALCHEMY_DATABASE_URI = 'sqlite:///inventory.db'
|
||
SQLALCHEMY_TRACK_MODIFICATIONS = False
|
||
```
|
||
|
||
## 開發說明
|
||
|
||
### 添加新功能
|
||
1. 在 models/ 添加新的數據模型
|
||
2. 在 services/ 實現相關業務邏輯
|
||
3. 在 web/views/ 添加路由處理
|
||
4. 在 templates/ 創建相應的模板
|
||
|
||
### 數據庫變更
|
||
```bash
|
||
flask db migrate -m "變更說明"
|
||
flask db upgrade
|
||
```
|
||
|
||
## 注意事項
|
||
|
||
- 這是一個開發版本,不建議直接用於生產環境
|
||
- 使用前請務必修改 SECRET_KEY
|
||
- 建議定期備份數據庫文件
|
||
|
||
## 環境變量
|
||
|
||
創建 .env 文件並設置:
|
||
```
|
||
FLASK_APP=run.py
|
||
FLASK_ENV=development
|
||
FLASK_DEBUG=0
|
||
```
|
||
|
||
## 依賴套件
|
||
|
||
主要依賴包括:
|
||
- Flask==3.0.0
|
||
- Flask-SQLAlchemy==3.1.1
|
||
- Flask-Migrate==4.0.5
|
||
- Flask-WTF==1.2.1
|
||
- pandas==2.1.3
|
||
- openpyxl==3.1.2
|
||
- python-dotenv==1.0.0
|
||
|
||
## 授權說明
|
||
|
||
此專案採用 MIT 授權。
|