Subversion Repositories SmartDukaan

Rev

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

Rev 13034 Rev 13037
Line 426... Line 426...
426
                order.promised_shipping_time = order.expected_shipping_time
426
                order.promised_shipping_time = order.expected_shipping_time
427
                order.expected_delivery_time = (current_time + datetime.timedelta(days=logistics_info.deliveryTime)).replace(hour=PREPAID_SHIPPING_CUTOFF_TIME, minute=0, second=0)
427
                order.expected_delivery_time = (current_time + datetime.timedelta(days=logistics_info.deliveryTime)).replace(hour=PREPAID_SHIPPING_CUTOFF_TIME, minute=0, second=0)
428
                order.promised_delivery_time = order.expected_delivery_time
428
                order.promised_delivery_time = order.expected_delivery_time
429
 
429
 
430
            inventory_client = InventoryClient().get_client()
430
            inventory_client = InventoryClient().get_client()
-
 
431
            fulfilmentWarehouseId = logistics_info.fulfilmentWarehouseId
431
            if OrderType.B2B == order.orderType:
432
            if OrderType.B2B == order.orderType:
432
                #get state
433
                #get state
433
                stateMaster = fetchStateMaster()
434
                stateMaster = fetchStateMaster()
434
                stateId = -1
435
                stateId = -1
435
                for k, v in stateMaster.iteritems():
436
                for k, v in stateMaster.iteritems():
Line 447... Line 448...
447
                        raise TransactionServiceException(108, "No availability from this location")
448
                        raise TransactionServiceException(108, "No availability from this location")
448
                    fulfilmentWarehouseId = goodWhIds[0]
449
                    fulfilmentWarehouseId = goodWhIds[0]
449
                    for goodWhId in goodWhIds:
450
                    for goodWhId in goodWhIds:
450
                        availability = inventory_client.getItemAvailibilityAtWarehouse(goodWhId, order.lineitems[0].item_id)
451
                        availability = inventory_client.getItemAvailibilityAtWarehouse(goodWhId, order.lineitems[0].item_id)
451
                        if availability > 0:
452
                        if availability > 0:
452
                            fulfillmentWh = inventory_client.getWarehouse(goodWhId)
-
 
453
                            order.warehouse_id = fulfillmentWh.billingWarehouseId
-
 
454
                            fulfilmentWarehouseId = goodWhId
453
                            fulfilmentWarehouseId = goodWhId
455
                        break
454
                            break
456
                    
455
                    
457
                    order.fulfilmentWarehouseId = fulfilmentWarehouseId
456
                    order.fulfilmentWarehouseId = fulfilmentWarehouseId
458
            
-
 
459
              
457
                    fulfillmentWh = inventory_client.getWarehouse(fulfilmentWarehouseId)
460
                
458
                    order.warehouse_id = fulfillmentWh.billingWarehouseId
461
                            
459
                            
462
            if order.pickupStoreId:
460
            if order.pickupStoreId:
463
                order.otg = False
461
                order.otg = False
464
                
462
                
465
            if order.productCondition != ProductCondition.BAD:
463
            if order.productCondition != ProductCondition.BAD:
466
                inventory_client.reserveItemInWarehouse(item_id, logistics_info.fulfilmentWarehouseId, sourceId, order.id, to_java_date(order.created_timestamp), to_java_date(order.promised_shipping_time), order.lineitems[0].quantity)
464
                inventory_client.reserveItemInWarehouse(item_id, fulfilmentWarehouseId, sourceId, order.id, to_java_date(order.created_timestamp), to_java_date(order.promised_shipping_time), order.lineitems[0].quantity)
467
 
465
            
468
            try:
466
            try:
469
                item_pricing = inventory_client.getItemPricing(item_id, -1)
467
                item_pricing = inventory_client.getItemPricing(item_id, -1)
470
                order.lineitems[0].transfer_price = item_pricing.transferPrice
468
                order.lineitems[0].transfer_price = item_pricing.transferPrice
