using CloudGaming.Repository.Game.Entities.App;
namespace CloudGaming.Api.Admin.ApplicationServices.Apps.App;
///
/// Epg配置表 服务 T_Epg_CfgService
///
public class T_Epg_CfgService(IServiceProvider serviceProvider)
: ApplicationUserService(serviceProvider)
{
///
/// 获取列表数据
///
///
///
public async override Task FindListAsync(PagingSearchInput pagingSearchInput)
{
var query = this.Repository.Select
//epg分组
.WhereIf(pagingSearchInput.Search?.EpgCategory != null && pagingSearchInput.Search?.EpgCategory > 0,
w => w.EpgCategory == pagingSearchInput.Search.EpgCategory)
//标题
.WhereIf(!string.IsNullOrWhiteSpace(pagingSearchInput.Search?.Title),
w => w.Title.Contains(pagingSearchInput.Search.Title ?? ""))
.OrderBy(w => w.OrderId)
.Select(w => new
{
w.Id,
w.EpgCategory,
w.ResId,
w.ResType,
w.ResParams,
w.OrderId,
w.Title,
w.Title2,
w.ImageId,
w.ImageResStyle,
w.IsOnline,
w.CornerIconId,
w.UpdateTime,
w.IdName,
w.ImageId2,
w.StartEnableTime,
w.EndEnableTime,
w.ImageId3,
w.CountryName,
w.Continent,
w.Channel,
w.Platform,
w.CreateTime,
w.TenantId,
})
;
var result = await Repository.AsPagingViewAsync(query, pagingSearchInput);
// 设置列
//result.GetColumn(query, w => w.OperatorName).SetColumn("操作人");
//result.GetColumn(query, w => w. !).SetColumn(w => w.Name!);
result
.FormatValue(query, w => w.UpdateTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd"))
.FormatValue(query, w => w.StartEnableTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd HH:mm"))
.FormatValue(query, w => w.EndEnableTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd HH:mm"))
.FormatValue(query, w => w.CreateTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd"))
;
return result;
}
}