using System.Collections.Generic; using IRaCIS.Application.Interfaces; using IRaCIS.Application.ViewModels; using System; using IRaCIS.Core.Application.Contracts.RequestAndResponse; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Authorization; namespace IRaCIS.Api.Controllers { [Route("message")] [ApiController, Authorize, ApiExplorerSettings(GroupName = "Common")] public class MessageController : ControllerBase { private IMessageService _app; public MessageController(IMessageService app) { _app = app; } /// <summary> /// 删除消息 /// </summary> /// <param name="messageId">消息Id</param> /// <returns></returns> [HttpDelete, Route("deleteMessage/{messageId:guid}")] public IResponseOutput DeleteSysMessage(Guid messageId) { return _app.DeleteSysMessage(messageId); } /// <summary> /// 分页获取系统消息 /// </summary> /// <param name="doctorId">医生Id</param> /// <param name="pageSize">分页大小</param> /// <param name="pageIndex">也索引</param> /// <returns></returns> [HttpGet, Route("getMessageList/{doctorId:guid}/{pageIndex:int:min(1)}/{pageSize:int:range(1,100)}")] public IResponseOutput<PageOutput<SysMessageDTO>> GetMessageList(Guid doctorId, int pageSize, int pageIndex) { return ResponseOutput.Ok(_app.GetMessageList(doctorId, pageSize, pageIndex)) ; } /// <summary> /// 将消息标记已读 /// </summary> /// <param name="messageId"></param> /// <returns></returns> [HttpGet, Route("markedAsRead/{messageId:guid}")] public IResponseOutput MarkedAsRead(Guid messageId) { return _app.MarkedAsRead(messageId); } } }