test 2
This commit is contained in:
@@ -17,5 +17,5 @@ public interface IGainfoPermissionService : IScopeDependency
|
||||
|
||||
Task<List<DeviceGroupTreeResponse>> GetAssignGroupAsync(string userNo);
|
||||
|
||||
Task ResetPermissionsAsync(string userNo, DeviceTaskEnumType type);
|
||||
Task ResetPermissionsAsync(string userNo, DeviceTaskEnumType type, List<Guid> deviceCodes);
|
||||
}
|
||||
@@ -143,7 +143,7 @@ public class GainfoPermissionService : IGainfoPermissionService
|
||||
}
|
||||
|
||||
|
||||
public async Task ResetPermissionsAsync(string userNo, DeviceTaskEnumType type)
|
||||
public async Task ResetPermissionsAsync(string userNo, DeviceTaskEnumType type, List<Guid> deviceCodes)
|
||||
{
|
||||
var gainfo = await _dbContext.Queryable<GainfoEntity>()
|
||||
.Where(x => x.No == userNo)
|
||||
@@ -170,8 +170,13 @@ public class GainfoPermissionService : IGainfoPermissionService
|
||||
gainfo.ThrowIfNull($"档案数据有误:{msg}");
|
||||
|
||||
//获取人员的设备权限
|
||||
var deviceCodes = await _devicePermissionService.GetAssignDeviceCodesAsync(gainfo!.Code);
|
||||
var devices = await _dbContext.Queryable<DeviceEntity>().Where(x => deviceCodes.Contains(x.Code)).ToListAsync();
|
||||
var myDeviceCodes = await _devicePermissionService.GetAssignDeviceCodesAsync(gainfo!.Code);
|
||||
if (deviceCodes.IsPresent())
|
||||
{
|
||||
myDeviceCodes = deviceCodes;
|
||||
}
|
||||
|
||||
var devices = await _dbContext.Queryable<DeviceEntity>().Where(x => myDeviceCodes.Contains(x.Code)).ToListAsync();
|
||||
|
||||
var tasks = devices.Select(x => new DeviceTaskEntity
|
||||
{
|
||||
|
||||
@@ -267,7 +267,7 @@ public class GainfoService : IGainfoService
|
||||
gainfo.Id = gainfo.IdentityUserId;
|
||||
await _dbContext.DeleteReallyAsync(gainfo);
|
||||
|
||||
await _gainfoPermissionService.ResetPermissionsAsync(gainfo.No, DeviceTaskEnumType.Delete);
|
||||
await _gainfoPermissionService.ResetPermissionsAsync(gainfo.No, DeviceTaskEnumType.Delete, null);
|
||||
}
|
||||
|
||||
public async Task SetSecurityWhiteAsync(string userCode)
|
||||
|
||||
@@ -63,8 +63,7 @@ public class SapBusinessTripService : ISapBusinessTripService
|
||||
|
||||
//获取今天和昨天的出差数据
|
||||
var tripInfos = await _dbContext.Queryable<BusinessTripEntity>()
|
||||
.Where(x => (SqlFunc.DateIsSame(x.BeginDate, today) && SqlFunc.DateIsSame(x.BeginDate, today))
|
||||
|| (SqlFunc.DateIsSame(x.BeginDate, yesterday) && SqlFunc.DateIsSame(x.BeginDate, yesterday)))
|
||||
.Where(x => SqlFunc.DateIsSame(x.BeginDate, today) || SqlFunc.DateIsSame(x.BeginDate, yesterday))
|
||||
.Where(x => !SqlFunc.IsNullOrEmpty(x.Destination))
|
||||
.Where(x => x.Destination == factory)
|
||||
.ToListAsync();
|
||||
@@ -76,6 +75,8 @@ public class SapBusinessTripService : ISapBusinessTripService
|
||||
.Where(x => x.IsBusinessTrip)
|
||||
.SingleAsync();
|
||||
|
||||
var deviceCodes = await _dbContext.Queryable<DeviceGroupRelationshipEntity>().Where(x => x.GroupCode == tripGroup.Code).Select(x => x.DeviceCode).ToListAsync();
|
||||
|
||||
var userCodes = tripInfos.Select(x => x.Code).Distinct().ToList();
|
||||
var gainfos = await _dbContext.Queryable<GainfoEntity>().Where(x => userCodes.Contains(x.Code)).Select(x => new { x.No, x.Code }).ToListAsync();
|
||||
|
||||
@@ -115,8 +116,7 @@ public class SapBusinessTripService : ISapBusinessTripService
|
||||
.ExecuteCommandAsync();
|
||||
|
||||
await _dbContext.UpdateAsync(yesterdayTripInfo);
|
||||
|
||||
await _gainfoPermissionService.ResetPermissionsAsync(gainfo.No, DeviceTaskEnumType.Delete);
|
||||
await _gainfoPermissionService.ResetPermissionsAsync(gainfo.No, DeviceTaskEnumType.Delete, deviceCodes);
|
||||
}
|
||||
|
||||
if (yesterdayTripInfo == null)
|
||||
@@ -145,7 +145,7 @@ public class SapBusinessTripService : ISapBusinessTripService
|
||||
todayTripInfo.Status = BusinessTripStatusEnumType.Generated;
|
||||
await _dbContext.UpdateAsync(todayTripInfo);
|
||||
|
||||
await _gainfoPermissionService.ResetPermissionsAsync(gainfo.No, DeviceTaskEnumType.Add);
|
||||
await _gainfoPermissionService.ResetPermissionsAsync(gainfo.No, DeviceTaskEnumType.Add, null);
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
|
||||
Reference in New Issue
Block a user