| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 | 
							- #!/usr/bin/env python3
 
- # -*- coding: utf-8 -*-
 
- import json
 
- import time
 
- import urllib
 
- import uuid
 
- import boto3
 
- import threading
 
- import logging
 
- from boto3.session import Session
 
- from django.http import JsonResponse, HttpResponseRedirect, HttpResponse
 
- from django.views.generic.base import View
 
- from Controller.CheckUserData import date_handler
 
- from Model.models import Device_Info, Role, MenuModel, RequestRecordModel
 
- from Object.ResponseObject import ResponseObject
 
- from Object.TokenObject import TokenObject
 
- from Object.UidTokenObject import UidTokenObject
 
- from Service.CommonService import CommonService
 
- from django.db.models import Q, F
 
- from time import strftime
 
- class LogManagementView(View):
 
-     def get(self, request, *args, **kwargs):
 
-         request.encoding = 'utf-8'
 
-         operation = kwargs.get('operation')
 
-         return self.validation(request.GET, request, operation)
 
-     def post(self, request, *args, **kwargs):
 
-         request.encoding = 'utf-8'
 
-         operation = kwargs.get('operation')
 
-         return self.validation(request.POST, request, operation)
 
-     def validation(self, request_dict, request, operation):
 
-         language = request_dict.get('language', 'en')
 
-         response = ResponseObject(language, 'pc')
 
-         if operation == '??':
 
-             return 0
 
-         else:
 
-             tko = TokenObject(
 
-                 request.META.get('HTTP_AUTHORIZATION'),
 
-                 returntpye='pc')
 
-             # if tko.code != 0:
 
-             #     return response.json(tko.code)
 
-             response.lang = tko.lang
 
-             userID = tko.userID
 
-             if operation == 'getRequestList':
 
-                 return self.getRequestList(request_dict, response)
 
-     def getRequestList(self, request_dict, response):
 
-         pageNo = request_dict.get('pageNo', None)
 
-         pageSize = request_dict.get('pageSize', None)
 
-         method = request_dict.get('method', None)
 
-         url = request_dict.get('url', None)
 
-         parameter = request_dict.get('parameter', None)
 
-         status_code = request_dict.get('status_code', None)
 
-         reason_phrase = request_dict.get('reason_phrase', None)
 
-         if not all([pageNo, pageSize]):
 
-             return response.json(444)
 
-         page = int(pageNo)
 
-         line = int(pageSize)
 
-         try:
 
-             request_qs = RequestRecordModel.objects.all()
 
-             if method:
 
-                 request_qs = request_qs.filter(method=method)
 
-             if url:
 
-                 request_qs = request_qs.filter(url__contains=url)
 
-             if parameter:
 
-                 request_qs = request_qs.filter(parameter__contains=parameter)
 
-             if status_code:
 
-                 request_qs = request_qs.filter(status_code=status_code)
 
-             if reason_phrase:
 
-                 request_qs = request_qs.filter(reason_phrase=reason_phrase)
 
-             count = request_qs.count()
 
-             request_qs = request_qs[(page - 1) * line:page * line]
 
-             qs_list = []
 
-             for requsetobj in request_qs:
 
-                 qs_list.append({
 
-                     'id': requsetobj.id,
 
-                     'method': requsetobj.method,
 
-                     'url': requsetobj.url,
 
-                     'parameter': requsetobj.parameter,
 
-                     'execute_time': round(requsetobj.execute_time, 2),  # 时间保留小数点后两位
 
-                     'status_code': requsetobj.status_code,
 
-                     'reason_phrase': requsetobj.reason_phrase,
 
-                     'add_time': requsetobj.add_time.strftime("%Y-%m-%d %H:%M:%S"),
 
-                 })
 
-             return response.json(
 
-                 0, {'list': qs_list, 'total': count})
 
-         except Exception as e:
 
-             print(e)
 
-             return response.json(500, repr(e))
 
 
  |