feat 照片上传sap
This commit is contained in:
51
Src/Dlhis.ScheduledTask/Jobs/SyncFaceJob.cs
Normal file
51
Src/Dlhis.ScheduledTask/Jobs/SyncFaceJob.cs
Normal file
@@ -0,0 +1,51 @@
|
||||
using Dlhis.Entity.Basic.Entity;
|
||||
using Dlhis.Entity.Sap;
|
||||
using Dlhis.ScheduledTask.Attributes;
|
||||
using Dlhis.ScheduledTask.Common.Services;
|
||||
|
||||
namespace Dlhis.ScheduledTask.Jobs;
|
||||
|
||||
[RecurringJob(nameof(SyncFaceJob), "0 0/15 * * * ?", Name = "face数据同步sap")]
|
||||
public class SyncFaceJob : BaseJob
|
||||
{
|
||||
private readonly IJinkoJIPService _jinkoJipService;
|
||||
|
||||
/// <inheritdoc />
|
||||
public SyncFaceJob(IServiceProvider serviceProvider, IJinkoJIPService jinkoJipService) : base(serviceProvider)
|
||||
{
|
||||
_jinkoJipService = jinkoJipService;
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override async Task RunAsync(IServiceProvider serviceProvider)
|
||||
{
|
||||
var faceDbContext = DbContext.ChangeDb("face");
|
||||
|
||||
var existsData = await DbContext.Queryable<SapDataSyncEntity>().Where(x => x.IsSync).Select(x => x.Key).ToListAsync();
|
||||
|
||||
var userFaces = await faceDbContext.Queryable<GainfoFaceEntity>()
|
||||
.Where(x => !existsData.Contains(x.UserCode))
|
||||
.ToPageListAsync(1, 5000);
|
||||
|
||||
foreach (var data in userFaces)
|
||||
{
|
||||
try
|
||||
{
|
||||
var response = await _jinkoJipService.SyncFaceToSapAsync(data.UserCode, data.Face);
|
||||
if (response.OLX == "S")
|
||||
{
|
||||
await DbContext.InsertAsync(new SapDataSyncEntity
|
||||
{
|
||||
Key = data.UserCode,
|
||||
Type = "Face",
|
||||
IsSync = true
|
||||
});
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Logger.LogError(e, "上传face数据失败:{message}", e.Message);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user