Browse Source

Merge branch 'test' of http://192.168.136.99:3000/servers/ASJServer

locky 3 years ago
parent
commit
f1fd695b99
2 changed files with 100 additions and 5 deletions
  1. 94 1
      AdminController/SerialManageController.py
  2. 6 4
      Controller/CloudStorage.py

+ 94 - 1
AdminController/SerialManageController.py

@@ -12,7 +12,7 @@ from django.utils.decorators import method_decorator
 from django.views.decorators.csrf import csrf_exempt
 from django.views.generic.base import View
 
-from Model.models import CompanyModel, SerialNumberModel
+from Model.models import CompanyModel, SerialNumberModel, VPGModel, UIDModel, UIDCompanySerialModel, CompanySerialModel
 from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
 
@@ -42,6 +42,10 @@ class SerialView(View):
             return self.company_page(request_dict, response)
         if operation == 'number/page':
             return self.serial_page(request_dict, response)
+        if operation == 'vpg-info/page':
+            return self.vpg_page(request_dict, response)
+        if operation == 'uid-info/page':
+            return self.uid_page(request_dict, response)
         return response.json(0)
 
     @classmethod
@@ -95,3 +99,92 @@ class SerialView(View):
         except Exception as e:
             print(e)
             return response.json(500, repr(e))
+
+    @classmethod
+    def vpg_page(cls, request_dict, response):
+        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:
+            query = VPGModel.objects.filter()
+            if not query.exists():
+                return response.json(0, {'list': '', 'total': 0})
+            total = query.count()
+            vpg_page = query.order_by('-add_time')[(page - 1) * line:page * line] \
+                .values('id', 'name',
+                        'region__name',
+                        'region_id',
+                        'company__name',
+                        'add_time',
+                        'update_time',
+                        'company__secret',
+                        'uid_count')
+            if vpg_page.exists():
+                return response.json(0, {'list': list(vpg_page), 'total': total})
+            return response.json(173)
+        except Exception as e:
+            print(e)
+            return response.json(500, repr(e))
+
+    @classmethod
+    def uid_page(cls, request_dict, response):
+        pageNo = request_dict.get('pageNo', None)
+        pageSize = request_dict.get('pageSize', None)
+        status = request_dict.get('status', None)
+        serial_number = request_dict.get('serialNumber', None)
+        uid = request_dict.get('uid', None)
+        p2p_type = request_dict.get('p2pType', None)
+        if not all([pageNo, pageSize]):
+            return response.json(444)
+        page = int(pageNo)
+        line = int(pageSize)
+        try:
+            query = UIDModel.objects.filter()
+            if serial_number:
+                company_serial_vos = CompanySerialModel.objects.filter(serial_number=serial_number).values()
+                if company_serial_vos.exists():
+                    cs_id = str(company_serial_vos[0]['id'])
+                    uid_vo = UIDCompanySerialModel.objects.filter(company_serial_id=cs_id).values('uid_id')
+                    uid_id = uid_vo[0]['uid_id']
+                    query = query.filter(id=uid_id)
+            if status:
+                query = query.filter(status=int(status))
+            if uid:
+                query = query.filter(uid__contains=uid)
+            if p2p_type:
+                query = query.filter(p2p_type=int(p2p_type))
+            if not query.exists():
+                return response.json(0, {'list': '', 'total': 0})
+            total = query.count()
+            uid_list = query.order_by('-add_time')[(page - 1) * line:page * line]
+            result_page = []
+            if uid_list.exists():
+                for vo in uid_list:
+                    uid_vo = UIDCompanySerialModel.objects.filter(uid_id=vo.id).values('uid_id', 'company_serial_id')
+                    serial = None
+                    if uid_vo.exists():
+                        serial_id = uid_vo[0]['company_serial_id']
+                        company_serial_vos = CompanySerialModel.objects.filter(id=serial_id).values()
+                        if company_serial_vos.exists():
+                            serial = str(company_serial_vos[0]['serial_number'])
+                    result_page.append({
+                        'id': vo.id,
+                        'uid': vo.uid,
+                        'mac': vo.mac,
+                        'extra': vo.uid_extra,
+                        'serial': serial,
+                        'status': vo.status,
+                        'area': vo.area,
+                        'p2pType': vo.p2p_type,
+                        'fullUidCode': vo.full_uid_code,
+                        'updateTime': vo.update_time,
+                        'addTime': vo.add_time
+                    })
+                return response.json(0, {'list': result_page, 'total': total})
+            return response.json(0, {'list': '', 'total': 0})
+        except Exception as e:
+            print(e)
+            return response.json(500, repr(e))

+ 6 - 4
Controller/CloudStorage.py

@@ -1557,7 +1557,7 @@ class CloudStorageView(View):
                                          'Dear customer, you already redeemed for the cloud storage package successfully for device ' +device_name +' on '+time.strftime("%b %dth,%Y", time.localtime())]
                     sms = 'SMS_219748439'
 
-                self.do_vod_msg_Notice(uid, channel, userID, lang, sys_msg_text_list, sms)
+                self.do_vod_msg_Notice(uid, channel, userID, lang, sys_msg_text_list, sms, device_name)
                 result = returnurl
                 redisObj.del_data(key=uid+'do_experience_order')
                 return response.json(0, result)
@@ -1740,7 +1740,7 @@ class CloudStorageView(View):
             return response.json(500, repr(e))
 
     # 云存操作系统消息
-    def do_vod_msg_Notice(self, uid, channel, userID, lang, sys_msg_text_list, sms):
+    def do_vod_msg_Notice(self, uid, channel, userID, lang, sys_msg_text_list, sms, device_name):
         try:
             logger = logging.getLogger('log')
             logger.info('进来了')
@@ -1763,7 +1763,8 @@ class CloudStorageView(View):
                 if data_valid.email_validate(username):
                     S3Email().faEmail(sys_msg_text, username)
                 elif data_valid.mobile_validate(username):
-                    params = u'{"devname":"' + uid + '","submittime":"' + time.strftime("%Y-%m-%d",time.localtime()) + '"}'
+                    device_id = device_name if device_name else uid
+                    params = u'{"devname":"' + device_id + '","submittime":"' + time.strftime("%Y-%m-%d",time.localtime()) + '"}'
                     self.sendMessage(username, params, sms)
 
                 self.pushApp(nowTime, uid, channel, sys_msg_text)
@@ -1825,7 +1826,8 @@ class CloudStorageView(View):
                         if data_valid.email_validate(username):
                             S3Email().faEmail(sys_msg_text, username)
                         elif data_valid.mobile_validate(username):
-                            params = u'{"devname":"' + ub['uid'] + '","submittime":"' + time.strftime("%Y-%m-%d",
+                            device_id = device_name if device_name else ub['uid']
+                            params = u'{"devname":"' + device_id + '","submittime":"' + time.strftime("%Y-%m-%d",
                                                                                                       time.localtime(ub['endTime'])) + '"}'
                             self.sendMessage(username, params, 'SMS_219748440')