1.实现查看告警消息数量信息接口
This commit is contained in:
parent
707dd6bd83
commit
d4c7106fc4
@ -18,6 +18,14 @@ from utils.response_util import ResponseUtil
|
||||
|
||||
messageController = APIRouter(prefix='/system/message', dependencies=[Depends(LoginService.get_current_user)])
|
||||
|
||||
# 查询告警数量信息
|
||||
@messageController.get(
|
||||
'/count_message',
|
||||
)
|
||||
async def count_message(request: Request, query_db: AsyncSession = Depends(get_db)):
|
||||
""""""
|
||||
count_message_result = await MessageService.count_message(query_db)
|
||||
return ResponseUtil.success(data = count_message_result)
|
||||
|
||||
@messageController.get(
|
||||
'/list', response_model=PageResponseModel
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
from sqlalchemy import delete, select, update
|
||||
from sqlalchemy import delete, select, update, func
|
||||
from sqlalchemy.ext.asyncio import AsyncSession
|
||||
from module_admin.entity.do.message_do import Message
|
||||
from module_admin.entity.vo.message_vo import MessageModel, MessagePageQueryModel
|
||||
@ -35,6 +35,28 @@ class MessageDao:
|
||||
|
||||
return message_info
|
||||
|
||||
@classmethod
|
||||
async def count_message(cls, db: AsyncSession):
|
||||
query_unhandled_message_count = (
|
||||
select(func.count(Message.message_id))
|
||||
.where(Message.status=='0', Message.type=='0')
|
||||
)
|
||||
|
||||
unhandled_message_count = (
|
||||
await db.execute(query_unhandled_message_count)
|
||||
).scalar()
|
||||
|
||||
query_handled_message_count = (
|
||||
select(func.count(Message.message_id))
|
||||
.where(Message.status=='1', Message.type=='0')
|
||||
)
|
||||
|
||||
handled_message_count = (
|
||||
await db.execute(query_handled_message_count)
|
||||
).scalar()
|
||||
|
||||
return unhandled_message_count+ handled_message_count, unhandled_message_count, handled_message_count
|
||||
|
||||
@classmethod
|
||||
async def get_message_detail_by_info(cls, db: AsyncSession, message: MessageModel):
|
||||
"""
|
||||
|
||||
@ -30,6 +30,19 @@ class MessageService:
|
||||
|
||||
return message_list_result
|
||||
|
||||
@classmethod
|
||||
async def count_message(cls, query_db: AsyncSession,):
|
||||
"""
|
||||
获取系统消息数量service
|
||||
|
||||
:param query_db: orm对象
|
||||
:return:
|
||||
total 总消息数
|
||||
unhandled 未处理消息数
|
||||
handled 已处理消息数
|
||||
"""
|
||||
total, unhandled, handled = await MessageDao.count_message(query_db)
|
||||
return {'total': total, 'unhandled': unhandled, 'handled': handled}
|
||||
|
||||
@classmethod
|
||||
async def add_message_services(cls, query_db: AsyncSession, page_object: MessageModel):
|
||||
|
||||
Loading…
Reference in New Issue
Block a user