# wms-manage **Repository Path**: violetlength/wms-manage ## Basic Information - **Project Name**: wms-manage - **Description**: 库存管理项目 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-14 - **Last Updated**: 2026-04-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # WMS 仓库管理系统 ![Rust](https://img.shields.io/badge/Rust-1.70+-orange.svg) ![Vue](https://img.shields.io/badge/Vue-3-green.svg) ![PostgreSQL](https://img.shields.io/badge/PostgreSQL-14-blue.svg) ![License](https://img.shields.io/badge/License-MIT-yellow.svg) 前后端分离的仓库管理系统,后端使用 Rust + Axum,前端使用 Vue3 + Element Plus。适用于个人店铺和中小连锁企业的库存管理。 ## 功能特点 - **完整的出入库流程**:采购入库、销售出库、退货入库、调拨等 - **智能库存盘点**:支持部分盘点和全盘,自动计算盈亏 - **丰富的统计报表**:库存总览、进销存汇总、库龄分析、效期预警、安全库存预警等 - **客户与供应商管理**:集成客户档案、收款码管理、供应商往来 - **完善的权限体系**:基于角色的菜单权限控制 - **操作日志审计**:完整记录用户操作行为 ## 项目结构 ``` wmsManage/ ├── wms-backend/ # Rust 后端服务 │ ├── src/ │ │ ├── api_doc.rs # API 文档 │ │ ├── config/ # 配置模块 │ │ ├── db/ # 数据库连接 │ │ ├── middleware/ # 中间件(认证、日志) │ │ ├── models/ # 数据模型(SeaORM) │ │ ├── response.rs # 统一响应格式 │ │ ├── routes/ # 路由处理 │ │ ├── services/ # 业务逻辑 │ │ └── utils/ # 工具函数(JWT) │ ├── migrations/ # 数据库迁移文件 │ └── Cargo.toml │ └── wms-frontend/ # Vue3 前端 ├── src/ │ ├── api/ # API 接口定义 │ ├── components/ # 公共组件 │ ├── composables/ # 组合式函数 │ ├── router/ # 路由配置 │ ├── stores/ # 状态管理(Pinia) │ ├── utils/ # 工具函数 │ └── views/ # 页面视图 └── package.json ``` ## 功能模块 ### 资源管理 | 模块 | 说明 | |------|------| | 商品管理 | 商品档案、SKU、价格管理 | | 分类管理 | 多级商品分类 | | 单位管理 | 计量单位维护 | | 供应商管理 | 供应商档案、银行信息 | | 客户管理 | 客户档案、收款码、身份证 | ### 库存管理 | 模块 | 说明 | |------|------| | 库内管理 | 库存查询、库位管理 | | 库存盘点 | 部分/全盘盘点,盈亏计算 | | 库存调整 | 盘盈盘亏调整 | | 库存调拨 | 仓库间调拨 | ### 入库管理 | 模块 | 说明 | |------|------| | 入库单 | 入库记录查询 | | 采购入库 | 采购订单入库 | | 退货入库 | 客户退货处理 | | 期初入库 | 初始化库存录入 | ### 出库管理 | 模块 | 说明 | |------|------| | 出库单 | 出库记录查询 | | 销售出库 | 销售订单出库 | | 采购退货 | 供应商退货处理 | ### 报表统计 | 模块 | 说明 | |------|------| | 库存总览 | 各仓库库存分布 | | 进销存汇总 | 日/周/月统计 | | 出入库类型统计 | 按类型汇总分析 | | 库龄分析 | 滞销商品识别 | | 呆滞预警 | 长期未动商品提醒 | | 安全库存预警 | 库存不足提醒 | | 效期预警 | 商品过期提醒 | | 操作异常预警 | 异常库存变动预警 | ### 系统设置 | 模块 | 说明 | |------|------| | 用户管理 | 用户账号管理 | | 角色管理 | 角色权限配置 | | 菜单管理 | 菜单权限分配 | | 操作日志 | 操作记录查询 | ## 快速开始 ### 前置条件 - Rust 1.70+ - Node.js 18+ - PostgreSQL 14+ ### 1. 配置数据库 创建数据库: ```sql CREATE DATABASE wms; ``` 配置环境变量或修改 `wms-backend/src/config/` 下的配置文件: ```env DATABASE_URL=postgres://postgres:your_password@localhost:5432/wms JWT_SECRET=your_jwt_secret_key ``` ### 2. 后端启动 ```bash cd wms-backend cargo run ``` 服务默认运行在 http://localhost:3000 ### 3. 前端启动 ```bash cd wms-frontend npm install npm run dev ``` 前端默认运行在 http://localhost:5173 ### 4. 数据库迁移 ```bash cd wms-backend cargo run --bin run_migration ``` ### 5. 初始化菜单数据 ```bash cargo run --bin add_report_menus ``` ### 默认账号 - 用户名:admin - 密码:admin123 ## 技术栈 ### 后端 | 技术 | 说明 | |------|------| | Axum | Web 框架 | | SeaORM | ORM 框架 | | SQLx | 异步数据库驱动 | | JWT | 认证授权 | | Serde | 序列化/反序列化 | | utoipa | API 文档生成 | ### 前端 | 技术 | 说明 | |------|------| | Vue 3 | 前端框架 | | Element Plus | UI 组件库 | | Pinia | 状态管理 | | Vue Router | 路由管理 | | Axios | HTTP 客户端 | | ECharts | 图表统计 | | Vite | 构建工具 | ## 数据库文档 详细的数据表结构说明请参考: - [数据库设计文档](./docs/database-schema.md) - [数据库创建脚本](./docs/database-schema.sql) ## API 文档 启动后端服务后,访问: - Swagger UI: http://localhost:3000/swagger-ui - OpenAPI JSON: http://localhost:3000/api-docs/openapi.json ## 项目截图 系统采用简洁的左侧菜单布局,支持响应式设计。主要页面包括: - 首页仪表盘 - 商品/供应商/客户列表 - 库存盘点界面 - 报表统计图表 ## 适用场景 - ✅ 电商仓库管理 - ✅ 实体零售店 - ✅ 批发档口 - ✅ 简单连锁门店(3-5家) ## 部署建议 ### 开发环境 直接按照上述快速开始步骤即可。 ### 生产环境 1. 使用 Nginx 反向代理前端静态资源 2. 配置 HTTPS 3. 使用 systemd 管理后端服务 4. 定期备份数据库 5. 建议使用 Docker 容器化部署 ## 捐赠支持, 或者请我喝杯咖啡 ☕️ 如果对您有帮助,请点击右上角 ⭐Star 关注或扫码捐赠,感谢支持开源!
捐赠二维码 捐赠二维码
## 许可证 MIT License ## 致谢 - [Axum](https://github.com/tokio-rs/axum) - 现代化的 Rust Web 框架 - [SeaORM](https://github.com/SeaQL/sea-orm) - 异步 Rust ORM 框架 - [Vue](https://github.com/vuejs/core) - 渐进式 JavaScript 框架 - [Element Plus](https://github.com/element-plus/element-plus) - Vue 3 UI 组件库