diff --git a/Src/Dlhis.Basic/Appointment/Services/Implements/AppointmentService.cs b/Src/Dlhis.Basic/Appointment/Services/Implements/AppointmentService.cs index 61ca2bbd..ea7b561d 100644 --- a/Src/Dlhis.Basic/Appointment/Services/Implements/AppointmentService.cs +++ b/Src/Dlhis.Basic/Appointment/Services/Implements/AppointmentService.cs @@ -354,33 +354,29 @@ public class AppointmentService : IAppointmentService .ToListAsync(); var settings = await _factorySettingService.GetListAsync(false); - //0001/1/1 0:00:00 - var nullDateTime = new DateTime(1, 1, 1); //todo 临时处理循环依赖 var gainfoService = _serviceProvider.GetService(); //人员分组,key为factory - foreach (var grp in externals.GroupBy(x => x.Factory)) + foreach (var exts in externals.GroupBy(x => x.Factory)) { //factory的设置 - var setting = settings.First(x => x.Factory == grp.Key); + var setting = settings.First(x => x.Factory == exts.Key); if (setting.NoRecordAutoResignExternalDays == 0) { continue; } - foreach (var ext in grp) + foreach (var ext in exts) { - var raiseDateTime = await _dbContext.Queryable() + DateTime? raiseDateTime = await _dbContext.Queryable() .Where(x => x.UserUniqueNo == ext.Code) .GroupBy(x => x.UserUniqueNo) - .Select(x => SqlFunc.IsNull(SqlFunc.AggregateMax(x.RaiseDateTime), ext.CreateTime)) + .Select(x => SqlFunc.IsNull(SqlFunc.AggregateMax(x.RaiseDateTime), default(DateTime?))) .SingleAsync(); - raiseDateTime = raiseDateTime == nullDateTime ? ext.CreateTime : raiseDateTime; - - if (raiseDateTime.AddDays(setting.NoRecordAutoResignExternalDays) < DateTime.Now) + if (raiseDateTime.HasValue && raiseDateTime.Value.AddDays(setting.NoRecordAutoResignExternalDays) < DateTime.Now) { try { diff --git a/Src/Dlhis.Basic/Organization/Services/Implements/GainfoOutsourceService.cs b/Src/Dlhis.Basic/Organization/Services/Implements/GainfoOutsourceService.cs index 26b76f4a..93bdb9f9 100644 --- a/Src/Dlhis.Basic/Organization/Services/Implements/GainfoOutsourceService.cs +++ b/Src/Dlhis.Basic/Organization/Services/Implements/GainfoOutsourceService.cs @@ -120,8 +120,6 @@ public class GainfoOutsourceService : IGainfoOutsourceService .ToListAsync(); var settings = await _factorySettingService.GetListAsync(false); - //0001/1/1 0:00:00 - var nullDateTime = new DateTime(1, 1, 1); foreach (var grp in outsources.GroupBy(x => x.Factory)) { @@ -133,16 +131,14 @@ public class GainfoOutsourceService : IGainfoOutsourceService foreach (var outsource in grp) { - var raiseDateTime = await _dbContext.Queryable() + DateTime? raiseDateTime = await _dbContext.Queryable() .Where(x => x.UserUniqueNo == outsource.Code) - .Where(x => x.TenantId == grp.Key)//本厂区的 + .Where(x => x.TenantId == grp.Key) //本厂区的 .GroupBy(x => x.UserUniqueNo) - .Select(x => SqlFunc.IsNull(SqlFunc.AggregateMax(x.RaiseDateTime), outsource.CreateTime)) + .Select(x => SqlFunc.IsNull(SqlFunc.AggregateMax(x.RaiseDateTime), default(DateTime?))) .SingleAsync(); - raiseDateTime = raiseDateTime == nullDateTime ? outsource.CreateTime : raiseDateTime; - - if (raiseDateTime.AddDays(setting.NoRecordAutoResignOutsourceDays) < DateTime.Now) + if (raiseDateTime.HasValue && raiseDateTime.Value.AddDays(setting.NoRecordAutoResignOutsourceDays) < DateTime.Now) { try {