fix 补充检验
This commit is contained in:
@@ -163,9 +163,18 @@ public class WorkGridScheduleService : IWorkGridScheduleService
|
|||||||
var workGridSchedule = await _dbContext.Queryable<WorkGridScheduleEntity>()
|
var workGridSchedule = await _dbContext.Queryable<WorkGridScheduleEntity>()
|
||||||
.Where(x => x.Date < currentDate)
|
.Where(x => x.Date < currentDate)
|
||||||
.SingleAsync(x => x.Id == id);
|
.SingleAsync(x => x.Id == id);
|
||||||
|
|
||||||
workGridSchedule.ThrowIfNull("排班信息不存在或不可操作");
|
workGridSchedule.ThrowIfNull("排班信息不存在或不可操作");
|
||||||
workGridSchedule.IsCancel.ThrowIfTrue("排班信息已被取消,请勿重复操作");
|
workGridSchedule.IsCancel.ThrowIfTrue("排班信息已被取消,请勿重复操作");
|
||||||
|
|
||||||
|
var start = workGridSchedule.Date.ToDateTime(TimeOnly.MinValue);
|
||||||
|
var end = workGridSchedule.Date.ToDateTime(TimeOnly.MaxValue);
|
||||||
|
|
||||||
|
var exists = await _dbContext.Queryable<DeviceUploadLogEntity>().Where(x => x.UserUniqueNo == workGridSchedule.UserCode)
|
||||||
|
.Where(x => x.RaiseDateTime >= start && x.RaiseDateTime <= end).AnyAsync();
|
||||||
|
|
||||||
|
exists.ThrowIfTrue("排班信息已存在打卡记录,请勿取消");
|
||||||
|
|
||||||
await _workGridScheduleRepository.CancelAsync(id, reason);
|
await _workGridScheduleRepository.CancelAsync(id, reason);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user