Subversion Repositories SmartDukaan

Rev

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

Rev 7560 Rev 7564
Line 2734... Line 2734...
2734
    new_order.warehouse_id = logistics_info.warehouseId
2734
    new_order.warehouse_id = logistics_info.warehouseId
2735
    new_order.fulfilmentWarehouseId = logistics_info.fulfilmentWarehouseId
2735
    new_order.fulfilmentWarehouseId = logistics_info.fulfilmentWarehouseId
2736
    new_order.logistics_provider_id = logistics_info.providerId
2736
    new_order.logistics_provider_id = logistics_info.providerId
2737
    new_order.airwaybill_no = logistics_info.airway_billno
2737
    new_order.airwaybill_no = logistics_info.airway_billno
2738
    new_order.tracking_id = new_order.airwaybill_no
2738
    new_order.tracking_id = new_order.airwaybill_no
-
 
2739
    new_order.source = order.source
2739
    
2740
    
2740
    order.courier_delivery_time = (current_time + datetime.timedelta(days=logistics_info.deliveryDelay)).replace(hour=PREPAID_SHIPPING_CUTOFF_TIME, minute=0, second=0)
2741
    order.courier_delivery_time = (current_time + datetime.timedelta(days=logistics_info.deliveryDelay)).replace(hour=PREPAID_SHIPPING_CUTOFF_TIME, minute=0, second=0)
2741
    new_order.expected_delivery_time = (current_time + datetime.timedelta(days=logistics_info.deliveryTime)).replace(hour=PREPAID_SHIPPING_CUTOFF_TIME, minute=0, second=0)
2742
    new_order.expected_delivery_time = (current_time + datetime.timedelta(days=logistics_info.deliveryTime)).replace(hour=PREPAID_SHIPPING_CUTOFF_TIME, minute=0, second=0)
2742
    new_order.promised_delivery_time = new_order.expected_delivery_time
2743
    new_order.promised_delivery_time = new_order.expected_delivery_time
2743
    new_order.expected_shipping_time = (current_time + datetime.timedelta(days=logistics_info.shippingTime)).replace(hour=PREPAID_SHIPPING_CUTOFF_TIME, minute=0, second=0)
2744
    new_order.expected_shipping_time = (current_time + datetime.timedelta(days=logistics_info.shippingTime)).replace(hour=PREPAID_SHIPPING_CUTOFF_TIME, minute=0, second=0)
Line 3064... Line 3065...
3064
    session.commit()
3065
    session.commit()
3065
    return order
3066
    return order
3066
 
3067
 
3067
def change_courier_provider(order_id, provider_id):
3068
def change_courier_provider(order_id, provider_id):
3068
    order = get_order(order_id)
3069
    order = get_order(order_id)
3069
    if order.status not in [OrderStatus.COD_VERIFICATION_PENDING, OrderStatus.SUBMITTED_FOR_PROCESSING, OrderStatus.INVENTORY_LOW, OrderStatus.ACCEPTED]:
3070
    if order.status not in [OrderStatus.COD_VERIFICATION_PENDING, OrderStatus.SUBMITTED_FOR_PROCESSING, OrderStatus.INVENTORY_LOW, OrderStatus.ACCEPTED, OrderStatus.BILLED]:
3070
        raise TransactionServiceException(121, "This order has already been processed. Please seek help from engineering.")
3071
        raise TransactionServiceException(121, "This order has already been processed. Please seek help from engineering.")
3071
    
3072
    
3072
    if order.logistics_provider_id == provider_id:
3073
    if order.logistics_provider_id == provider_id:
3073
        raise TransactionServiceException(121, "Provider Id entered by you is same as provider assigned to order.")
3074
        raise TransactionServiceException(121, "Provider Id entered by you is same as provider assigned to order.")
3074
    
3075
    
Line 5109... Line 5110...
5109
    freebie_order.orderType = OrderType.B2C
5110
    freebie_order.orderType = OrderType.B2C
5110
    freebie_order.pickupStoreId = 0
5111
    freebie_order.pickupStoreId = 0
5111
    freebie_order.otg = 0
5112
    freebie_order.otg = 0
5112
    freebie_order.insurer = 0
5113
    freebie_order.insurer = 0
5113
    freebie_order.insuranceAmount = 0
5114
    freebie_order.insuranceAmount = 0
-
 
5115
    freebie_order.source = order.source
5114
    
5116
    
5115
    logistics_client = LogisticsClient().get_client()
5117
    logistics_client = LogisticsClient().get_client()
5116
    logistics_info = logistics_client.getLogisticsInfo(order.customer_pincode, 1, DeliveryType.PREPAID, PickUpType.COURIER)
5118
    logistics_info = logistics_client.getLogisticsInfo(order.customer_pincode, 1, DeliveryType.PREPAID, PickUpType.COURIER)
5117
    freebie_order.logistics_provider_id = logistics_info.providerId;
5119
    freebie_order.logistics_provider_id = logistics_info.providerId;
5118
    freebie_order.tracking_id = logistics_info.airway_billno
5120
    freebie_order.tracking_id = logistics_info.airway_billno