using Infrastructure;
using Infrastructure.Attribute;
using Mapster;
using ZR.Model;
using ZR.Model.Content;
using ZR.Model.Content.Dto;
using ZR.Repository;
using ZR.Service.Content.IService;
namespace ZR.Service.Content
{
///
/// 文章话题Service业务层处理
///
[AppService(ServiceType = typeof(IArticleTopicService), ServiceLifetime = LifeTime.Transient)]
public class ArticleTopicService : BaseService, IArticleTopicService
{
///
/// 查询文章话题列表
///
///
///
public PagedInfo GetList(ArticleTopicQueryDto parm)
{
var predicate = QueryExp(parm);
var response = Queryable()
.Where(predicate.ToExpression())
.ToPage(parm);
return response;
}
///
/// 获取详情
///
///
///
public ArticleTopic GetInfo(long TopicId)
{
var response = Queryable()
.Where(x => x.TopicId == TopicId)
.First();
return response;
}
///
/// 添加文章话题
///
///
///
public ArticleTopic AddArticleTopic(ArticleTopic model)
{
if (Any(f => f.TopicName == model.TopicName))
{
throw new CustomException("话题名已存在");
}
return Insertable(model).ExecuteReturnEntity();
}
///
/// 修改文章话题
///
///
///
public int UpdateArticleTopic(ArticleTopic model)
{
return Update(model, true);
}
///
/// 导出文章话题
///
///
///
public PagedInfo ExportList(ArticleTopicQueryDto parm)
{
var predicate = QueryExp(parm);
var response = Queryable()
.Where(predicate.ToExpression())
.Select((it) => new ArticleTopicDto()
{
}, true)
.ToPage(parm);
return response;
}
///
/// 查询导出表达式
///
///
///
private static Expressionable QueryExp(ArticleTopicQueryDto parm)
{
var predicate = Expressionable.Create();
return predicate;
}
///
/// 查询热门文章话题列表
///
///
///
public List GetTopicList(ArticleTopicQueryDto parm)
{
var predicate = Expressionable.Create();
var response = Queryable()
.Where(predicate.ToExpression())
.ToList();
return response.Adapt>();
}
}
}