|
@@ -126,4 +126,61 @@ async def get_list(
|
|
|
'total': total_count,
|
|
|
"currentPage": pageNum,
|
|
|
"pageSize": pageSize,
|
|
|
- }
|
|
|
+ }
|
|
|
+
|
|
|
+# 事件指挥日志
|
|
|
+@router.get('/event_log')
|
|
|
+async def get_list(
|
|
|
+ # request: Request,
|
|
|
+ operIp: str = Query(None, max_length=100),
|
|
|
+ operName:str = Query(None, max_length=100),
|
|
|
+ title: str = Query(None, max_length=100),
|
|
|
+ params: str = Query(None, max_length=100),
|
|
|
+ dateRange: str = Query(None, max_length=100),
|
|
|
+ pageNum: int = Query(1, gt=0, description="页码"),
|
|
|
+ pageSize: int = Query(10, gt=0, le=100, description="每页大小"),
|
|
|
+ db: Session = Depends(get_db),
|
|
|
+ user_id = Depends(valid_access_token),
|
|
|
+):
|
|
|
+ print(params)
|
|
|
+ query = db.query(CzrzEntity)
|
|
|
+ query = query.filter(CzrzEntity.action == '应急一张图')
|
|
|
+ query = query.filter(CzrzEntity.czrz != '大屏登录成功')
|
|
|
+ if operIp:
|
|
|
+ query = query.filter(CzrzEntity.ip.like(f'%{operIp}%'))
|
|
|
+ if operName:
|
|
|
+ query = query.filter(CzrzEntity.nick_name.like(f'%{operName}%'))
|
|
|
+ if title:
|
|
|
+ query = query.filter(CzrzEntity.action.like(f'%{title}%'))
|
|
|
+ if dateRange:
|
|
|
+ start_date, end_date = dateRange.split('-')
|
|
|
+ # start_date = datetime.strptime(start_date, "%Y-%m-%d")
|
|
|
+ # end_date = datetime.strptime(end_date, "%Y-%m-%d") + timedelta(days=1)
|
|
|
+ query = query.filter(CzrzEntity.gxsj.between(start_date, end_date))
|
|
|
+
|
|
|
+ total_count = query.count()
|
|
|
+
|
|
|
+ offset = (pageNum - 1) * pageSize
|
|
|
+ query = query.order_by(CzrzEntity.gxsj.desc()).offset(offset).limit(pageSize)
|
|
|
+ czrz_list = query.all()
|
|
|
+
|
|
|
+ # 将模型实例转换为字典
|
|
|
+ czrz_list_dict = [{
|
|
|
+ "operIp": item.ip,
|
|
|
+ "operName": item.nick_name,
|
|
|
+ "title": item.action,
|
|
|
+ "czrz": item.czrz,
|
|
|
+ "operTime": item.gxsj.strftime('%Y-%m-%d %H:%M:%S') if item.gxsj else '',
|
|
|
+ } for item in czrz_list]
|
|
|
+
|
|
|
+
|
|
|
+ return {
|
|
|
+ "code": 200,
|
|
|
+ "msg": "操作成功",
|
|
|
+ "rows": czrz_list_dict,
|
|
|
+ 'pages': (total_count + pageSize - 1) // pageSize,
|
|
|
+ 'total': total_count,
|
|
|
+ "currentPage": pageNum,
|
|
|
+ "pageSize": pageSize,
|
|
|
+ }
|
|
|
+
|