/// <summary> /// 分页 /// </summary> /// <param name="filter">参数</param> /// <returns>分页</returns> /// <remarks>2013-08-15 朱家宏 创建</remarks> public Pager <SySystemLog> GetLogs(ParaSystemLogFilter filter) { return(ISySystemLogDao.Instance.Query(filter)); }
/// <summary> /// 分页查询 /// </summary> /// <param name="filter">查询参数</param> /// <returns>分页</returns> /// <remarks>2013-08-14 朱家宏 创建</remarks> public override Pager <SySystemLog> Query(ParaSystemLogFilter filter) { var sql = @"SySystemLog a {0} "; #region 构造sql var paras = new ArrayList(); var where = ""; int i = 0; if (filter.Operator.HasValue) { where += (string.IsNullOrWhiteSpace(where) ? "" : " and") + " a.Operator=@p0p" + i; paras.Add(filter.Operator); i++; } if (!string.IsNullOrWhiteSpace(filter.LogIp)) { where += (string.IsNullOrWhiteSpace(where) ? "" : " and") + " a.LogIp = @p0p" + i; paras.Add(filter.LogIp); i++; } if (filter.LogLevels != null && filter.LogLevels.Any()) { var logLevels = string.Join(",", filter.LogLevels); where += (string.IsNullOrWhiteSpace(where) ? "" : " and") + " exists (select 1 from splitstr(@p0p" + i + ",',') tmp where tmp.col = a.LogLevel)"; paras.Add(logLevels); i++; } if (filter.Sources != null && filter.Sources.Any()) { var sources = string.Join(",", filter.Sources); where += (string.IsNullOrWhiteSpace(where) ? "" : " and") + " exists (select 1 from splitstr(@p0p" + i + ",',') tmp where tmp.col = a.Source)"; paras.Add(sources); i++; } if (filter.BeginDate.HasValue) { //有效时间(起) where += (string.IsNullOrWhiteSpace(where) ? "" : " and") + " a.logDate>=@p0p" + i; paras.Add(filter.BeginDate); i++; } if (filter.EndDate.HasValue) { //有效时间(止) where += (string.IsNullOrWhiteSpace(where) ? "" : " and") + " a.logDate<@p0p" + i; paras.Add(filter.EndDate); i++; } if (!string.IsNullOrWhiteSpace(filter.Message)) { where += (string.IsNullOrWhiteSpace(where) ? "" : " and") + " a.Message LIKE @p0p" + i; paras.Add("%" + filter.Message + "%"); i++; } if (filter.TargetType.HasValue) { where += (string.IsNullOrWhiteSpace(where) ? "" : " and") + " a.TargetType=@p0p" + i; paras.Add(filter.TargetType); i++; } if (filter.TargetSysNo.HasValue) { where += (string.IsNullOrWhiteSpace(where) ? "" : " and") + " a.TargetSysNo=@p0p" + i; paras.Add(filter.TargetSysNo); i++; } sql = string.Format(sql, (string.IsNullOrWhiteSpace(where) ? "" : " where ") + where); #endregion var dataList = Context.Select <SySystemLog>("a.*").From(sql); var dataCount = Context.Select <int>("count(0)").From(sql); dataList.Parameters(paras); dataCount.Parameters(paras); var pager = new Pager <SySystemLog> { PageSize = filter.PageSize, CurrentPage = filter.Id, TotalRows = dataCount.QuerySingle(), Rows = dataList.OrderBy("a.sysno desc").Paging(filter.Id, filter.PageSize).QueryMany() }; return(pager); }
/// <summary> /// 分页查询 /// </summary> /// <param name="filter">查询参数</param> /// <returns>分页</returns> /// <remarks>2013-08-14 朱家宏 创建</remarks> public abstract Pager <SySystemLog> Query(ParaSystemLogFilter filter);