| Line 469... |
Line 469... |
| 469 |
warehouses = item.currentInventory.warehouse
|
469 |
warehouses = item.currentInventory.warehouse
|
| 470 |
return warehouses
|
470 |
return warehouses
|
| 471 |
|
471 |
|
| 472 |
def get_best_sellers(start_index, stop_index, category=-1):
|
472 |
def get_best_sellers(start_index, stop_index, category=-1):
|
| 473 |
query = get_best_sellers_query(category)
|
473 |
query = get_best_sellers_query(category)
|
| 474 |
best_sellers = query.order_by(asc(Item.bestSellingRank)).all()[start_index:stop_index]
|
474 |
best_sellers = query.all()[start_index:stop_index]
|
| 475 |
return get_thrift_item_list(best_sellers)
|
475 |
return get_thrift_item_list(best_sellers)
|
| 476 |
|
476 |
|
| 477 |
def get_best_sellers_count(category):
|
477 |
def get_best_sellers_count(category):
|
| 478 |
query = get_best_sellers_query(category)
|
478 |
query = get_best_sellers_query(category)
|
| 479 |
count = query.count()
|
479 |
count = query.count()
|
| 480 |
return count
|
480 |
return count
|
| 481 |
|
481 |
|
| 482 |
def get_best_sellers_catalog_ids(start_index, stop_index, category=-1):
|
482 |
def get_best_sellers_catalog_ids(start_index, stop_index, category=-1):
|
| 483 |
query = get_best_sellers_query(category)
|
483 |
query = get_best_sellers_query(category)
|
| 484 |
best_sellers = query.order_by(asc(Item.bestSellingRank)).all()[start_index:stop_index]
|
484 |
best_sellers = query.all()[start_index:stop_index]
|
| 485 |
return [item.catalog_item_id for item in best_sellers]
|
485 |
return [item.catalog_item_id for item in best_sellers]
|
| 486 |
|
486 |
|
| 487 |
def get_best_sellers_query(category):
|
487 |
def get_best_sellers_query(category):
|
| 488 |
query = Item.query.filter(Item.bestSellingRank != None)
|
488 |
query = Item.query.filter_by(status=status.ACTIVE).filter(Item.bestSellingRank != None)
|
| 489 |
if category != -1:
|
489 |
if category != -1:
|
| 490 |
query = query.filter_by(category=category)
|
490 |
query = query.filter_by(category=category)
|
| - |
|
491 |
query = query.order_by(asc(Item.bestSellingRank))
|
| 491 |
return query
|
492 |
return query
|
| 492 |
|
493 |
|
| 493 |
def get_best_deals():
|
494 |
def get_best_deals(category=-1):
|
| 494 |
items = Item.query.filter(Item.bestDealValue != None).group_by(Item.catalog_item_id).order_by(desc(Item.bestDealValue)).all()
|
495 |
query = get_best_deals_query(category)
|
| - |
|
496 |
items = query.all()
|
| 495 |
return get_thrift_item_list(items)
|
497 |
return get_thrift_item_list(items)
|
| 496 |
|
498 |
|
| 497 |
def get_best_deals_count():
|
499 |
def get_best_deals_count(category=-1):
|
| 498 |
count = Item.query.filter(Item.bestDealValue != None).group_by(Item.catalog_item_id).count()
|
500 |
query = get_best_deals_query(category)
|
| - |
|
501 |
count = query.count()
|
| 499 |
return count
|
502 |
return count
|
| 500 |
|
503 |
|
| 501 |
def get_best_deals_catalog_ids(start_index, stop_index, category=-1):
|
504 |
def get_best_deals_catalog_ids(start_index, stop_index, category=-1):
|
| - |
|
505 |
query = get_best_deals_query(category)
|
| - |
|
506 |
best_deal_items = query.all()[start_index:stop_index]
|
| - |
|
507 |
return [item.catalog_item_id for item in best_deal_items]
|
| - |
|
508 |
|
| - |
|
509 |
def get_best_deals_query(category):
|
| 502 |
query = Item.query.filter(Item.bestDealValue != None)
|
510 |
query = Item.query.filter_by(status=status.ACTIVE).filter(Item.bestDealValue != None)
|
| 503 |
if category != -1:
|
511 |
if category != -1:
|
| 504 |
query = query.filter_by(category=category)
|
512 |
query = query.filter_by(category=category)
|
| 505 |
best_deal_items = query.group_by(Item.catalog_item_id).order_by(desc(Item.bestDealValue)).all()[start_index:stop_index]
|
513 |
query = query.group_by(Item.catalog_item_id).order_by(desc(Item.bestDealValue))
|
| 506 |
return [item.catalog_item_id for item in best_deal_items]
|
514 |
return query
|
| 507 |
|
515 |
|
| 508 |
def get_latest_arrivals(limit):
|
516 |
def get_latest_arrivals(limit, category=-1):
|
| - |
|
517 |
query = get_latest_arrivals_query(category)
|
| 509 |
items = Item.query.group_by(Item.catalog_item_id).order_by(desc(Item.startDate)).all()[0:limit]
|
518 |
items = query.all()[0:limit]
|
| 510 |
return get_thrift_item_list(items)
|
519 |
return get_thrift_item_list(items)
|
| 511 |
|
520 |
|
| 512 |
def get_latest_arrivals_count(limit):
|
521 |
def get_latest_arrivals_count(limit, category=-1):
|
| - |
|
522 |
query = get_latest_arrivals_query(category)
|
| 513 |
#FIXME: This method has not been functionally tested. Have to talk to Rajveer to check where is it used.
|
523 |
#FIXME: This method has not been functionally tested. Have to talk to Rajveer to check where is it used.
|
| 514 |
count = min(Item.query.count(), limit)
|
524 |
count = min(query.count(), limit)
|
| 515 |
return count
|
525 |
return count
|
| 516 |
|
526 |
|
| 517 |
def get_latest_arrivals_catalog_ids(start_index, stop_index, category=-1):
|
527 |
def get_latest_arrivals_catalog_ids(start_index, stop_index, category=-1):
|
| 518 |
query = Item.query
|
528 |
query = get_latest_arrivals_query(category)
|
| - |
|
529 |
latest_arrivals = query.all()[start_index:stop_index]
|
| - |
|
530 |
return [item.catalog_item_id for item in latest_arrivals]
|
| - |
|
531 |
|
| - |
|
532 |
def get_latest_arrivals_query(category):
|
| - |
|
533 |
query = Item.query.filter_by(status=status.ACTIVE)
|
| 519 |
if category != -1:
|
534 |
if category != -1:
|
| 520 |
query = query.filter_by(category=category)
|
535 |
query = query.filter_by(category=category)
|
| 521 |
latest_arrivals = query.group_by(Item.catalog_item_id).order_by(desc(Item.startDate)).all()[start_index:stop_index]
|
536 |
query = query.group_by(Item.catalog_item_id).order_by(desc(Item.startDate))
|
| 522 |
return [item.catalog_item_id for item in latest_arrivals]
|
537 |
return query
|
| 523 |
|
538 |
|
| 524 |
def get_thrift_item_list(items):
|
539 |
def get_thrift_item_list(items):
|
| 525 |
ret_items = []
|
- |
|
| 526 |
for item in items:
|
- |
|
| 527 |
if item:
|
- |
|
| 528 |
ret_items.append(to_t_item(item))
|
540 |
return [to_t_item(item) for item in items if item != None]
|
| 529 |
return ret_items
|
- |
|
| 530 |
|
541 |
|
| 531 |
def put_category_object(object):
|
542 |
def put_category_object(object):
|
| 532 |
category = Category.get_by(id=1)
|
543 |
category = Category.get_by(id=1)
|
| 533 |
if category is None:
|
544 |
if category is None:
|
| 534 |
category = Category()
|
545 |
category = Category()
|