Subversion Repositories SmartDukaan

Rev

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

Rev 3956 Rev 3986
Line 71... Line 71...
71
        order.logistics_provider_id = t_order.logistics_provider_id
71
        order.logistics_provider_id = t_order.logistics_provider_id
72
        order.airwaybill_no = t_order.airwaybill_no
72
        order.airwaybill_no = t_order.airwaybill_no
73
        order.tracking_id = t_order.tracking_id
73
        order.tracking_id = t_order.tracking_id
74
    if t_order.expected_delivery_time:    
74
    if t_order.expected_delivery_time:    
75
        order.expected_delivery_time = to_py_date(t_order.expected_delivery_time)
75
        order.expected_delivery_time = to_py_date(t_order.expected_delivery_time)
-
 
76
        order.promised_delivery_time = to_py_date(t_order.expected_delivery_time)
76
    if t_order.customer_id:    
77
    if t_order.customer_id:    
77
        order.customer_id = t_order.customer_id
78
        order.customer_id = t_order.customer_id
78
        order.customer_name = t_order.customer_name
79
        order.customer_name = t_order.customer_name
79
        order.customer_city = t_order.customer_city
80
        order.customer_city = t_order.customer_city
80
        order.customer_state = t_order.customer_state
81
        order.customer_state = t_order.customer_state
Line 196... Line 197...
196
            order.warehouse_id = logistics_info.warehouseId
197
            order.warehouse_id = logistics_info.warehouseId
197
            order.logistics_provider_id = logistics_info.providerId
198
            order.logistics_provider_id = logistics_info.providerId
198
            order.airwaybill_no = logistics_info.airway_billno
199
            order.airwaybill_no = logistics_info.airway_billno
199
            order.tracking_id = order.airwaybill_no
200
            order.tracking_id = order.airwaybill_no
200
            order.expected_delivery_time = current_time + datetime.timedelta(days=logistics_info.deliveryTime)
201
            order.expected_delivery_time = current_time + datetime.timedelta(days=logistics_info.deliveryTime)
-
 
202
            order.promised_delivery_time = order.expected_delivery_time 
201
            
203
            
202
            catalog_client = CatalogClient().get_client()
204
            catalog_client = CatalogClient().get_client()
203
            catalog_client.reserveItemInWarehouse(item_id, logistics_info.warehouseId, order.lineitems[0].quantity)
205
            catalog_client.reserveItemInWarehouse(item_id, logistics_info.warehouseId, order.lineitems[0].quantity)
204
 
206
 
205
            item_pricing = catalog_client.getItemPricing(item_id, order.warehouse_id)
207
            item_pricing = catalog_client.getItemPricing(item_id, order.warehouse_id)
Line 221... Line 223...
221
            order.warehouse_id = logistics_info.warehouseId
223
            order.warehouse_id = logistics_info.warehouseId
222
            order.logistics_provider_id = logistics_info.providerId
224
            order.logistics_provider_id = logistics_info.providerId
223
            order.airwaybill_no = logistics_info.airway_billno
225
            order.airwaybill_no = logistics_info.airway_billno
224
            order.tracking_id = order.airwaybill_no
226
            order.tracking_id = order.airwaybill_no
225
            order.expected_delivery_time = current_time + datetime.timedelta(days=logistics_info.deliveryTime)
227
            order.expected_delivery_time = current_time + datetime.timedelta(days=logistics_info.deliveryTime)
-
 
228
            order.promised_delivery_time = order.expected_delivery_time
226
            
229
            
227
            catalog_client = CatalogClient().get_client()
230
            catalog_client = CatalogClient().get_client()
228
            catalog_client.reserveItemInWarehouse(item_id, logistics_info.warehouseId, order.lineitems[0].quantity)
231
            catalog_client.reserveItemInWarehouse(item_id, logistics_info.warehouseId, order.lineitems[0].quantity)
229
 
232
 
230
            item_pricing = catalog_client.getItemPricing(item_id, order.warehouse_id)
233
            item_pricing = catalog_client.getItemPricing(item_id, order.warehouse_id)
Line 1113... Line 1116...
1113
    new_order.warehouse_id = logistics_info.warehouseId
1116
    new_order.warehouse_id = logistics_info.warehouseId
1114
    new_order.logistics_provider_id = logistics_info.providerId
1117
    new_order.logistics_provider_id = logistics_info.providerId
1115
    new_order.airwaybill_no = logistics_info.airway_billno
1118
    new_order.airwaybill_no = logistics_info.airway_billno
1116
    new_order.tracking_id = new_order.airwaybill_no
1119
    new_order.tracking_id = new_order.airwaybill_no
1117
    new_order.expected_delivery_time = current_time + datetime.timedelta(days=logistics_info.deliveryTime)
1120
    new_order.expected_delivery_time = current_time + datetime.timedelta(days=logistics_info.deliveryTime)
-
 
1121
    new_order.promised_delivery_time = new_order.expected_delivery_time
1118
    
1122
    
1119
    if should_copy_billing_info:
1123
    if should_copy_billing_info:
1120
        new_order.invoice_number = order.invoice_number
1124
        new_order.invoice_number = order.invoice_number
1121
        new_order.billed_by = order.billed_by
1125
        new_order.billed_by = order.billed_by
1122
        new_order.warehouse_id = order.warehouse_id
1126
        new_order.warehouse_id = order.warehouse_id
Line 1315... Line 1319...
1315
    
1319
    
1316
    order.warehouse_id = warehouse_id
1320
    order.warehouse_id = warehouse_id
1317
    session.commit()
1321
    session.commit()
1318
    return order
1322
    return order
1319
 
1323
 
1320
def add_delay_reason(order_id, reason):
1324
def add_delay_reason(order_id, reason, further_delay=0):
1321
    '''
1325
    '''
1322
    Adds a delay reason to the order
1326
    Adds a delay reason to the order
1323
    '''
1327
    '''
1324
    order = get_order(order_id)
1328
    order = get_order(order_id)
1325
    try:
1329
    try:
1326
        order.delay_reason = DelayReason._VALUES_TO_NAMES[reason]
1330
        order.delay_reason = DelayReason._VALUES_TO_NAMES[reason]
-
 
1331
        order.expected_delivery_time = order.expected_delivery_time + datetime.timedelta(days=further_delay)
1327
        session.commit()
1332
        session.commit()
1328
        return True
1333
        return True
1329
    except:
1334
    except:
1330
        return False
1335
        return False
1331
 
1336