Skip to content

wanglanaaa/wheel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

库存管理系统 (Inventory Management System)

这是一个使用 Python 和 Tkinter 开发的简单库存管理系统,提供了基本的商品管理功能。

功能特点

  • 商品管理:

    • 添加、修改、删除商品
    • 显示商品的当前价格和平均成本价
    • 支持商品描述和备注信息
  • 库存查询:

    • 支持按关键字搜索商品
    • 实时显示库存数量
    • 显示商品的最后更新时间
  • 出入库管理:

    • 入库操作:
      • 支持输入进价(可选,默认使用当前商品价格)
      • 自动计算加权平均成本价
      • 记录入库时间和操作备注
    • 出库操作:
      • 必须输入售价
      • 自动记录出库时的平均成本价
      • 计算销售毛利
      • 记录出库时间和操作备注
  • 价格管理:

    • 动态计算加权平均成本价
    • 显示当前售价和平均成本价
    • 价格变动历史记录
    • 出入库价格分开管理
  • 统计功能:

    • 出入库记录明细查询
    • 显示交易时间、数量、单价
    • 出库记录显示毛利信息
    • 使用颜色区分出入库记录(绿色为入库,红色为出库)
    • 显示总体毛利统计
  • 用户界面:

    • 直观的图形界面
    • 动态价格输入提示
    • 操作状态实时反馈
    • 数据验证和错误提示

系统要求

  • Python 3.x
  • tkinter (Python 标准库)
  • SQLite3 (Python 标准库)

安装步骤

  1. 克隆或下载项目代码
  2. 安装依赖包:
pip install -r requirements.txt

使用方法

运行主程序:

python inventory_system.py

基本操作

  1. 添加商品

    • 在右侧输入框中填写商品信息
    • 点击"添加商品"按钮
  2. 修改商品

    • 在列表中选择要修改的商品
    • 修改右侧输入框中的信息
    • 点击"修改商品"按钮
  3. 删除商品

    • 在列表中选择要删除的商品
    • 点击"删除商品"按钮
    • 确认删除操作
  4. 入库操作

    • 在列表中选择要操作的商品
    • 输入入库数量(必填)
    • 输入进价(可选,默认使用当前商品价格)
    • 填写备注信息(可选)
    • 点击"入库"按钮
  5. 出库操作

    • 在列表中选择要操作的商品
    • 输入出库数量(必填)
    • 输入售价(必填)
    • 填写备注信息(可选)
    • 点击"出库"按钮
  6. 查看出入库记录

    • 点击"出入库记录统计"按钮
    • 查看详细的出入库历史
    • 绿色记录表示入库
    • 红色记录表示出库
    • 底部显示总毛利统计
  7. 搜索商品

    • 在搜索框中输入关键字
    • 点击"搜索"按钮

数据库结构

系统使用SQLite数据库,包含以下表:

  1. products(商品表)

    • id: 商品ID
    • name: 商品名称
    • quantity: 库存数量
    • price: 当前价格
    • avg_price: 平均成本价
    • description: 商品描述
    • created_at: 创建时间
    • updated_at: 更新时间
  2. inventory_records(出入库记录表)

    • id: 记录ID
    • product_id: 商品ID
    • type: 操作类型(in/out)
    • quantity: 数量
    • price: 交易价格
    • cost_price: 出库时的成本价
    • remark: 备注
    • created_at: 操作时间
  3. price_history(价格历史表)

    • id: 记录ID
    • product_id: 商品ID
    • price: 入库价格
    • quantity: 数量
    • created_at: 记录时间

注意事项

  • 添加和修改商品时,请确保输入合法的数量和价格
  • 商品名称不能为空
  • 数量和价格不能为负数
  • 出库数量不能超过当前库存
  • 出库时必须输入售价
  • 入库时可以选择不输入价格,系统会使用商品当前价格
  • 平均成本价根据入库历史自动计算
  • 删除商品前请确保没有未完成的出入库操作

贡献

欢迎提交问题和改进建议!

许可证

本项目采用 MIT 许可证。

About

cangku guanli

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages