説明なし

consumer_admin_view.py 2.9KB

    # -*- coding: utf-8 -*- from __future__ import division from django.db import transaction from django.db.models import Q from django_logit import logit from django_response import response from paginator import pagination from TimeConvert import TimeConvert as tc from account.models import UserInfo from kodo.decorators import check_admin from mch.models import AdministratorInfo, ConsumeShotUnbindingInfo, ConsumeInfoSubmitLogInfo, ModelInfo @logit @check_admin def consumer_shot_unbinding_list(request, administrator): start_time = request.POST.get('start_time', '') end_time = request.POST.get('end_time', '') query = request.POST.get('query', '') model_id = request.POST.get('model_id', '') page = request.POST.get('page', 1) num = request.POST.get('num', 20) unbindings = ConsumeShotUnbindingInfo.objects.filter(status=True).order_by('-created_at') if query: user_ids = [] try: user_ids = UserInfo.objects.filter(phone__icontains=query, status=True).values_list('user_id', flat=True) except UserInfo.DoesNotExist: pass unbindings = unbindings.filter(Q(sn__icontains=query) | Q(user_id__in=user_ids)) if start_time and end_time: start_time = tc.string_to_utc_datetime(start_time, format='%Y%m%d') end_time = tc.string_to_utc_datetime(end_time + ' 23:59:59', format='%Y%m%d %H:%M:%S') unbindings = unbindings.filter(created_at__range=(start_time, end_time)) if model_id: unbindings = unbindings.filter(model_id=model_id) count = unbindings.count() unbindings, left = pagination(unbindings, page, num) unbindings = [unbinding.admindata for unbinding in unbindings] return response(200, 'Get Cosumer Shot Unbinding List Success', u'消费者镜头解绑列表获取成功', data={ 'unbindings': unbindings, 'count': count, 'left': left }) @logit @check_admin def consumer_shot_unbinding_delete(request, administrator): pk = request.POST.get('pk', '') unbinding_info = ConsumeShotUnbindingInfo.objects.get(pk=pk) unbinding_info.status = False unbinding_info.delete() log_info = ConsumeInfoSubmitLogInfo.objects.get(pk=unbinding_info.submit_pk) log_info.status = True log_info.delete_type = ConsumeInfoSubmitLogInfo.UNDELETE log_info.save() if not log_info.unbound: try: user = UserInfo.objects.get(user_id=log_info.user_id) user.shots_num += 1 user.integral += log_info.integral model = ModelInfo.objects.get(model_id=log_info.model_id) if user.level < UserInfo.MEMBER_BLACK_GOLD and model.shot_type_id != 'V6PkivthL4sdADp4GNpQ4C': user.level += 1 user.save() except UserInfo.DoesNotExist: pass return response(200, 'Get Cosumer Shot Unbinding Delete Success', u'消费者镜头解绑记录删除成功')