fix 优化同步处理

This commit is contained in:
2024-02-21 17:53:53 +08:00
parent 9f16e24b9d
commit 5c2d40d180
5 changed files with 10 additions and 27 deletions

View File

@@ -1,5 +1,4 @@
using Dlhis.Entity.Basic.Entity;
using Dlhis.ScheduledTask.SyncSapInfo.Comparers;
using Dlhis.ScheduledTask.SyncSapInfo.Dto;
using Dlhis.ScheduledTask.SyncSapInfo.Services;
using Hangfire;
@@ -12,7 +11,6 @@ namespace Dlhis.ScheduledTask.SyncSapInfo.Job;
/// </summary>
public class SyncOrganizationJob
{
private List<SapOrganizationItem> lastUpdatedOrgList = new();
private readonly IDbContext _dbContext;
private readonly IJinkoSapService _jinkoSapService;
@@ -28,23 +26,11 @@ public class SyncOrganizationJob
if (orgResult.Org != null && orgResult.Org.Items.Count > 0)
{
//var modifiedOrgList = GetModifiedOrg(orgResult.Org.Items);
await SaveOrg(orgResult.Org.Items);
}
var syncPositionJob = BackgroundJob.Enqueue<SyncPositionJob>(job => job.SyncPositionInfo());
BackgroundJob.ContinueJobWith<SyncPersonJob>(syncPositionJob, job => job.SyncPersonInfo(), JobContinuationOptions.OnlyOnSucceededState);
}
private List<SapOrganizationItem> GetModifiedOrg(List<SapOrganizationItem> sapList)
{
if (lastUpdatedOrgList.Count <= 0)
{
return sapList;
}
var needRemove = sapList.Intersect(lastUpdatedOrgList, new SapOrganizationComparer());
return sapList.Except(needRemove, new SapOrganizationComparer()).ToList();
BackgroundJob.ContinueJobWith<SyncPersonJob>(syncPositionJob, job => job.RunAsync(), JobContinuationOptions.OnlyOnSucceededState);
}
private async Task SaveOrg(List<SapOrganizationItem> modifiedOrgList)