瀏覽代碼

更改套餐过期时间

linhaohong 1 年之前
父節點
當前提交
554b7ab112
共有 1 個文件被更改,包括 37 次插入0 次删除
  1. 37 0
      AdminController/UnicomManageController.py

+ 37 - 0
AdminController/UnicomManageController.py

@@ -116,6 +116,8 @@ class UnicomManageControllerView(View):
                 return self.serial_number_package_update(request_dict, response, tko.user)
             elif operation == 'transferDevicePackage':  # 转移设备套餐
                 return self.transfer_device_package(request_dict, response, tko.user)
+            elif operation == 'updateExpirationDate':  # 修改套餐过期时间
+                return self.update_expiration_date(request_dict, response)
             else:
                 return response.json(404)
 
@@ -1394,3 +1396,38 @@ class UnicomManageControllerView(View):
             }
             package_list.append(new_package)
         return package_list
+
+    @classmethod
+    def update_expiration_date(cls, request_dict, response):
+        """
+        更改套餐过期时间
+        @param request_dict: 请求参数
+        @request_dict id: 套餐id
+        @request_dict expireTime: 过期时间
+        @request_dict serialNumber: 序列号
+        @param response: 响应对象
+        @return:
+        """
+        id = request_dict.get("id", None)
+        expire_time = request_dict.get("expireTime", None)
+        serial_number = request_dict.get("serialNumber", None)
+
+        if not all([id, serial_number, expire_time]):
+            return response.json(444)
+        try:
+            ud_qs = UnicomDeviceInfo.objects.filter(serial_no=serial_number).values('iccid', 'card_type')
+            package_list = []
+            if not ud_qs.exists():
+                return response.json(0, {'packageList': package_list})
+
+            card_type = ud_qs[0]['card_type']
+            if card_type == 0 or card_type == 3:
+                UnicomComboOrderInfo.objects.filter(pk=id).update(expire_time=expire_time)
+                return response.json(0)
+            else:
+                return response.json(177, "这个类型的卡不能更改过期时间")
+
+        except Exception as e:
+            LOGGER.info('UnicomManageControllerView.update_expiration_date, errLine:{}, errMsg:{}'.format(
+                e.__traceback__.tb_lineno, repr(e)))
+            return response.json(500)