| 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskMethods.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/TaskExtend.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/TestJob.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| 项目资料/与上游系统接口清单/WMS接口对接文档_V1.1.5.docx | 补丁 | 查看 | 原始文档 | blame | 历史 | |
| 项目资料/与上游系统接口清单/wms接口文档3-10(1).xlsx | 补丁 | 查看 | 原始文档 | blame | 历史 | |
| 项目资料/与上游系统接口清单/接口地址.xlsx | 补丁 | 查看 | 原始文档 | blame | 历史 | |
| 项目资料/与设备交互接口/~$所需接口及问题点.xlsx | 补丁 | 查看 | 原始文档 | blame | 历史 | |
| 项目资料/与设备交互接口/所需接口及问题点.xlsx | 补丁 | 查看 | 原始文档 | blame | 历史 | |
| 项目资料/与设备交互接口/海康AGV/高普WCS.海康协议260310.xlsx | 补丁 | 查看 | 原始文档 | blame | 历史 | |
| 项目资料/项目图纸/2F面料库(1).xlsx | 补丁 | 查看 | 原始文档 | blame | 历史 | |
| 项目资料/项目图纸/货位编号.xlsx | 补丁 | 查看 | 原始文档 | blame | 历史 |
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskMethods.cs
@@ -4,6 +4,7 @@ using System; using System.Collections.Generic; using System.Linq; using System.Net.NetworkInformation; using System.Reflection.Metadata; using System.Text; using System.Text.Json; @@ -123,6 +124,10 @@ else if (task.TaskType == (int)TaskTypeEnum.CPInbound && task.TaskState == (int)TaskStatusEnum.Puting) { TaskCompleted(task, deviceTypeEnum); } else if (task.TaskType == (int)TaskTypeEnum.CPInbound && !string.IsNullOrEmpty(task.ExceptionMessage)) { ErrorTaskFeedback(task, !task.ExceptionMessage.Contains("夿£å¤±è´¥")); } else if (task.TaskType == (int)TaskTypeEnum.CPOutbound || task.TaskType == (int)TaskTypeEnum.CPMoveInventory)//åºåºãç§»åºå®æ { @@ -385,5 +390,48 @@ return WebResponseContent.Instance.OK(); } #endregion #region 失败任å¡ä¸æ¥WMSå¹¶å é¤ä»»å¡ public WebResponseContent ErrorTaskFeedback(Dt_Task dt_Task, bool Del) { WebResponseContent content = new WebResponseContent(); WMSInOutBoundCompleteFeedback boundCompleteFeedback = new WMSInOutBoundCompleteFeedback(); WMSReturn agvContent = null; try { Dt_ApiInfo? apiInfo = _apiInfoService.Repository.QueryFirst(x => x.ApiCode == nameof(WMSInOutBoundCompleteFeedback)); if (apiInfo == null) dt_Task.ExceptionMessage = "æªæ¾å°åºå ¥åºå®æåé¦WMSæ¥å£é 置信æ¯ï¼è¯·æ£æ¥æ¥å£é ç½®"; else { boundCompleteFeedback.taskCode = dt_Task.WMSTaskNum; boundCompleteFeedback.containerCode = dt_Task.PalletCode; boundCompleteFeedback.fromStationCode = dt_Task.SourceAddress; boundCompleteFeedback.toLocationCode = dt_Task.TargetAddress; boundCompleteFeedback.status = 3; boundCompleteFeedback.custStatus = ""; boundCompleteFeedback.memo = dt_Task.ExceptionMessage; string response = HttpHelper.Post(apiInfo.ApiAddress, boundCompleteFeedback.Serialize()); agvContent = response.DeserializeObject<WMSReturn>(); content.OK(data: agvContent); if (agvContent.code != 200) { dt_Task.ExceptionMessage = agvContent.message; content.Error(agvContent.message); } } } catch (Exception ex) { dt_Task.ExceptionMessage = ex.Message; content.Error(ex.Message); } finally { _trackloginfoService.AddTrackLog(boundCompleteFeedback, content, "åºå ¥åºä»»å¡ç¶æåé¦WMS", "", ""); if (agvContent != null && agvContent.code == 200 && Del) BaseDal.DeleteAndMoveIntoHty(dt_Task, OperateTypeEnum.èªå¨å é¤); else BaseDal.UpdateData(dt_Task); } return content; } #endregion } } ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/TaskExtend.cs
@@ -22,9 +22,7 @@ { try { var newTasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskType == (int)TaskTypeEnum.CPInbound && x.TaskState == (int)TaskStatusEnum.WaiCheckShape).OrderByDescending(x => x.Grade).ToList(); if (newTasks.Count > 0) SendRGVCheckShapeTask(newTasks); newTasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskState == (int)TaskStatusEnum.New).ToList(); var newTasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskState == (int)TaskStatusEnum.New).ToList(); if (newTasks.Count > 0) { #region æ¥æ¾å¯ä¹å£«ä»»å¡ @@ -60,43 +58,52 @@ { try { var ExecutTasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskState != (int)TaskStatusEnum.New).ToList(); if (ExecutTasks.Count > 0) { #region ä¸åå¾ å¤å½¢æ£æµä»»å¡ var Tasks = ExecutTasks.Where(x => x.TaskType == (int)TaskTypeEnum.CPInbound && x.TaskState == (int)TaskStatusEnum.WaiCheckShape).OrderByDescending(x => x.Grade).ToList(); if (Tasks.Count > 0) SendRGVCheckShapeTask(Tasks); #endregion #region ä¸åå¤å½¢æ£æµéè¿çååè½¦ä»»å¡ var Tasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskState == (int)TaskStatusEnum.CheckShapeingOk && string.IsNullOrEmpty(x.ExceptionMessage)).ToList(); Tasks = ExecutTasks.Where(x => x.TaskState == (int)TaskStatusEnum.CheckShapeingOk && string.IsNullOrEmpty(x.ExceptionMessage)).OrderByDescending(x => x.Grade).ToList(); if (Tasks.Count > 0) SendCheckShapeingOkTask(Tasks); #endregion #region ä¸åå¤å½¢æ£æµå¤±è´¥çååè½¦ä»»å¡ Tasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskState == (int)TaskStatusEnum.CheckShapeingNG).ToList(); Tasks = ExecutTasks.Where(x => x.TaskState == (int)TaskStatusEnum.CheckShapeingNG).OrderByDescending(x => x.Grade).ToList(); if (Tasks.Count > 0) SendCheckShapeingNGTask(Tasks); Tasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskState == (int)TaskStatusEnum.CheckShapeingOk && x.ExceptionMessage.Contains("æªæ¾å°ç»ç¹åºåº")).ToList(); Tasks = ExecutTasks.Where(x => x.TaskState == (int)TaskStatusEnum.CheckShapeingOk && x.ExceptionMessage.Contains("æªæ¾å°ç»ç¹åºåº")).ToList(); if (Tasks.Count > 0) SendCheckShapeingNGTask(Tasks); #endregion #region ä¸ååå车æ¹éç§»åºä»»å¡ Tasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskState == (int)TaskStatusEnum.RGV_NewMoveTask).ToList(); Tasks = ExecutTasks.Where(x => x.TaskState == (int)TaskStatusEnum.RGV_NewMoveTask).ToList(); if (Tasks.Count > 0) SendMoveTasks(Tasks); #endregion #region å¤çå¾ ç§»åºååå车åºåºä»»å¡ Tasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskState == (int)TaskStatusEnum.RGV_WaitMoveToExecute).ToList(); Tasks = ExecutTasks.Where(x => x.TaskState == (int)TaskStatusEnum.RGV_WaitMoveToExecute).OrderByDescending(x => x.Grade).ToList(); if (Tasks.Count > 0) MoveToExecuteTask(Tasks); #endregion #region ä¸ååå车åºåºä»»å¡ Tasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskState == (int)TaskStatusEnum.RGV_WaitSend).ToList(); Tasks = ExecutTasks.Where(x => x.TaskState == (int)TaskStatusEnum.RGV_WaitSend).OrderByDescending(x => x.Grade).ToList(); if (Tasks.Count > 0) SendOutTask(Tasks); #endregion #region ä¸åå¤è®¾å 许è¿å ¥ç海康AGVä»»å¡ Tasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskState == (int)TaskStatusEnum.AGV_WaitToExecute).ToList(); Tasks = ExecutTasks.Where(x => x.TaskState == (int)TaskStatusEnum.AGV_WaitToExecute).OrderByDescending(x => x.Grade).ToList(); if (Tasks.Count > 0) SendAGVWaitToExecuteTask(Tasks); #endregion #region ä¸åæçç¡®è®¤å®æçæµ·åº·AGVä»»å¡ Tasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskState == (int)TaskStatusEnum.CheckPalletCodeFinish).ToList(); Tasks = ExecutTasks.Where(x => x.TaskState == (int)TaskStatusEnum.CheckPalletCodeFinish).OrderByDescending(x => x.Grade).ToList(); if (Tasks.Count > 0) SendAGVWaitToExecuteTask(Tasks); #endregion } } catch (Exception ex) { WriteError(nameof(TaskJob), ex.Message, ex); ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/TestJob.cs
@@ -80,7 +80,7 @@ else { task.TaskState = TaskStatusEnum.CheckShapeingNG.ObjToInt(); task.ExceptionMessage = "è´¨æ£å¤±è´¥"; task.ExceptionMessage = "夿£å¤±è´¥"; if (R_LeftOverWidthWarning) task.ExceptionMessage += ",å·¦è¶ å®½"; if (R_RightWideWarning) task.ExceptionMessage += ",å³è¶ 宽"; if (R_ExtremeWarning) task.ExceptionMessage += ",è¶ é«"; ÏîÄ¿×ÊÁÏ/ÓëÉÏÓÎϵͳ½Ó¿ÚÇåµ¥/WMS½Ó¿Ú¶Ô½ÓÎĵµ_V1.1.5.docxBinary files differ
ÏîÄ¿×ÊÁÏ/ÓëÉÏÓÎϵͳ½Ó¿ÚÇåµ¥/wms½Ó¿ÚÎĵµ3-10(1).xlsxBinary files differ
ÏîÄ¿×ÊÁÏ/ÓëÉÏÓÎϵͳ½Ó¿ÚÇåµ¥/½Ó¿ÚµØÖ·.xlsxBinary files differ
ÏîÄ¿×ÊÁÏ/ÓëÉ豸½»»¥½Ó¿Ú/~$ËùÐè½Ó¿Ú¼°ÎÊÌâµã.xlsxBinary files differ
ÏîÄ¿×ÊÁÏ/ÓëÉ豸½»»¥½Ó¿Ú/ËùÐè½Ó¿Ú¼°ÎÊÌâµã.xlsxBinary files differ
ÏîÄ¿×ÊÁÏ/ÓëÉ豸½»»¥½Ó¿Ú/º£¿µAGV/¸ßÆÕWCS.º£¿µÐÒé260310.xlsxBinary files differ
ÏîÄ¿×ÊÁÏ/ÏîĿͼֽ/2FÃæÁÏ¿â(1).xlsxBinary files differ
ÏîÄ¿×ÊÁÏ/ÏîĿͼֽ/»õλ±àºÅ.xlsxBinary files differ