fix 补充日志和去重逻辑

This commit is contained in:
2024-02-21 18:29:57 +08:00
parent a9c8ab7d00
commit 177b0862f2

View File

@@ -48,13 +48,16 @@ public class SyncPersonJob
foreach (var searchCodes in workCodes.Chunk(4000))
{
var existsWorkCodes = await _dbContext.Queryable<GainfoEntity>()
.Where(x => searchCodes.Contains(x.Code))
.Select(x => x.Code)
var existsWorkCodes = await _dbContext.Queryable<GainfoSapEntity>()
.Where(x => searchCodes.Contains(x.ename))
.Select(x => x.ename)
.ToListAsync();
var originUpdates = persons.Where(x => existsWorkCodes.Contains(x.ZWORKCODE)).ToList();
var originInserts = persons.Where(x => searchCodes.Contains(x.ZWORKCODE)).Except(originUpdates, new SapPersonComparer()).ToList();
_logger.LogInformation("SAP分批更新数:{count}", originUpdates.Count);
var existsUpdateWorkCodes = originUpdates.Select(x => x.ZWORKCODE).ToList();
var originInserts = persons.Where(x => searchCodes.Contains(x.ZWORKCODE)).Where(x => !existsUpdateWorkCodes.Contains(x.ZWORKCODE)).ToList();
_logger.LogInformation("SAP分批新增数:{count}", originInserts.Count);
int i = 0;
var currentTotal = originUpdates.Count + originInserts.Count;