using Microsoft.AspNetCore.Mvc; using QYZH.InteractiveMagazine.IService; using QYZH.InteractiveMagazine.Models.Common; using QYZH.InteractiveMagazine.Models.Dto; namespace QYZH.InteractiveMagazine.WebApi.Controllers; /// /// 操作日志控制器 /// [Route("api/[controller]")] [ApiController] public class OperationLogController : BaseController { private readonly IOperationLogService _operationLogService; private readonly ILogger _logger; public OperationLogController(IOperationLogService operationLogService, ILogger logger) { _operationLogService = operationLogService; _logger = logger; } /// /// 分页查询操作日志 /// [HttpPost("list")] public async Task>> GetList([FromBody] OperationLogQueryInput input) { try { var result = await _operationLogService.GetListAsync(input); return Success(result); } catch (BusinessException ex) { _logger.LogWarning(ex, "查询操作日志业务异常: {Message}", ex.Message); return BaseResponse>.Fail(ex.Message); } catch (Exception ex) { _logger.LogError(ex, "查询操作日志系统异常"); return BaseResponse>.Fail("查询操作日志失败,请稍后重试"); } } /// /// 获取操作日志详情 /// [HttpGet("{id}")] public async Task> GetDetail(long id) { try { var result = await _operationLogService.GetDetailAsync(id); return Success(result); } catch (BusinessException ex) { _logger.LogWarning(ex, "查询操作日志详情业务异常: {Message}", ex.Message); return BaseResponse.Fail(ex.Message); } catch (Exception ex) { _logger.LogError(ex, "查询操作日志详情系统异常"); return BaseResponse.Fail("查询操作日志详情失败,请稍后重试"); } } }