仓库货物管理系统代码
编写一个完整的仓库货物管理系统代码是一个复杂的任务,因为它涉及多个方面,包括数据库设计、用户界面、业务逻辑等。由于代码的长度限制,我无法提供一个完整的系统代码,但我可以为你提供一个简单的示例,涵盖一些基本功能。
pythonimport 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("无效的选项,请重新输入!")
删除货物: 添加一个删除货物的功能,允许用户从仓库中删除指定的货物。
货物交易记录: 记录货物的进出记录,以便更好地追踪库存变化。
用户认证: 如果希望系统只能被授权用户访问,可以添加用户认证功能。
错误处理: 添加更多的错误处理和用户友好的提示信息,以提高系统的稳定性和易用性。
图形用户界面: 使用图形用户界面库创建一个更友好的界面,使用户能够轻松操作系统。
数据校验: 在用户输入时进行数据校验,确保输入的数据格式正确。
pythonimport 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("无效的选项,请重新输入!")
这是一个更完善的例子,你可以根据自己的需求进行修改和扩展。如果有其他特定的要求,也请提出,我将尽力提供帮助。