| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- // Code scaffolded by goctl. Safe to edit.
- // goctl 1.10.2
- package systemlog
- import (
- "context"
- "udeServer/internal/apierr"
- "udeServer/internal/audit"
- "udeServer/internal/log"
- udeModel "udeServer/internal/model"
- "udeServer/internal/svc"
- "udeServer/internal/types"
- "github.com/zeromicro/go-zero/core/logx"
- )
- type LogListLogic struct {
- logx.Logger
- ctx context.Context
- svcCtx *svc.ServiceContext
- }
- // 日志分页列表
- func NewLogListLogic(ctx context.Context, svcCtx *svc.ServiceContext) *LogListLogic {
- return &LogListLogic{
- Logger: logx.WithContext(ctx),
- ctx: ctx,
- svcCtx: svcCtx,
- }
- }
- // LogList queries the audit log with paging and optional filters.
- func (l *LogListLogic) LogList(req *types.SystemLogListReq) (*types.SystemLogListResp, error) {
- page, pageSize := normalizePage(req.Page, req.PageSize)
- f := udeModel.SystemLogFilter{
- Iden: req.Iden,
- UserName: req.UserName,
- AppKey: req.AppKey,
- UriPath: req.UriPath,
- HttpMethod: req.HttpMethod,
- CreatedStartTime: req.CreatedStartTime,
- CreatedEndTime: req.CreatedEndTime,
- ClientIp: req.ClientIp,
- ErrorMsg: req.ErrorMsg,
- }
- // 日志类型:合法取值才过滤(与 sdf-serve 行为一致,非法类型视为不传)
- if req.Type == audit.SystemLog || req.Type == audit.InterfaceLog {
- f.Type = req.Type
- f.TypeValid = true
- }
- // 审计状态:"1"未审计/"2"通过/"3"异常,空白视为未传
- switch req.AuditStatus {
- case "":
- case "1":
- f.AuditStatus = audit.UnAudited
- case "2":
- f.AuditStatus = audit.AuditedPassed
- case "3":
- f.AuditStatus = audit.AuditedAnomaly
- default:
- return nil, apierr.BadRequest("auditStatus must be \"1\" (未审计) or \"2\" (通过) or \"3\" (异常)")
- }
- list, total, err := l.svcCtx.SystemLogModel.FindPage(l.ctx, page, pageSize, f)
- if err != nil {
- log.RecordError(l.ctx, err)
- return nil, apierr.New(500, "查询日志分页列表失败")
- }
- logs := make([]types.SystemLog, len(list))
- for i := range list {
- logs[i] = ConvertToSystemLog(&list[i])
- }
- return &types.SystemLogListResp{
- Total: total,
- Logs: logs,
- }, nil
- }
|