| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 创建最后一个任务 |
| | | /// </summary> |
| | | /// <param name="startLocCode"></param> |
| | | /// <param name="mst"></param> |
| | | /// <returns></returns> |
| | | public static WCSTask createLastTask(string startLocCode, WMSTask mst) |
| | | { |
| | | LogHelper.Info($"作业号:{mst.S_CODE},创建AGV出库任务", "WMS"); |
| | | var existTask = WCSHelper.GetTaskByStart(startLocCode); |
| | | if (existTask == null) |
| | | { |
| | | var startLoc = LocationHelper.GetLoc(startLocCode); |
| | | // 创建一段入库任务 |
| | | WCSTask wcsTask = new WCSTask() |
| | | { |
| | | S_OP_NAME = mst.S_OP_DEF_NAME, |
| | | S_OP_CODE = mst.S_CODE, |
| | | S_CODE = WCSHelper.GenerateTaskNo(), |
| | | S_CNTR_CODE = mst.S_CNTR_CODE, |
| | | S_TYPE = mst.S_TYPE, |
| | | S_START_LOC = startLoc.S_CODE, |
| | | S_START_AREA = startLoc.S_AREA_CODE, |
| | | S_END_LOC = mst.S_END_LOC, |
| | | S_END_AREA = mst.S_END_AREA, |
| | | S_SCHEDULE_TYPE = "AGV", |
| | | N_PRIORITY = mst.N_PRIORITY, |
| | | T_START_TIME = DateTime.Now, |
| | | }; |
| | | |
| | | if (WCSHelper.CreateTask(wcsTask)) |
| | | { |
| | | // 起点、接驳点、终点加锁 |
| | | LocationHelper.LockLoc(wcsTask.S_START_LOC, 2); |
| | | LocationHelper.LockLoc(wcsTask.S_END_LOC, 1); |
| | | |
| | | WMSHelper.UpdateTaskEnd(mst); |
| | | return wcsTask; |
| | | } |
| | | } |
| | | return null; |
| | | } |
| | | } |
| | | } |