Jelajahi Sumber

增加删除过期设备推送信息

chenjunkai 6 tahun lalu
induk
melakukan
cad5c5f013
2 mengubah file dengan 46 tambahan dan 6 penghapusan
  1. 1 0
      Ansjer/urls.py
  2. 45 6
      Controller/EquipmentInfo.py

+ 1 - 0
Ansjer/urls.py

@@ -90,6 +90,7 @@ urlpatterns = [
     # 统计访问日志路径
     # 统计访问日志路径
     path('access/staticPath/', AccessLog.statisticsPath),
     path('access/staticPath/', AccessLog.statisticsPath),
     path('access/deleteSn/', AccessLog.deleteSn),
     path('access/deleteSn/', AccessLog.deleteSn),
+    path('eq/del', EquipmentInfo.deleteExpireEquipmentInfo),
     # 新需求ota接口
     # 新需求ota接口
     url(r'^OTA/getNewVer', OTAEquipment.getNewVerInterface),
     url(r'^OTA/getNewVer', OTAEquipment.getNewVerInterface),
     url(r'^OTA/uploadsPack$', OTAEquipment.uploadOTAInterfaceView.as_view()),
     url(r'^OTA/uploadsPack$', OTAEquipment.uploadOTAInterfaceView.as_view()),

+ 45 - 6
Controller/EquipmentInfo.py

@@ -1,15 +1,17 @@
-from django.views.generic.base import View
+import traceback
+
 from django.utils.decorators import method_decorator
 from django.utils.decorators import method_decorator
 from django.views.decorators.csrf import csrf_exempt
 from django.views.decorators.csrf import csrf_exempt
-from Service.ModelService import ModelService
-from Service.CommonService import CommonService
+from django.views.generic import TemplateView
+from django.views.generic.base import View
+
+from Ansjer.config import SERVER_DOMAIN
 from Model.models import Equipment_Info, Device_Info, Device_User
 from Model.models import Equipment_Info, Device_Info, Device_User
-import traceback
 from Object.ResponseObject import ResponseObject
 from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
 from Object.TokenObject import TokenObject
-from django.views.generic import TemplateView
-from Ansjer.config import UID_TOKEN_KEY, SERVER_DOMAIN
 from Object.UidTokenObject import UidTokenObject
 from Object.UidTokenObject import UidTokenObject
+from Service.CommonService import CommonService
+from Service.ModelService import ModelService
 
 
 '''
 '''
 http://192.168.136.45:8077/equipment/info?token=test&devUid=2N1K3LE78TYJ38CE111A&Channel=0&eventType=1&eventTime=1234567890&operation=add&alarm=21342134&receiveTime=1234567891234567
 http://192.168.136.45:8077/equipment/info?token=test&devUid=2N1K3LE78TYJ38CE111A&Channel=0&eventType=1&eventTime=1234567890&operation=add&alarm=21342134&receiveTime=1234567891234567
@@ -320,3 +322,40 @@ class DetectStatusView(View):
                                      'push_url': '{SERVER_DOMAIN}detect/add'.format(SERVER_DOMAIN=SERVER_DOMAIN)})
                                      'push_url': '{SERVER_DOMAIN}detect/add'.format(SERVER_DOMAIN=SERVER_DOMAIN)})
         else:
         else:
             return response.json(173)
             return response.json(173)
+
+
+# 按季度删除访问日志
+def deleteExpireEquipmentInfo(request):
+    response = ResponseObject()
+
+    import time
+    nowTime = int(time.time())
+    news = Equipment_Info.objects.filter(eventType__lte=nowTime - 3600 * 24 * 30)[1:100]
+    news.delete()
+    return response.json(0)
+
+    request.encoding = 'utf-8'
+    if request.method == 'GET':
+        request_dict = request.GET
+    elif request.method == 'POST':
+        request_dict = request.POST
+    else:
+        return response.json(104)
+    token = request_dict.get('token', None)
+    days = request_dict.get('days', None)
+    if not days:
+        return response.json(444, 'days')
+    tko = TokenObject(token)
+    response.lang = tko.lang
+    if tko.code != 0:
+        return response.json(tko.code)
+    userID = tko.userID
+    own_perm = ModelService.check_perm(userID, 10)
+    if own_perm is not True:
+        import time
+        nowTime = int(time.time())
+        news = Equipment_Info.objects.filter(eventType__lte=nowTime - 3600 * 24 * 30)[1:100]
+        news.delete()
+        return response.json(0)
+    else:
+        return response.json(404)