using TakeoutSaaS.Application.Dictionary.Contracts;
using TakeoutSaaS.Application.Dictionary.Models;
namespace TakeoutSaaS.Application.Dictionary.Abstractions;
///
/// 参数字典应用服务接口。
///
public interface IDictionaryAppService
{
Task CreateGroupAsync(CreateDictionaryGroupRequest request, CancellationToken cancellationToken = default);
Task UpdateGroupAsync(long groupId, UpdateDictionaryGroupRequest request, CancellationToken cancellationToken = default);
Task DeleteGroupAsync(long groupId, CancellationToken cancellationToken = default);
Task> SearchGroupsAsync(DictionaryGroupQuery request, CancellationToken cancellationToken = default);
Task CreateItemAsync(CreateDictionaryItemRequest request, CancellationToken cancellationToken = default);
Task UpdateItemAsync(long itemId, UpdateDictionaryItemRequest request, CancellationToken cancellationToken = default);
Task DeleteItemAsync(long itemId, CancellationToken cancellationToken = default);
Task>> GetCachedItemsAsync(DictionaryBatchQueryRequest request, CancellationToken cancellationToken = default);
}