feat: 库存管理系统 MaterialWMS 初始版本

- Flask + SQLAlchemy 物料/入库/出库/BOM/生产订单全模块管理
- PyInstaller 打包为单文件 EXE (双击运行, 自动建库)
- 物料维度: 入库总数量 / 消耗总数量 / 逐次入库流水(含时间)
- BOM 详情展示组成物料的规格型号与单套用量
- 支持 Altium / 嘉立创 BOM 批量导入(文本与 Excel 双通道)
- 内置端到端验证脚本(tools/_exe_util.py 等, 清理进程树防残留)
This commit is contained in:
2026-09-11 15:41:56 +08:00
commit 7d34a481b3
38 changed files with 3601 additions and 0 deletions
+21
View File
@@ -0,0 +1,21 @@
{% extends "base.html" %}
{% block title %}{{ '编辑' if m else '新增' }}物料{% endblock %}
{% block content %}
<form method="post" class="card form-card">
<h3>{{ '编辑物料' if m else '新增物料' }}</h3>
<label>物料编号 *</label>
<input name="part_number" value="{{ m.part_number if m else '' }}" {{ 'readonly' if m }} required>
<label>型号 / 规格</label>
<input name="manufacturer" value="{{ m.manufacturer if m else '' }}">
<label>单位</label>
<input name="unit" value="{{ m.unit if m else '个' }}">
<label>安全库存</label>
<input name="safety_stock" type="number" step="0.01" value="{{ m.safety_stock if m else 0 }}">
<label>备注</label>
<input name="note" value="{{ m.note if m else '' }}">
<div class="row-actions">
<button class="primary">保存</button>
<a class="btn" href="{{ url_for('materials') }}">返回</a>
</div>
</form>
{% endblock %}