示例#1
0
def get_shopmanagers(request):
    ''' 获取门店管理员列表 '''
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('rows', 15))
    shopNo = request.GET.get('shopNo')
    registerStart = request.GET.get('registerStart')
    registerEnd = request.GET.get('registerEnd')

    users = AuthShopManager.objects.filter(is_staff=True)
    if shopNo:
        users = users.filter(shopNo=shopNo)
    if registerStart:
        users = users.filter(date_joined__gte=registerStart)
    if registerEnd:
        users = users.filter(date_joined__lt=cast_endtime(registerEnd))

    count = users.count()  # 总数
    mgrs = users.order_by('-date_joined')[(page - 1) * pagesize:page * pagesize]

    shopNo_list = [item.shopNo for item in mgrs]
    shops = Shop.objects.filter(fiveSysId__in=shopNo_list).values('fiveSysId', 'shopName')

    result = []
    for item in mgrs:
        shopName = safe_dict_value(list(filter(lambda m: m['fiveSysId'] == item.shopNo, shops)), 'shopName')
        result.append(item.to_dict(shopName))

    paged_result.set(page, pagesize, count, result)

    return JsonResponse(paged_result.to_dict())
示例#2
0
def get_activities(request):
    ''' 获取活动列表 '''
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('rows', 15))
    raId = request.GET.get('raId')
    acStart = request.GET.get('acStart')
    acEnd = request.GET.get('acEnd')

    acitivities = RidersActivity.objects.all()
    if raId:
        acitivities = acitivities.filter(raId=raId)
    if acStart:
        acitivities = acitivities.filter(acTime__gte=acStart)
    if acEnd:
        acitivities = acitivities.filter(acTime__lt=cast_endtime(acEnd))

    count = acitivities.count()  # 总数
    acitivities = acitivities.order_by('-createdTime')[(page - 1) *
                                                       pagesize:page *
                                                       pagesize]
    result = [item.to_dict() for item in acitivities]

    paged_result.set(page, pagesize, count, result)

    return JsonResponse(paged_result.to_dict())
示例#3
0
def get_shop_stats(request):
    ''' 获取门店结算数据 '''
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('rows', 15))
    shopNo = request.GET.get('shopNo')
    payTime = request.GET.get('payTime')

    stats = ReceiveMoney.objects.filter(payType=2).extra(
        where=['status & 2=2'])
    if shopNo:
        stats = stats.filter(shopNo=shopNo)
    payTime = datetime.strptime(payTime,
                                '%Y-%m') if payTime else datetime.now()

    stats = stats.filter(payTime__year=payTime.year,
                         payTime__month=payTime.month)

    count = stats.count()  # 总数
    stats = stats[(page - 1) * pagesize:page * pagesize]

    shopNo_list = [item.shopNo for item in stats]
    shops = Shop.objects.filter(fiveSysId__in=shopNo_list).values(
        'fiveSysId', 'shopName')

    result = []
    for item in stats:
        shopName = safe_dict_value(
            list(filter(lambda m: m['fiveSysId'] == item.shopNo, shops)),
            'shopName')
        result.append(item.to_dict(shopName))

    paged_result.set(page, pagesize, count, result)

    return JsonResponse(paged_result.to_dict())
示例#4
0
文件: account.py 项目: KeepFind/5GCat
def get_awardrecords(request):
    ''' 获取充值推荐奖励列表 '''
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('rows', 15))
    poId = request.GET.get('poId')

    awards = []
    if poId:
        try:
            award = AwardRecord.objects.get(payOrder__poId=poId)
            recommend = RecommendRelate.objects.get(
                user__userId=award.user.userId)
        except Exception as e:
            pass
        else:
            award = award.to_dict()

            first_user = safe_id_name(recommend.firstUserId)
            second_user = safe_id_name(recommend.secondUserId)
            third_user = safe_id_name(recommend.threeUserId)

            award['firstUserId'] = first_user['userId']
            award['firstUserName'] = first_user['userName']
            award['secondUserId'] = second_user['userId']
            award['secondUserName'] = second_user['userName']
            award['thirdUserId'] = third_user['userId']
            award['thirdUserName'] = third_user['userName']

            awards = [award]

    count = len(awards)  # 总数
    paged_result.set(page, pagesize, count, awards)

    return JsonResponse(paged_result.to_dict())
