using Infrastructure; using Infrastructure.Attribute; using Infrastructure.Extensions; using SqlSugar; using ZR.Model; using ZR.Model.System; using ZR.Model.System.Dto; using ZR.Service.System.IService; namespace ZR.Service.System { /// /// 操作日志 /// [AppService(ServiceType = typeof(ISysOperLogService), ServiceLifetime = LifeTime.Transient)] public class SysOperLogService : BaseService, ISysOperLogService { /// /// 新增操作日志操作 /// /// 日志对象 public void InsertOperlog(SysOperLog operLog) { if (operLog.OperParam.Length >= 1000) { operLog.OperParam = operLog.OperParam[..1000]; } //sysOperLogRepository.AddSysOperLog(operLog); Insert(operLog); } /// /// 查询系统操作日志集合 /// /// 操作日志对象 /// /// 操作日志集合 public PagedInfo SelectOperLogList(SysOperLogDto sysOper, PagerInfo pager) { sysOper.BeginTime = DateTimeHelper.GetBeginTime(sysOper.BeginTime, -1); sysOper.EndTime = DateTimeHelper.GetBeginTime(sysOper.EndTime, 1); var exp = Expressionable.Create(); exp.And(it => it.OperTime >= sysOper.BeginTime && it.OperTime <= sysOper.EndTime); exp.AndIF(sysOper.Title.IfNotEmpty(), it => it.Title.Contains(sysOper.Title)); exp.AndIF(sysOper.OperName.IfNotEmpty(), it => it.OperName.Contains(sysOper.OperName)); exp.AndIF(sysOper.BusinessType != -1, it => it.BusinessType == sysOper.BusinessType); exp.AndIF(sysOper.Status != -1, it => it.Status == sysOper.Status); exp.AndIF(sysOper.OperParam != null, it => it.OperParam.Contains(sysOper.OperParam)); return GetPages(exp.ToExpression(), pager, x => x.OperId, OrderByType.Desc); } /// /// 清空操作日志 /// public void CleanOperLog() { Truncate(); } /// /// 批量删除系统操作日志 /// /// 需要删除的操作日志ID /// 结果 public int DeleteOperLogByIds(long[] operIds) { return Context.Deleteable().In(operIds).ExecuteCommand(); } /// /// 查询操作日志详细 /// /// 操作ID /// 操作日志对象 public SysOperLog SelectOperLogById(long operId) { return GetById(operId); } } }