InvenTree:把几万个零件管明白的开源库存管理系统
【免费下载链接】InvenTreeOpen Source Inventory Management System项目地址: https://gitcode.com/GitHub_Trending/in/InvenTree
仓库管理员小李又花了一整个上午对表格。对完发现三种料还是缺的,缺在哪个库位他说不清。后来他把库存搬进了InvenTree——一套开源的库存管理系统,用树形结构管零件、管库存、管采购和销售订单。一周之后,那张Excel退役了。
说白了,InvenTree干的事就是一句话:每个零件"有多少、在哪里、从哪来、到哪去",全记在一个地方,而且对外开了完整的API和插件接口。
它到底能帮你干啥?
不用背功能清单,按角色看就行:
- 仓库的人:入库、出库、转移、盘点四类操作全有现成界面,每笔操作自动留痕,月底对账不用翻聊天记录。
- 采购的人:创建采购订单并关联具体零件,收货确认后库存自动增加,不用再手动更新"预计到货"。
- 生产的人:BOM(物料清单)建好后,生产订单会自动计算需要哪些料,并检查现有库存够不够,直接领料。
- 老板和计划员:零件低于最小库存就进预警列表,库存、可用量、已分配量在详情页一眼看全,呆滞料也能筛出来。
零件详情页:顶部三个徽标就是"库里有2022、可用497、订单要3325",库存健康度不用查表
从装好到用熟,跟一遍
最快的路是Docker。Docker就是把整套运行环境打包成一个容器,不用自己折腾依赖:
# 克隆代码并进入容器配置目录 git clone https://gitcode.com/GitHub_Trending/in/InvenTree cd InvenTree/contrib/container # 一键启动:数据库和后端服务都在容器里跑起来 docker-compose up -d启动后浏览器打开对应地址,先注册管理员账号。你看到的初始界面是空的——这是设计使然:它不预置你的业务数据,结构完全由你定义。
第一步是建分类。零件分类是棵目录树,比如"电子元件/被动元件/电阻器",建到三四层就够。别追求完美,先建三条线,之后随时能调。
然后建第一个零件,做一次入库。入库时填好数量、库位,如果这个零件要追溯,就勾上批次或序列号。到这里,核心闭环已经跑通:零件有档案、库存有位置、操作有记录。
日常高频操作就是转移和盘点。转移库存时,界面是一张表:零件、当前位置、批次、状态、要移多少,选个目标库位提交。状态列会标出"OK"或"需要人工处理",比如待检验的料不会让你直接挪走。
转移库存界面:每行显示批次和状态校验,目标库位选好提交即可
掀开盖子里面
后端是Python/Django,前端是React,数据库测试用SQLite,生产建议PostgreSQL或MySQL。它对外提供一套完整的REST API——这个对你的实际意义是:你现有的ERP、MES或者财务软件,都可以调接口把数据同步过来,不用人在两边重复录入。API浏览器直接在网页上就能看到每个接口的文档和返回示例,调试很方便。
API浏览界面:选一个端点,文档、参数、真实返回数据都在页面上
扩展方面它走插件路线:内置插件已经覆盖报表导出、条码解析、货币汇率、标签打印这些常见需求;你自己写插件时,框架提供了条码、通知、报表、机器对接等现成的扩展点,照着示例改就行。
几个真实场景
一个管3000种电子料号的车间。以前来料抽检靠纸质记录,查不到半年前某批电阻谁收的、放在哪。用InvenTree后,每批料入库都带批次号,序列号零件直接扫出来;某块板子出问题,顺着序列号往回一查,来料批次、库位、经手人全都有。结果就是:质量追溯从"翻记录一周"变成"点两次鼠标"。
一个小规模PCB工作室。料少但杂,经常等料等一周才发现缺货。现在每个常用料都设了最小库存,低于阈值自动出现在预警列表,采购员每天清一遍预警就行。结果:再没出现过"开工才发现缺料"。
一个实验室耗材间。几百种试剂和配件,以前全凭老师傅记忆。现在库位按楼层房间建树,每个序列号耗材在详情页能看到它在哪个房间、装在哪台设备上。
库存项详情页:序列号列表、所在库位、安装位置一目了然,追溯不用翻纸质记录
踩过的坑和实用技巧
一开始就把分类铺太细→ 其实先建3到4层够用了,分类可以随时调整,别花三天纠结命名。
批次还是序列号,建零件时才要定→ 序列号是"每一颗都可单独追",批次是"一批共用一个号"。电子元器件选序列号,普通耗材选批次,建错了后面追溯逻辑全乱。
Docker跑通了就忘了备份→ 别,数据库备份一条命令的事:
# 在InvenTree后端目录下执行,生成数据库备份文件 python manage.py dbbackup挂个定时任务每天跑一次,这是整个系统里性价比最高的一条命令。
权限别图省事全给admin→ InvenTree支持按角色分配权限,采购员能看采购订单但不能删零件,这样分工之后操作记录也更好追责。
升级前先读版本说明→ 大版本升级偶尔涉及数据库迁移,Docker环境记得先备份再更新镜像。
30秒快问快答
硬件要求高吗?不高。测试环境一台2核4G的机器跑Docker就够了,生产环境看数据量,建议4G起步、留够磁盘空间。
学习成本高吗?不高。会填表单就会用,核心就"建分类、建零件、做入库"三个动作;界面有多国语言翻译,中文环境直接用。
能替代现有的Excel台账吗?能,而且迁移成本低:先把Excel里的料号清单作为零件批量导入,再逐步把库位和现有库存录进来,过渡期两边并行一两周。
你的下一步
别急着规划"全公司上线",就做两件事:跑一次上面的Docker命令,然后在里面建一个分类、一个零件、一次入库。你会发现,从"表格里的数字"变成"点得开的记录",只需要不到半小时。
跑顺之后,项目文档、社区讨论里都有大量现成的部署和迁移经验,遇到卡点基本搜得到。
【免费下载链接】InvenTreeOpen Source Inventory Management System项目地址: https://gitcode.com/GitHub_Trending/in/InvenTree
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考