Subversion Repositories SmartDukaan

Rev

Rev 7739 | Rev 7746 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 7739 Rev 7741
Line 520... Line 520...
520
            end_date = end_date + datetime.timedelta(days = 1)
520
            end_date = end_date + datetime.timedelta(days = 1)
521
        start_date = start_date + datetime.timedelta(days = 1)
521
        start_date = start_date + datetime.timedelta(days = 1)
522
    
522
    
523
    return delivery_days
523
    return delivery_days
524
 
524
 
-
 
525
 
-
 
526
def adjust_shipping_time(delivery_date, delay):
-
 
527
    shipping_date=delivery_date - datetime.timedelta(days = delay)
-
 
528
    holidays = __get_holidays(shipping_date)
-
 
529
    while(True):
-
 
530
        if shipping_date.weekday() == 6 or shipping_date in holidays:
-
 
531
            shipping_date = shipping_date - datetime.timedelta(days = 1)
-
 
532
        else:
-
 
533
            return shipping_date        
-
 
534
    
-
 
535
    
-
 
536
 
525
def get_business_days_count(start_time, end_time):
537
def get_business_days_count(start_time, end_time):
526
    '''
538
    '''
527
    Returns business dates between two dates
539
    Returns business dates between two dates
528
    '''
540
    '''
529
    start_date = start_time.date()
541
    start_date = start_time.date()
Line 5819... Line 5831...
5819
        enddate = to_py_date(enddate).date()
5831
        enddate = to_py_date(enddate).date()
5820
        query = query.filter(cast(StoreOrderCollection.pushedAt, DATE) <= enddate)
5832
        query = query.filter(cast(StoreOrderCollection.pushedAt, DATE) <= enddate)
5821
 
5833
 
5822
    return query.filter(StoreOrderCollection.pushedToOcr == 1).all()    
5834
    return query.filter(StoreOrderCollection.pushedToOcr == 1).all()    
5823
 
5835
 
5824
def update_timestamp_for_amazon_order(orderId,expectedDelivery,promisedDelivery,expectedShipping,promisedShipping):
5836
def update_timestamp_for_amazon_order(orderDeliveryMap):
-
 
5837
    logistics_client = LogisticsClient().get_client()
-
 
5838
    for orderId,promisedDelivery in orderDeliveryMap.iteritems():
5825
    order = get_order(orderId)
5839
        order = get_order(orderId)
-
 
5840
        logistics_info = logistics_client.getLogisticsInfo(order.customer_pincode, order.lineitems[0].item_id, order.cod, PickUpType.COURIER)
-
 
5841
        days = logistics_info.deliveryTime - logistics_info.shippingTime
5826
    order.expected_delivery_time = datetime.datetime.fromtimestamp(expectedDelivery).strftime('%Y-%m-%d %H:%M:%S')
5842
        order.expected_delivery_time = datetime.datetime.strptime(promisedDelivery+' 15:00:00', '%d-%m-%Y %H:%M:%S') 
5827
    order.promised_delivery_time = datetime.datetime.fromtimestamp(promisedDelivery).strftime('%Y-%m-%d %H:%M:%S')
5843
        order.promised_delivery_time = datetime.datetime.strptime(promisedDelivery+' 15:00:00', '%d-%m-%Y %H:%M:%S')
5828
    order.expected_shipping_time = datetime.datetime.fromtimestamp(expectedShipping).strftime('%Y-%m-%d %H:%M:%S')
5844
        promisedShipping = adjust_shipping_time(datetime.datetime.strptime(promisedDelivery+' 15:00:00', '%d-%m-%Y %H:%M:%S'), days)
-
 
5845
        order.expected_shipping_time = promisedShipping
5829
    order.promised_shipping_time = datetime.datetime.fromtimestamp(promisedShipping).strftime('%Y-%m-%d %H:%M:%S')
5846
        order.promised_shipping_time = promisedShipping
5830
    session.commit()
5847
        session.commit()
5831
    return True
5848
    return True
5832
 
5849
 
5833
def update_source_detail_timestamp(id,lastUpdatedOn):
5850
def update_source_detail_timestamp(id,lastUpdatedOn):
5834
    detail = get_source_detail(id)
5851
    detail = get_source_detail(id)
5835
    detail.lastUpdatedOn = to_py_date(lastUpdatedOn)
5852
    detail.lastUpdatedOn = to_py_date(lastUpdatedOn)
Line 5844... Line 5861...
5844
    amazonOrders = AmazonOrder.query.filter(AmazonOrder.amazonOrderCode == amazonId).all()
5861
    amazonOrders = AmazonOrder.query.filter(AmazonOrder.amazonOrderCode == amazonId).all()
5845
    for amazonOrder in amazonOrders:
5862
    for amazonOrder in amazonOrders:
5846
        orderIds.append(amazonOrder.orderId)
5863
        orderIds.append(amazonOrder.orderId)
5847
    return get_order_list(orderIds)
5864
    return get_order_list(orderIds)
5848
    
5865
    
-
 
5866
 
-
 
5867
 
5849
if __name__ == '__main__':
5868
if __name__ == '__main__':
5850
    print get_orders_by_mobile_number("9650889334")
5869
    print get_orders_by_mobile_number("9650889334")
5851
5870