コード例 #1
0
ファイル: views.py プロジェクト: woostersoz/3m
def matchCompanyName(request, id, companySearchName):    
    try:
        company_id = request.user.company_id
        page_number = int(request.GET.get('page_number'))
        items_per_page = int(request.GET.get('per_page'))
        offset = (page_number - 1) * items_per_page
        
        queryset =  Lead.objects(company_id=company_id).aggregate( { '$group': { '_id': '$source_company', 'count': { '$sum': 1 }, 'name' : { '$push': { '$concat': [{'$ifNull': ['$source_first_name', 'Unknown']}, ' ', {'$ifNull':['$source_last_name', 'Unknown']}]} } } }, {'$sort': OrderedDict([('_id', 1), ('count', -1) ])} )
        qlist = list(queryset)
        
        results_temp = matchingAlgo(request, search_name=companySearchName, entries=qlist, object_type='company')
        results = results_temp[offset:offset+items_per_page]
        serializer = AccountCountSerializer(results, many=True)   
        return JsonResponse({'count' : len(results_temp), 'results': serializer.data}) 
        
    except Exception as e:
        return JsonResponse({'Error' : str(e)})  
コード例 #2
0
ファイル: views.py プロジェクト: woostersoz/3m
def matchAccountName(request, id, accountSearchName):
    try:
        if accountSearchName is None:
            return JsonResponse({'count' : 0, 'results': None})  
        
        company_id = request.user.company_id
        
        page_number = int(request.GET.get('page_number'))
        items_per_page = int(request.GET.get('per_page'))
        offset = (page_number - 1) * items_per_page
        
        accounts =  Account.objects(company_id=company_id)
        accounts_list = list(accounts)
        #accounts_list.sort(key=lambda x:len(x.source_name), reverse=False)
        
        results_temp = matchingAlgo(request, search_name=accountSearchName, entries=accounts_list, object_type='account')
        results = results_temp[offset:offset+items_per_page]
        serializer = AccountSerializer(results, many=True)   
        return JsonResponse({'count' : len(results_temp), 'results': serializer.data}) 
    except Exception as e:
        return JsonResponse({'Error' : str(e)})