RepoUser.cs 969 B

123456789101112131415161718192021222324
  1. using Quadarax.Application.QLiberace.Base.Entities;
  2. using Quadarax.Foundation.Core.Data;
  3. using Quadarax.Foundation.Core.Data.Domain;
  4. using Quadarax.Foundation.Core.Data.Interface.Domain;
  5. using Quadarax.Foundation.Core.Data.Repository;
  6. namespace Quadarax.Application.QLiberace.Base.Repositories
  7. {
  8. public class RepoUser : EntityRepository<long, User>
  9. {
  10. public RepoUser(IUnitOfWork<IDataDomain> unitOfWork) : base(unitOfWork)
  11. {
  12. }
  13. public User? GetByLoginName(string loginName, bool includeLocked = false, bool usingUncommited = false)
  14. {
  15. if (string.IsNullOrEmpty(loginName)) throw new ArgumentNullException(nameof(loginName));
  16. var query = Query(Paging.NoPaging(), usingUncommited).FirstOrDefault(x =>
  17. string.Equals(x.LoginName, loginName, StringComparison.InvariantCultureIgnoreCase) && (x.IsLocked == false || includeLocked == true));
  18. return query;
  19. }
  20. }
  21. }