using Quadarax.Application.QLiberace.Base.Entities; using Quadarax.Foundation.Core.Data; using Quadarax.Foundation.Core.Data.Repository; using Quadarax.Foundation.Core.Data.Domain; using Quadarax.Foundation.Core.Data.Interface; using Quadarax.Foundation.Core.Data.Interface.Domain; namespace Quadarax.Application.QLiberace.Base.Repositories { public class RepoSetting : EntityRepository { public RepoSetting(IUnitOfWork unitOfWork) : base(unitOfWork) { } public Setting? Get(string moduleCode, string valueCode) { var setting = QueryModule(moduleCode, Paging.NoPaging()).FirstOrDefault(x => x.Code == valueCode); return setting; } public override IQueryable Query(IPaging paging, bool usingUncommited = false) { return base.Query(paging, usingUncommited).Where(x=>x.IsEnabled); } public IQueryable QueryModule(string moduleCode, IPaging paging) { return Query(paging).Where(x => x.ModuleCode == moduleCode); } public string? GetValue(string moduleCode, string valueCode) { var setting = QueryModule(moduleCode, Paging.NoPaging()).FirstOrDefault(x => x.Code == valueCode); return setting?.Value; } } }