diff --git a/core/apps/orders/migrations/0010_remove_order_address.py b/core/apps/orders/migrations/0010_remove_order_address.py new file mode 100644 index 0000000..11d472a --- /dev/null +++ b/core/apps/orders/migrations/0010_remove_order_address.py @@ -0,0 +1,17 @@ +# Generated by Django 5.2 on 2025-09-07 21:13 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('orders', '0009_alter_orderitem_quantity'), + ] + + operations = [ + migrations.RemoveField( + model_name='order', + name='address', + ), + ] diff --git a/core/apps/orders/models/order.py b/core/apps/orders/models/order.py index 88ff6c8..0148377 100644 --- a/core/apps/orders/models/order.py +++ b/core/apps/orders/models/order.py @@ -23,7 +23,6 @@ class Order(BaseModel): delivery_type = models.CharField(max_length=200, choices=DELIVERY_TYPE, null=True) delivery_price = models.PositiveBigIntegerField(default=0) contact_number = models.CharField(max_length=15, null=True, blank=True) - address = models.TextField(null=True, blank=True) comment = models.CharField(max_length=500, null=True, blank=True) name = models.CharField(max_length=200, null=True, blank=True) diff --git a/core/apps/orders/serializers/order.py b/core/apps/orders/serializers/order.py index c69281b..6d12480 100644 --- a/core/apps/orders/serializers/order.py +++ b/core/apps/orders/serializers/order.py @@ -28,7 +28,6 @@ class OrderCreateSerializer(serializers.Serializer): payment_type = serializers.ChoiceField(choices=Order.PAYMENT_TYPE) delivery_type = serializers.ChoiceField(choices=Order.DELIVERY_TYPE) contact_number = serializers.CharField() - address = serializers.CharField() comment = serializers.CharField(required=False) name = serializers.CharField(required=False) @@ -56,13 +55,14 @@ class OrderCreateSerializer(serializers.Serializer): )) if product.quantity_left > 0: product.quantity_left -= item.get('quantity') - product.save() - - total_price += item.get('price') + product.save() + total_price += item['price'] send_orders_to_tg_bot.delay( chat_id=item.get('product').tg_id, product_name=item.get('product').name, quantity=item.get('quantity'), + first_name=order.user.first_name, + last_name=order.user.last_name, ) OrderItem.objects.bulk_create(items) diff --git a/core/apps/orders/tasks/order_item.py b/core/apps/orders/tasks/order_item.py index ce197d8..57a4b13 100644 --- a/core/apps/orders/tasks/order_item.py +++ b/core/apps/orders/tasks/order_item.py @@ -7,11 +7,13 @@ from config.env import env token = env.str("BOT_TOKEN") @shared_task -def send_orders_to_tg_bot(chat_id, product_name, quantity): +def send_orders_to_tg_bot(chat_id, product_name, quantity, first_name, last_name): url = f"https://api.telegram.org/bot{token}/sendMessage" message = ( f"✅ Товар: {product_name}\n" - f"🛒 Кол-во: {quantity}\n" + f"🛒 Кол-во: {quantity}\n\n" + + f"Имя: {first_name} {last_name}" ) payload = { "chat_id": chat_id,