| 
					
					
						
							
						
					
					
				 | 
				@ -12,7 +12,7 @@ namespace Shentun.Peis.Schedulers | 
			
		
		
	
		
			
				 | 
				 | 
				{ | 
				 | 
				 | 
				{ | 
			
		
		
	
		
			
				 | 
				 | 
				    public interface IImportLisResultInterfaceWorker | 
				 | 
				 | 
				    public interface IImportLisResultInterfaceWorker | 
			
		
		
	
		
			
				 | 
				 | 
				    { | 
				 | 
				 | 
				    { | 
			
		
		
	
		
			
				 | 
				 | 
				        public void DoWork(Guid interfaceId); | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				        Task DoWork(Guid interfaceId); | 
			
		
		
	
		
			
				 | 
				 | 
				        public void DoWork(); | 
				 | 
				 | 
				        public void DoWork(); | 
			
		
		
	
		
			
				 | 
				 | 
				    } | 
				 | 
				 | 
				    } | 
			
		
		
	
		
			
				 | 
				 | 
				    public class ImportLisResultInterfaceWorker : HangfireBackgroundWorkerBase, IImportLisResultInterfaceWorker | 
				 | 
				 | 
				    public class ImportLisResultInterfaceWorker : HangfireBackgroundWorkerBase, IImportLisResultInterfaceWorker | 
			
		
		
	
	
		
			
				| 
					
					
					
						
							
						
					
				 | 
				@ -21,55 +21,54 @@ namespace Shentun.Peis.Schedulers | 
			
		
		
	
		
			
				 | 
				 | 
				        private static long i; | 
				 | 
				 | 
				        private static long i; | 
			
		
		
	
		
			
				 | 
				 | 
				        private static bool _isRunning = false; | 
				 | 
				 | 
				        private static bool _isRunning = false; | 
			
		
		
	
		
			
				 | 
				 | 
				        private static readonly object lockObject = new object(); | 
				 | 
				 | 
				        private static readonly object lockObject = new object(); | 
			
		
		
	
		
			
				 | 
				 | 
				        public void DoWork(Guid interfaceId) | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				        public async Task DoWork(Guid interfaceId) | 
			
		
		
	
		
			
				 | 
				 | 
				        { | 
				 | 
				 | 
				        { | 
			
		
		
	
		
			
				 | 
				 | 
				            if (_isRunning) return; | 
				 | 
				 | 
				            if (_isRunning) return; | 
			
		
		
	
		
			
				 | 
				 | 
				            lock (lockObject) | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				
 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				            _isRunning = true; | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				            try | 
			
		
		
	
		
			
				 | 
				 | 
				            { | 
				 | 
				 | 
				            { | 
			
		
		
	
		
			
				 | 
				 | 
				                _isRunning = true; | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                try | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                Logger.LogInformation("Executed ImportLisResultInterfaceWorker..!"); | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                var appServiceHelper = new AppServiceHelper(); | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                appServiceHelper.Login(); | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                var thirdInterFaceForHostOutDto = appServiceHelper.CallAppService<object, ThirdInterFaceForHostOutDto>("api/app/ThirdInterface/GetList", null); | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                var thirdInterfaceDto = thirdInterFaceForHostOutDto.Data.Where(o => o.Id == interfaceId).FirstOrDefault(); | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                if (thirdInterfaceDto == null) | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                { | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    _isRunning = false; | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    return; | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                } | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				
 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                var parmValue = thirdInterfaceDto.ParmValue; | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                if (!string.IsNullOrWhiteSpace(parmValue)) | 
			
		
		
	
		
			
				 | 
				 | 
				                { | 
				 | 
				 | 
				                { | 
			
		
		
	
		
			
				 | 
				 | 
				                    Logger.LogInformation("Executed ImportLisResultInterfaceWorker..!"); | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    var appServiceHelper = new AppServiceHelper(); | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    appServiceHelper.Login(); | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    var thirdInterFaceForHostOutDto = appServiceHelper.CallAppService<object, ThirdInterFaceForHostOutDto>("api/app/ThirdInterface/GetList", null); | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    var thirdInterfaceDto = thirdInterFaceForHostOutDto.Data.Where(o => o.Id == interfaceId).FirstOrDefault(); | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    if (thirdInterfaceDto == null) | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    var configurationBuilder = new ConfigurationBuilder() | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                     .AddJsonStream(new MemoryStream(System.Text.Encoding.UTF8.GetBytes(parmValue))); | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    var interfaceConfig = configurationBuilder.Build(); | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				
 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    isActive = interfaceConfig.GetSection("Interface").GetSection("Scheduler") | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        .GetSection("IsActive").Value; | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    if (isActive != "Y") | 
			
		
		
	
		
			
				 | 
				 | 
				                    { | 
				 | 
				 | 
				                    { | 
			
		
		
	
		
			
				 | 
				 | 
				                        _isRunning = false; | 
				 | 
				 | 
				                        _isRunning = false; | 
			
		
		
	
		
			
				 | 
				 | 
				                        return; | 
				 | 
				 | 
				                        return; | 
			
		
		
	
		
			
				 | 
				 | 
				                    } | 
				 | 
				 | 
				                    } | 
			
		
		
	
		
			
				 | 
				 | 
				
 | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    var parmValue = thirdInterfaceDto.ParmValue; | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    if (!string.IsNullOrWhiteSpace(parmValue)) | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    { | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                        var configurationBuilder = new ConfigurationBuilder() | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                         .AddJsonStream(new MemoryStream(System.Text.Encoding.UTF8.GetBytes(parmValue))); | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                        var interfaceConfig = configurationBuilder.Build(); | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				
 | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                        isActive = interfaceConfig.GetSection("Interface").GetSection("Scheduler") | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                            .GetSection("IsActive").Value; | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                        if (isActive != "Y") | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                        { | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                            _isRunning = false; | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                            return; | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                        } | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                        var assemblyName = interfaceConfig.GetSection("Interface").GetSection("AssemblyName").Value; | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                        var className = interfaceConfig.GetSection("Interface").GetSection("ClassName").Value; | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                        var funName = "DoWork"; | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                        //object[] objects = new object[] { chargeRequestPlugInsInput };
 | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                        ReflectionHelper.InvokeAsync(assemblyName, className, parmValue, funName); | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    } | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    var assemblyName = interfaceConfig.GetSection("Interface").GetSection("AssemblyName").Value; | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    var className = interfaceConfig.GetSection("Interface").GetSection("ClassName").Value; | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    var funName = "DoWork"; | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    //object[] objects = new object[] { chargeRequestPlugInsInput };
 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                    await ReflectionHelper.InvokeAsync(assemblyName, className, parmValue, funName); | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                } | 
			
		
		
	
		
			
				 | 
				 | 
				
 | 
				 | 
				 | 
				
 | 
			
		
		
	
		
			
				 | 
				 | 
				
 | 
				 | 
				 | 
				
 | 
			
		
		
	
		
			
				 | 
				 | 
				                } | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                catch (Exception ex) | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                { | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                    Logger.LogError("Executed ImportLisResultInterfaceWorker Error" + ex.Message); | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                } | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                _isRunning = false; | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                return; | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				            } | 
				 | 
				 | 
				            } | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				            catch (Exception ex) | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				            { | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                Logger.LogError("Executed ImportLisResultInterfaceWorker Error" + ex.Message); | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				            } | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				            _isRunning = false; | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				            return; | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				
 | 
			
		
		
	
		
			
				 | 
				 | 
				        } | 
				 | 
				 | 
				        } | 
			
		
		
	
		
			
				 | 
				 | 
				
 | 
				 | 
				 | 
				
 | 
			
		
		
	
		
			
				 | 
				 | 
				        public void DoWork() | 
				 | 
				 | 
				        public void DoWork() | 
			
		
		
	
	
		
			
				| 
					
						
							
						
					
					
					
				 | 
				
  |