fix 优化内部人员查询
This commit is contained in:
@@ -224,6 +224,7 @@ public class DeviceUploadLogService : IDeviceUploadLogService
|
|||||||
_ => throw new UserFriendlyException("不支持当前设备类型")
|
_ => throw new UserFriendlyException("不支持当前设备类型")
|
||||||
};
|
};
|
||||||
|
|
||||||
|
var userTypes = new List<GainfoUserTypeEnumType?>();
|
||||||
var userType = request.IsOutsource.HasValue && request.IsOutsource.Value
|
var userType = request.IsOutsource.HasValue && request.IsOutsource.Value
|
||||||
? GainfoUserTypeEnumType.Outsource
|
? GainfoUserTypeEnumType.Outsource
|
||||||
: GainfoUserTypeEnumType.Normal;
|
: GainfoUserTypeEnumType.Normal;
|
||||||
@@ -231,8 +232,16 @@ public class DeviceUploadLogService : IDeviceUploadLogService
|
|||||||
if (request.UserType.HasValue)
|
if (request.UserType.HasValue)
|
||||||
{
|
{
|
||||||
userType = request.UserType.Value;
|
userType = request.UserType.Value;
|
||||||
|
|
||||||
|
|
||||||
|
if (request.UserType.Value == GainfoUserTypeEnumType.Normal)
|
||||||
|
{
|
||||||
|
userTypes.Add(GainfoUserTypeEnumType.SecurityWhite);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
userTypes.Add(userType);
|
||||||
|
|
||||||
var r = await _dbContext.Queryable<DeviceUploadLogEntity>()
|
var r = await _dbContext.Queryable<DeviceUploadLogEntity>()
|
||||||
.LeftJoin<DeviceEntity>((x, device) => x.DeviceUniqueNo == device.UniqueNo)
|
.LeftJoin<DeviceEntity>((x, device) => x.DeviceUniqueNo == device.UniqueNo)
|
||||||
.LeftJoin<GainfoEntity>((x, device, ga) => x.UserUniqueNo == ga.Code)
|
.LeftJoin<GainfoEntity>((x, device, ga) => x.UserUniqueNo == ga.Code)
|
||||||
@@ -240,7 +249,7 @@ public class DeviceUploadLogService : IDeviceUploadLogService
|
|||||||
.LeftJoin<GainfoEntity>((x, device, ga, os, gaSap) => gaSap.Code == os.SapCode)
|
.LeftJoin<GainfoEntity>((x, device, ga, os, gaSap) => gaSap.Code == os.SapCode)
|
||||||
.WhereIF(request.SearchDateTimePeriod.HasValue(), x => x.RaiseDateTime >= request.SearchDateTimePeriod.Start
|
.WhereIF(request.SearchDateTimePeriod.HasValue(), x => x.RaiseDateTime >= request.SearchDateTimePeriod.Start
|
||||||
&& x.RaiseDateTime <= request.SearchDateTimePeriod.End)
|
&& x.RaiseDateTime <= request.SearchDateTimePeriod.End)
|
||||||
.Where((x, device) => x.Type == type && x.UserType == userType)
|
.Where((x, device) => x.Type == type && userTypes.Contains(x.UserType))
|
||||||
.WhereIF(request.Sync.HasValue, x => x.Sync == request.Sync)
|
.WhereIF(request.Sync.HasValue, x => x.Sync == request.Sync)
|
||||||
.WhereIF(request.Search.IsPresent() && userType == GainfoUserTypeEnumType.Outsource, (x, device, ga, os) =>
|
.WhereIF(request.Search.IsPresent() && userType == GainfoUserTypeEnumType.Outsource, (x, device, ga, os) =>
|
||||||
x.UserUniqueNo == request.Search
|
x.UserUniqueNo == request.Search
|
||||||
|
|||||||
Reference in New Issue
Block a user