Subversion Repositories SmartDukaan

Rev

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

Rev 702 Rev 716
Line 169... Line 169...
169
    if not address:
169
    if not address:
170
        raise ShoppingCartException(101, "No address for this id")
170
        raise ShoppingCartException(101, "No address for this id")
171
    
171
    
172
    cart.address_id = address_id
172
    cart.address_id = address_id
173
    current_time = datetime.datetime.now()
173
    current_time = datetime.datetime.now()
174
    cart.updated_on = current_time
174
    #cart.updated_on = current_time
175
    session.commit()
175
    session.commit()
176
    
176
    
177
def commit_cart(cart_id):   
177
def commit_cart(cart_id):   
178
    cart = get_cart_by_id(cart_id)   
178
    cart = get_cart_by_id(cart_id)   
179
    #now we have a cart. Need to create a transaction with it
179
    #now we have a cart. Need to create a transaction with it
Line 232... Line 232...
232
    t_order.status = OrderStatus.PAYMENT_PENDING
232
    t_order.status = OrderStatus.PAYMENT_PENDING
233
    t_order.statusDescription = "Submitted to warehouse"
233
    t_order.statusDescription = "Submitted to warehouse"
234
    t_order.created_timestamp = to_java_date(datetime.datetime.now())
234
    t_order.created_timestamp = to_java_date(datetime.datetime.now())
235
    
235
    
236
    logistics_client = LogisticsClient().get_client()
236
    logistics_client = LogisticsClient().get_client()
237
    logistics_info = logistics_client.getLogisticsInfo(t_order.customer_pincode, t_line_item.sku_id)
237
    logistics_info = logistics_client.getLogisticsInfo(t_order.customer_pincode, t_line_item.item_id)
238
    
238
    
239
    t_order.logistics_provider_id = logistics_info.provider_id
239
    t_order.logistics_provider_id = logistics_info.providerId
240
    t_order.airwaybill_no = logistics_info.airway_billno
240
    t_order.airwaybill_no = logistics_info.airway_billno
241
    t_order.tracking_id = t_order.airwaybill_no
241
    t_order.tracking_id = t_order.airwaybill_no
242
    t_order.expected_delivery_time = to_java_date(datetime.datetime.now()) + 60*60*1000*logistics_info.delivery_estimate
242
    t_order.expected_delivery_time = to_java_date(datetime.datetime.now()) + 60*60*1000*logistics_info.deliveryTime
243
    t_order.warehouse_id = logistics_info.warehouse_id
243
    t_order.warehouse_id = logistics_info.warehouseId
244
 
244
 
245
    return t_order
245
    return t_order
246
        
246
        
247
def create_line_item(item_id):
247
def create_line_item(item_id):
248
    inventory_client = InventoryClient().get_client()
248
    inventory_client = InventoryClient().get_client()
Line 263... Line 263...
263
    t_line_item.total_price = item.sellingPrice
263
    t_line_item.total_price = item.sellingPrice
264
    t_line_item.total_weight = item.weight
264
    t_line_item.total_weight = item.weight
265
    return t_line_item
265
    return t_line_item
266
 
266
 
267
def get_address_string(address):
267
def get_address_string(address):
268
    return address.line_1 + "\n" + address.line_2 + "\n Landmark: " + address.landmark + "\n"
268
    return address.line_1 + "\n" + address.line_2 + "\n Landmark: " + "\n"
269
    
269
    
270
def validate_cart(cartId):
270
def validate_cart(cartId):
271
    inventory_client = InventoryClient().get_client()
271
    inventory_client = InventoryClient().get_client()
272
    logistics_client = LogisticsClient().get_client()
272
    logistics_client = LogisticsClient().get_client()
273
    retval = True
273
    retval = True
Line 295... Line 295...
295
                    cart.updated_on = current_time
295
                    cart.updated_on = current_time
296
                    retval = False
296
                    retval = False
297
        else:
297
        else:
298
            line.delete()
298
            line.delete()
299
            retval = False
299
            retval = False
-
 
300
    if cart.checked_out_on is not None:
300
    if cart.updated_on > cart.checked_out_on:
301
        if cart.updated_on > cart.checked_out_on:
301
        retval = False
302
            retval = False
302
    session.commit()
303
    session.commit()
303
    return retval
304
    return retval
304
 
305
 
305
def merge_cart(fromCartId, toCartId):
306
def merge_cart(fromCartId, toCartId):
306
    fromCart = Cart.get_by(id=fromCartId)
307
    fromCart = Cart.get_by(id=fromCartId)
Line 324... Line 325...
324
    session.commit()
325
    session.commit()
325
 
326
 
326
def check_out(cartId):
327
def check_out(cartId):
327
    if cartId is None:
328
    if cartId is None:
328
        raise ShoppingCartException(101, "Cart id not specified")
329
        raise ShoppingCartException(101, "Cart id not specified")
329
    cart = Cart.get_by(cartId)
330
    cart = Cart.get_by(id = cartId)
330
    if cart is None:
331
    if cart is None:
331
        raise ShoppingCartException(102, "The specified cart couldn't be found")
332
        raise ShoppingCartException(102, "The specified cart couldn't be found")
332
    cart.checked_out_on = datetime.datetime.now()
333
    cart.checked_out_on = datetime.datetime.now()
333
    session.commit()
334
    session.commit()
334
    return True
335
    return True