45 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C#
		
	
	
			
		
		
	
	
			45 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C#
		
	
	
| using EasyCaching.Core;
 | |
| using IRaCIS.Core.Domain.Share;
 | |
| using IRaCIS.Core.Infra.EFCore;
 | |
| using MediatR;
 | |
| 
 | |
| namespace IRaCIS.Core.Application.MediatR.Handlers
 | |
| {
 | |
| 
 | |
|     public class AnonymizeCacheRequest : IRequest<bool>
 | |
|     {
 | |
| 
 | |
|     }
 | |
|     public class AnonymizeCacheHandler : IRequestHandler<AnonymizeCacheRequest,bool>
 | |
|     {     
 | |
|         private readonly IRepository _repository;
 | |
| 
 | |
|         private readonly IEasyCachingProvider _provider;
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 构造函数注入
 | |
|         /// </summary>
 | |
|         public AnonymizeCacheHandler(IRepository repository, IEasyCachingProvider provider)
 | |
|         {
 | |
|             _repository = repository;
 | |
| 
 | |
|             _provider = provider;
 | |
|         }
 | |
| 
 | |
|       
 | |
|         public Task<bool> Handle(AnonymizeCacheRequest request, CancellationToken cancellationToken)
 | |
|         {
 | |
|             var systemAnonymizationList = _repository.Where<SystemAnonymization>(t => t.IsEnable).ToList();
 | |
| 
 | |
|             _provider.Set(StaticData.Anonymize.Anonymize_AddFixedFiled, systemAnonymizationList.Where(t => t.IsAdd && t.IsFixed).ToList(), TimeSpan.FromDays(7));
 | |
|             _provider.Set(StaticData.Anonymize.Anonymize_AddIRCInfoFiled, systemAnonymizationList.Where(t => t.IsAdd && t.IsFixed == false).ToList(), TimeSpan.FromDays(7));
 | |
|             _provider.Set(StaticData.Anonymize.Anonymize_FixedField, systemAnonymizationList.Where(t => t.IsAdd == false && t.IsFixed).ToList(), TimeSpan.FromDays(7));
 | |
|             _provider.Set(StaticData.Anonymize.Anonymize_IRCInfoField, systemAnonymizationList.Where(t => t.IsAdd == false && t.IsFixed == false).ToList(), TimeSpan.FromDays(7));
 | |
| 
 | |
|             return Task.FromResult(true);
 | |
|         }
 | |
|     }
 | |
| 
 | |
| 
 | |
| }
 |