| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- from __future__ import division
- from django.conf import settings
- from django.db import transaction
- from django_logit import logit
- from django_response import response
- from paginator import pagination
- from mch.models import BrandInfo, DistributorInfo, SaleclerkInfo
- from utils.error.errno_utils import ProductDistributorStatusCode, SaleclerkStatusCode
- @logit
- def distributor_list(request):
- page = request.POST.get('page', 1)
- num = request.POST.get('num', 20)
- distributors = DistributorInfo.objects.filter(status=True).order_by('distributor_name')
- count = distributors.count()
- distributors, left = pagination(distributors, page, num)
- distributors = [distributor.admindata for distributor in distributors]
- return response(200, 'Get Distributor List Success', u'获取经销商列表成功', {
- 'distributors': distributors,
- 'count': count,
- 'left': left,
- })
- @logit
- def salesman_detail(request):
- user_id = request.POST.get('user_id', '')
- try:
- salesman = SaleclerkInfo.objects.get(user_id=user_id, status=True)
- except SaleclerkInfo.DoesNotExist:
- return response(SaleclerkStatusCode.CLERK_NOT_FOUND)
- return response(200, 'Get Salesman Detail Success', u'获取销售员信息成功', data=salesman.data)
- @logit
- @transaction.atomic
- def salesman_register(request):
- """ 店员授权信息提交 """
- user_id = request.POST.get('user_id', '')
- brand_id = request.POST.get('brand_id') or settings.KODO_DEFAULT_BRAND_ID
- distributor_id = request.POST.get('distributor_id', '')
- unionid = request.POST.get('unionid', '')
- openid = request.POST.get('openid', '')
- phone = request.POST.get('phone', '')
- if SaleclerkInfo.objects.filter(clerk_phone=phone).exclude(unionid=unionid).exists():
- return response(SaleclerkStatusCode.CLERK_PHONE_ALREADY_EXISTS)
- try:
- distributor = DistributorInfo.objects.get(distributor_id=distributor_id)
- except DistributorInfo.DoesNotExist:
- return response(ProductDistributorStatusCode.DISTRIBUTOR_NOT_FOUND)
- fields = {
- 'distributor_id': distributor_id,
- 'user_id': user_id,
- 'distributor_name': distributor.distributor_name,
- 'clerk_name': request.POST.get('name', ''),
- 'clerk_sex': int(request.POST.get('sex', 1)),
- 'clerk_phone': phone,
- 'openid': openid,
- 'user_status': SaleclerkInfo.UNVERIFIED,
- }
- clerk, _ = SaleclerkInfo.objects.update_or_create(brand_id=brand_id, unionid=unionid, defaults=fields)
- return response(200, 'Submit Success', u'提交成功', {})
|