示例#5
0
文件: views.py 项目: KeepFind/5GCat
def get_advances(request):
    ''' 获取预约列表 '''
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('rows', 15))
    userId = request.GET.get('userId')
    shopNo = request.GET.get('shopNo')

    advances = AdvanceInfo.objects.all()
    if userId:
        advances = advances.filter(user__userId=userId)
    if shopNo:
        advances = advances.filter(shopNo=shopNo)

    count = advances.count()  # 总数
    advances = advances.order_by('-createdTime')[(page - 1) * pagesize:page *
                                                 pagesize]
    advances = list(advances)

    shopNo_list = [item.shopNo for item in advances]
    shops = Shop.objects.filter(fiveSysId__in=shopNo_list).values(
        'fiveSysId', 'shopName')

    result = []
    for advance in advances:
        shopName = safe_dict_value(
            list(filter(lambda m: m['fiveSysId'] == advance.shopNo, shops)),
            'shopName')
        result.append(advance.to_dict(shopName))

    paged_result.set(page, pagesize, count, result)

    return JsonResponse(paged_result.to_dict())
示例#6
0
文件: views.py 项目: KeepFind/5GCat
def get_obds(request):
    ''' 获取obd设备列表 '''
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('rows', 15))
    sn = request.GET.get('sn')
    purchaseTime = request.GET.get('purchaseTime')
    purchaseTimeEnd = request.GET.get('purchaseTimeEnd')

    obds = ObdDevice.objects.all()
    if sn:
        obds = obds.filter(sn__contains=sn)
    if purchaseTime:
        obds = obds.filter(purchaseTime__gt=purchaseTime)
    if purchaseTimeEnd:
        obds = obds.filter(purchaseTime__lt=cast_endtime(purchaseTimeEnd))

    count = obds.count()  # 总数
    obds = obds.order_by('-purchaseTime')[(page - 1) * pagesize:page *
                                          pagesize]

    obd_sns = [item.sn for item in obds]
    car_obds = CarObd.objects.filter(sn__in=obd_sns).values(
        'sn', 'shopNo', 'carId')  #车辆obd关联数据

    shopNo_list = []
    carId_list = []
    for item in car_obds:
        shopNo_list.append(item['shopNo'])
        carId_list.append(item['carId'])

    shops = Shop.objects.filter(fiveSysId__in=shopNo_list).values(
        'fiveSysId', 'shopName')
    cars = CarInfo.objects.filter(carId__in=carId_list).values(
        'carId', 'carNoFix', 'carNo')

    result = []
    for obd in obds:
        d1 = safe_dict_values(
            list(filter(lambda m: m['sn'] == obd.sn, car_obds)), 'shopNo',
            'carId')
        d2 = safe_dict_values(
            list(filter(lambda m: m['carId'] == d1['carId'], cars)),
            'carNoFix', 'carNo')
        shopName = safe_dict_value(
            list(filter(lambda m: m['fiveSysId'] == d1['shopNo'], shops)),
            'shopName')

        result.append(
            obd.to_dict(d1['shopNo'], shopName, d1['carId'], d2['carNoFix'],
                        d2['carNo']))

    paged_result.set(page, pagesize, count, result)

    return JsonResponse(paged_result.to_dict())
示例#7
0
def get_headlines(request):
    ''' 获取头条列表 '''
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('rows', 15))

    headlines = Headline.objects.all()

    count = headlines.count()  # 总数
    headlines = headlines.order_by('-createdTime')[(page - 1) * pagesize:page * pagesize]
    result = [item.to_dict() for item in headlines]

    paged_result.set(page, pagesize, count, result)

    return JsonResponse(paged_result.to_dict())
示例#8
0
文件: group.py 项目: KeepFind/5GCat
def get_groups(request):
    ''' 获取角色列表 '''
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('rows', 15))
    keyword = request.GET.get('keywords')

    groups = Group.objects.all()
    if keyword:
        groups = groups.filter(name__contains=keyword)  # 按名称查询
    count = groups.count()  # 总数
    groups = groups[(page - 1) * pagesize:page * pagesize]
    result = [{'id': item.id, 'name': item.name} for item in groups]

    paged_result.set(page, pagesize, count, result)

    return JsonResponse(paged_result.to_dict())
示例#9
0
def get_adpositions(request):
    ''' 获取广告位列表 '''
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('rows', 15))

    adpositions = Adposition.objects.all()

    count = adpositions.count()  # 总数
    adpositions = adpositions.order_by('-createdTime')[(page - 1) *
                                                       pagesize:page *
                                                       pagesize]
    result = [item.to_dict() for item in adpositions]

    paged_result.set(page, pagesize, count, result)

    return JsonResponse(paged_result.to_dict())
