lass="lines-code">
+    PAIAI_LENSMAN = 1
71
+
72
+    SRC = (
73
+        (PAIAI_USER, u'拍爱用户端'),
74
+        (PAIAI_LENSMAN, u'拍爱摄影师端'),
75
+    )
76
+
59 77
     splash_image = models.ImageField(_(u'splash_image'), upload_to=upload_path, blank=True, null=True, help_text=u'启动页面图片')
60 78
     spalash_image_airtime = models.DateTimeField(_(u'spalash_image_airtime'), blank=True, null=True, help_text=u'启动页面图片开始日期')
61 79
     spalash_image_deadline = models.DateTimeField(_(u'spalash_image_deadline'), blank=True, null=True, help_text=u'启动页面图片截止日期')
80
+    src = models.IntegerField(_(u'src'), choices=SRC, default=PAIAI_USER, help_text=u'启动页面来源', db_index=True)
62 81
 
63 82
     class Meta:
64 83
         verbose_name = _('splashinfo')
@@ -91,7 +110,7 @@ class FeedbackInfo(CreateUpdateMixin):
91 110
 
92 111
     user_id = models.CharField(_(u'user_id'), max_length=255, blank=True, null=True, help_text=u'用户唯一标识')
93 112
     feedback = models.TextField(_(u'feedback'), blank=True, null=True, help_text=u'用户反馈')
94
-    src = models.IntegerField(_(u'src'), choices=SRC, default=PAIAI_USER, help_text=u'用户反馈来源')
113
+    src = models.IntegerField(_(u'src'), choices=SRC, default=PAIAI_USER, help_text=u'用户反馈来源', db_index=True)
95 114
 
96 115
     class Meta:
97 116
         verbose_name = _('feedbackinfo')

+ 6 - 2
operation/views.py

@@ -18,7 +18,9 @@ def upgrade_api(request):
18 18
     :param request:
19 19
     :return:
20 20
     """
21
-    latest_app = get_latest_app()
21
+    src = int(request.POST.get('src', 0))
22
+
23
+    latest_app = get_latest_app(src)
22 24
 
23 25
     if request.iOS:
24 26
         appinfo = {
@@ -45,7 +47,9 @@ def splash_api(request):
45 47
     :param request:
46 48
     :return:
47 49
     """
48
-    splashes = SplashInfo.objects.all()
50
+    src = int(request.POST.get('src', 0))
51
+
52
+    splashes = SplashInfo.objects.filter(src=src, status=True)
49 53
     splashes = [splash.data for splash in splashes]
50 54
 
