add MchSearchModelAndCameraLogInfo

FFIB 5 years ago
parent
commit
20d437d448
4 changed files with 59 additions and 3 deletions
  1. 27 0
      api/log_views.py
  2. 5 1
      api/urls.py
  3. 10 2
      logs/admin.py
  4. 17 0
      logs/models.py

+ 27 - 0
api/log_views.py

@@ -0,0 +1,27 @@
1
+# -*- coding: utf-8 -*-
2
+
3
+from django.conf import settings
4
+from django_logit import logit
5
+from django_response import response
6
+
7
+from logs.models import MchSearchModelAndCameraLogInfo
8
+
9
+@logit
10
+def collect_camera_adaptive_log(request):
11
+  brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
12
+
13
+  user_id = request.POST.get('user_id', '')
14
+  is_search_model = int(request.POST.get('is_search_model', 0))
15
+  is_search_camera = int(request.POST.get('is_search_camera', 0))
16
+  is_search_model_camera = int(request.POST.get('is_search_model_camera', 0))
17
+  is_search_camera_after_model = int(request.POST.get('is_search_camera_after_model', 0))
18
+
19
+  MchSearchModelAndCameraLogInfo.objects.create(
20
+      user_id=user_id,
21
+      is_search_model=is_search_model,
22
+      is_search_camera=is_search_camera,
23
+      is_search_model_camera=is_search_model_camera,
24
+      is_search_camera_after_model=is_search_camera_after_model,
25
+  )
26
+
27
+  return response(200, 'Collect Camera Adaptive Log Success', u'收集型号适配日志成功')

+ 5 - 1
api/urls.py

@@ -6,7 +6,7 @@ from django_file_upload import views as file_views
6 6
 from account import tourguide_views
7 7
 from account import views as account_views
8 8
 from api import (admin_views, clerk_views, distributor_views, encrypt_views, mch_views, member_views, model_views,
9
-                 operator_views, sr_views)
9
+                 operator_views, sr_views, log_views)
10 10
 from box import views as box_views
11 11
 from geo import views as geo_views
12 12
 from group import (groupuser_views, lensman_views, tourguidegroup_views, tourguidegroupadmin_views,
@@ -340,3 +340,7 @@ urlpatterns += [
340 340
     url(r'^good/detail$', member_views.good_detail, name='good_detail'),
341 341
     url(r'^integrals$', member_views.integrals, name='integrals'),
342 342
 ]
343
+
344
+urlpatterns += [
345
+    url(r'^log/camera/adaptive$', log_views.collect_camera_adaptive_log, name='log_camera_adaptive'),
346
+]

+ 10 - 2
logs/admin.py

@@ -3,7 +3,7 @@
3 3
 from django.contrib import admin
4 4
 from django_admin import ReadOnlyModelAdmin
5 5
 
6
-from logs.models import MchInfoDecryptLogInfo, MchInfoEncryptLogInfo, MchLogInfo
6
+from logs.models import MchInfoDecryptLogInfo, MchInfoEncryptLogInfo, MchLogInfo, MchSearchModelAndCameraLogInfo
7 7
 
8 8
 
9 9
 class MchInfoEncryptLogInfoAdmin(ReadOnlyModelAdmin, admin.ModelAdmin):
@@ -21,7 +21,15 @@ class MchLogInfoAdmin(ReadOnlyModelAdmin, admin.ModelAdmin):
21 21
     list_filter = ('operator_id', 'app_version', 'status')
22 22
     search_fields = ('operator_id', 'app_version')
23 23
 
24
+class MchLogInfoAdmin(ReadOnlyModelAdmin, admin.ModelAdmin):
25
+    list_display = ('log_id', 'log_file', 'operator_id', 'app_version', 'status', 'created_at', 'updated_at')
26
+    list_filter = ('operator_id', 'app_version', 'status')
27
+    search_fields = ('operator_id', 'app_version')
28
+
29
+class MchSearchModelAndCameraLogInfoAdmin(admin.ModelAdmin):
30
+    list_display = ('user_id', 'is_search_model', 'is_search_camera', 'is_search_model_camera', 'is_search_camera_after_model', 'created_at')
31
+    list_filter = ('is_search_model', 'is_search_camera', 'is_search_model_camera', 'is_search_camera_after_model')
24 32
 
25 33
 admin.site.register(MchInfoDecryptLogInfo, MchInfoDecryptLogInfoAdmin)
26 34
 admin.site.register(MchInfoEncryptLogInfo, MchInfoEncryptLogInfoAdmin)
27
-admin.site.register(MchLogInfo, MchLogInfoAdmin)
35
+admin.site.register(MchSearchModelAndCameraLogInfo, MchSearchModelAndCameraLogInfoAdmin)

+ 17 - 0
logs/models.py

@@ -71,3 +71,20 @@ class MchLogInfo(BaseModelMixin):
71 71
 
72 72
     def __unicode__(self):
73 73
         return unicode(self.pk)
74
+
75
+class MchSearchModelAndCameraLogInfo(BaseModelMixin):
76
+    user_id = models.CharField(_(u'user_id'), max_length=32, blank=True, null=True, help_text=u'用户唯一标识', db_index=True)
77
+
78
+    log_id = ShortUUIDField(_(u'log_id'), max_length=32, help_text=u'日志唯一标识', db_index=True)
79
+
80
+    is_search_model = models.IntegerField(_(u'is_search_model'), default=0, help_text=u'搜索镜头型号', db_index=True)
81
+    is_search_camera = models.IntegerField(_(u'is_search_model'), default=0, help_text=u'搜索相机型号', db_index=True)
82
+    is_search_model_camera = models.IntegerField(_(u'is_search_model'), default=0, help_text=u'搜索相机型号和镜头型号', db_index=True)
83
+    is_search_camera_after_model = models.IntegerField(_(u'is_search_camera_after_model'), default=0, help_text=u'选择镜头后搜索相机型号', db_index=True)
84
+
85
+    class Meta:
86
+        verbose_name = _(u'mchsearchmodelandcameraloginfo')
87
+        verbose_name_plural = _(u'mchsearchmodelandcameraloginfo')
88
+
89
+    def __unicode__(self):
90
+        return unicode(self.pk)