示例#10
0
def get_users(request):
    ''' 获取管理用户列表 '''
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('rows', 15))
    keyword = request.GET.get('keywords')

    users = AuthUser.objects.all()
    if keyword:
        users = users.filter(username__contains=keyword)  # 按名称查询
    count = users.count()  # 总数
    users = users.order_by('-date_joined')[(page - 1) * pagesize:page *
                                           pagesize]
    result = [item.to_dict() for item in users]

    paged_result.set(page, pagesize, count, result)

    return JsonResponse(paged_result.to_dict())
示例#11
0
文件: product.py 项目: KeepFind/5GCat
def get_products(request):
    ''' 获取产品列表 '''
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('rows', 15))
    keyword = request.GET.get('keywords')

    products = PayInfo.objects.all()
    if keyword:
        products = products.filter(username__contains=keyword)  # 按名称查询
    count = products.count()  # 总数
    users = products.order_by('-createdTime')[(page - 1) * pagesize:page *
                                              pagesize]
    result = [item.to_dict() for item in users]

    paged_result.set(page, pagesize, count, result)

    return JsonResponse(paged_result.to_dict())
示例#12
0
文件: sms.py 项目: KeepFind/5GCat
def get_sms(request):
    ''' 获取短信列表 '''
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('rows', 15))
    raId = request.GET.get('raId')
    acStart = request.GET.get('acStart')
    acEnd = request.GET.get('acEnd')

    sms = SmsRecord.objects.all()

    count = sms.count()  # 总数
    sms = sms.order_by('-sendTime')[(page - 1) * pagesize:page * pagesize]
    result = [item.to_dict() for item in sms]

    paged_result.set(page, pagesize, count, result)

    return JsonResponse(paged_result.to_dict())
示例#13
0
def get_logs(request):
    ''' 获取日志列表 '''
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('rows', 15))
    # raId = request.GET.get('raId')
    actionStart = request.GET.get('actionStart')
    actionEnd = request.GET.get('actionEnd')

    logs = LogEntry.objects.all()
    if actionStart:
        logs = logs.filter(action_time__gte=actionStart)
    if actionEnd:
        logs = logs.filter(action_time__lt=cast_endtime(actionEnd))

    count = logs.count()  # 总数
    logs = logs.order_by('-action_time')[(page - 1) * pagesize:page * pagesize]

    user_ids = list(logs.values_list('user_id', flat=True))
    users = AuthUser.objects.filter(id__in=user_ids).values('id', 'username')

    result = [{
        'id':
        item.id,
        'object_id':
        item.object_id,
        'object_repr':
        item.object_repr,
        'action_flag':
        ACTION_FLAG.get(item.action_flag),
        'ip':
        item.change_message,
        'user_id':
        item.user_id,
        'username':
        safe_dict_value(list(filter(lambda m: m['id'] == item.user_id, users)),
                        'username'),
        'action_time':
        formattime(item.action_time)
    } for item in logs]

    paged_result.set(page, pagesize, count, result)

    return JsonResponse(paged_result.to_dict())
示例#14
0
def get_cars(request):
    ''' 获取车辆列表 '''
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('rows', 15))
    userId = request.GET.get('userId')
    carNo = request.GET.get('carNo')

    cars = CarInfo.objects.all()
    if userId:
        cars = cars.filter(user__userId=userId)
    if carNo:
        cars = cars.filter(carNo__icontains=carNo)

    count = cars.count()  # 总数
    users = cars.order_by('-createdTime')[(page - 1) * pagesize:page * pagesize]
    result = [item.to_dict() for item in users]

    paged_result.set(page, pagesize, count, result)

    return JsonResponse(paged_result.to_dict())
示例#15
0
文件: user.py 项目: KeepFind/5GCat
def get_users(request):
    ''' 获取用户列表 '''
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('rows', 15))
    userId = request.GET.get('userId')
    registerStart = request.GET.get('registerStart')
    registerEnd = request.GET.get('registerEnd')

    users = User.objects.extra(where=['status & 4=0'])  # 非删除、非店长
    if userId:
        users = users.filter(userId=userId)
    if registerStart:
        users = users.filter(registerTime__gte=registerStart)
    if registerEnd:
        users = users.filter(registerTime__lt=cast_endtime(registerEnd))

    count = users.count()  # 总数
    users = users.order_by('-registerTime')[(page - 1) * pagesize:page * pagesize]
    result = [item.to_dict() for item in users]

    paged_result.set(page, pagesize, count, result)

    return JsonResponse(paged_result.to_dict())
