Python仓储管理系统(源码)

随着电子商务的快速发展,仓储管理系统的需求逐渐上升。为了满足这一需求,我们可以利用Python编写一个基本的仓储管理系统。本文将为您展示一个简单的仓储管理系统的核心功能及其实现代码,帮助您理解如何利用Python进行仓储管理。

系统功能概述

一个基本的仓储管理系统通常包括以下几个功能模块:

  1. 商品管理:添加、删除、查询商品信息。
  2. 库存管理:查看当前库存数量,更新库存。
  3. 出入库管理:记录商品的出入库记录。
  4. 查询统计:统计某一商品的出入库记录。

下面是该系统的一些关键代码示例。

商品管理模块

首先,我们定义一个商品类来表示仓库中的商品:

class Product:
    def __init__(self, product_id, name, quantity):
        self.product_id = product_id
        self.name = name
        self.quantity = quantity

    def __str__(self):
        return f'ID: {self.product_id}, 名称: {self.name}, 数量: {self.quantity}'

接下来,我们将实现添加、删除和查询商品的功能:

class Warehouse:
    def __init__(self):
        self.products = {}

    def add_product(self, product):
        if product.product_id in self.products:
            print("商品已存在,更新数量。")
            self.products[product.product_id].quantity += product.quantity
        else:
            self.products[product.product_id] = product
            print("商品添加成功。")

    def remove_product(self, product_id):
        if product_id in self.products:
            del self.products[product_id]
            print("商品删除成功。")
        else:
            print("商品不存在。")

    def query_product(self, product_id):
        if product_id in self.products:
            print(self.products[product_id])
        else:
            print("商品不存在。")

库存管理模块

接下来,我们需要实现一个库存管理模块,以查看和更新库存:

class InventoryManagement:
    def __init__(self, warehouse):
        self.warehouse = warehouse

    def check_stock(self, product_id):
        if product_id in self.warehouse.products:
            print(f'当前库存: {self.warehouse.products[product_id].quantity}')
        else:
            print("商品不存在。")

    def update_stock(self, product_id, quantity):
        if product_id in self.warehouse.products:
            self.warehouse.products[product_id].quantity += quantity
            print(f'库存更新成功,当前数量: {self.warehouse.products[product_id].quantity}')
        else:
            print("商品不存在。")

出入库管理模块

为了记录商品的出入库操作,我们可以实现一个简单的出入库管理模块,将记录存储在一个列表中:

class Transaction:
    def __init__(self):
        self.records = []

    def add_record(self, product_id, quantity, operation):
        self.records.append((product_id, quantity, operation))
        print(f'{operation}记录添加成功: 商品ID {product_id}, 数量 {quantity}')

    def display_records(self):
        for record in self.records:
            print(f'商品ID: {record[0]}, 数量: {record[1]}, 操作: {record[2]}')

整合系统功能

最后,我们可以将以上各个模块整合到一个主程序中,以实现简易的操作界面:

def main():
    warehouse = Warehouse()
    inventory = InventoryManagement(warehouse)
    transaction = Transaction()

    while True:
        print("1. 添加商品")
        print("2. 删除商品")
        print("3. 查询商品")
        print("4. 检查库存")
        print("5. 更新库存")
        print("6. 添加出入库记录")
        print("7. 查看出入库记录")
        print("0. 退出")

        choice = input("请选择操作: ")

        if choice == '1':
            prod_id = input("输入商品ID: ")
            name = input("输入商品名称: ")
            quantity = int(input("输入商品数量: "))
            product = Product(prod_id, name, quantity)
            warehouse.add_product(product)

        elif choice == '2':
            prod_id = input("输入要删除的商品ID: ")
            warehouse.remove_product(prod_id)

        elif choice == '3':
            prod_id = input("输入要查询的商品ID: ")
            warehouse.query_product(prod_id)

        elif choice == '4':
            prod_id = input("输入要检查的商品ID: ")
            inventory.check_stock(prod_id)

        elif choice == '5':
            prod_id = input("输入要更新的商品ID: ")
            quantity = int(input("输入更新数量: "))
            inventory.update_stock(prod_id, quantity)

        elif choice == '6':
            prod_id = input("输入商品ID: ")
            quantity = int(input("输入数量: "))
            operation = input("输入操作(入库/出库): ")
            transaction.add_record(prod_id, quantity, operation)

        elif choice == '7':
            transaction.display_records()

        elif choice == '0':
            break

        else:
            print("无效输入,请重试。")

if __name__ == '__main__':
    main()

总结

本文展示了一个简单的仓储管理系统的基本结构与实现,主要涉及商品管理、库存管理和出入库记录的处理。该系统可以根据实际需求进行进一步扩展和优化,例如加入数据库存储、用户权限管理、以及图形用户界面等。希望通过这个示例,能够为您理解和实现仓储管理系统提供一点帮助。

点赞(0) 打赏

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部