ソースを参照

Merge branch 'release' of http://110.188.24.182:10023/Fengwo/hotline into release

田爽 8 ヶ月 前
コミット
5a071f45ff

+ 6 - 2
src/Hotline.Api/Controllers/IPPbxController.cs

@@ -39,6 +39,7 @@ using Hotline.FlowEngine.Notifications;
 using Hotline.Quality.Notifications;
 using Hotline.Share.Dtos.Quality;
 using MongoDB.Driver;
+using Hotline.Repository.SqlSugar.CallCenter;
 
 namespace Hotline.Api.Controllers
 {
@@ -66,6 +67,7 @@ namespace Hotline.Api.Controllers
         private readonly ISystemSettingCacheManager _systemSettingCacheManager;
         private readonly IRepository<TelActionRecord> _telActionRecordRepository;
         private readonly ISystemMobilAreaApplication _systemMobilAreaApplication;
+        private readonly IRepository<Work> _workRepository;
         private readonly Publisher _publisher;
 
 		public IPPbxController(ITrClient trClient, IMapper mapper, IUserDomainService userDomainService,
@@ -78,7 +80,7 @@ namespace Hotline.Api.Controllers
             ITelApplication telApplication, IRepository<Quality.Quality> qualiteyRepository,
             IAiQualityService aiQualityService, IRepository<QualityTemplate> qualityTemplate, 
             ISystemSettingCacheManager systemSettingCacheManager,IRepository<TelActionRecord> telActionRecordRepository,
-            ISystemMobilAreaApplication systemMobilAreaApplication, Publisher publisher)
+            ISystemMobilAreaApplication systemMobilAreaApplication,IRepository<Work> workRepository ,Publisher publisher)
         {
             _trClient = trClient;
             _mapper = mapper;
@@ -102,6 +104,7 @@ namespace Hotline.Api.Controllers
             _systemSettingCacheManager = systemSettingCacheManager;
             _telActionRecordRepository = telActionRecordRepository;
             _systemMobilAreaApplication = systemMobilAreaApplication;
+            _workRepository = workRepository;
             _publisher = publisher;
 
 		}
@@ -136,7 +139,8 @@ namespace Hotline.Api.Controllers
         public async Task<IReadOnlyList<TrTelStateDto>> TrQueryTelState([FromQuery] string? state)
         {
             var tels = await _trClient.QueryTelStateAsync(new QueryTelStateRequest() { State = state }, HttpContext.RequestAborted);
-            var workList = _userCacheManager.GetWorks();
+            //var workList = _userCacheManager.GetWorks();
+            var workList = await _workRepository.Queryable().Where(d=> 1 == 1 && !d.EndTime.HasValue).ToListAsync();
             var query = from tel in tels.AgentList
                         join works in workList on tel.TelNo equals works.TelNo into workD
                         from work in workD.DefaultIfEmpty()

+ 1 - 1
src/Hotline.Application/CallCenter/DefaultCallApplication.cs

@@ -204,7 +204,7 @@ public abstract class DefaultCallApplication : ICallApplication
     public virtual async Task<IReadOnlyList<CallNativeDto>> QueryCallsFixedAsync(QueryCallsFixedDto dto, CancellationToken cancellationToken)
     {
         return await _callNativeRepository.Queryable(includeDeleted: true)
-            .LeftJoin<Order>((d, o) => d.CallNo == o.CallId)
+            .LeftJoin<Order>((d, o) => d.Id == o.CallId)
             .WhereIF(!string.IsNullOrEmpty(dto.OrderNo), (d, o) => o.No == dto.OrderNo)
             .WhereIF(!string.IsNullOrEmpty(dto.FromNo), d => d.FromNo == dto.FromNo)
             .WhereIF(!string.IsNullOrEmpty(dto.ToNo), d => d.ToNo == dto.ToNo)