+    openid = request.POST.get('openid', '')
21
+    phone = request.POST.get('phone', '')
22
+
23
+    if SalesResponsibilityInfo.objects.filter(brand_id=brand_id, phone=phone).exclude(user_id=user_id).exists():
24
+        return response(SalesResponsibilityStatusCode.SR_PHONE_ALREADY_EXISTS)
25
+
26
+    SalesResponsibilityInfo.objects.update_or_create(brand_id=brand_id, user_id=user_id, defaults={
27
+        'name': request.POST.get('name', ''),
28
+        'phone': request.POST.get('phone', ''),
29
+        'unionid': unionid,
30
+        'openid': openid,
31
+        'user_status': SalesResponsibilityInfo.UNVERIFIED,
32
+        'status': True,
33
+    })
34
+
35
+    return response(200, 'Submit Success', u'提交成功', {})
36
+
37
+
38
+@logit
39
+def sr_distributor_list(request):
40
+    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
41
+    user_id = request.POST.get('user_id', '')
42
+    sr_id = request.POST.get('sr_id', '')
43
+
44
+    # if not sr_id:
45
+    #     try:
46
+    #         sr = SalesResponsibilityInfo.objects.get(brand_id=brand_id, user_id=user_id)
47
+    #     except SalesResponsibilityInfo.DoesNotExist:
48
+    #         return response(SalesResponsibilityStatusCode.SR_NOT_FOUND)
49
+    #     sr_id = sr.sr_id
50
+
51
+    distributors = DistributorInfo.objects.filter(brand_id=brand_id, sr_id=sr_id, status=True)
52
+    distributors = [d.admindata for d in distributors]
53
+
54
+    return response(data={
55
+        'distributors': distributors,
56
+    })
57
+
58
+
59
+@logit
60
+def sr_distributor_tj(request):
61
+    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
62
+    distributor_id = request.POST.get('distributor_id', '')
63
+
64
+    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')
65
+    sales = [sale.data for sale in sales]
66
+
67
+    return response(data={
68
+        'sales': sales,
69
+    })
70
+
71
+
72
+@logit
73
+def supersr_sr_tj(request):
74
+    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
75
+    sr_id = request.POST.get('sr_id', '')
76
+
77
+    sales = SuperSalesResponsibilityInfoModelsSaleStatisticInfo.objects.filter(brand_id=brand_id, sr_id=sr_id, ymd=tc.local_string(format='%Y%m%d'), status=True).order_by('-is_important')
78
+    sales = [sale.data for sale in sales]
79
+
80
+    return response(data={
81
+        'sales': sales,
82
+    })

+ 7 - 0
utils/error/errno_utils.py

@@ -16,6 +16,13 @@ class SaleclerkStatusCode(BaseStatusCode):
16 16
     DUPLICATE_SUBMIT = StatusCodeField(500199, 'Duplicate Submit', description=u'重复提交')
17 17
 
18 18
 
19
+class SalesResponsibilityStatusCode(BaseStatusCode):
20
+    """ 销售担当相关错误码 5002xx """
21
+    SR_NOT_FOUND = StatusCodeField(500201, 'SR Not Found', description=u'销售担当不存在')
22
+    # 手机号
23
+    SR_PHONE_ALREADY_EXISTS = StatusCodeField(500205, 'SR Phone Already Exists', description=u'手机号已经存在')
24
+
25
+
19 26
 class ProductBrandStatusCode(BaseStatusCode):
20 27
     """ 品牌相关错误码 5010xx """
21 28
     BRAND_NOT_FOUND = StatusCodeField(501001, 'Brand Not Found', description=u'品牌不存在')

pai2 - Gogs: Go Git Service

拍爱

Brightcells: e920b279d1 send message for all watched users 10 ans auparavant
..
migrations 102152ca4a add api lensman_photo_bought & modify api wx_order_create_api and adjust return field 10 ans auparavant
__init__.py e184e7dd5b add api group_create/group_join 11 ans auparavant
admin.py afcdf74a49 add api group_data_api 10 ans auparavant
models.py e4567ea2de fix call set_group_users_info after group user removed 10 ans auparavant
serializers.py f72ccb1875 isort import 10 ans auparavant
tests.py fabef63211 set line_length=200 for isort 10 ans auparavant
views.py e920b279d1 send message for all watched users 10 ans auparavant