示例#1
0
        public int GetTagCount(TagSearchCondition condition)
        {
            var query = _tagRepository.Table;

            try
            {
                if (condition.AddtimeBegin.HasValue)
                {
                    query = query.Where(q => q.Addtime >= condition.AddtimeBegin.Value);
                }
                if (condition.AddtimeEnd.HasValue)
                {
                    query = query.Where(q => q.Addtime < condition.AddtimeEnd.Value);
                }
                if (condition.UpdTimeBegin.HasValue)
                {
                    query = query.Where(q => q.UpdTime >= condition.UpdTimeBegin.Value);
                }
                if (condition.UpdTimeEnd.HasValue)
                {
                    query = query.Where(q => q.UpdTime < condition.UpdTimeEnd.Value);
                }
                if (!string.IsNullOrEmpty(condition.Tag))
                {
                    query = query.Where(q => q.Tag == condition.Tag);
                }
                if (!string.IsNullOrEmpty(condition.LikeTag))
                {
                    query = query.Where(q => q.Tag.Contains(condition.LikeTag));
                }
                if (condition.Ids != null && condition.Ids.Any())
                {
                    query = query.Where(q => condition.Ids.Contains(q.Id));
                }
                if (condition.Addusers != null && condition.Addusers.Any())
                {
                    query = query.Where(q => condition.Addusers.Contains(q.Adduser));
                }
                if (condition.UpdUsers != null && condition.UpdUsers.Any())
                {
                    query = query.Where(q => condition.UpdUsers.Contains(q.UpdUser));
                }
                return(query.Count());
            }
            catch (Exception e)
            {
                _log.Error(e, "数据库操作出错");
                return(-1);
            }
        }
示例#2
0
        public HttpResponseMessage Index(string tag = null, int page = 1, int pageSize = 10)
        {
            var tagCon = new TagSearchCondition {
                LikeTag   = tag,
                Page      = page,
                PageCount = pageSize
            };
            var tagList = _tagService.GetTagsByCondition(tagCon).Select(a => new TagModel
            {
                Id  = a.Id,
                Tag = a.Tag
            }).ToList();
            var totalCount = _tagService.GetTagCount(tagCon);

            return(PageHelper.toJson(new{ List = tagList, Condition = tagCon, TotalCount = totalCount }));
        }
示例#3
0
        public HttpResponseMessage Create(TagModel tag)
        {
            Regex reg = new Regex(@"^[^ %@#!*~&',;=?$\x22]+$");
            var   m   = reg.IsMatch(tag.Tag);

            if (!m)
            {
                return(PageHelper.toJson(PageHelper.ReturnValue(false, "存在非法字符!")));
            }

            var tagCon = new TagSearchCondition
            {
                Tag = tag.Tag
            };
            var tagCount = _tagService.GetTagCount(tagCon);

            if (tagCount > 0)
            {
                return(PageHelper.toJson(PageHelper.ReturnValue(false, "数据已存在")));
            }
            else
            {
                var tagModel = new TagEntity
                {
                    Tag     = tag.Tag,
                    Adduser = _workContext.CurrentUser.Id,
                    Addtime = DateTime.Now,
                    UpdUser = _workContext.CurrentUser.Id,
                    UpdTime = DateTime.Now
                };
                if (_tagService.Create(tagModel) != null)
                {
                    return(PageHelper.toJson(PageHelper.ReturnValue(true, "数据添加成功!")));
                }
                else
                {
                    return(PageHelper.toJson(PageHelper.ReturnValue(false, "数据添加失败!")));
                }
            }
        }
示例#4
0
		public List<TagModel> Get(TagSearchCondition condition)
		{
			var model = _TagService.GetTagsByCondition(condition).Select(c=>new TagModel
			{

				Id = c.Id,

				Tag = c.Tag,

				Adduser = c.Adduser,

				Addtime = c.Addtime,

				UpdUser = c.UpdUser,

				UpdTime = c.UpdTime,

//				Content = c.Content,

			}).ToList();
			return model;
		}
