public int GetChannelCount(ChannelSearchCondition condition) { var query = _channelRepository.Table; try { if (condition.Status.HasValue) { query = query.Where(q => q.Status == condition.Status.Value); } if (!string.IsNullOrEmpty(condition.Name)) { query = query.Where(q => q.Name.Contains(condition.Name)); } if (condition.Ids != null && condition.Ids.Any()) { query = query.Where(q => condition.Ids.Contains(q.Id)); } return(query.Count()); } catch (Exception e) { _log.Error(e, "数据库操作出错"); return(-1); } }
public HttpResponseMessage Edit(ChannelModel model) { Regex reg = new Regex(@"^[^ %@#!*~&',;=?$\x22]+$"); var m = reg.IsMatch(model.Name); if (!m) { return(PageHelper.toJson(PageHelper.ReturnValue(false, "存在非法字符!"))); } else { var channel = _channelService.GetChannelById(model.Id); if (channel.Name == model.Name) { var newParent = _channelService.GetChannelById(model.ParentId); channel.Name = model.Name; channel.Status = model.Status; channel.UpdUser = _workContent.CurrentUser.Id; channel.UpdTime = DateTime.Now; channel.Parent = newParent; if (_channelService.Update(channel) != null) { return(PageHelper.toJson(PageHelper.ReturnValue(true, "数据更新成功!"))); } else { return(PageHelper.toJson(PageHelper.ReturnValue(false, "数据更新失败!"))); } } else { var channelCon = new ChannelSearchCondition { Name = model.Name }; var totalCount = _channelService.GetChannelCount(channelCon); if (totalCount > 0) { return(PageHelper.toJson(PageHelper.ReturnValue(false, "数据已存在!"))); } else { var newParent = _channelService.GetChannelById(model.ParentId); channel.Name = model.Name; channel.Status = model.Status; channel.UpdUser = _workContent.CurrentUser.Id; channel.UpdTime = DateTime.Now; channel.Parent = newParent; if (_channelService.Update(channel) != null) { return(PageHelper.toJson(PageHelper.ReturnValue(true, "数据更新成功!"))); } else { return(PageHelper.toJson(PageHelper.ReturnValue(false, "数据更新失败!"))); } } } } }
public IQueryable <ChannelEntity> GetChannelsByCondition(ChannelSearchCondition condition) { var query = _channelRepository.Table; try { if (condition.Status.HasValue) { query = query.Where(q => q.Status == condition.Status.Value); } if (!string.IsNullOrEmpty(condition.Name)) { query = query.Where(q => q.Name.Contains(condition.Name)); } if (condition.Ids != null && condition.Ids.Any()) { query = query.Where(q => condition.Ids.Contains(q.Id)); } if (condition.OrderBy.HasValue) { switch (condition.OrderBy.Value) { case EnumChannelSearchOrderBy.OrderById: query = condition.IsDescending?query.OrderByDescending(q => q.Id):query.OrderBy(q => q.Id); break; case EnumChannelSearchOrderBy.OrderByName: query = condition.IsDescending?query.OrderByDescending(q => q.Name):query.OrderBy(q => q.Name); break; case EnumChannelSearchOrderBy.OrderByStatus: query = condition.IsDescending?query.OrderByDescending(q => q.Status):query.OrderBy(q => q.Status); break; } } else { query = query.OrderBy(q => q.Id); } if (condition.Page.HasValue && condition.PageCount.HasValue) { query = query.Skip((condition.Page.Value - 1) * condition.PageCount.Value).Take(condition.PageCount.Value); } return(query); } catch (Exception e) { _log.Error(e, "数据库操作出错"); return(null); } }
public HttpResponseMessage Index(string name = null, int page = 1, int pageSize = 10) { var channelCon = new ChannelSearchCondition { Name = name, Page = page, PageCount = pageSize }; var channelList = _channelService.GetChannelsByCondition(channelCon).Select(a => new ChannelModel { Id = a.Id, Name = a.Name, Status = a.Status, }).ToList(); var totalCount = _channelService.GetChannelCount(channelCon); return(PageHelper.toJson(new{ List = channelList, Condition = channelCon, TotalCount = totalCount })); }
public HttpResponseMessage Create(ChannelModel model) { Regex reg = new Regex(@"^[^ %@#!*~&',;=?$\x22]+$"); var m = reg.IsMatch(model.Name); if (!m) { return(PageHelper.toJson(PageHelper.ReturnValue(false, "存在非法字符!"))); } else { var channelCon = new ChannelSearchCondition { Name = model.Name }; var totalCount = _channelService.GetChannelCount(channelCon); if (totalCount > 0) { return(PageHelper.toJson(PageHelper.ReturnValue(false, "数据已存在!"))); } else { var newParent = model.ParentId == 0 ? null : _channelService.GetChannelById(model.ParentId); var channel = new ChannelEntity { Name = model.Name, Status = model.Status, Parent = newParent, Adduser = _workContent.CurrentUser.Id, Addtime = DateTime.Now, UpdUser = _workContent.CurrentUser.Id, UpdTime = DateTime.Now }; if (_channelService.Create(channel) != null) { return(PageHelper.toJson(PageHelper.ReturnValue(true, "数据添加成功!"))); } else { return(PageHelper.toJson(PageHelper.ReturnValue(false, "数据添加失败!"))); } } } }
public HttpResponseMessage GetCount( int page = 1, int pageCount = 10, bool isDescending = false, string name = "", EnumChannelStatus?status = null, EnumChannelSearchOrderBy orderBy = EnumChannelSearchOrderBy.OrderById) { var condition = new ChannelSearchCondition { IsDescending = isDescending, Page = page, PageCount = pageCount, Name = name, Status = status, OrderBy = orderBy }; var count = _ChannelService.GetChannelCount(condition); return(PageHelper.toJson(new{ TotalCount = count, Condition = condition })); }
public List <ChannelModel> GetByCondition( int page = 1, int pageCount = 10, bool isDescending = false, string name = "", EnumChannelStatus?status = null, EnumChannelSearchOrderBy orderBy = EnumChannelSearchOrderBy.OrderById) { var condition = new ChannelSearchCondition { IsDescending = isDescending, Page = page, PageCount = pageCount, Name = name, Status = status, OrderBy = orderBy }; var model = _ChannelService.GetChannelsByCondition(condition).Select(c => new ChannelModel { Id = c.Id, Name = c.Name, Status = c.Status, // Parent = c.Parent, // Adduser = c.Adduser, // // Addtime = c.Addtime, // // Upduser = c.Upduser, // // Updtime = c.Updtime, }).ToList(); return(model); }