Для решения вашей проблемы вам нужно будет убедиться, что идентификатор продавца сохраняется и доступен в тот момент, когда покупатель подтверждает сделку. Это можно сделать, сохраняя важные данные во время создания сделки, чтобы затем использовать их для отправки уведомления продавцу.
Давайте рассмотрим шаги, которые могут помочь вам улучшить ваш код:
1. Сохранение идентификатора продавца в структуре данных, связанной с сделкой:
- Модифицируйте объект сделки, чтобы он включал идентификатор продавца.
2. Доступ к данной информации при подтверждении покупателем:
- Используйте метод получения данных сделки, чтобы извлечь идентификатор продавца.
3. Отправка уведомления продавцу:
- Используйте идентификатор продавца для отправки уведомления, когда покупатель подтвердит сделку.
Вот простой пример того, как это может быть реализовано на высоком уровне (код написан на Python для наглядности):
```python
# Предположим, что у вас есть класс Deal и User
class User:
def __init__(self, username, user_id):
self.username = username
self.user_id = user_id
# ... другие атрибуты и методы пользователя
class Deal:
def __init__(self, seller_id, buyer_id, item, price):
self.seller_id = seller_id
self.buyer_id = buyer_id
self.item = item
self.price = price
self.is_confirmed = False
# ... другие атрибуты и методы сделки
# Пример создания сделки
def create_deal(seller, buyer, item, price):
new_deal = Deal(seller.user_id, buyer.user_id, item, price)
# Сохраняем сделку в системе
save_deal(new_deal)
return new_deal
# Пример подтверждения сделки
def confirm_deal(deal_id, buyer_id):
deal = get_deal_by_id(deal_id) # Функция, которая извлекает сделку по ID
if deal and deal.buyer_id == buyer_id:
deal.is_confirmed = True
notify_seller(deal.seller_id) # Отправляем уведомление продавцу
# Сохраняем изменения сделки
update_deal(deal)
else:
# Обработка случая, когда сделка не найдена или buyer_id не совпадает
# Функция уведомления продавца
def notify_seller(seller_id):
seller = get_user_by_id(seller_id) # Функция, которая извлекает пользователя по ID
if seller:
# Отправляем уведомление продавцу
send_notification(seller, "Ваша сделка была подтверждена!")
else:
# Обработка случая, когда пользователь не найден
# Дополнительные функции, которые вам понадобятся:
def save_deal(deal):
# Сохраняем сделку в базе данных
pass
def update_deal(deal):
# Обновляем сделку в базе данных
pass
def get_deal_by_id(deal_id):
# Получаем сделку из базы данных по ID
pass
def get_user_by_id(user_id):
# Получаем пользователя из базы данных по ID
pass
def send_notification(user, message):
# Код для отправки уведомления пользователю
pass
# Пример использования
seller = User("sellername", "seller123")
buyer = User("buyername", "buyer123")
deal = create_deal(seller, buyer,