|
|
@@ -3,7 +3,6 @@
|
3
|
3
|
from __future__ import division
|
4
|
4
|
|
5
|
5
|
from django.conf import settings
|
6
|
|
-from django.db import transaction
|
7
|
6
|
from django.shortcuts import render
|
8
|
7
|
from django_logit import logit
|
9
|
8
|
from django_response import response
|
|
|
@@ -12,8 +11,8 @@ from paginator import pagination
|
12
|
11
|
from account.models import SaleclerkInfo, UserInfo
|
13
|
12
|
from integral.models import SaleclerkIntegralIncomeExpensesInfo, SaleclerkSubmitLogInfo
|
14
|
13
|
from mch.models import ModelInfo
|
15
|
|
-from product.models import ProductCodeSubmitLogInfo, ProductInfo, ProductModelInfo
|
16
|
|
-from utils.error.errno_utils import ProductModelStatusCode, ProductStatusCode, SaleclerkStatusCode
|
|
14
|
+from product.models import ProductModelInfo
|
|
15
|
+from utils.error.errno_utils import ProductModelStatusCode, SaleclerkStatusCode
|
17
|
16
|
|
18
|
17
|
|
19
|
18
|
def clerk_sale_oauth(request):
|
|
|
@@ -152,93 +151,3 @@ def clerk_integral_list_api(request):
|
152
|
151
|
'integrals': integrals,
|
153
|
152
|
'total_integral': clerk.integral,
|
154
|
153
|
})
|
155
|
|
-
|
156
|
|
-
|
157
|
|
-@logit
|
158
|
|
-@transaction.atomic
|
159
|
|
-def clerk_sale_submit_api_bak(request):
|
160
|
|
- """ 店员信息提交 """
|
161
|
|
- step = int(request.POST.get('step', 1))
|
162
|
|
-
|
163
|
|
- clerk_id = request.POST.get('clerk_id', '')
|
164
|
|
- model_id = request.POST.get('model_id', '')
|
165
|
|
- mount = request.POST.get('mount', 'NO')
|
166
|
|
- code = request.POST.get('code', '')
|
167
|
|
- name = request.POST.get('name', '')
|
168
|
|
- sex = int(request.POST.get('sex', 1))
|
169
|
|
- age = int(request.POST.get('age', 1))
|
170
|
|
- phone = request.POST.get('phone', '')
|
171
|
|
-
|
172
|
|
- # 店员是否存在
|
173
|
|
- try:
|
174
|
|
- clerk = SaleclerkInfo.objects.select_for_update().get(clerk_id=clerk_id)
|
175
|
|
- except SaleclerkInfo.DoesNotExist:
|
176
|
|
- return response(SaleclerkStatusCode.CLERK_NOT_FOUND)
|
177
|
|
-
|
178
|
|
- # 店员是否激活
|
179
|
|
- if clerk.user_status != SaleclerkInfo.ACTIVATED:
|
180
|
|
- return response(SaleclerkStatusCode.CLERK_NOT_ACTIVATED)
|
181
|
|
-
|
182
|
|
- # 型号是否存在
|
183
|
|
- try:
|
184
|
|
- model = ProductModelInfo.objects.get(model_id=model_id)
|
185
|
|
- except ProductModelInfo.DoesNotExist:
|
186
|
|
- return response(ProductModelStatusCode.MODEL_NOT_FOUND)
|
187
|
|
-
|
188
|
|
- # 记录销售提交记录
|
189
|
|
- ProductCodeSubmitLogInfo.objects.create(
|
190
|
|
- model_id=model.model_id,
|
191
|
|
- model_name=model.model_name,
|
192
|
|
- mount=mount,
|
193
|
|
- code=code,
|
194
|
|
- franchiser_id=clerk.franchiser_id,
|
195
|
|
- clerk_id=clerk.clerk_id,
|
196
|
|
- consumer_name=name,
|
197
|
|
- consumer_sex=sex,
|
198
|
|
- consumer_age=age,
|
199
|
|
- consumer_phone=phone,
|
200
|
|
- )
|
201
|
|
-
|
202
|
|
- # 产品是否存在
|
203
|
|
- try:
|
204
|
|
- product = ProductInfo.objects.select_for_update().get(model_id=model_id, mount=mount, code=code)
|
205
|
|
- except ProductInfo.DoesNotExist:
|
206
|
|
- return response(ProductStatusCode.PRODUCT_NOT_FOUND)
|
207
|
|
-
|
208
|
|
- # 产品是否使用
|
209
|
|
- if step == 1 and product.code_status:
|
210
|
|
- return response(ProductStatusCode.PRODUCT_HAS_USED)
|
211
|
|
- if step == 2 and not product.code_status:
|
212
|
|
- return response(ProductStatusCode.PRODUCT_NOT_USED)
|
213
|
|
-
|
214
|
|
- # 产品使用
|
215
|
|
- product.code_status = True
|
216
|
|
- product.integral_status = True
|
217
|
|
- product.franchiser_id = clerk.franchiser_id
|
218
|
|
- product.clerk_id = clerk.clerk_id
|
219
|
|
- if 'name' in request.POST:
|
220
|
|
- product.consumer_name = name
|
221
|
|
- if 'sex' in request.POST:
|
222
|
|
- product.consumer_sex = sex
|
223
|
|
- if 'age' in request.POST:
|
224
|
|
- product.consumer_age = age
|
225
|
|
- if 'phone' in request.POST:
|
226
|
|
- product.consumer_phone = phone
|
227
|
|
- product.save()
|
228
|
|
-
|
229
|
|
- # 店员积分
|
230
|
|
- clerk.integral += product.integral
|
231
|
|
- clerk.save()
|
232
|
|
-
|
233
|
|
- # 店员积分记录
|
234
|
|
- SaleclerkIntegralIncomeExpensesInfo.objects.create(
|
235
|
|
- franchiser_id=clerk.franchiser_id,
|
236
|
|
- clerk_id=clerk.clerk_id,
|
237
|
|
- type=SaleclerkIntegralIncomeExpensesInfo.INCOME,
|
238
|
|
- code=code,
|
239
|
|
- integral=product.integral,
|
240
|
|
- left_integral=clerk.integral,
|
241
|
|
- test_user=clerk.test_user,
|
242
|
|
- )
|
243
|
|
-
|
244
|
|
- return response(200, 'Submit Success', u'提交成功', {})
|