167
+    @property
168
+    def data(self):
169
+        return {
170
+            'srv_version_code': self.srv_version_code,
171
+            'srv_version_name': self.srv_version_name,
172
+            'proc_version_code': self.proc_version_code,
173
+            'proc_version_name': self.proc_version_name,
174
+        }

+ 13 - 0
operation/views.py

@@ -1,5 +1,7 @@
1 1
 # -*- coding: utf-8 -*-
2 2
 
3
+import json
4
+
3 5
 from django.conf import settings
4 6
 from django.shortcuts import redirect
5 7
 from logit import logit
@@ -10,6 +12,7 @@ from utils.error.errno_utils import UserStatusCode
10 12
 from utils.error.response_utils import response
11 13
 from utils.redis.rapp import get_latest_app
12 14
 from utils.redis.rguest import get_guest_entrance_control
15
+from utils.redis.roperation.rbox_program_version import get_box_program_version
13 16
 from utils.redis.rpatch import get_app_patch_info
14 17
 from utils.redis.rsettings import get_app_settings_info
15 18
 from utils.version_utils import is_version_match
@@ -150,3 +153,13 @@ def download_api(request):
150 153
         return redirect(ios_url)
151 154
 
152 155
     return redirect(get_latest_app(src).get('latest_adr_url', ''))
156
+
157
+
158
+def box_program_version_api(request):
159
+    """ BOX 程序版本信息 """
160
+    bpversion = get_box_program_version()
161
+
162
+    return response(200, 'Get Box Program Version Success', u'获取盒子程序版本成功', {
163
+        'bpversion': bpversion,
164
+        'bpversion_str': json.dumps(bpversion),
165
+    })

+ 3 - 0
utils/redis/rkeys.py

@@ -63,3 +63,6 @@ GUEST_ENTRANCE_CONTROL_INFO = 'guest:entrance:control:info:%s'  # STRING,游
63 63
 LATEST_APP_INFO = 'latest:app:info:%s'  # STRING,最新 APP 信息,src
64 64
 APP_SETTINGS_INFO = 'app:settings:info:%s:%s:%s'  # STRING,APP 设置信息,platform、channel、version
65 65
 APP_PATCH_INFO = 'app:patch:info:%s:%s:%s'  # STRING,APP 补丁信息,platform、version、src
66
+
67
+# BOX 相关
68
+BOX_PROGRAM_VERSION_INFO = 'box:program:version:info'  # STRING,BOX 程序版本信息

+ 0 - 0
utils/redis/roperation/__init__.py


+ 20 - 0
utils/redis/roperation/rbox_program_version.py

@@ -0,0 +1,20 @@
1
+# -*- coding: utf-8 -*-
2
+
3
+from utils.redis.connect import r
4
+from utils.redis.rkeys import BOX_PROGRAM_VERSION_INFO
5
+
6
+
7
+def set_box_program_version():
8
+    """ 设置 BOX 程序版本信息 """
9
+    from operation.models import BoxProgramVersionInfo
10
+    try:
11
+        bpverion = BoxProgramVersionInfo.objects.filter(status=True)[0].data
12
+    except IndexError:
13
+        bpverion = {}
14
+    r.setjson(BOX_PROGRAM_VERSION_INFO, bpverion)
15
+    return bpverion
16
+
17
+
18
+def get_box_program_version():
19
+    """ 获取 BOX 程序版本信息 """
20
+    return r.getjson(BOX_PROGRAM_VERSION_INFO) or set_box_program_version()

kodo - Gogs: Go Git Service

Нет описания

tests.py 61B

    from django.test import TestCase # Create your tests here.