示例#16
0
文件: account.py 项目: KeepFind/5GCat
def get_withdraworders(request):
    ''' 获取提现列表 '''
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('rows', 15))
    userId = request.GET.get('userId')
    createStart = request.GET.get('createStart')
    createEnd = request.GET.get('createEnd')

    orders = WithdrawOrder.objects.all()
    if userId:
        orders = WithdrawOrder.objects.filter(user__userId=userId)
    if createStart:
        orders = orders.filter(wrTime__gte=createStart)
    if createEnd:
        orders = orders.filter(wrTime__lt=cast_endtime(createEnd))

    count = orders.count()  # 总数
    users = orders.order_by('-wrTime')[(page - 1) * pagesize:page * pagesize]
    result = [item.to_dict() for item in users]

    paged_result.set(page, pagesize, count, result)

    return JsonResponse(paged_result.to_dict())
示例#17
0
文件: account.py 项目: KeepFind/5GCat
def get_payorders(request):
    ''' 获取充值列表 '''
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('rows', 15))
    userId = request.GET.get('userId')
    payStart = request.GET.get('payStart')
    payEnd = request.GET.get('payEnd')

    orders = PayOrder.objects.all()
    if userId:
        orders = orders.filter(user__userId=userId)
    if payStart:
        orders = orders.filter(payTime__gte=payStart)
    if payEnd:
        orders = orders.filter(payTime__lt=cast_endtime(payEnd))

    count = orders.count()  # 总数
    orders = orders.order_by('-createdTime')[(page - 1) * pagesize:page *
                                             pagesize]
    result = [item.to_dict() for item in orders]

    paged_result.set(page, pagesize, count, result)

    return JsonResponse(paged_result.to_dict())
示例#18
0
文件: shop.py 项目: KeepFind/5GCat
def get_shops(request):
    ''' 获取门店列表 '''
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('rows', 15))
    shopNo = request.GET.get('shopNo')
    createStart = request.GET.get('createStart')
    createEnd = request.GET.get('createEnd')

    shops = Shop.objects.all()
    if shopNo:
        shops = shops.filter(fiveSysId=shopNo)
    if createStart:
        shops = shops.filter(createdTime__gte=createStart)
    if createEnd:
        shops = shops.filter(createdTime__lt=cast_endtime(createEnd))

    count = shops.count()  # 总数
    shops = shops.order_by('-createdTime')[(page - 1) * pagesize:page *
                                           pagesize]
    result = [item.to_dict() for item in shops]

    paged_result.set(page, pagesize, count, result)

    return JsonResponse(paged_result.to_dict())
示例#19
0
文件: ad.py 项目: KeepFind/5GCat
def get_ads(request):
    ''' 获取广告列表 '''
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('rows', 15))
    posiId = request.GET.get('posiId')
    createStart = request.GET.get('createStart')
    createEnd = request.GET.get('createEnd')

    ads = Advertisement.objects.all()
    if posiId:
        ads = ads.filter(adPosition__posiId=posiId)
    if createStart:
        ads = ads.filter(createdTime__gte=createStart)
    if createEnd:
        ads = ads.filter(createdTime__lt=cast_endtime(createEnd))

    count = ads.count()  # 总数
    adpositions = ads.order_by('-createdTime')[(page - 1) * pagesize:page *
                                               pagesize]
    result = [item.to_dict() for item in adpositions]

    paged_result.set(page, pagesize, count, result)

    return JsonResponse(paged_result.to_dict())
示例#20
0
def get_signs(request):
    ''' 获取活动报名列表 '''
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('rows', 15))
    raId = request.GET.get('raId')
    createStart = request.GET.get('createStart')
    createEnd = request.GET.get('createEnd')

    signs = ActivitySign.objects.select_related().all()
    if raId:
        signs = signs.filter(ridersActivity__raId=raId)
    if createStart:
        signs = signs.filter(createdTime__gte=createStart)
    if createEnd:
        signs = signs.filter(createdTime__lt=cast_endtime(createEnd))

    count = signs.count()  # 总数
    signs = signs.order_by('-createdTime')[(page - 1) * pagesize:page *
                                           pagesize]
    result = [item.to_dict() for item in signs]

    paged_result.set(page, pagesize, count, result)

    return JsonResponse(paged_result.to_dict())