Browse Source

版本管理

locky 3 years ago
parent
commit
587ba539a3
2 changed files with 37 additions and 6 deletions
  1. 35 4
      AdminController/VersionManagementController.py
  2. 2 2
      Ansjer/urls.py

+ 35 - 4
AdminController/NewVersionController.py → AdminController/VersionManagementController.py

@@ -29,7 +29,7 @@ from django.db.models import Q, F
 from time import strftime
 
 
-class NewVersionManagement(View):
+class VersionManagement(View):
     def get(self, request, *args, **kwargs):
         request.encoding = 'utf-8'
         operation = kwargs.get('operation')
@@ -50,15 +50,46 @@ class NewVersionManagement(View):
             return response.json(tko.code)
         response.lang = tko.lang
         userID = tko.userID
-        if operation == 'query':
+        if operation == 'getEquipmentVersionList':
+            return self.getEquipmentVersionList(request_dict, response)
+        elif operation == 'query':
             return self.do_query(request_dict, response)
-        if operation == 'update':
+        elif operation == 'update':
             return self.do_update(request_dict, response, request)
-        if operation == 'filter':
+        elif operation == 'filter':
             return self.do_filter(request_dict, response)
         else:
             return response.json(404)
 
+    def getEquipmentVersionList(self, request_dict, response):
+        mci = request_dict.get('mci', None)
+        lang = request_dict.get('lang', None)
+        version = request_dict.get('version', None)
+        pageNo = request_dict.get('pageNo', None)
+        pageSize = request_dict.get('pageSize', None)
+
+        if not all([pageNo, pageSize]):
+            return response.json(444)
+
+        page = int(pageNo)
+        line = int(pageSize)
+
+        try:
+            equipment_version_qs = Equipment_Version.objects.filter()
+            if mci:
+                equipment_version_qs = equipment_version_qs.filter(mci=mci)
+            if lang:
+                equipment_version_qs = equipment_version_qs.filter(lang=lang)
+            if version:
+                equipment_version_qs = equipment_version_qs.filter(version__contains=version)
+
+            total = equipment_version_qs.count()
+            equipment_version_qs = equipment_version_qs.values()[(page - 1) * line:page * line]
+            equipment_version_list = CommonService.qs_to_list(equipment_version_qs)
+            return response.json(0, {'list': equipment_version_list, 'total': total})
+        except Exception as e:
+            print(e)
+            return response.json(500, repr(e))
 
     def do_update(self, request_dict, response, request):
         code = request_dict.get('code', None)

+ 2 - 2
Ansjer/urls.py

@@ -20,7 +20,7 @@ from Controller import FeedBack, EquipmentOTA, EquipmentInfo, AdminManage, AppIn
     RegionController, VPGController, LanguageController, TestController, DeviceConfirmRegion, S3GetStsController, \
     DetectControllerV2, ShadowController, TestDetectController, PcInfo, PctestController, DeviceDebug
 from AdminController import UserManageController, RoleController, MenuController, TestServeController, \
-    ServeManagementController, LogManagementController, DeviceManagementController, NewVersionController
+    ServeManagementController, LogManagementController, DeviceManagementController, VersionManagementController
 
 urlpatterns = [
     url(r'^testApi/(?P<operation>.*)$', TestApi.testView.as_view()),
@@ -358,7 +358,7 @@ urlpatterns = [
     # 设备管理
     re_path('deviceManagement/(?P<operation>.*)', DeviceManagementController.DeviceManagement.as_view()),
     # 版本管理
-    re_path('versionManagement/(?P<operation>.*)', NewVersionController.NewVersionManagement.as_view()),
+    re_path('versionManagement/(?P<operation>.*)', VersionManagementController.VersionManagement.as_view()),
     # 服务管理
     re_path('serveManagement/(?P<operation>.*)', ServeManagementController.serveManagement.as_view()),
     # 测试服务