public Post GetById(long id, PcsPostSO search) { Post result = null; try { bool valid = true; valid = valid && IsGreaterThanZero(id); if (valid) { using (var ctx = new Base.AppContext()) { var query = ctx.Posts.AsQueryable().Where(p => p.Id == id); if (search.listPostExpression != null && search.listPostExpression.Count > 0) { foreach (var item in search.listPostExpression) { query = query.Where(item); } } result = query.SingleOrDefault(); } } } catch (Exception ex) { Logging(LogUtil.TraceData("id", id) + LogUtil.TraceData("search", search), LogType.Error); LogSystem.Error(ex); result = null; } return(result); }
public List <Post> Get(PcsPostSO search, CommonParam param) { List <Post> list = new List <Post>(); try { bool valid = true; valid = valid && IsNotNull(param); if (valid) { using (var ctx = new Base.AppContext()) { var query = ctx.Posts.AsQueryable(); if (search.listPostExpression != null && search.listPostExpression.Count > 0) { foreach (var item in search.listPostExpression) { query = query.Where(item); } } if (!string.IsNullOrWhiteSpace(search.OrderField) && !string.IsNullOrWhiteSpace(search.OrderDirection)) { if (!param.Start.HasValue || !param.Limit.HasValue) { list = query.OrderByProperty(search.OrderField, search.OrderDirection).ToList(); } else { param.Count = (from r in query select r).Count(); query = query.OrderByProperty(search.OrderField, search.OrderDirection); if (param.Count <= param.Limit.Value && param.Start.Value == 0) { list = query.ToList(); } else { list = query.Skip(param.Start.Value).Take(param.Limit.Value).ToList(); } } } else { list = query.ToList(); } } } } catch (Exception ex) { Logging(LogUtil.TraceData("search", search) + LogUtil.TraceData("param", param), LogType.Error); LogSystem.Error(ex); list.Clear(); } return(list); }
public Post GetById(long id, PcsPostSO search) { Post result = null; try { result = GetWorker.GetById(id, search); } catch (Exception ex) { LogSystem.Error(ex); result = null; } return(result); }
public List <Post> Get(PcsPostSO search, CommonParam param) { List <Post> result = new List <Post>(); try { result = GetWorker.Get(search, param); } catch (Exception ex) { param.HasException = true; LogSystem.Error(ex); result.Clear(); } return(result); }
internal PcsPostSO Query() { PcsPostSO search = new PcsPostSO(); try { #region Abstract Base if (this.Id.HasValue) { listExpression.Add(o => o.Id == this.Id.Value); } if (this.IsActive.HasValue) { listExpression.Add(o => o.IsActive == this.IsActive.Value); } if (this.CreateTimeFrom.HasValue) { listExpression.Add(o => o.CreateTime.Value >= this.CreateTimeFrom.Value); } if (this.CreateTimeFromGreater.HasValue) { listExpression.Add(o => o.CreateTime.Value > this.CreateTimeFromGreater.Value); } if (this.CreateTimeTo.HasValue) { listExpression.Add(o => o.CreateTime.Value <= this.CreateTimeTo.Value); } if (this.CreateTimeToLess.HasValue) { listExpression.Add(o => o.CreateTime.Value < this.CreateTimeToLess.Value); } if (this.ModifyTimeFrom.HasValue) { listExpression.Add(o => o.ModifyTime.Value >= this.ModifyTimeFrom.Value); } if (this.ModifyTimeFromGreater.HasValue) { listExpression.Add(o => o.ModifyTime.Value > this.ModifyTimeFromGreater.Value); } if (this.ModifyTimeTo.HasValue) { listExpression.Add(o => o.ModifyTime.Value <= this.ModifyTimeTo.Value); } if (this.ModifyTimeToLess.HasValue) { listExpression.Add(o => o.ModifyTime.Value < this.ModifyTimeToLess.Value); } if (!String.IsNullOrEmpty(this.Creator)) { listExpression.Add(o => o.Creator == this.Creator); } if (!String.IsNullOrEmpty(this.Modifier)) { listExpression.Add(o => o.Modifier == this.Modifier); } if (this.Ids != null) { listExpression.Add(o => this.Ids.Contains(o.Id)); } #endregion if (this.ProjectId.HasValue) { listExpression.Add(o => o.ProjectId == this.ProjectId.Value); } if (this.ProjectIds != null) { listExpression.Add(o => this.ProjectIds.Contains(o.ProjectId)); } if (this.AddressId.HasValue) { listExpression.Add(o => o.AddressId == this.AddressId.Value); } if (this.AddressIds != null) { listExpression.Add(o => this.AddressIds.Contains(o.AddressId)); } if (this.PostSttId.HasValue) { listExpression.Add(o => o.PostSttId == this.PostSttId.Value); } if (this.PostSttIds != null) { listExpression.Add(o => this.PostSttIds.Contains(o.PostSttId)); } if (this.PostTimeFrom.HasValue) { listExpression.Add(o => o.PostTime.Value >= this.PostTimeFrom.Value); } if (this.PostTimeTo.HasValue) { listExpression.Add(o => o.PostTime.Value <= this.PostTimeTo.Value); } if (this.ApprovalTimeFrom.HasValue) { listExpression.Add(o => o.ApprovalTime.Value >= this.ApprovalTimeFrom.Value); } if (this.ApprovalTimeTo.HasValue) { listExpression.Add(o => o.ApprovalTime.Value <= this.ApprovalTimeTo.Value); } if (!String.IsNullOrWhiteSpace(this.ApprovalLoginnameExact)) { listExpression.Add(o => o.ApprovalLoginname == this.ApprovalLoginnameExact); } if (!String.IsNullOrWhiteSpace(this.KeyWord)) { this.KeyWord = this.KeyWord.ToLower().Trim(); listExpression.Add(o => o.ApprovalLoginname.ToLower().Contains(this.KeyWord) || o.ApprovalNote.ToLower().Contains(this.KeyWord) || o.ApprovalUsername.ToLower().Contains(this.KeyWord) || o.Author.ToLower().Contains(this.KeyWord) || o.Content.ToLower().Contains(this.KeyWord) || o.Creator.ToLower().Contains(this.KeyWord) || o.Modifier.ToLower().Contains(this.KeyWord) || o.PostType.ToLower().Contains(this.KeyWord) || o.Status.ToLower().Contains(this.KeyWord) || o.Tags.ToLower().Contains(this.KeyWord) || o.Title.ToLower().Contains(this.KeyWord)); } search.listPostExpression.AddRange(listExpression); search.OrderField = this.OrderField; search.OrderDirection = this.OrderDirection; } catch (Exception ex) { LogSystem.Error(ex); search.listPostExpression.Clear(); search.listPostExpression.Add(o => o.Id == NegativeId); } return(search); }