// Code scaffolded by goctl. Safe to edit. // goctl 1.10.2 package systemlog import ( "context" "udeServer/internal/apierr" "udeServer/internal/log" "udeServer/internal/svc" "udeServer/internal/types" "github.com/zeromicro/go-zero/core/logx" ) type LogDetailLogic struct { logx.Logger ctx context.Context svcCtx *svc.ServiceContext } // 日志详情 func NewLogDetailLogic(ctx context.Context, svcCtx *svc.ServiceContext) *LogDetailLogic { return &LogDetailLogic{ Logger: logx.WithContext(ctx), ctx: ctx, svcCtx: svcCtx, } } // LogDetail returns one log entry by its iden. func (l *LogDetailLogic) LogDetail(req *types.SystemLogDetailReq) (*types.SystemLogDetailResp, error) { if req.Iden == "" { return nil, apierr.BadRequest("iden 不能为空") } entry, err := l.svcCtx.SystemLogModel.FindOneByIden(l.ctx, req.Iden) if err != nil { log.RecordError(l.ctx, err) return nil, apierr.New(404, "日志 iden="+req.Iden+" 不存在") } return &types.SystemLogDetailResp{ SystemLog: ConvertToSystemLog(entry), }, nil }