Files
T-DAS/Epost.BLL/Work_JobDownThread.cs

110 lines
2.8 KiB
C#
Raw Normal View History

2023-04-21 17:29:50 +08:00
using Epost.Common;
using Epost.DAL.Cache;
using Epost.DAL.Enum;
using Epost.Model;
2024-11-22 15:31:46 +08:00
using Epost.Model.resource;
2023-04-21 17:29:50 +08:00
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace Epost.BLL
{
public class Work_JobDownThread
{
public string tblock, id;
public bool OrisShow = false;
2024-11-22 15:31:46 +08:00
2023-04-21 17:29:50 +08:00
JobDownCacheDAL downCacheDAL = new JobDownCacheDAL();
2024-11-22 15:31:46 +08:00
2023-04-21 17:29:50 +08:00
private static object lockJobDown = new object();
private static object showmes = new object();
WorkIngCacheDAL workbll = new WorkIngCacheDAL();
public void Work()
{
BackWorkList(tblock);
}
#region
private void BackWorkList(object block)
{
2024-09-02 16:42:28 +08:00
string cm = "";
cm = "lockJobDown" + block;
object c = (Object)cm;
lock (c)
{
2023-04-21 17:29:50 +08:00
while (OrisShow)
{
try
{
string workstate = workbll.GetWorkState();
if (!string.IsNullOrEmpty(workstate))
{
OrisShow = true;
2024-11-22 15:31:46 +08:00
Job_Down();
2023-04-21 17:29:50 +08:00
Thread.Sleep(100);
}
else
{
OrisShow = false;
}
}
catch (Exception ex)
{
LogHelper.WriteLogInfo(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + ":程序异常!\r\n" + ex.Message);
}
}
}
}
#endregion
2024-11-22 15:31:46 +08:00
#region
public void Job_Down()
2023-04-21 17:29:50 +08:00
{
try
{
2024-11-22 15:31:46 +08:00
List<ResultMessageModel> downList = downCacheDAL.GetPlanJobDownList().FindAll(m => m.Status == "0" && m.Command == "JOB_DONE");
if (downList != null && downList.Count > 0)
2023-04-21 17:29:50 +08:00
{
2024-11-22 15:31:46 +08:00
foreach (ResultMessageModel data in downList.ToArray())
2023-04-21 17:29:50 +08:00
{
2024-11-22 15:31:46 +08:00
if (data.Status == "start")
2023-04-21 17:29:50 +08:00
{
}
2024-11-22 15:31:46 +08:00
else if (data.Status == "outbin") { }
else if (data.Status == "end") {
//更新任务已完成
2023-04-21 17:29:50 +08:00
}
2024-11-22 15:31:46 +08:00
else if (data.Status == "cancel") { }
else { }
2023-04-21 17:29:50 +08:00
}
}
}
catch (Exception ex)
{
2024-11-22 15:31:46 +08:00
LogHelper.WriteLogInfo("任务状态更新异常:" + ex.Message);
2023-04-21 17:29:50 +08:00
}
}
2024-11-22 15:31:46 +08:00
2023-04-21 17:29:50 +08:00
#endregion
2024-11-22 15:31:46 +08:00
2023-04-21 17:29:50 +08:00
2024-11-22 15:31:46 +08:00
2023-04-21 17:29:50 +08:00
}
}