Sin Descripción

views.py 3.8KB

    # -*- coding: utf-8 -*- from __future__ import division from django.conf import settings from django_logit import logit from django_response import response from TimeConvert import TimeConvert as tc from account.models import UserInfo from mch.models import DistributorInfo from sales.models import (SalesResponsibilityInfo, SalesResponsibilityInfoModelsSaleStatisticInfo, SuperSalesResponsibilityInfoModelsSaleStatisticInfo) from utils.error.errno_utils import SalesResponsibilityStatusCode, UserStatusCode @logit def sr_submit_api(request): brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID) user_id = request.POST.get('user_id', '') name = request.POST.get('name', '') phone = request.POST.get('phone', '') if SalesResponsibilityInfo.objects.filter(brand_id=brand_id, phone=phone).exclude(user_id=user_id).exists(): return response(SalesResponsibilityStatusCode.SR_PHONE_ALREADY_EXISTS) try: user = UserInfo.objects.get(user_id=user_id) except UserInfo.DoesNotExist: return response(UserStatusCode.USER_NOT_FOUND) SalesResponsibilityInfo.objects.update_or_create(unionid=user.unionid, brand_id=brand_id, defaults={ 'user_id': user.user_id, 'openid': user.openid, 'name': name, 'phone': phone, 'avatar': user.avatar, 'user_status': SalesResponsibilityInfo.UNVERIFIED, 'status': True, }) return response(200, 'Submit Success', u'提交成功', {}) @logit def sr_distributor_list(request): brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID) sr_id = request.POST.get('sr_id', '') distributors = DistributorInfo.objects.filter(brand_id=brand_id, sr_id=sr_id, status=True) distributors = [d.admindata for d in distributors] return response(data={ 'distributors': distributors, }) @logit def sr_distributor_tj(request): brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID) distributor_id = request.POST.get('distributor_id', '') sales = SalesResponsibilityInfoModelsSaleStatisticInfo.objects.filter(brand_id=brand_id, distributor_id=distributor_id, ymd=tc.local_string(format='%Y%m%d'), status=True).order_by('-is_important', '-yesterday_num', '-current_month', '-last_month') sales = [sale.data for sale in sales] today_num = yesterday_num = current_month = last_month = 0 for sale in sales: today_num += sale.get('today_num', 0) yesterday_num += sale.get('yesterday_num', 0) current_month += sale.get('current_month', 0) last_month += sale.get('last_month', 0) return response(data={ 'sales': sales, 'total': { 'today_num': today_num, 'yesterday_num': yesterday_num, 'current_month': current_month, 'last_month': last_month, }, }) @logit def supersr_sr_tj(request): brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID) sr_id = request.POST.get('sr_id', '') sales = SuperSalesResponsibilityInfoModelsSaleStatisticInfo.objects.filter(brand_id=brand_id, ymd=tc.local_string(format='%Y%m%d'), status=True).order_by('-yesterday_num', '-current_month', '-last_month') sales = [sale.data for sale in sales] today_num = yesterday_num = current_month = last_month = 0 for sale in sales: today_num += sale.get('today_num', 0) yesterday_num += sale.get('yesterday_num', 0) current_month += sale.get('current_month', 0) last_month += sale.get('last_month', 0) return response(data={ 'sales': sales, 'total': { 'today_num': today_num, 'yesterday_num': yesterday_num, 'current_month': current_month, 'last_month': last_month, }, })