12345678910111213141516171819202122232425262728293031 |
- using Hotline.Caches;
- using Hotline.CallCenter.Tels;
- using Hotline.Share.Enums.CallCenter;
- using Hotline.Share.Notifications;
- using MediatR;
- using XF.Domain.Cache;
- namespace Hotline.Application.Handlers.CallCenter.ExtState
- {
- public class BusyNotificationHandler:INotificationHandler<BusyNotification>
- {
- private readonly ITelRepository _telRepository;
- private readonly ITelCacheManager _telCacheManager;
- private readonly ITypedCache<Tel> _typedCache;
- public BusyNotificationHandler(ITelRepository telRepository, ITelCacheManager telCacheManager, ITypedCache<Tel> typedCache)
- {
- _telRepository = telRepository;
- _telCacheManager = telCacheManager;
- _typedCache = typedCache;
- }
- public async Task Handle(BusyNotification notification, CancellationToken cancellationToken)
- {
- var telModel = _telCacheManager.GetTel(notification.TelNo);
- telModel.TelStatus = ETelStatus.Active;
- //await _telRepository.UpdateAsync(telModel, cancellationToken);
- _typedCache.Update(telModel.No,x=>telModel);
- }
- }
- }
|