resend
This commit is contained in:
+49
-39
@@ -392,46 +392,9 @@ namespace SafeBagDE70
|
||||
AppData.DeviceStatus.DeviceTime = DateTime.Now;
|
||||
APIModels.SendHealthCheck(AppData.DeviceStatus);
|
||||
}
|
||||
if (countSensorTimer % 1800 == 0)
|
||||
if (countSensorTimer % 300 == 0)
|
||||
{
|
||||
if (!AppData.IsInTransaction)
|
||||
{
|
||||
Task.Run(async () =>
|
||||
{
|
||||
try
|
||||
{
|
||||
using (var context = new CDMDbContext())
|
||||
{
|
||||
var startTime = DateTime.Now.Date.AddDays(-2).Date;
|
||||
var unsentHist = context.Histories
|
||||
.Where(x => x.DepositTime >= startTime)
|
||||
.Where(x => ((x.IsSent == null || x.IsSent == false)))
|
||||
.ToList();
|
||||
foreach(var item in unsentHist)
|
||||
{
|
||||
var data2Send = JsonConvert.DeserializeObject<CountingData2Send>(item.Data);
|
||||
var bResult = await APIModels.SendCountingData(data2Send);
|
||||
if (bResult)
|
||||
{
|
||||
item.IsSent = true;
|
||||
context.Update(item);
|
||||
context.SaveChanges();
|
||||
Log.Information("Resend: " + item.Data + " successfully");
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.Error("Resend: " + item.Data + " failed");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Log.Fatal(ex,"Resend failed");
|
||||
}
|
||||
|
||||
});
|
||||
}
|
||||
ResenData();
|
||||
}
|
||||
countSensorTimer++;
|
||||
sensorTimer.IsEnabled = false;
|
||||
@@ -444,6 +407,53 @@ namespace SafeBagDE70
|
||||
}
|
||||
sensorTimer.IsEnabled = true;
|
||||
}
|
||||
static Task? resendTask=null;
|
||||
private static void ResenData()
|
||||
{
|
||||
if (!AppData.IsInTransaction && AppData.IsInternetOk)
|
||||
{
|
||||
|
||||
if(resendTask==null || resendTask.IsCompleted)
|
||||
{
|
||||
resendTask = Task.Run(async () =>
|
||||
{
|
||||
try
|
||||
{
|
||||
using (var context = new CDMDbContext())
|
||||
{
|
||||
var startTime = DateTime.Now.Date.AddDays(-2).Date;
|
||||
var unsentHist = context.Histories
|
||||
.Where(x => x.DepositTime >= startTime)
|
||||
.Where(x => ((x.IsSent == null || x.IsSent == false)))
|
||||
.ToList();
|
||||
foreach (var item in unsentHist)
|
||||
{
|
||||
var data2Send = JsonConvert.DeserializeObject<CountingData2Send>(item.Data);
|
||||
var bResult = await APIModels.SendCountingData(data2Send);
|
||||
if (bResult)
|
||||
{
|
||||
item.IsSent = true;
|
||||
context.Update(item);
|
||||
context.SaveChanges();
|
||||
Log.Information("Resend: " + item.Data + " successfully");
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.Error("Resend: " + item.Data + " failed");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Log.Fatal(ex, "Resend failed");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Stopwatch watch = new Stopwatch();
|
||||
private void GetSensorValue()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user