|
|
@@ -14,6 +14,7 @@ from django_logit import logit
|
14
|
14
|
from django_response import response
|
15
|
15
|
from paginator import pagination
|
16
|
16
|
from TimeConvert import TimeConvert as tc
|
|
17
|
+from django.utils.timezone import utc
|
17
|
18
|
|
18
|
19
|
from account.models import UserInfo
|
19
|
20
|
from integral.models import SaleclerkSubmitLogInfo
|
|
|
@@ -171,7 +172,17 @@ def query_usergoods(request):
|
171
|
172
|
def query_userinfo(request):
|
172
|
173
|
brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
|
173
|
174
|
admin_id = request.POST.get('admin_id', '')
|
174
|
|
- phone = request.POST.get('phone', '')
|
|
175
|
+ query = request.POST.get('query', '')
|
|
176
|
+ level = request.POST.get('level', '')
|
|
177
|
+ is_member = request.POST.get('is_member', '')
|
|
178
|
+ code_version = request.POST.get('code_version', 0)
|
|
179
|
+ subscribe = request.POST.get('subscribe', '')
|
|
180
|
+ has_membercard = request.POST.get('has_membercard', '')
|
|
181
|
+ start_time = request.POST.get('start_time', '')
|
|
182
|
+ end_time = request.POST.get('end_time', '')
|
|
183
|
+ user_id = request.POST.get('user_id', '')
|
|
184
|
+ page = request.POST.get('page', 1)
|
|
185
|
+ num = request.POST.get('num', 20)
|
175
|
186
|
|
176
|
187
|
if brand_id != settings.KODO_DEFAULT_BRAND_ID:
|
177
|
188
|
return response(ProductBrandStatusCode.BRAND_NOT_MATCH)
|
|
|
@@ -181,11 +192,36 @@ def query_userinfo(request):
|
181
|
192
|
except AdministratorInfo.DoesNotExist:
|
182
|
193
|
return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND)
|
183
|
194
|
|
184
|
|
- userinfos = UserInfo.objects.filter(status=True, phone=phone).order_by('-created_at')
|
|
195
|
+ userinfos = UserInfo.objects.filter(Q(status=True) & Q(user_id__icontains=user_id) & (Q(nickname__icontains=query) | Q(phone__icontains=query))).order_by('-created_at')
|
|
196
|
+
|
|
197
|
+ if level != '':
|
|
198
|
+ userinfos = userinfos.filter(level=level)
|
|
199
|
+
|
|
200
|
+ if code_version != '':
|
|
201
|
+ userinfos = userinfos.filter(code_version=code_version)
|
|
202
|
+
|
|
203
|
+ if subscribe != '':
|
|
204
|
+ userinfos = userinfos.filter(subscribe=subscribe)
|
|
205
|
+
|
|
206
|
+ if has_membercard != '':
|
|
207
|
+ userinfos = userinfos.filter(has_membercard=has_membercard)
|
|
208
|
+
|
|
209
|
+ if is_member != '':
|
|
210
|
+ userinfos = userinfos.filter(level__gte=1)
|
|
211
|
+
|
|
212
|
+ if start_time != '' and end_time != '':
|
|
213
|
+ ftime = datetime.strptime(start_time + ' 00:00:00', '%Y%m%d %H:%M:%S')
|
|
214
|
+ ttime = datetime.strptime(end_time + ' 23:59:59', '%Y%m%d %H:%M:%S')
|
|
215
|
+ userinfos = userinfos.filter(created_at__range=[ftime, ttime])
|
|
216
|
+
|
|
217
|
+ count = userinfos.count()
|
|
218
|
+ userinfos, left = pagination(userinfos, page, num)
|
185
|
219
|
userinfos = [userinfo.admindata for userinfo in userinfos]
|
186
|
220
|
|
187
|
221
|
return response(200, 'Userinfo Success', u'用户列表获取成功', data={
|
188
|
222
|
'userinfos': userinfos,
|
|
223
|
+ 'count': count,
|
|
224
|
+ 'left': left
|
189
|
225
|
})
|
190
|
226
|
|
191
|
227
|
|
|
|
@@ -566,7 +602,8 @@ def record_consumer(request):
|
566
|
602
|
start_time = request.POST.get('start_time', '')
|
567
|
603
|
end_time = request.POST.get('end_time', '')
|
568
|
604
|
query = request.POST.get('query', '')
|
569
|
|
- dupload = request.POST.get('dupload', 0)
|
|
605
|
+ dupload = request.POST.get('dupload', '')
|
|
606
|
+ code_version = request.POST.get('code_version', 0)
|
570
|
607
|
|
571
|
608
|
if brand_id != settings.KODO_DEFAULT_BRAND_ID:
|
572
|
609
|
return response(ProductBrandStatusCode.BRAND_NOT_MATCH)
|
|
|
@@ -576,7 +613,16 @@ def record_consumer(request):
|
576
|
613
|
except AdministratorInfo.DoesNotExist:
|
577
|
614
|
return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND)
|
578
|
615
|
|
579
|
|
- logs = ConsumeInfoSubmitLogInfo.objects.filter(Q(status=True) & Q(ymd__gte=start_time) & Q(ymd__lte=end_time) & Q(test_user=False) & (Q(model_name__contains=query) | Q(phone__contains=query) | Q(serialNo__contains=query))).order_by('-created_at')
|
|
616
|
+ logs = ConsumeInfoSubmitLogInfo.objects.filter(Q(status=True) & Q(test_user=False) & (Q(model_name__icontains=query) | Q(phone__icontains=query) | Q(serialNo__icontains=query))).order_by('-created_at')
|
|
617
|
+
|
|
618
|
+ if dupload != '':
|
|
619
|
+ logs = logs.filter(dupload=dupload)
|
|
620
|
+
|
|
621
|
+ if code_version != '':
|
|
622
|
+ logs = logs.filter(code_version=code_version)
|
|
623
|
+
|
|
624
|
+ if start_time and end_time:
|
|
625
|
+ logs = logs.filter(ymd__gte=start_time, ymd__lte=end_time)
|
580
|
626
|
|
581
|
627
|
count = logs.count()
|
582
|
628
|
logs, left = pagination(logs, page, num)
|
|
|
@@ -596,6 +642,10 @@ def record_sale(request):
|
596
|
642
|
start_time = request.POST.get('start_time', '')
|
597
|
643
|
end_time = request.POST.get('end_time', '')
|
598
|
644
|
query = request.POST.get('query', '')
|
|
645
|
+ dupload = request.POST.get('dupload', '')
|
|
646
|
+ has_scan = request.POST.get('has_scan', '')
|
|
647
|
+ code_version = request.POST.get('code_version', 0)
|
|
648
|
+ is_online_sale = request.POST.get('is_online_sale', '')
|
599
|
649
|
|
600
|
650
|
if brand_id != settings.KODO_DEFAULT_BRAND_ID:
|
601
|
651
|
return response(ProductBrandStatusCode.BRAND_NOT_MATCH)
|
|
|
@@ -605,7 +655,23 @@ def record_sale(request):
|
605
|
655
|
except AdministratorInfo.DoesNotExist:
|
606
|
656
|
return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND)
|
607
|
657
|
|
608
|
|
- logs = SaleclerkSubmitLogInfo.objects.filter(Q(status=True) & Q(ymd__gte=start_time) & Q(ymd__lte=end_time) & Q(test_user=False) & Q(test_sn=False) & (Q(model_name__contains=query) | Q(clerk_name__contains=query) | Q(distributor_name__contains=query)| Q(code__contains=query))).order_by('-created_at')
|
|
658
|
+ logs = SaleclerkSubmitLogInfo.objects.filter(Q(status=True) & Q(test_user=False) & Q(test_sn=False) & (Q(model_name__icontains=query) | Q(clerk_name__icontains=query) | Q(distributor_name__icontains=query)| Q(code__icontains=query))).order_by('-created_at')
|
|
659
|
+
|
|
660
|
+ if dupload != '':
|
|
661
|
+ logs = logs.filter(dupload=dupload)
|
|
662
|
+
|
|
663
|
+ if code_version:
|
|
664
|
+ logs = logs.filter(code_version=code_version)
|
|
665
|
+
|
|
666
|
+ if has_scan != '':
|
|
667
|
+ logs = logs.filter(has_scan=has_scan)
|
|
668
|
+
|
|
669
|
+ if start_time and end_time:
|
|
670
|
+ logs = logs.filter(ymd__gte=start_time, ymd__lte=end_time)
|
|
671
|
+
|
|
672
|
+ if is_online_sale != '':
|
|
673
|
+ logs = logs.filter(remark=('扫描条形码' if is_online_sale else ''))
|
|
674
|
+
|
609
|
675
|
|
610
|
676
|
count = logs.count()
|
611
|
677
|
logs, left = pagination(logs, page, num)
|