+ def __unicode__(self):
+ return u'{0.pk}'.format(self)
+
+ @property
+ def data(self):
+ return {
+ 'srv_version_code': self.srv_version_code,
+ 'srv_version_name': self.srv_version_name,
+ 'proc_version_code': self.proc_version_code,
+ 'proc_version_name': self.proc_version_name,
+ }
@@ -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 |
+ }) |
@@ -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 +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() |