471
                order.lineitems[0].nlc = item_pricing.nlc
469
                order.lineitems[0].nlc = item_pricing.nlc
472
            except:
470
            except:
Line 519... Line 517...
519
                order.promised_shipping_time = order.expected_shipping_time
517
                order.promised_shipping_time = order.expected_shipping_time
520
                order.expected_delivery_time = (current_time + datetime.timedelta(days=logistics_info.deliveryTime)).replace(hour=COD_SHIPPING_CUTOFF_TIME, minute=0, second=0)
518
                order.expected_delivery_time = (current_time + datetime.timedelta(days=logistics_info.deliveryTime)).replace(hour=COD_SHIPPING_CUTOFF_TIME, minute=0, second=0)
521
                order.promised_delivery_time = order.expected_delivery_time
519
                order.promised_delivery_time = order.expected_delivery_time
522
            
520
            
523
            inventory_client = InventoryClient().get_client()
521
            inventory_client = InventoryClient().get_client()
-
 
522
            fulfilmentWarehouseId = logistics_info.fulfilmentWarehouseId
524
            if OrderType.B2B == order.orderType:
523
            if OrderType.B2B == order.orderType:
525
                #get state
524
                #get state
526
                stateMaster = fetchStateMaster()
525
                stateMaster = fetchStateMaster()
527
                stateId = -1
526
                stateId = -1
528
                for k, v in stateMaster.iteritems():
527
                for k, v in stateMaster.iteritems():
Line 541... Line 540...
541
                        raise TransactionServiceException(108, "No availability from this location")
540
                        raise TransactionServiceException(108, "No availability from this location")
542
                    fulfilmentWarehouseId = goodWhIds[0]
541
                    fulfilmentWarehouseId = goodWhIds[0]
543
                    for goodWhId in goodWhIds:
542
                    for goodWhId in goodWhIds:
544
                        availability = inventory_client.getItemAvailibilityAtWarehouse(goodWhId, order.lineitems[0].item_id)
543
                        availability = inventory_client.getItemAvailibilityAtWarehouse(goodWhId, order.lineitems[0].item_id)
545
                        if availability > 0:
544
                        if availability > 0:
546
                            fulfillmentWh = inventory_client.getWarehouse(goodWhId)
-
 
547
                            order.warehouse_id = fulfillmentWh.billingWarehouseId
-
 
548
                            fulfilmentWarehouseId = goodWhId
545
                            fulfilmentWarehouseId = goodWhId
549
                        break
546
                            break
550
                    
547
                    
551
                    order.fulfilmentWarehouseId = fulfilmentWarehouseId
548
                    order.fulfilmentWarehouseId = fulfilmentWarehouseId
-
 
549
                    fulfillmentWh = inventory_client.getWarehouse(fulfilmentWarehouseId)
-
 
550
                    order.warehouse_id = fulfillmentWh.billingWarehouseId
552
            
551
                            
553
            if order.productCondition != ProductCondition.BAD:
552
            if order.productCondition != ProductCondition.BAD:
554
                inventory_client.reserveItemInWarehouse(item_id, logistics_info.fulfilmentWarehouseId, sourceId, order.id, to_java_date(order.created_timestamp), to_java_date(order.promised_shipping_time), order.lineitems[0].quantity)
553
                inventory_client.reserveItemInWarehouse(item_id, fulfilmentWarehouseId, sourceId, order.id, to_java_date(order.created_timestamp), to_java_date(order.promised_shipping_time), order.lineitems[0].quantity)
555
 
554
            
556
            try:
555
            try:
557
                item_pricing = inventory_client.getItemPricing(item_id, -1)
556
                item_pricing = inventory_client.getItemPricing(item_id, -1)
558
                order.lineitems[0].transfer_price = item_pricing.transferPrice
557
                order.lineitems[0].transfer_price = item_pricing.transferPrice
559
                order.lineitems[0].nlc = item_pricing.nlc        
558
                order.lineitems[0].nlc = item_pricing.nlc        
560
            except:
559
            except: