☰
ModernWMS 开源 WMS 完整指南:从部署到出入库作业一次跑通
2026/10/23 2:07:24 网站建设 项目流程

ModernWMS 开源 WMS 完整指南:从部署到出入库作业一次跑通

【免费下载链接】ModernWMSThe open source simple and complete warehouse management system is derived from our many years of experience in implementing erp projects. We stripped the original commercial system wms function and opened it up for free, hoping to help the majority of small and medium-sized enterprises. At present, the system supports cross-platform。项目地址: https://gitcode.com/GitHub_Trending/mo/ModernWMS

中小仓库常见的痛点,不是缺少表格,而是每一件货的进出与状态无法追溯。ModernWMS 是一个免费开源的仓库管理系统(WMS),覆盖收货、上架、仓内作业、发货的完整链路,基于 .NET 7 后端与 Vue 3 前端构建。下文按"部署验证 → 模块拆解 → 使用建议"的顺序展开,所有路径与命令均以仓库现状为准。

项目定位:能力范围与边界

ModernWMS 从一套商用 ERP 系统中剥离出 WMS 模块后开放源码,采用 Apache 2.0 协议。它的目标用户是 IT 预算有限、但有真实仓储管理需求的中小企业。

技术栈与运行环境:

  • 后端:.NET 7(net7.0),分层为ModernWMS.Core(框架内核)与ModernWMS.WMS(业务实现),业务服务集中在 backend/ModernWMS.WMS/Services
  • 前端:Vue 3 + Vuetify 3 + VXE Table + Vite 4,构建依赖 Node.js 16.x 与 yarn
  • 数据库:默认使用随仓库分发的 SQLite 文件wms.db,可切换 MySQL 8、SQL Server、PostgreSQL,切换方式见 backend/ModernWMS/appsettings.json 中的Database.db字段
  • 支持跨平台部署,仓库附带 docker/Dockerfile 与 nginx 配置,界面支持简中、英文、繁中切换

边界说明:它定位为"简易但完整"的单系统,适合单一或少量仓库的日常出入库;官方文档未承诺多仓协同、大规模并发等企业级能力,选型时不应把它的功能边界等同于商用 WMS。

部署上手:从零到首次登录

前置检查:确认本机已安装 .NET SDK 7.0 与 Node.js 16.x,并全局安装 yarn(npm install -g yarn)。三个工具缺任何一项都会导致对应服务无法启动。

获取代码:

git clone https://gitcode.com/GitHub_Trending/mo/ModernWMS

启动前后端(两个独立终端):

# 终端一:后端 dotnet run --project backend/ModernWMS # 终端二:前端 cd frontend yarn install yarn dev

后端默认监听 5056 端口,启动后可直接访问其 Swagger 接口页;前端开发服务器默认端口为 5173,见 frontend/.env.development。若端口被占用,分别修改 backend/ModernWMS/Properties/launchSettings.json 中的applicationUrl与.env.development中的VITE_CLI_PORT即可。

访问验证:浏览器打开前端地址,出现登录页即部署成功。初始账号admin,密码1,该信息同时记录在 README.zh_CN.md 的"使用方法"一节。

模块能力拆解

收货管理:入库全链路跟踪

场景:供应商送货前需要预告,到货后要经历验收、分拣、上架多道环节。能力上,收货管理用标签页把流程拆成六个环节——到货通知、待收货、待卸货、待分拣、待上架、收货明细,每个环节一张独立列表,单据随状态在标签页之间流转。操作要点:先在"到货通知"录入预计到货信息,后续环节按实际作业逐张推进,最终通过"收货明细"核对历史数据。

发货管理:出库状态逐步推进

场景:订单从创建到签收跨越多个岗位。发货管理将一张发货单的生命周期划分为:发货单、待发货、新发货、待拣货、已拣货、打包、称重、出库、已签收等标签页,对应拣货员、复核员、打包员、承运方等角色分工。单据上记录客户名称、商品数量、重量、体积、破损数量等字段(字段定义可查 backend/ModernWMS.WMS/Entities/Models/Dispatchlist/DispatchlistEntity.cs)。操作要点:按"拣货 → 复核 → 打包 → 称重 → 出库"的顺序推进,每步完成后单据进入下一个标签页,状态不可跳级。

库存管理与仓内作业

库存管理同时提供"商品库存"与"货位库存"两个视图,便于核对总量与库位分布。仓内作业模块包含五类日常操作:

  • 库存调整:处理盈亏与差异
  • 库存冻结:锁定特定批次或货位的可用量
  • 库存移动:库位间调拨
  • 仓内加工:主单加明细的两级结构,记录加工投入产出
  • 库存盘点:账面数与实盘数核对

统计分析与可视化

统计分析模块提供收货统计、发货统计、库龄分析、安全库存四个报表页;另有可视化仓库(vwms)与大屏两个入口,用于按库位维度展示实时状态,适合放在仓库现场显示器上。

界面与信息架构

主界面左侧导航按业务域分组:首页、基础设置、收货管理、库存管理、仓内作业、发货管理、统计分析,以及可视化仓库和大屏。基础设置下再细分商品管理、商品类别、供应商、客户、货主、运费、仓库、打印方案、用户、角色与权限等子菜单,即"先维护基础数据,再开展单据作业"的组织逻辑。菜单文案集中维护在 frontend/src/languages/langsJson/cn.json,路由定义见 frontend/src/router/index.ts,想理解某个页面背后的接口,可按菜单名反查这两个文件。

实用细节

  1. Excel 批量导入:供应商、客户、货主、商品、仓库、用户等基础数据均提供导入表格入口(如 frontend/src/view/base/supplier/import-supplier-table.vue),初始化仓库时用它替代逐条录入,效率差距明显。
  2. 权限配置到操作级:角色菜单不仅控制页面可见性,按钮级功能也带有功能编码(如导出、确认拣货),新成员入职时按岗位分配角色即可,不必开放全部功能。
  3. 多语言随系统切换:界面支持简中、英文、繁中,多仓或跨地区团队可避免二次开发翻译。

落地注意与选型建议

  • 先做数据,再做单据:正式启用前先完成仓库/库位、商品与类别、供应商、客户四类基础数据的导入,否则收发货单据无法完整挂接。
  • 入手路径:建议按"收货管理 → 库存管理 → 发货管理"的顺序熟悉系统,这与货物流转方向一致,学习成本最低。
  • 数据库配置:开发验证可直接用默认 SQLite;若切换 MySQL 等数据库,需修改appsettings.json的连接字符串并确认数据库服务与账号可用,这是部署中最常见的故障点。
  • 生产环境:初始账号admin / 1强度极低,上线前务必在用户管理中修改密码并按岗分权。

ModernWMS 的价值在于用较低成本补齐"有账可查"这一层:货从哪来、现在在哪、去哪一步,都有系统记录。它不会替代仓库的现场管理流程,但能让这套流程在系统里跑起来、查得到。

【免费下载链接】ModernWMSThe open source simple and complete warehouse management system is derived from our many years of experience in implementing erp projects. We stripped the original commercial system wms function and opened it up for free, hoping to help the majority of small and medium-sized enterprises. At present, the system supports cross-platform。项目地址: https://gitcode.com/GitHub_Trending/mo/ModernWMS

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询