fix 优化获取raiseDateTime?的问题
This commit is contained in:
@@ -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<IGainfoService>();
|
||||
|
||||
//人员分组,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<DeviceUploadLogEntity>()
|
||||
DateTime? raiseDateTime = await _dbContext.Queryable<DeviceUploadLogEntity>()
|
||||
.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
|
||||
{
|
||||
|
||||
@@ -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<DeviceUploadLogEntity>()
|
||||
DateTime? raiseDateTime = await _dbContext.Queryable<DeviceUploadLogEntity>()
|
||||
.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
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user