| | |
| | | else |
| | | return BaseDal.QueryFirst(x => x.DeviceCode == deviceNo && x.CurrentAddress == currentAddress && x.TaskState == (int)TaskStatusEnum.SC_Execute, TaskOrderBy); |
| | | } |
| | | private static int OldorNew = 0; |
| | | /// <summary> |
| | | /// åæåºä»»å¡æ¥è¯¢ |
| | | /// </summary> |
| | | /// <param name="deviceNo">设å¤ç¼å·</param> |
| | | /// <param name="currentAddress">å½åå°å</param> |
| | | /// <returns>è¿åä»»å¡å®ä½å¯¹è±¡ï¼å¯è½ä¸ºnull</returns> |
| | | public Dt_Task QueryStackerYLTask(string deviceNo,TaskTypeGroup? taskTypeGroup= null) |
| | | { |
| | | if (taskTypeGroup == null) |
| | | { |
| | | Dt_Task taskSend = BaseDal.QueryFirst(x => x.DeviceCode == deviceNo && x.TaskState == (int)TaskStatusEnum.SC_Execute && x.TaskType != TaskTypeEnum.OldYLOutbound.ObjToInt(), TaskOrderBy); |
| | | if (taskSend == null) |
| | | { |
| | | OldorNew = 1; |
| | | List<Dt_Task> specificTasks = BaseDal.QueryData(t => t.DeviceCode == deviceNo && t.TaskState == (int)TaskStatusEnum.SC_Execute && t.TaskType == TaskTypeEnum.OldYLOutbound.ObjToInt()).OrderBy(t => t.CreateDate.Date) |
| | | .ThenBy(t => t.Grade) |
| | | .ThenBy(t => t.TaskNum) |
| | | .ToList(); |
| | | if (specificTasks.Any()) |
| | | { |
| | | //æ ¹æ®æ¶é´çæ¥ä¸¥æ ¼æåº |
| | | Dt_Task taskCheck = BaseDal.QueryData(t => t.TaskState == (int)TaskStatusEnum.SC_Execute && t.TaskType == TaskTypeEnum.OldYLOutbound.ObjToInt()).OrderBy(t => t.CreateDate.Date) |
| | | .ThenBy(t => t.Grade) |
| | | .ThenBy(t => t.TaskNum) |
| | | .FirstOrDefault(); |
| | | Dt_Task taskCheckSend = specificTasks.FirstOrDefault(); |
| | | if (taskCheck.CreateDate.Date == taskCheckSend.CreateDate.Date && taskCheckSend.Grade <= taskCheck.Grade) |
| | | { |
| | | taskSend = taskCheckSend; |
| | | } |
| | | } |
| | | } |
| | | else |
| | | { |
| | | OldorNew = 0; |
| | | } |
| | | return taskSend; |
| | | } |
| | | else |
| | | { |
| | | Dt_Task taskSend = null; |
| | | if (OldorNew == 0) |
| | | { |
| | | OldorNew = 1; |
| | | List<Dt_Task> specificTasks = BaseDal.QueryData(t => t.DeviceCode == deviceNo && t.TaskState == (int)TaskStatusEnum.SC_Execute && t.TaskType == TaskTypeEnum.OldYLOutbound.ObjToInt()).OrderBy(t => t.CreateDate.Date) |
| | | .ThenBy(t => t.Grade) |
| | | .ThenBy(t => t.TaskNum) |
| | | .ToList(); |
| | | if (specificTasks.Any()) |
| | | { |
| | | //æ ¹æ®æ¶é´çæ¥ä¸¥æ ¼æåº |
| | | Dt_Task taskCheck = BaseDal.QueryData(t => t.TaskState == (int)TaskStatusEnum.SC_Execute && t.TaskType == TaskTypeEnum.OldYLOutbound.ObjToInt()).OrderBy(t => t.CreateDate.Date) |
| | | .ThenBy(t => t.Grade) |
| | | .ThenBy(t => t.TaskNum) |
| | | .FirstOrDefault(); |
| | | Dt_Task taskCheckSend = specificTasks.FirstOrDefault(); |
| | | if (taskCheck.CreateDate.Date == taskCheckSend.CreateDate.Date && taskCheckSend.Grade <= taskCheck.Grade) |
| | | { |
| | | taskSend = taskCheckSend; |
| | | } |
| | | } |
| | | } |
| | | else |
| | | { |
| | | OldorNew = 0; |
| | | taskSend = BaseDal.QueryFirst(x => x.DeviceCode == deviceNo && TaskOutboundTypes.Contains(x.TaskType) && x.TaskType != TaskTypeEnum.OldYLOutbound.ObjToInt() && x.TaskState == (int)TaskStatusEnum.SC_Execute, TaskOrderBy); |
| | | } |
| | | return taskSend; |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®è®¾å¤ç¼å·ãå½åå°åæç
§ä¼å
级以åå建æ¶é´æåºæ¥è¯¢ä»»å¡æ± å
¥åºç±»åçæ°å¢çä»»å¡ |