|
@@ -27,7 +27,9 @@ namespace Hotline.Application.Jobs
|
|
|
private readonly ILogger<XingTangCallSatisfactionSyncJob> _logger;
|
|
|
private readonly ICapPublisher _capPublisher;
|
|
|
|
|
|
- public XingTangCallSatisfactionSyncJob(IRepository<CallNative> callRepository, ISqlSugarClient db, IRepository<CallSatisfaction> callSatisfactionRepository, IMapper mapper, ILogger<XingTangCallSatisfactionSyncJob> logger, ICapPublisher capPublisher)
|
|
|
+ public XingTangCallSatisfactionSyncJob(IRepository<CallNative> callRepository, ISqlSugarClient db,
|
|
|
+ IRepository<CallSatisfaction> callSatisfactionRepository, IMapper mapper, ILogger<XingTangCallSatisfactionSyncJob> logger,
|
|
|
+ ICapPublisher capPublisher)
|
|
|
{
|
|
|
_callRepository = callRepository;
|
|
|
_db = db;
|
|
@@ -49,6 +51,7 @@ namespace Hotline.Application.Jobs
|
|
|
.Take(10)
|
|
|
.ToListAsync(context.CancellationToken);
|
|
|
|
|
|
+ if (!callSatisfactions.Any()) return;
|
|
|
var occupyCallSatisfactions = new List<XingtangSatisfaction>();
|
|
|
foreach (var callSatisfaction in callSatisfactions)
|
|
|
{
|
|
@@ -61,19 +64,22 @@ namespace Hotline.Application.Jobs
|
|
|
occupyCallSatisfactions.Add(callSatisfaction);
|
|
|
}
|
|
|
|
|
|
+ if (!occupyCallSatisfactions.Any()) return;
|
|
|
try
|
|
|
{
|
|
|
var callStatisfactions = _mapper.Map<List<CallSatisfaction>>(occupyCallSatisfactions);
|
|
|
foreach (var item in callSatisfactions)
|
|
|
{
|
|
|
var call = _callRepository.Queryable().Where(x => x.CallNo == item.CallNo).FirstAsync();
|
|
|
- if(call != null)
|
|
|
+ if (call != null)
|
|
|
{
|
|
|
item.Id = call.Id;
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
await _callSatisfactionRepository.AddRangeAsync(callStatisfactions, context.CancellationToken);
|
|
|
- await _capPublisher.PublishAsync(EventNames.HotlineCallSatisfactionAdd, callStatisfactions, cancellationToken: context.CancellationToken);
|
|
|
+ await _capPublisher.PublishAsync(EventNames.HotlineCallSatisfactionAdd, callStatisfactions,
|
|
|
+ cancellationToken: context.CancellationToken);
|
|
|
}
|
|
|
catch (Exception e)
|
|
|
{
|
|
@@ -87,8 +93,6 @@ namespace Hotline.Application.Jobs
|
|
|
.UpdateColumns(d => new { d.IsSync })
|
|
|
.ExecuteCommandAsync(context.CancellationToken);
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
}
|
|
|
}
|
|
|
-}
|
|
|
+}
|