from django.db import models
from django.db.models.signals import post_save
from django.dispatch import receiver
from quotation.models import  Order,Order_Item,Technician_Assigned_Order_Item
from supplier.models import  Supplier_Payment
from technician.models import Job_Time
from geopy.geocoders import Nominatim
from technician.models import Technician_Assigned_Order_Item, Notification
from django.utils import timezone



# @receiver(post_save, sender=Supplier_Payment)
# def create_order_after_payment(sender,instance, created, **kwargs):
#    if created and instance.paid_amount and instance.paid_amount > 0:
#         bill = instance.supplier_bill
#         existing_order = Order.objects.filter(bill=bill).first()
#         if not existing_order:

#             order=Order.objects.create(bill=bill ,created_by=instance.created_by)
#             address=order.bill.supplier.city
#             geolocator = Nominatim(user_agent="address__geocoder")
#             location = geolocator.geocode(address)
           

#             for item in bill.bill_items.all():
#                 for j in range(item.qty):   

#                     Order_Item.objects.create(
#                         order=order,
#                         # order_identifier=i,
#                         # supplier=item.supplier,
#                         product=item.product,
#                         cost_per_unit=item.cost_per_unit,
#                         qty=item.qty,
#                         created_by=instance.created_by,
#                         subtotal=item.subtotal,
#                         latitude=location.latitude,
#                         longitude=location.longitude,
#                         )
                