|
@@ -21,13 +21,14 @@ namespace XdCxRhDW.App
|
|
|
{
|
|
|
|
|
|
public int TaskId;
|
|
|
- //十分钟时间内的数据
|
|
|
- private int TimeSeconds = 30 * 60;//十分钟
|
|
|
+ //多少分钟时间内的参考信号数据
|
|
|
+ private double takeRefTimeSeconds;
|
|
|
private bool isRuning = true;
|
|
|
|
|
|
BlockingCollection<X2D1NoXlNoParlPosDto> posItems = new BlockingCollection<X2D1NoXlNoParlPosDto>();
|
|
|
- public X2D1PosHandle(int taskId)
|
|
|
+ public X2D1PosHandle(int taskId,double takeRefTime)
|
|
|
{
|
|
|
+ takeRefTimeSeconds = takeRefTime * 60;//秒
|
|
|
TaskId = taskId;
|
|
|
StartMonitor();
|
|
|
}
|
|
@@ -55,15 +56,15 @@ namespace XdCxRhDW.App
|
|
|
}
|
|
|
using (RHDWPartContext db = RHDWPartContext.GetContext(dto.SigTime, true))
|
|
|
{
|
|
|
- DateTime min = dto.SigTime.AddSeconds(-TimeSeconds);
|
|
|
- DateTime max = dto.SigTime.AddSeconds(TimeSeconds);
|
|
|
+ DateTime min = dto.SigTime.AddSeconds(-takeRefTimeSeconds);
|
|
|
+ DateTime max = dto.SigTime.AddSeconds(takeRefTimeSeconds);
|
|
|
//获取设定分钟之内的固定站数据
|
|
|
var cgResRefs = await db.CgRes.Where(m => m.TaskID == dto.TaskID && m.FixedStationID == dto.FixedStationId && m.SigTime >= min && m.SigTime <= max).OrderBy(d => d.SigTime).ToListAsync();
|
|
|
|
|
|
List<CgRes> matchCgList = new List<CgRes>();
|
|
|
cgResRefs.ForEach(c =>
|
|
|
{
|
|
|
- if ((dto.SigTime - c.SigTime).TotalSeconds <= TimeSeconds)
|
|
|
+ if ((dto.SigTime - c.SigTime).TotalSeconds <= takeRefTimeSeconds)
|
|
|
{
|
|
|
matchCgList.Add(c);
|
|
|
}
|