增加不停升级功能
This commit is contained in:
@@ -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<MyMemoryCache>();
|
||||
@@ -102,7 +103,13 @@ namespace BLW_Log
|
||||
}
|
||||
};
|
||||
});
|
||||
|
||||
builder.Services.AddSingleton<Dictionary<string, IRestClient>>(provider =>
|
||||
{
|
||||
return new Dictionary<string, IRestClient>
|
||||
{
|
||||
["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
|
||||
}) // ÿ<><C3BF>17:00
|
||||
);
|
||||
|
||||
|
||||
//<2F><>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD>
|
||||
var jobKey5 = new JobKey("BuTingShengJi");
|
||||
q.AddJob<ExcelScan>(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();
|
||||
|
||||
111
BLW_Log/services/ShengJiCaoZuo.cs
Normal file
111
BLW_Log/services/ShengJiCaoZuo.cs
Normal file
@@ -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<string, IRestClient> _clients;
|
||||
public ShengJiCaoZuoB(Dictionary<string, IRestClient> 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<ShengJiCaoZuoA>().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<string, IRestClient> _clients;
|
||||
|
||||
public ShengJiCaoZuoA(Dictionary<string, IRestClient> 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<ShengJiCaoZuoB>().Build();
|
||||
var triggerB = TriggerBuilder.Create()
|
||||
.StartNow()
|
||||
.Build();
|
||||
|
||||
await context.Scheduler.ScheduleJob(jobB, triggerB);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
_logger.Error("ShengJiCaoZuoA 执行失败:" + ex.Message);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user