using NetAdmin.Domain.Dto.Sys.Dic.Catalog;
using NetAdmin.Domain.Dto.Sys.Dic.Content;
namespace NetAdmin.SysComponent.Application.Services.Sys;
///
public sealed class DicService(IDicCatalogService catalogService, IDicContentService contentService) //
: ServiceBase, IDicService
{
///
public Task BulkDeleteCatalogAsync(BulkReq req)
{
req.ThrowIfInvalid();
return catalogService.BulkDeleteAsync(req);
}
///
public Task BulkDeleteContentAsync(BulkReq req)
{
req.ThrowIfInvalid();
return contentService.BulkDeleteAsync(req);
}
///
public Task CreateCatalogAsync(CreateDicCatalogReq req)
{
req.ThrowIfInvalid();
return catalogService.CreateAsync(req);
}
///
public Task CreateContentAsync(CreateDicContentReq req)
{
req.ThrowIfInvalid();
return contentService.CreateAsync(req);
}
///
public Task DeleteCatalogAsync(DelReq req)
{
req.ThrowIfInvalid();
return catalogService.DeleteAsync(req);
}
///
public Task DeleteContentAsync(DelReq req)
{
req.ThrowIfInvalid();
return contentService.DeleteAsync(req);
}
///
public Task EditCatalogAsync(EditDicCatalogReq req)
{
req.ThrowIfInvalid();
return catalogService.EditAsync(req);
}
///
public Task EditContentAsync(EditDicContentReq req)
{
req.ThrowIfInvalid();
return contentService.EditAsync(req);
}
///
public Task ExportContentAsync(QueryReq req)
{
req.ThrowIfInvalid();
return contentService.ExportAsync(req);
}
///
public Task GetCatalogAsync(QueryDicCatalogReq req)
{
req.ThrowIfInvalid();
return catalogService.GetAsync(req);
}
///
public Task GetContentAsync(QueryDicContentReq req)
{
req.ThrowIfInvalid();
return contentService.GetAsync(req);
}
///
public async Task GetDicValueAsync(GetDicValueReq req)
{
req.ThrowIfInvalid();
var df = new DynamicFilterInfo {
Filters = [
new DynamicFilterInfo {
Field = nameof(QueryDicContentReq.CatalogId)
, Operator = DynamicFilterOperators.Eq
, Value = req.CatalogId
}
, new DynamicFilterInfo {
Field = nameof(QueryDicContentReq.Key)
, Operator = DynamicFilterOperators.Eq
, Value = req.Key
}
]
};
var queryParam = new QueryReq { Count = 1, DynamicFilter = df };
return (await QueryContentAsync(queryParam).ConfigureAwait(false)).FirstOrDefault()?.Value;
}
///
public Task> PagedQueryCatalogAsync(PagedQueryReq req)
{
req.ThrowIfInvalid();
return catalogService.PagedQueryAsync(req);
}
///
public Task> PagedQueryContentAsync(PagedQueryReq req)
{
req.ThrowIfInvalid();
return contentService.PagedQueryAsync(req);
}
///
public Task> QueryCatalogAsync(QueryReq req)
{
req.ThrowIfInvalid();
return catalogService.QueryAsync(req);
}
///
public Task> QueryContentAsync(QueryReq req)
{
req.ThrowIfInvalid();
return contentService.QueryAsync(req);
}
///
public Task SetEnabledAsync(SetDicContentEnabledReq req)
{
req.ThrowIfInvalid();
return contentService.SetEnabledAsync(req);
}
}