diff --git a/Src/Dlhis.ScheduledTask/Common/Services/Implements/SapBusinessTripService.cs b/Src/Dlhis.ScheduledTask/Common/Services/Implements/SapBusinessTripService.cs index d8d98633..e4282e7d 100644 --- a/Src/Dlhis.ScheduledTask/Common/Services/Implements/SapBusinessTripService.cs +++ b/Src/Dlhis.ScheduledTask/Common/Services/Implements/SapBusinessTripService.cs @@ -62,7 +62,6 @@ public class SapBusinessTripService : ISapBusinessTripService .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.IsNullOrEmpty(x.Destination)) - .Where(x => x.Status == BusinessTripStatusEnumType.Wait) .Where(x => x.Destination == factory) .ToListAsync(); @@ -96,22 +95,8 @@ public class SapBusinessTripService : ISapBusinessTripService continue; } - if (yesterdayTripInfo == null) - { - todayTripInfo.Status = BusinessTripStatusEnumType.Generated; - await _dbContext.InsertAsync(new DevicePermissionEntity - { - AssignType = AssignTypeEnumType.User, - AssignValue = gainfo.No, - UniqueType = DeviceAssignmentTypeEnumType.Group, - UniqueValue = tripGroup.Code, - TenantId = factory, - Type = tripGroup.Type, - IsDeleted = false - }); - await _dbContext.UpdateAsync(todayTripInfo); - } - + var beforeResult = await _devicePermissionApi.GetPermissionUsersInfoAsync(new List { gainfo.Code }); + if (yesterdayTripInfo != null) { yesterdayTripInfo.Status = BusinessTripStatusEnumType.Deleted; @@ -127,7 +112,22 @@ public class SapBusinessTripService : ISapBusinessTripService await _dbContext.UpdateAsync(yesterdayTripInfo); } - var beforeResult = await _devicePermissionApi.GetPermissionUsersInfoAsync(new List { gainfo.Code }); + if (yesterdayTripInfo == null) + { + todayTripInfo.Status = BusinessTripStatusEnumType.Generated; + await _dbContext.InsertAsync(new DevicePermissionEntity + { + AssignType = AssignTypeEnumType.User, + AssignValue = gainfo.No, + UniqueType = DeviceAssignmentTypeEnumType.Group, + UniqueValue = tripGroup.Code, + TenantId = factory, + Type = tripGroup.Type, + IsDeleted = false + }); + await _dbContext.UpdateAsync(todayTripInfo); + } + await _devicePermissionApi.RePermissionUsersInfoAsync(beforeResult.Data); } catch (Exception e)