圖書銷售管理系統
項目概述
圖書銷售管理系統是一個基于Vue.js + Node.js + MySQL的全棧Web應用程序,專為數據庫課程設計而開發。該系統實現了完整的圖書銷售業務流程管理,包括圖書信息管理、庫存管理、采購管理、銷售管理和統計分析等功能模塊。
項目背景
本項目是《數據庫原理與技術》課程設計的成果,旨在通過實際項目開發來鞏固數據庫理論知識,包括存儲過程、觸發器、視圖等高級數據庫技術的應用。系統采用前后端分離架構,前端使用Vue.js框架配合Element UI組件庫構建用戶界面,后端使用Node.js + Express框架提供RESTful API服務,數據存儲采用MySQL關系型數據庫。
項目截圖
核心功能特性
1. 圖書基礎信息管理
- 圖書信息錄入:支持添加新圖書,包括書號(ISBN)、書名、作者、出版社、價格等基本信息
- 圖書信息維護:提供圖書信息的修改、刪除功能,確保數據的一致性和完整性
- 圖書信息查詢:支持按書號、書名、作者、出版社等關鍵字進行模糊查詢和精確查詢
2. 庫存管理
- 庫存信息維護:記錄每本圖書的庫存數量,支持庫存的增減操作
- 庫存狀態監控:實時顯示圖書庫存狀態,包括有庫存和無庫存的圖書分類
- 庫存預警:當庫存不足時提供預警提示
3. 采購管理
- 采購記錄創建:記錄圖書采購信息,包括采購數量、采購金額、采購日期
- 采購歷史查詢:支持按日期查詢采購記錄,生成采購報表
- 采購統計分析:提供采購數據的統計和分析功能
4. 銷售管理
- 銷售交易處理:通過書號查詢圖書信息,輸入購買數量,自動計算銷售金額
- 銷售記錄生成:每次銷售交易自動生成銷售記錄,包含銷售編號、書號、銷售數量、銷售金額、銷售日期
- 銷售歷史查詢:支持按日期查詢銷售記錄
5. 數據統計分析
- 月度銷售排名:生成每月圖書銷售排名報表,顯示日期、書名、月銷售總量
- 銷售趨勢分析:提供圖書銷售情況的統計和分析功能
- 數據可視化:通過圖表形式展示銷售數據和趨勢
技術架構
前端技術棧
- Vue.js 2.6.11:漸進式JavaScript框架,用于構建用戶界面
- Vue Router 3.1.6:官方路由管理器,實現單頁面應用的路由功能
- Element UI 2.4.5:基于Vue的桌面端組件庫,提供豐富的UI組件
- Axios 1.7.7:基于Promise的HTTP客戶端,用于與后端API通信
后端技術棧
- Node.js:JavaScript運行時環境
- Express 5.0.1:Web應用框架,提供路由和中間件支持
- MySQL 2.18.1:關系型數據庫,用于數據存儲
- CORS 2.8.5:跨域資源共享中間件
數據庫設計
系統采用MySQL數據庫,包含以下核心表結構:
- bookbaseinfo:圖書基本信息表,存儲書號、書名、作者、出版社、價格
- bookstorageinfo:圖書庫存信息表,存儲書號、庫存數量
- buyinfo:采購信息表,存儲采購編號、書號、采購數量、采購金額、采購日期
- saleinfo:銷售信息表,存儲銷售編號、書號、銷售數量、銷售金額、銷售日期
數據庫還包含多個視圖和存儲過程,用于簡化查詢操作和實現復雜的業務邏輯。
環境要求
系統要求
- 操作系統:Windows 10/11、macOS、Linux
- 內存:建議4GB以上
- 存儲空間:至少1GB可用空間
軟件依賴
- Node.js:版本16.20.2或更高版本
- npm:版本8.19.4或更高版本
- MySQL:版本8.0或更高版本
- 現代瀏覽器:Chrome、Firefox、Safari、Edge等
驗證環境
在開始安裝之前,請確保您的開發環境滿足以下要求:
# 檢查Node.js版本
node -v
# 應顯示:v16.20.2 或更高版本# 檢查npm版本
npm -v
# 應顯示:8.19.4 或更高版本# 檢查MySQL服務狀態
mysql --version
# 應顯示MySQL版本信息
安裝配置指南
第一步:項目
cd librarymanagement-master
第二步:安裝項目依賴
# 在項目根目錄下安裝前端依賴
npm install
安裝過程可能需要幾分鐘時間,請耐心等待。如果遇到網絡問題,可以嘗試使用國內鏡像源:
npm install --registry=https://registry.npmmirror.com
第三步:數據庫配置
3.1 創建數據庫
-- 登錄MySQL
mysql -u root -p-- 創建數據庫
CREATE DATABASE librarymanagement CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;-- 使用數據庫
USE librarymanagement;
3.2 導入數據庫結構
# 導入數據庫結構和初始數據
mysql -u root -p librarymanagement < other/librarymanagement.sql
3.3 配置數據庫連接
編輯 server/config.js
文件,修改數據庫連接配置:
const client = mysql.createConnection({host: "localhost", // 數據庫主機地址user: "root", // 數據庫用戶名password: "123456", // 數據庫密碼(請修改為您的實際密碼)database: "librarymanagement" // 數據庫名稱
})
重要提示:請確保將密碼修改為您MySQL的實際密碼,并確保數據庫服務正在運行。
第四步:啟動應用
4.1 啟動后端服務
# 進入server目錄
cd server# 啟動后端服務
node index.js
如果啟動成功,您將看到類似以下的輸出:
Server is running on port 3000
4.2 啟動前端服務
打開新的終端窗口,在項目根目錄下執行:
# 啟動前端開發服務器
npm run serve
啟動成功后,您將看到類似以下的輸出:
App running at:
- Local: http://localhost:8080/
- Network: http://192.168.x.x:8080/
4.3 訪問應用
在瀏覽器中打開 http://localhost:8080/
即可訪問圖書銷售管理系統。