51 55
     return response(200, 'Get Splash Success', u'获取最新版信息成功', {

+ 5 - 5
utils/redis/rapp.py

@@ -14,16 +14,16 @@ r = settings.REDIS_CACHE
14 14
 # 最新 APP 相关
15 15
 
16 16
 
17
-def set_latest_app():
17
+def set_latest_app(src=0):
18 18
     """ 设置最新 APP 信息 """
19 19
     try:
20
-        appinfo = LatestAppInfo.objects.all()[0].data
20
+        appinfo = LatestAppInfo.objects.filter(src=src)[0].data
21 21
     except IndexError:
22 22
         appinfo = {}
23
-    r.set(LATEST_APP_INFO, json.dumps(appinfo))
23
+    r.set(LATEST_APP_INFO % src, json.dumps(appinfo))
24 24
     return appinfo
25 25
 
26 26
 
27
-def get_latest_app():
27
+def get_latest_app(src=0):
28 28
     """ 获取最新 APP 信息 """
29
-    return json.loads(r.get(LATEST_APP_INFO) or '{}') or set_latest_app()
29
+    return json.loads(r.get(LATEST_APP_INFO % src) or '{}') or set_latest_app(src)

+ 1 - 1
utils/redis/rkeys.py

@@ -48,4 +48,4 @@ SYSTEM_MESSAGE_DELETED_INFO = 'system:message:deleted:info:%s'  # STRING,系
48 48
 GUEST_ENTRANCE_CONTROL_INFO = 'guest:entrance:control:info'  # STRING,游客入口控制信息
49 49
 
50 50
 # APP 相关
51
-LATEST_APP_INFO = 'latest:app:info'  # STRING,最新 APP 信息
51
+LATEST_APP_INFO = 'latest:app:info:%s'  # STRING,最新 APP 信息,src

kodo - Gogs: Go Git Service

No Description

model_views.py 6.8KB

    # -*- coding: utf-8 -*- from __future__ import division import monetary from django.conf import settings from django.db.models import Q from django_logit import logit from django_response import response from paginator import pagination from account.models import UserInfo from mch.models import AdministratorInfo, ModelCameraBodyInfo, ModelInfo from utils.error.errno_utils import AdministratorStatusCode, ProductModelStatusCode, UserStatusCode @logit def model_add(request): jancode = request.POST.get('jancode', '') model_name = request.POST.get('model_name', '') model_uni_name = request.POST.get('model_uni_name', '') model_full_name = request.POST.get('model_full_name', '') image_path = request.POST.get('image_path', '') image2_path = request.POST.get('image2_path', '') factory_yuan = request.POST.get('factory_yuan', 1000) integral = int(request.POST.get('integral', 100)) category = request.POST.get('category', '') warehouse = request.POST.get('warehouse', '') admin_id = request.session.get('admin_id') is_important = request.POST.get('is_important', 0) try: administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) except AdministratorInfo.DoesNotExist: return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) ModelInfo.objects.create( brand_id=administrator.brand_id, jancode=jancode, model_name=model_name, model_uni_name=model_uni_name, model_full_name=model_full_name, category=category, warehouse=warehouse, image=image_path, image2=image2_path, factory_yuan=factory_yuan, factory_fee=monetary.Yuan2Fen(factory_yuan), integral=integral, is_important=is_important, ) return response(200, 'Model Add Success', u'型号添加成功') @logit def model_delete(request): model_id = request.POST.get('model_id', '') admin_id = request.session.get('admin_id') try: administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) except AdministratorInfo.DoesNotExist: return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) try: modelObj = ModelInfo.objects.get(brand_id=administrator.brand_id, model_id=model_id, status=True) except ModelInfo.DoesNotExist: return response(ProductModelStatusCode.MODEL_NOT_FOUND) modelObj.status = False modelObj.save() return response(200, 'Model Delete Success', u'型号删除成功') @logit def model_update(request): jancode = request.POST.get('jancode', '') model_id = request.POST.get('model_id', '') model_name = request.POST.get('model_name', '') model_uni_name = request.POST.get('model_uni_name', '') model_full_name = request.POST.get('model_full_name', '') image_path = request.POST.get('image_path', '') image2_path = request.POST.get('image2_path', '') factory_yuan = request.POST.get('factory_yuan', 1000) integral = int(request.POST.get('integral', 100)) category = request.POST.get('category', '') warehouse = request.POST.get('warehouse', '') admin_id = request.session.get('admin_id') is_important = request.POST.get('is_important', 0) try: administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) except AdministratorInfo.DoesNotExist: return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) try: modelObj = ModelInfo.objects.get(brand_id=administrator.brand_id, model_id=model_id, status=True) except ModelInfo.DoesNotExist: return response(ProductModelStatusCode.MODEL_NOT_FOUND) if jancode: modelObj.jancode = jancode if model_name: modelObj.model_name = model_name if model_uni_name: modelObj.model_uni_name = model_uni_name if model_full_name: modelObj.model_full_name = model_full_name if category: modelObj.category = category if warehouse: modelObj.warehouse = warehouse if image_path: modelObj.image = image_path if image2_path: modelObj.image2 = image2_path if factory_yuan: modelObj.factory_yuan = factory_yuan modelObj.factory_fee = monetary.Yuan2Fen(factory_yuan) if integral: modelObj.integral = integral modelObj.is_important = is_important modelObj.save() return response(200, 'Model Update Success', u'型号更新成功') @logit def model_list(request): page = request.POST.get('page', 1) num = request.POST.get('num', 20) admin_id = request.session.get('admin_id') try: administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True) except AdministratorInfo.DoesNotExist: return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) models = ModelInfo.objects.filter(brand_id=administrator.brand_id, display=True, status=True).order_by('-pk') count = models.count() models, left = pagination(models, page, num) models = [mdl.admindata for mdl in models] return response(200, 'Get Model List Success', u'获取型号列表成功', { 'models': models, 'count': count, 'left': left, }) @logit def model_name_list(request): brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID) user_id = request.POST.get('user_id', '') # 校验用户是否存在 try: user = UserInfo.objects.get(user_id=user_id) except UserInfo.DoesNotExist: return response(UserStatusCode.USER_NOT_FOUND) models = ModelCameraBodyInfo.objects.filter(brand_id=brand_id, status=True).order_by('-is_important', 'model_name').values_list('model_name', flat=True) models = list(models) return response(200, 'Get Model Name List Success', u'获取型号列表成功', { 'models': sorted(set(models), key=models.index) }) @logit def model_cameras(request): brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID) kw = request.POST.get('kw', '') page = request.POST.get('page', 1) num = request.POST.get('num', 20) cameras = ModelCameraBodyInfo.objects.filter(brand_id=brand_id, status=True) if kw: cameras = cameras.filter(Q(model_name__icontains=kw) | Q(model_full_name__icontains=kw) | Q(camera_name__icontains=kw)) cameras = cameras.order_by('-is_important', 'model_name', '-camera_market_time') count = cameras.count() cameras, left = pagination(cameras, page, num) cameras = [camera.data for camera in cameras] return response(200, 'Get Model Adaptive Camera List Success', u'获取型号适配机身列表成功', { 'cameras': cameras, 'count': count, 'left': left, })