Example #1
0
def Highestbid(N, item):
    topN={}
    i=1
    s = Bids.search().sort('-bid_amount')
    topN_result = s.filter("term", item = item.item_name).execute()[:N]
    for bid in topN_result:
        topN[i]=({'Bidder':bid.bidder, 'Item':bid.item, 'Bid Amount': int(bid.bid_amount)}) #int to remove L character from output
        i=i+1
    return topN
Example #2
0
def Highestbid(N, item):
    topN = {}
    i = 1
    s = Bids.search().sort('-bid_amount')
    topN_result = s.filter("term", item=item.item_name).execute()[:N]
    for bid in topN_result:
        topN[i] = ({
            'Bidder': bid.bidder,
            'Item': bid.item,
            'Bid Amount': int(bid.bid_amount)
        })  #int to remove L character from output
        i = i + 1
    return topN
Example #3
0
def sell_items(request, item):
    s = Bids.search()
    s.aggs.bucket('SP', 'terms', field=ITEM_INDEX).metric('max_bid', 'max', field='bid_amount')
    response = s.execute()

    for term in response.aggregations.SP.buckets:
        if term.key == item.item_name:
            selling_price = term.max_bid.value

    buyer = get_bid(item_name=item.item_name, amount=selling_price)[0].bidder
    doc = dict(status="Sold", sold_to=buyer)
    update_item(item= item, key_value=doc)

    return HttpResponse("Item Sold: {0} at {1} to {2}".format(item.item_name, selling_price, buyer))
Example #4
0
def sell_items(request, item):
    s = Bids.search()
    s.aggs.bucket('SP', 'terms', field=ITEM_INDEX).metric('max_bid',
                                                          'max',
                                                          field='bid_amount')
    response = s.execute()

    for term in response.aggregations.SP.buckets:
        if term.key == item.item_name:
            selling_price = term.max_bid.value

    buyer = get_bid(item_name=item.item_name, amount=selling_price)[0].bidder
    doc = dict(status="Sold", sold_to=buyer)
    update_item(item=item, key_value=doc)

    return HttpResponse("Item Sold: {0} at {1} to {2}".format(
        item.item_name, selling_price, buyer))
Example #5
0
def get_bid(bidder=None, item_name = None, amount=None):
    try:
        s= Bids.search()
        if item_name:
            if bidder:
                bid = s.filter("term", item = item_name).filter("term", bidder = bidder).execute()
            elif amount:
                bid = s.filter("term", item = item_name).filter("term", bid_amount = amount).execute()
            else:
                bid = s.filter("term", item = item_name).execute()
        elif bidder:
            bid = s.filter("term", bidder = bidder).execute()
        else:
            print "ERROR: Item_name and Bidder not present"
            bid = False
    except NotFoundError:
        return False
    else:
        return bid
Example #6
0
def get_bid(bidder=None, item_name=None, amount=None):
    try:
        s = Bids.search()
        if item_name:
            if bidder:
                bid = s.filter("term",
                               item=item_name).filter("term",
                                                      bidder=bidder).execute()
            elif amount:
                bid = s.filter("term", item=item_name).filter(
                    "term", bid_amount=amount).execute()
            else:
                bid = s.filter("term", item=item_name).execute()
        elif bidder:
            bid = s.filter("term", bidder=bidder).execute()
        else:
            print "ERROR: Item_name and Bidder not present"
            bid = False
    except NotFoundError:
        return False
    else:
        return bid