仓库货物管理系统代码

编写一个完整的仓库货物管理系统代码是一个复杂的任务,因为它涉及多个方面,包括数据库设计、用户界面、业务逻辑等。由于代码的长度限制,我无法提供一个完整的系统代码,但我可以为你提供一个简单的示例,涵盖一些基本功能。

python
import sqlite3 # 创建数据库连接 conn = sqlite3.connect('warehouse.db') cursor = conn.cursor() # 创建货物表 cursor.execute(''' CREATE TABLE IF NOT EXISTS products ( id INTEGER PRIMARY KEY, name TEXT NOT NULL, quantity INTEGER NOT NULL, price REAL NOT NULL ) ''') conn.commit() # 添加货物 def add_product(name, quantity, price): cursor.execute(''' INSERT INTO products (name, quantity, price) VALUES (?, ?, ?) ''', (name, quantity, price)) conn.commit() print("货物已添加成功!") # 更新货物数量 def update_quantity(product_id, new_quantity): cursor.execute(''' UPDATE products SET quantity = ? WHERE id = ? ''', (new_quantity, product_id)) conn.commit() print("货物数量已更新!") # 查询所有货物 def view_products(): cursor.execute('SELECT * FROM products') products = cursor.fetchall() if not products: print("仓库中没有货物") else: print("仓库货物列表:") for product in products: print(f"ID: {product[0]}, Name: {product[1]}, Quantity: {product[2]}, Price: {product[3]}") # 主程序 while True: print("\n仓库货物管理系统") print("1. 添加货物") print("2. 更新货物数量") print("3. 查看所有货物") print("4. 退出") choice = input("请输入选项: ") if choice == '1': name = input("请输入货物名称: ") quantity = int(input("请输入货物数量: ")) price = float(input("请输入货物价格: ")) add_product(name, quantity, price) elif choice == '2': view_products() product_id = int(input("请输入要更新的货物ID: ")) new_quantity = int(input("请输入新的货物数量: ")) update_quantity(product_id, new_quantity) elif choice == '3': view_products() elif choice == '4': print("感谢使用仓库货物管理系统,再见!") break else: print("无效的选项,请重新输入!")

删除货物: 添加一个删除货物的功能,允许用户从仓库中删除指定的货物。

货物交易记录: 记录货物的进出记录,以便更好地追踪库存变化。

用户认证: 如果希望系统只能被授权用户访问,可以添加用户认证功能。

错误处理: 添加更多的错误处理和用户友好的提示信息,以提高系统的稳定性和易用性。

图形用户界面: 使用图形用户界面库创建一个更友好的界面,使用户能够轻松操作系统。

数据校验: 在用户输入时进行数据校验,确保输入的数据格式正确。

python
import sqlite3 from datetime import datetime conn = sqlite3.connect('warehouse.db') cursor = conn.cursor() cursor.execute(''' CREATE TABLE IF NOT EXISTS products ( id INTEGER PRIMARY KEY, name TEXT NOT NULL, quantity INTEGER NOT NULL, price REAL NOT NULL ) ''') cursor.execute(''' CREATE TABLE IF NOT EXISTS transactions ( id INTEGER PRIMARY KEY, product_id INTEGER NOT NULL, quantity INTEGER NOT NULL, transaction_type TEXT NOT NULL, transaction_date TEXT NOT NULL, FOREIGN KEY (product_id) REFERENCES products (id) ) ''') conn.commit() def add_product(name, quantity, price): cursor.execute(''' INSERT INTO products (name, quantity, price) VALUES (?, ?, ?) ''', (name, quantity, price)) conn.commit() print("货物已添加成功!") def update_quantity(product_id, new_quantity): cursor.execute(''' UPDATE products SET quantity = ? WHERE id = ? ''', (new_quantity, product_id)) conn.commit() print("货物数量已更新!") def delete_product(product_id): cursor.execute('DELETE FROM products WHERE id = ?', (product_id,)) conn.commit() print("货物已删除!") def record_transaction(product_id, quantity, transaction_type): transaction_date = datetime.now().strftime("%Y-%m-%d %H:%M:%S") cursor.execute(''' INSERT INTO transactions (product_id, quantity, transaction_type, transaction_date) VALUES (?, ?, ?, ?) ''', (product_id, quantity, transaction_type, transaction_date)) conn.commit() def view_products(): cursor.execute('SELECT * FROM products') products = cursor.fetchall() if not products: print("仓库中没有货物") else: print("仓库货物列表:") for product in products: print(f"ID: {product[0]}, Name: {product[1]}, Quantity: {product[2]}, Price: {product[3]}") def view_transactions(): cursor.execute('SELECT * FROM transactions') transactions = cursor.fetchall() if not transactions: print("没有交易记录") else: print("交易记录:") for transaction in transactions: print(f"ID: {transaction[0]}, Product ID: {transaction[1]}, Quantity: {transaction[2]}, Type: {transaction[3]}, Date: {transaction[4]}") while True: print("\n仓库货物管理系统") print("1. 添加货物") print("2. 更新货物数量") print("3. 删除货物") print("4. 查看所有货物") print("5. 查看交易记录") print("6. 退出") choice = input("请输入选项: ") if choice == '1': name = input("请输入货物名称: ") quantity = int(input("请输入货物数量: ")) price = float(input("请输入货物价格: ")) add_product(name, quantity, price) elif choice == '2': view_products() product_id = int(input("请输入要更新的货物ID: ")) new_quantity = int(input("请输入新的货物数量: ")) update_quantity(product_id, new_quantity) record_transaction(product_id, new_quantity, "IN") elif choice == '3': view_products() product_id = int(input("请输入要删除的货物ID: ")) delete_product(product_id) elif choice == '4': view_products() elif choice == '5': view_transactions() elif choice == '6': print("感谢使用仓库货物管理系统,再见!") break else: print("无效的选项,请重新输入!")

这是一个更完善的例子,你可以根据自己的需求进行修改和扩展。如果有其他特定的要求,也请提出,我将尽力提供帮助。