1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- using GxPress.Service.Interface.AppHomePage;
- using GxPress.Repository.Interface;
- using GxPress.Repository.Interface.Media;
- using GxPress.Request.ArticleGroup;
- using System.Threading.Tasks;
- using System.Collections.Generic;
- using GxPress.Result.SystemLabel;
- using GxPress.Result.Media;
- namespace GxPress.Service.Implement.AppHomePage
- {
- public class AppHomePageService : IAppHomePageService
- {
- private readonly IArticleGroupRepository articleGroupRepository;
- private readonly IMediaRepository mediaRepository;
- public AppHomePageService(IArticleGroupRepository articleGroupRepository, IMediaRepository mediaRepository)
- {
- this.articleGroupRepository = articleGroupRepository;
- this.mediaRepository = mediaRepository;
- }
- /// <summary>
- /// 大咖讲座
- /// </summary>
- /// <param name="request"></param>
- /// <returns></returns>
- public async Task<List<AppLabelResult<MediaCathedraResult>>> GetMediasByTeacherAsync(ArticleGroupRequest request)
- {
- var results = new List<AppLabelResult<MediaCathedraResult>>();
- request.Sort = "recommend";
- var items = await mediaRepository.GetMediasByTeacherAsync(request);
- results.Add(new AppLabelResult<MediaCathedraResult>() { LabelName = "今日推荐", IsPage = false, ResourceType = 40, Method = "", Items = items });
- request.Sort = "";
- items = await mediaRepository.GetMediasByTeacherAsync(request);
- results.Add(new AppLabelResult<MediaCathedraResult>() { LabelName = "更多精彩", IsPage = true, ResourceType = 40, Method = "post", Items = items, ActionUrl = "api/app/page/cathedra-page" });
- foreach (var item in results)
- {
- foreach (var model in item.Items)
- model.Duration = "02:19:20";
- }
- return results;
- }
- /// <summary>
- /// 大咖讲座
- /// </summary>
- /// <returns></returns>
- public async Task<IEnumerable<MediaCathedraResult>> MediaCathedraResult(ArticleGroupRequest request)
- {
- var result = await mediaRepository.GetMediasByTeacherAsync(request);
- foreach (var item in result)
- {
- item.ImageUrls = Common.Tools.StringUtils.AddDomain(item.ImageUrls);
- }
- return result;
- }
- }
- }
|