diff --git a/BLW_Log/Program.cs b/BLW_Log/Program.cs index eb7574c..8926e9f 100644 --- a/BLW_Log/Program.cs +++ b/BLW_Log/Program.cs @@ -1,8 +1,3 @@ -using System.Buffers; -using System.Data; -using System.IO.Pipelines; -using System.Runtime.CompilerServices; -using System.Text; using BLW_Log.Controllers; using BLW_Log.Models; using BLW_Log.Push; @@ -21,6 +16,12 @@ using NLog; using NLog.Extensions.Logging; using NLog.Web; using Quartz; +using RestSharp; +using System.Buffers; +using System.Data; +using System.IO.Pipelines; +using System.Runtime.CompilerServices; +using System.Text; using static IronPython.Modules.PythonCsvModule; namespace BLW_Log { @@ -32,7 +33,7 @@ namespace BLW_Log { public static void Main(string[] args) { - //var N = DateTime.Now.ToString("yyyy-MM-dd#HH:mm:ss:fff"); + //var N = DateTime.Now.ToString("yyyy-MM-dd#HH:mm:ss:fff"); var builder = WebApplication.CreateBuilder(args); //builder.Services.AddSingleton(); @@ -102,7 +103,13 @@ namespace BLW_Log } }; }); - + builder.Services.AddSingleton>(provider => + { + return new Dictionary + { + ["NoStopShengJi"] = new RestClient("https://www.boonlive-rcu.com/"), + }; + }); string ttt1 = builder.Configuration["ExcelGenerater"].ToString(); string[] ssk1 = ttt1.Split(','); @@ -167,6 +174,16 @@ namespace BLW_Log }) // ÿ17:00 ); + + //ͣ + var jobKey5 = new JobKey("BuTingShengJi"); + q.AddJob(opts => opts.WithIdentity(jobKey5)); + q.AddTrigger(opts => opts + .ForJob(jobKey5) + .WithIdentity("BuTingShengJi-trigger") + .StartAt(DateTimeOffset.Now.AddMinutes(1)) + ); + }); builder.Services.AddQuartzHostedService(q => q.WaitForJobsToComplete = true); builder.Services.AddSignalR(); diff --git a/BLW_Log/services/ShengJiCaoZuo.cs b/BLW_Log/services/ShengJiCaoZuo.cs new file mode 100644 index 0000000..0de9166 --- /dev/null +++ b/BLW_Log/services/ShengJiCaoZuo.cs @@ -0,0 +1,111 @@ +using Common; +using Commonlib; +using Newtonsoft.Json; +using NLog; +using Quartz; +using RestSharp; + +namespace BLW_Log.services +{ + public class ShengJiCaoZuoB : IJob + { + private readonly Logger _logger = LogManager.GetCurrentClassLogger(); + public static string BaseUrl = "https://www.boonlive-rcu.com/"; + private readonly Dictionary _clients; + public ShengJiCaoZuoB(Dictionary clients) + { + _clients = clients; + } + + async public Task Execute(IJobExecutionContext context) + { + try + { + + var options = new RestClientOptions(BaseUrl); + var client = _clients["NoStopShengJi"]; + string Url = "api/WebChatUpgrade"; + var request = new RestRequest(Url); + //2438 + //研发测试房型_1 + //固件:BLV-C5 || Launcher_C1F_V04 || C1F_A_L4_41_250605_NM.bin + request.AddParameter("roomTypeID", "2438"); + request.AddParameter("hostid_lists", "[24540]"); + request.AddParameter("upgradefileName", "C1F_A_L4_41_250605_NM.bin"); + string? hostlist = client.Post(request).Content; + var response = await client.ExecutePostAsync(request); + _logger.Error("ShengJiCaoZuoB 执行结果:" + response.Content); + + + // 等待10秒后执行JobB + await Task.Delay(10 * 60 * 1000); // 300000毫秒 + + // 直接启动JobB + var jobA = JobBuilder.Create().Build(); + var triggerA = TriggerBuilder.Create() + .StartNow() + .Build(); + + await context.Scheduler.ScheduleJob(jobA, triggerA); + } + catch (Exception ex) + { + _logger.Error("ShengJiCaoZuoB 执行失败:" + ex.Message); + } + } + } + public class ShengJiCaoZuoA : IJob + { + + private readonly Logger _logger = LogManager.GetCurrentClassLogger(); + private readonly Dictionary _clients; + + public ShengJiCaoZuoA(Dictionary clients) + { + _clients = clients; + } + public static string BaseUrl = "https://www.boonlive-rcu.com/"; + public async Task Execute(IJobExecutionContext context) + { + try + { + var options = new RestClientOptions(BaseUrl); + var client = _clients["NoStopShengJi"]; + string Url = "api/WebChatUpgrade"; + var request = new RestRequest(Url); + + + //1412 + //固件:BLV-V9 || Launcher_C1F_V04 || C1F_A_L4_31_240723_NM.bin + //100331-YHF_T + //YHF_T + + //2438 + //研发测试房型_1 + //固件:BLV-C5 || Launcher_C1F_V04 || C1F_A_L4_41_250605_NM.bin + request.AddParameter("roomTypeID", "1412"); + request.AddParameter("hostid_lists", "[24540]"); + request.AddParameter("upgradefileName", "C1F_A_L4_31_240723_NM.bin"); + string? hostlist = client.Post(request).Content; + var response = await client.ExecutePostAsync(request); + _logger.Error("ShengJiCaoZuoA 执行成功:" + response.Content); + + + // 等待10秒后执行JobB + await Task.Delay(10 * 60 * 1000); // 300000毫秒 + + // 直接启动JobB + var jobB = JobBuilder.Create().Build(); + var triggerB = TriggerBuilder.Create() + .StartNow() + .Build(); + + await context.Scheduler.ScheduleJob(jobB, triggerB); + } + catch (Exception ex) + { + _logger.Error("ShengJiCaoZuoA 执行失败:" + ex.Message); + } + } + } +}