| | |
| | | { |
| | | try |
| | | { |
| | | if(a.S_OP_DEF_NAME == "接驳位入库") |
| | | { |
| | | if (!Monitor.B_FLAGE) |
| | | { |
| | | Monitor.B_FLAGE = true; |
| | | //判断当前是否有等待或者错误的接驳位入库任务,并且起点货位在当前货位的外面 |
| | | var taskList = db.Queryable<WMSTask>().Where(b => b.S_OP_DEF_NAME == "接驳位入库" && b.S_ID != a.S_ID && (b.N_B_STATE == 0 || b.N_B_STATE == 3)).ToList(); |
| | | if(taskList.Count > 0) |
| | | { |
| | | bool task_flage = false; |
| | | foreach(var x in taskList) |
| | | { |
| | | var startLocInfo = db.Queryable<Location>().Where(y => y.S_CODE == x.S_START_LOC).First(); |
| | | var startLocInfoTwo = db.Queryable<Location>().Where(y => y.S_CODE == a.S_START_LOC).First(); |
| | | if(startLocInfo.N_ROW == startLocInfoTwo.N_ROW && startLocInfo.N_COL > startLocInfoTwo.N_COL) |
| | | { |
| | | task_flage = true; |
| | | break; |
| | | } |
| | | } |
| | | if (task_flage) |
| | | { |
| | | continue; |
| | | } |
| | | } |
| | | } |
| | | else |
| | | { |
| | | continue; |
| | | } |
| | | } |
| | | if (a.N_TYPE == 1) |
| | | { |
| | | //查询托盘所在位置 |
| | |
| | | LogHelper.Info($"作业{a.S_CODE} 获取终点失败"); |
| | | } |
| | | } |
| | | if (a.S_OP_DEF_NAME == "接驳位入库") |
| | | { |
| | | Monitor.B_FLAGE = false; |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |