一:系统类设计
药品进销存管理系统是一个复杂的系统,需要设计多个类来组织和管理不同的功能。
药品类(Drug):
属性:药品编号、药品名称、生产厂家、规格、单价等。
方法:获取药品信息、更新库存数量、计算药品总价等。
class Drug:
def __init__(self, drug_id, name, manufacturer, specification, unit_price):
self.drug_id = drug_id
self.name = name
self.manufacturer = manufacturer
self.specification = specification
self.unit_price = unit_price
self.stock_quantity = 0 # 初始库存数量为0
供应商类(Supplier):
属性:供应商编号、供应商名称、联系方式等。
方法:获取供应商信息。
class Supplier:
def __init__(self, supplier_id, name, contact):
self.supplier_id = supplier_id
self.name = name
self.contact = contact
销售记录类(SalesRecord):
属性:销售记录编号、销售日期、药品信息、销售数量、总价等。
方法:计算销售总价、获取销售信息。
class SalesRecord:
def __init__(self, record_id, sale_date, drug, quantity):
self.record_id = record_id
self.sale_date = sale_date
self.drug = drug
self.quantity = quantity
self.total_price = self.calculate_total_price()
进货记录类(PurchaseRecord):
属性:进货记录编号、进货日期、药品信息、进货数量、总价等。
方法:计算进货总价、获取进货信息。
class PurchaseRecord:
def __init__(self, record_id, purchase_date, drug, quantity):
self.record_id = record_id
self.purchase_date = purchase_date
self.drug = drug
self.quantity = quantity
self.total_price = self.calculate_total_price()
库存管理类(InventoryManager):
方法:添加药品到库存、更新库存、获取库存信息等。
class InventoryManager:
def __init__(self):
self.inventory = {} # 使用字典存储药品库存信息
def add_to_inventory(self, drug, quantity):
if drug.drug_id in self.inventory:
self.inventory[drug.drug_id]['quantity'] += quantity
else:
self.inventory[drug.drug_id] = {'drug': drug, 'quantity': quantity}
def update_inventory(self, drug_id, new_quantity):
if drug_id in self.inventory:
self.inventory[drug_id]['quantity'] = new_quantity
def get_inventory_info(self):
inventory_info = "Inventory:\n"