|
@@ -168,18 +168,33 @@ namespace MTWorkHR.Application.Services
|
|
.Include(u => u.Qualification).Include(u => u.JobTitle).Include(u => u.University).Include(u => u.Industry).Include(u => u.Country)
|
|
.Include(u => u.Qualification).Include(u => u.JobTitle).Include(u => u.University).Include(u => u.Industry).Include(u => u.Country)
|
|
.Where(e => _globalInfo.CompanyId == null || e.CompanyId != _globalInfo.CompanyId)
|
|
.Where(e => _globalInfo.CompanyId == null || e.CompanyId != _globalInfo.CompanyId)
|
|
.AsQueryable();
|
|
.AsQueryable();
|
|
-
|
|
|
|
- if (PagingInputDto.Filter != null)
|
|
|
|
|
|
+ var filter = PagingInputDto.Filter;
|
|
|
|
+ query = query.Where(u =>
|
|
|
|
+ u.UserName.Contains(filter) ||
|
|
|
|
+ u.Email.Contains(filter) ||
|
|
|
|
+ u.FavoriteName.Contains(filter) ||
|
|
|
|
+ u.Position.Contains(filter) ||
|
|
|
|
+ u.PhoneNumber.Contains(filter));
|
|
|
|
+
|
|
|
|
+ // Check if the filter contains a space (indicating a full name)
|
|
|
|
+ if (filter.Contains(" "))
|
|
|
|
+ {
|
|
|
|
+ var fullName = filter.Split(" ");
|
|
|
|
+ var firstNameFilter = fullName[0];
|
|
|
|
+ var lastNameFilter = fullName.Length > 1 ? fullName[1] : "";
|
|
|
|
+
|
|
|
|
+ query = query.Where(u =>
|
|
|
|
+ (u.FirstName.Contains(firstNameFilter) &&
|
|
|
|
+ (string.IsNullOrEmpty(lastNameFilter) || u.LastName.Contains(lastNameFilter))) ||
|
|
|
|
+ (u.LastName.Contains(lastNameFilter) &&
|
|
|
|
+ (string.IsNullOrEmpty(firstNameFilter) || u.FirstName.Contains(firstNameFilter))));
|
|
|
|
+ }
|
|
|
|
+ else
|
|
{
|
|
{
|
|
- var filter = PagingInputDto.Filter;
|
|
|
|
- query = query.Where(u =>
|
|
|
|
- u.UserName.Contains(filter) ||
|
|
|
|
- u.Email.Contains(filter) ||
|
|
|
|
|
|
+ // If there's no space, apply the filter for individual names
|
|
|
|
+ query = query.Where(u =>
|
|
u.FirstName.Contains(filter) ||
|
|
u.FirstName.Contains(filter) ||
|
|
- u.LastName.Contains(filter) ||
|
|
|
|
- u.FavoriteName.Contains(filter) ||
|
|
|
|
- u.Position.Contains(filter) ||
|
|
|
|
- u.PhoneNumber.Contains(filter));
|
|
|
|
|
|
+ u.LastName.Contains(filter));
|
|
}
|
|
}
|
|
if (PagingInputDto.IndustryId != null && PagingInputDto.IndustryId.Count > 0)
|
|
if (PagingInputDto.IndustryId != null && PagingInputDto.IndustryId.Count > 0)
|
|
{
|
|
{
|