|  |  | 
 |  |  |                 return WebResponseContent.Instance.Error(ex.Message); | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |         public WebResponseContent AgvCarrying(int row,int startColumn, int endColumn, int startlayer,int targetLayer) | 
 |  |  |         { | 
 |  |  |             try | 
 |  |  |             { | 
 |  |  |                 List<Dt_Task> tasks = new List<Dt_Task>(); | 
 |  |  |                 for (int i = startColumn; i <= endColumn; i++) | 
 |  |  |                 { | 
 |  |  |                     string column = i.ToString(); | 
 |  |  |                     if (i<10) | 
 |  |  |                     { | 
 |  |  |                         column = "0" + i.ToString(); | 
 |  |  |                     } | 
 |  |  |                     string layer = targetLayer.ToString(); | 
 |  |  |                     if (targetLayer<10) | 
 |  |  |                     { | 
 |  |  |                         layer = "0"+targetLayer.ToString(); | 
 |  |  |                     } | 
 |  |  |                     Dt_Task task = new Dt_Task() | 
 |  |  |                     { | 
 |  |  |                         WarehouseId = 7, | 
 |  |  |                         TaskNum = DateTime.Now.ToString("yyMMddHHmm").ObjToInt() + i, | 
 |  |  |                         PalletCode= DateTime.Now.ToString("yyMMddHHmm") +i, | 
 |  |  |                         PalletType=0, | 
 |  |  |                         DeviceCode="AGV_CP", | 
 |  |  |                         Roadway= "AGV_CP", | 
 |  |  |                         TaskType =999, | 
 |  |  |                         SourceAddress=string.Format($"AGV_CP-00{row}-0{column}-00{startlayer}-01"), | 
 |  |  |                         CurrentAddress=string.Format($"AGV_CP-00{row}-0{column}-00{startlayer}-01"), | 
 |  |  |                         TargetAddress= string.Format($"AGV_CP-00{row}-0{column}-00{layer}-01"), | 
 |  |  |                         NextAddress= string.Format($"AGV_CP-00{row}-0{column}-00{layer}-01"), | 
 |  |  |                         Grade=0, | 
 |  |  |                         WMSId=0, | 
 |  |  |                         AgvTaskNum = "CP" + DateTime.Now.ToString("yyMMddHHmm").ObjToInt() + i, | 
 |  |  |                         TaskState = TaskStatusEnum.New.ObjToInt(), | 
 |  |  |                         Remark= "æµè¯ç©ºæ¡" | 
 |  |  |                     }; | 
 |  |  |                     tasks.Add(task); | 
 |  |  |                 } | 
 |  |  |                 BaseDal.AddData(tasks); | 
 |  |  |                 return WebResponseContent.Instance.OK(""); | 
 |  |  |             } | 
 |  |  |             catch (Exception ex) | 
 |  |  |             { | 
 |  |  |                 return WebResponseContent.Instance.Error(ex.Message); | 
 |  |  |             } | 
 |  |  |  | 
 |  |  |         } | 
 |  |  |         /// <summary> | 
 |  |  |         /// æ¥æ¶WMSä»»å¡ä¿¡æ¯ | 
 |  |  |         /// </summary> | 
 |  |  | 
 |  |  |                         } | 
 |  |  |                         else | 
 |  |  |                         { | 
 |  |  |                             List<Dt_Router> dt_Routers = _routerService.QueryNextRoutes(item.SourceAddress, item.RoadWay, item.TaskType); | 
 |  |  |                             if (dt_Routers != null && dt_Routers.Count > 0) | 
 |  |  |                             if (item.RoadWay=="AGV_CP") | 
 |  |  |                             { | 
 |  |  |                                 task.NextAddress = dt_Routers.FirstOrDefault().NextPosi; | 
 |  |  |                                 task.DeviceCode = dt_Routers.FirstOrDefault().ChildPosi; | 
 |  |  |                                 Dt_Router routerSelect = _routerRepository.QueryFirst(x => x.InOutType == item.TaskType && item.RoadWay == x.StartPosi && x.NextPosi==item.TargetAddress); | 
 |  |  |                                 if (routerSelect != null) | 
 |  |  |                                 { | 
 |  |  |                                     task.NextAddress = routerSelect.NextPosi; | 
 |  |  |                                     task.DeviceCode = routerSelect.ChildPosi; | 
 |  |  |                                     task.AgvTaskNum = item.RoadWay + DateTime.Now.ToString("yyyyMMdd") + item.TaskNum; | 
 |  |  |                                 } | 
 |  |  |                                 else | 
 |  |  |                                 { | 
 |  |  |                                     return content.Error("æªæ¾å°è·¯ç±ä¿¡æ¯"); | 
 |  |  |                                 } | 
 |  |  |                             } | 
 |  |  |                             else | 
 |  |  |                             { | 
 |  |  |                                 task.NextAddress = ""; | 
 |  |  |                                 task.DeviceCode = ""; | 
 |  |  |                                 List<Dt_Router> dt_Routers = _routerService.QueryNextRoutes(item.SourceAddress, item.RoadWay, item.TaskType); | 
 |  |  |                                 if (dt_Routers != null && dt_Routers.Count > 0) | 
 |  |  |                                 { | 
 |  |  |                                     task.NextAddress = dt_Routers.FirstOrDefault().NextPosi; | 
 |  |  |                                     task.DeviceCode = dt_Routers.FirstOrDefault().ChildPosi; | 
 |  |  |                                 } | 
 |  |  |                                 else | 
 |  |  |                                 { | 
 |  |  |                                     task.NextAddress = ""; | 
 |  |  |                                     task.DeviceCode = ""; | 
 |  |  |                                 } | 
 |  |  |                             } | 
 |  |  |                         } | 
 |  |  |                     } |