import requests
import json
from datetime import datetime
from datetime import date
import time
import os
import urllib3



OrdersDetailsFile= os.path.dirname(os.path.abspath(__file__)) + '//OrdersDetails.json'
TodayOldOrdersDetailsFile= os.path.dirname(os.path.abspath(__file__)) + '//OrdersDetailsTodayOld.json'



headers = {
    "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8",
    "Host" : "prod-fresh-api.jugnoo.in:4040",
    "Origin" : "https://fatafat.ec2dashboard.com"
           }
#Import old orders data  

with open(OrdersDetailsFile) as fp:
   OldOrdersDetails = json.load(fp)


#Get todays orders 
OrdersLink = 'https://prod-fresh-api.jugnoo.in:4040/admin/get_orders?'
TodayAllOrdersArray = []
DisplayStart = 0
TotalRecords = 0
StartDate = date.today()
EndDate = date.today()

#debug 
#StartDate = "2023-03-16"
#EndDate = "2023-03-18"
while DisplayStart <= TotalRecords : 
    query = {
                            "token": "ad211e959dca17540215f5fca67a6404",
                            "secret": "P7JlZXiRiIvSssQSSzqs",
                            #"city": "1826",
                            "start_date": StartDate,
                            "end_date": EndDate,
                            "fetch_previous_orders": "1",
                            "locale": "en",
                            "iDisplayStart": str(DisplayStart),
                            "iDisplayLength": "100",
                            "status": "2,7"
                            
                    }

    GetOrdersResp = json.loads(requests.get(url = OrdersLink,headers = headers, params = query).text)

    TotalRecords = GetOrdersResp["iTotalRecords"]
    DisplayStart = DisplayStart+100
    TodayAllOrdersArray=TodayAllOrdersArray+GetOrdersResp["aaData"]

#Import today old orders data  

with open(TodayOldOrdersDetailsFile) as fp:
    
    if os.path.getsize(TodayOldOrdersDetailsFile) == 0:
        TodayOldOrdersDetails = TodayAllOrdersArray
        #print ("not loaded from file")
    else : 
        TodayOldOrdersDetails = json.load(fp)
        #print (" loaded from file")
#Combine today Old orders and Today orders   
#TodayAllOrdersArrayCombined = TodayOldOrdersDetails+TodayAllOrdersArray
#print(len(TodayAllOrdersArray))
#print(len(TodayOldOrdersDetails))
#Get new orders for this pass 
NewTodayOrdersArray = []
for elem in TodayAllOrdersArray:
    if elem not in TodayOldOrdersDetails:
        NewTodayOrdersArray.append(elem)

#print(len(NewTodayOrdersArray))


#Write today orders
with open(TodayOldOrdersDetailsFile, "w") as outfile:
    json.dump(TodayAllOrdersArray, outfile)
    
#Add new orders to the all orders file 

AllOrdersArray = OldOrdersDetails + NewTodayOrdersArray

with open(OrdersDetailsFile, "w") as outfile:
     json.dump(AllOrdersArray, outfile)
