using Microsoft.EntityFrameworkCore; using Quadarax.Application.QLiberace.Base.Entities; using Quadarax.Foundation.Core.Data; using Quadarax.Foundation.Core.Data.Domain; using Quadarax.Foundation.Core.Data.Interface.Domain; using Quadarax.Foundation.Core.Data.Repository; namespace Quadarax.Application.QLiberace.Base.Repositories { public class RepoUser : EntityRepository { public RepoUser(IUnitOfWork unitOfWork) : base(unitOfWork) { } public User? GetByLoginName(string loginName, bool includeLocked = false, bool usingUncommited = false) { if (string.IsNullOrEmpty(loginName)) throw new ArgumentNullException(nameof(loginName)); var query = Query(Paging.NoPaging(), usingUncommited).Include(x=>x.Tenants).FirstOrDefault(x => string.Equals(x.LoginName, loginName) && (x.IsLocked == false || includeLocked == true)); return query; } } }