using System.Net;
using WIDESEAWCS_Core.BaseServices;
using WIDESEAWCS_ISystemRepository;
using WIDESEAWCS_ISystemServices;
using WIDESEAWCS_Core.BaseRepository;
using WIDESEAWCS_Model.Models;

namespace WIDESEA_Services
{
    public class Sys_ConfigService : ServiceBase<Sys_Config, ISys_ConfigRepository>, ISys_ConfigService
    {
        private readonly IUnitOfWorkManage _unitOfWorkManage;

        public Sys_ConfigService(ISys_ConfigRepository repository, IUnitOfWorkManage unitOfWorkManage) : base(repository)
        {
            _unitOfWorkManage = unitOfWorkManage;
        }

        /// <inheritdoc/>
        public List<Sys_Config> GetAll()
        {
            return BaseDal.QueryData();
        }

        /// <inheritdoc/>
        public List<Sys_Config> GetConfigsByCategory(string category)
        {
            return BaseDal.QueryData(x => x.Category == category).ToList();
        }

        /// <inheritdoc/>
        public Sys_Config GetByConfigKey(string category, string configKey)
        {
            return BaseDal.QueryData(x => x.Category == category && x.ConfigKey == configKey).FirstOrDefault();
        }
    }
}