Python实现基于模块的库存管理系统


一:系统测试运行

------ 库存信息管理系统-------
| 1: 增加产品信息
| 2: 产品信息报表
| 3: 增加货架位置
| 4: 货架位置报表
| 5: 商品入库管理
| 6: 商品出库管理
| 7: 商品库存信息报表
| 0: 退出
------------------------------
请选择功能菜单(0-7):

二:库存管理系统概述

sku:Stock Keeping Unit,最小存货单位

  • 本节实现一个简单的基于模块的库存管理系统。
  • 系统采用JSON文件来保存数据。
  • 产品信息设计为字典,键为sku_id (产品ID),值为sku_name (产品名称),使用products.json实现其持续化。
  • 货架位置信息也设计为字典,键为loc_id (货架ID),值为loc_name (货架名称),使用location.json实现其持续化。
  • 商品库存信息设计为列表[sku_id, loc_id] 的列表,使用items.json实现其持续化。

库存管理系统设计为三个模块文件: data.py、ui.py 和 main.py

库存管理系统data.py负责数据的管理
库存管理系统ui.py负责用户界面交互

三:数据处理模块data.py的实现

  • 库存管理系统data.py负责数据的管理
  • 通过Python标准库模块json中的loads()函数和dumps()函数,可以实现从JSON文件读取数据和转储数据到JSON文件的功能。

库存管理系统数据处理模块data.py。

import os
import json

#全局变量
_products = {
   } #保存产品信息的字典: sku_id:sku_name
_locations = {
   } #保存货架位置的字典: loc_id:loc_name
_items = [] #保存商品库存的列表,元素为元组(sku_id,loc_id)

def init():
  """从磁盘JSON格式文件中读取数据"""
  global _products, _locations, _items
  if os.path.exists("products.json"):
    f = open("products.json", "r", encoding = 'utf-8')
    _products = json.loads(f.read())
    f.close()
  if os.path.exists("locations.json"):
    f = open("locations.json", "r", encoding = 'utf-8')
    _locations = json.loads(f.read())
    f.close()
  if os.path.exists("items.json"):
    f = open("items.json", "r", encoding ='utf-8')
    _items = json.loads(f.read())
    f.close()

def _save_products
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值