这是一个使用 Python 和 Tkinter 开发的简单库存管理系统,提供了基本的商品管理功能。
-
商品管理:
- 添加、修改、删除商品
- 显示商品的当前价格和平均成本价
- 支持商品描述和备注信息
-
库存查询:
- 支持按关键字搜索商品
- 实时显示库存数量
- 显示商品的最后更新时间
-
出入库管理:
- 入库操作:
- 支持输入进价(可选,默认使用当前商品价格)
- 自动计算加权平均成本价
- 记录入库时间和操作备注
- 出库操作:
- 必须输入售价
- 自动记录出库时的平均成本价
- 计算销售毛利
- 记录出库时间和操作备注
- 入库操作:
-
价格管理:
- 动态计算加权平均成本价
- 显示当前售价和平均成本价
- 价格变动历史记录
- 出入库价格分开管理
-
统计功能:
- 出入库记录明细查询
- 显示交易时间、数量、单价
- 出库记录显示毛利信息
- 使用颜色区分出入库记录(绿色为入库,红色为出库)
- 显示总体毛利统计
-
用户界面:
- 直观的图形界面
- 动态价格输入提示
- 操作状态实时反馈
- 数据验证和错误提示
- Python 3.x
- tkinter (Python 标准库)
- SQLite3 (Python 标准库)
- 克隆或下载项目代码
- 安装依赖包:
pip install -r requirements.txt运行主程序:
python inventory_system.py-
添加商品
- 在右侧输入框中填写商品信息
- 点击"添加商品"按钮
-
修改商品
- 在列表中选择要修改的商品
- 修改右侧输入框中的信息
- 点击"修改商品"按钮
-
删除商品
- 在列表中选择要删除的商品
- 点击"删除商品"按钮
- 确认删除操作
-
入库操作
- 在列表中选择要操作的商品
- 输入入库数量(必填)
- 输入进价(可选,默认使用当前商品价格)
- 填写备注信息(可选)
- 点击"入库"按钮
-
出库操作
- 在列表中选择要操作的商品
- 输入出库数量(必填)
- 输入售价(必填)
- 填写备注信息(可选)
- 点击"出库"按钮
-
查看出入库记录
- 点击"出入库记录统计"按钮
- 查看详细的出入库历史
- 绿色记录表示入库
- 红色记录表示出库
- 底部显示总毛利统计
-
搜索商品
- 在搜索框中输入关键字
- 点击"搜索"按钮
系统使用SQLite数据库,包含以下表:
-
products(商品表)
- id: 商品ID
- name: 商品名称
- quantity: 库存数量
- price: 当前价格
- avg_price: 平均成本价
- description: 商品描述
- created_at: 创建时间
- updated_at: 更新时间
-
inventory_records(出入库记录表)
- id: 记录ID
- product_id: 商品ID
- type: 操作类型(in/out)
- quantity: 数量
- price: 交易价格
- cost_price: 出库时的成本价
- remark: 备注
- created_at: 操作时间
-
price_history(价格历史表)
- id: 记录ID
- product_id: 商品ID
- price: 入库价格
- quantity: 数量
- created_at: 记录时间
- 添加和修改商品时,请确保输入合法的数量和价格
- 商品名称不能为空
- 数量和价格不能为负数
- 出库数量不能超过当前库存
- 出库时必须输入售价
- 入库时可以选择不输入价格,系统会使用商品当前价格
- 平均成本价根据入库历史自动计算
- 删除商品前请确保没有未完成的出入库操作
欢迎提交问题和改进建议!
本项目采用 MIT 许可证。