git'n a system-desgin-primer

This commit is contained in:
Aditi
2024-10-23 10:51:05 +05:30
committed by Ido Ophir
parent 9f28e4e5d3
commit 7cf2d80bcc
22 changed files with 725 additions and 0 deletions

View File

@@ -0,0 +1,34 @@
import random
class User:
def __init__(self, user_id, name, balance):
self.user_id = user_id
self.name = name
self.balance = balance
class Transaction:
def __init__(self, sender, receiver, amount):
self.transaction_id = random.randint(1000, 9999)
self.sender = sender
self.receiver = receiver
self.amount = amount
class PaymentProcessingSystem:
def process_payment(self, transaction):
if transaction.sender.balance >= transaction.amount:
transaction.sender.balance -= transaction.amount
transaction.receiver.balance += transaction.amount
print(f"Transaction {transaction.transaction_id} successful: {transaction.sender.name} paid {transaction.receiver.name} ${transaction.amount}.")
else:
print(f"Transaction {transaction.transaction_id} failed: Insufficient funds.")
# Example Usage
user1 = User(1, "Alice", 100)
user2 = User(2, "Bob", 50)
payment_system = PaymentProcessingSystem()
transaction = Transaction(user1, user2, 30)
payment_system.process_payment(transaction)
print(f"{user1.name}'s balance: ${user1.balance}")
print(f"{user2.name}'s balance: ${user2.balance}")