using System;
using System.Collections.Generic;
using EasyCaching.Core.Interceptor;
using IRaCIS.Application.Contracts;
using IRaCIS.Core.Infrastructure.Extention;

namespace IRaCIS.Application.Interfaces
{
    public interface IDictionaryService
    {
        /// <summary>
        /// 获取是和否
        /// </summary>
        /// <param name="value"></param>
        /// <returns></returns>
         Task<string> GetBoolValueState(bool value);

        /// <summary>
        /// 获取审核状态
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="trial"></param>
        /// <param name="childCode"></param>
        /// <returns></returns>
         Task<string> GetAuditState<T>(Guid trial, T childCode);

        /// <summary>
        /// 获取枚举翻译
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="parentCode"></param>
        /// <param name="childCode"></param>
        /// <returns></returns>
        Task<string> GetBasicDataTranslateItem<T>(string parentCode, T childCode);

        Task<Dictionary<string, List<BasicDicSelect>>> GetBasicDataSelect(string[] searchArray);

    }
}