示例#5
0
        public HttpResponseMessage Edit(TagModel model)
        {
            Regex reg = new Regex(@"^[^ %@#!*~&',;=?$\x22]+$");
            var   m   = reg.IsMatch(model.Tag);

            if (!m)
            {
                return(PageHelper.toJson(PageHelper.ReturnValue(false, "存在非法字符!")));
            }
            else
            {
                var tag = _tagService.GetTagById(model.Id);
                if (tag.Tag == model.Tag)
                {
                    tag.Tag     = model.Tag;
                    tag.UpdTime = DateTime.Now;
                    tag.UpdUser = _workContext.CurrentUser.Id;
                    if (_tagService.Update(tag) != null)
                    {
                        return(PageHelper.toJson(PageHelper.ReturnValue(true, "数据更新成功!")));
                    }
                    else
                    {
                        return(PageHelper.toJson(PageHelper.ReturnValue(false, "数据更新失败!")));
                    }
                }
                else
                {
                    var tagCon = new TagSearchCondition
                    {
                        Tag = model.Tag
                    };
                    var tagCount = _tagService.GetTagCount(tagCon);
                    if (tagCount > 0)
                    {
                        return(PageHelper.toJson(PageHelper.ReturnValue(false, "数据已存在")));
                    }
                    else
                    {
                        tag.Tag     = model.Tag;
                        tag.UpdTime = DateTime.Now;
                        tag.UpdUser = _workContext.CurrentUser.Id;
                        if (_tagService.Update(tag) != null)
                        {
                            return(PageHelper.toJson(PageHelper.ReturnValue(true, "数据更新成功!")));
                        }
                        else
                        {
                            return(PageHelper.toJson(PageHelper.ReturnValue(false, "数据更新失败!")));
                        }
                    }
                }
                //var tagCon = new TagSearchCondition
                //{
                //    Tag = model.Tag
                //};
                //var tagCount = _tagService.GetTagCount(tagCon);
                //if (tagCount > 0)
                //{
                //    return PageHelper.toJson(PageHelper.ReturnValue(false, "数据已存在"));
                //}
                //var tag = _tagService.GetTagById(model.Id);
                //tag.Tag = model.Tag;
                //tag.UpdTime = DateTime.Now;
                //tag.UpdUser = _workContext.CurrentUser.Id;
                //if (_tagService.Update(tag) != null)
                //{
                //    return PageHelper.toJson(PageHelper.ReturnValue(true, "数据更新成功!"));
                //}
                //else
                //{
                //    return PageHelper.toJson(PageHelper.ReturnValue(false, "数据更新失败!"));
                //}
            }
        }
示例#6
0
        public IQueryable <TagEntity> GetTagsByCondition(TagSearchCondition condition)
        {
            var query = _tagRepository.Table;

            try
            {
                if (condition.AddtimeBegin.HasValue)
                {
                    query = query.Where(q => q.Addtime >= condition.AddtimeBegin.Value);
                }
                if (condition.AddtimeEnd.HasValue)
                {
                    query = query.Where(q => q.Addtime < condition.AddtimeEnd.Value);
                }
                if (condition.UpdTimeBegin.HasValue)
                {
                    query = query.Where(q => q.UpdTime >= condition.UpdTimeBegin.Value);
                }
                if (condition.UpdTimeEnd.HasValue)
                {
                    query = query.Where(q => q.UpdTime < condition.UpdTimeEnd.Value);
                }
                if (!string.IsNullOrEmpty(condition.Tag))
                {
                    query = query.Where(q => q.Tag == condition.Tag);
                }
                if (condition.Ids != null && condition.Ids.Any())
                {
                    query = query.Where(q => condition.Ids.Contains(q.Id));
                }
                if (condition.Addusers != null && condition.Addusers.Any())
                {
                    query = query.Where(q => condition.Addusers.Contains(q.Adduser));
                }
                if (condition.UpdUsers != null && condition.UpdUsers.Any())
                {
                    query = query.Where(q => condition.UpdUsers.Contains(q.UpdUser));
                }
                if (condition.OrderBy.HasValue)
                {
                    switch (condition.OrderBy.Value)
                    {
                    case EnumTagSearchOrderBy.OrderById:
                        query = condition.IsDescending?query.OrderByDescending(q => q.Id):query.OrderBy(q => q.Id);
                        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);
            }
        }