Subversion Repositories SmartDukaan

Rev

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

Rev 23863 Rev 24137
Line 4223... Line 4223...
4223
    # present within it with maximum availability
4223
    # present within it with maximum availability
4224
    stateId = -1
4224
    stateId = -1
4225
    userClient, isFofo = __is_Fofo(userClient, order.customer_id)
4225
    userClient, isFofo = __is_Fofo(userClient, order.customer_id)
4226
    if isFofo:
4226
    if isFofo:
4227
        stateId = warehouse.stateId 
4227
        stateId = warehouse.stateId 
4228
    vendorWarehouse = warehouse
-
 
4229
    if warehouse.id == warehouse.billingWarehouseId:
4228
    if warehouse.id == warehouse.billingWarehouseId:
4230
        warehouse_id = inventoryClient.getItemAvailabilityAtLocation(lineitem.item_id, sourceId, stateId)[0]
4229
        itemAvailabilityLocation = inventoryClient.getItemAvailabilityAtLocation(lineitem.item_id, sourceId, stateId)
-
 
4230
        vendor_warehouse_id=itemAvailabilityLocation[0]
-
 
4231
        billing_warehouse_id=itemAvailabilityLocation[2]
-
 
4232
    else:
4231
        vendorWarehouse = inventoryClient.getWarehouse(warehouse_id)
4233
        vendor_warehouse_id = warehouse_id
-
 
4234
        billing_warehouse_id=warehouse.billingWarehouseId
-
 
4235
        
4232
    #if vendorWarehouse is None or vendorWarehouse.billingWarehouseId != warehouse.id:
4236
    #if vendorWarehouse is None or vendorWarehouse.billingWarehouseId != warehouse.id:
4233
    #assign it to first vendorwarehouse available with 
4237
    #assign it to first vendorwarehouse available with 
4234
    if order.productCondition != ProductCondition.BAD:
4238
    if order.productCondition != ProductCondition.BAD:
4235
        inventoryClient.updateReservationForOrder(lineitem.item_id, warehouse_id, sourceId, order.id, to_java_date(order.created_timestamp), to_java_date(order.promised_shipping_time), lineitem.quantity)
4239
        inventoryClient.updateReservationForOrder(lineitem.item_id, vendor_warehouse_id, sourceId, order.id, to_java_date(order.created_timestamp), to_java_date(order.promised_shipping_time), lineitem.quantity)
4236
    #__update_inventory_reservation(order)
4240
    #__update_inventory_reservation(order)
4237
    if order.status == OrderStatus.ACCEPTED:
4241
    if order.status == OrderStatus.ACCEPTED:
4238
        __update_transfer_price(order, vendorWarehouse.id)
4242
        __update_transfer_price(order, vendor_warehouse_id)
4239
    order.warehouse_id = vendorWarehouse.billingWarehouseId
4243
    order.warehouse_id = billing_warehouse_id
4240
    order.fulfilmentWarehouseId = vendorWarehouse.id
4244
    order.fulfilmentWarehouseId = vendor_warehouse_id
4241
    session.commit()
4245
    session.commit()
4242
    return order
4246
    return order
4243
 
4247
 
4244
def __update_transfer_price(order, warehouse_id):
4248
def __update_transfer_price(order, warehouse_id):
4245
    lineitem = order.lineitems[0]
4249
    lineitem = order.lineitems[0]