| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 | 
							- import json
 
- import threading
 
- import datetime
 
- import time
 
- from bson import utc
 
- from Model.models import EquipmentLogModel
 
- from Service.CommonService import CommonService
 
- from Service.MiscellService import MiscellService
 
- from Service.TemplateService import TemplateService
 
- def add_access_log(request, status_code):
 
-     # 增加多进程 异步
 
-     asy = threading.Thread(target=addLog, args=(request, status_code))
 
-     asy.start()
 
- def addLog(request, status_code):
 
-     request_path = request.path.strip().strip('/')
 
-     if 'equipment' in request.path:
 
-         global request_dict
 
-         try:
 
-             if request.method == 'GET':
 
-                 request_dict = request.GET
 
-             elif request.method == 'POST':
 
-                 request_dict = request.POST
 
-             # api_list = TemplateService.log_api()
 
-             print('status_code:', status_code)
 
-             api_list = [
 
-                 'equipment/add',
 
-                 'equipment/delete',
 
-                 'equipment/flowUpdate',
 
-                 'v3/equipment/add',
 
-                 'v3/equipment/modify',
 
-             ]
 
-             # 接口中文化
 
-             jiekou = {
 
-                 'equipment/add': 'v1添加设备',
 
-                 'equipment/delete': 'v1删除设备',
 
-                 'equipment/flowUpdate': '更新设备的版本信息',
 
-                 'v3/equipment/add': 'v3添加设备信息',
 
-                 'v3/equipment/modify': 'v3编辑设备信息'
 
-             }
 
-             if request_path in api_list:
 
-                 user = MiscellService.get_access_name(request_dict=request_dict)
 
-                 clientIP = CommonService.get_ip_address(request)
 
-                 # now_time = datetime.datetime.utcnow().replace(tzinfo=utc).astimezone(utc)
 
-                 nowtime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
 
-                 beijing = datetime.timezone(datetime.timedelta(hours=8))
 
-                 utc = datetime.timezone.utc  # 获取 UTC 的时区对象
 
-                 beijing_time = datetime.datetime.utcnow().replace(tzinfo=utc).astimezone(beijing)  # 强制转换加上 UTC 时区。此处敲黑板,需要特别注意。
 
-                 # content:从前端获取到的参数数据,对获取到的数据进行处理
 
-                 content = json.dumps(request_dict)
 
-                 d = eval(content)
 
-                 if 'uid' not in d:
 
-                     d['uid'] = ''
 
-                 if 'NickName' not in d:
 
-                     d['NickName'] = ''
 
-                 if 'equipmentid' not in d:
 
-                     d['equipmentid'] = ''
 
-                 if 'UID' in d:
 
-                     d['uid'] = d['UID']
 
-                 if 'id' in d:
 
-                     d['equipmentid'] = d['id']
 
-                 password = request_dict.get('userPwd', None)
 
-                 if password is not None:
 
-                     request_dict = dict(request_dict)
 
-                     request_dict.pop('userPwd')
 
-                 if user != '':
 
-                     user = user
 
-                 else:
 
-                     print('空')
 
-                     user = '空'
 
-                 # 数据拼接
 
-                 caozuo = '用户账号为:[' + user + ']' + '在' + str(beijing_time) + '进行' + str(jiekou[request_path])
 
-                 # + ',' + '设备uid或主键id为:' + str(d['uid']) + str(d['equipmentid'])
 
-                 print('request_dict:', d)
 
-                 add_data = {
 
-                     'user': user,
 
-                     'uid': d['uid'],
 
-                     'equipmentid': d['equipmentid'],
 
-                     'NickName': d['NickName'],
 
-                     'ip': clientIP,
 
-                     'time': beijing_time,
 
-                     'url': request.path,
 
-                     'operatingcontent': caozuo,
 
-                 }
 
-                 print('操作数据:', add_data)
 
-                 # 设备日志添加
 
-                 EquipmentLogModel.objects.create(**add_data)
 
-         except Exception as e:
 
-             print(repr(e))
 
-             pass
 
 
  |