ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Client/src/extension/taskinfo/task.js
@@ -25,19 +25,35 @@ let ManualBtn = this.buttons.find(x => x.value == 'Manual'); if (ManualBtn) { ManualBtn.data = [ // { // name: '宿', // icon: 'el-icon-check', // onClick: () => { // params.Extra = 1 // this.Manual(params, "宿") // } // }, { name: 'åæ¶', icon: 'el-icon-delete', name: 'éæ°ä¸åå åæºä»»å¡', icon: 'el-icon-check', onClick: () => { params.Extra = 0 this.Manual(params, "éæ°ä¸åå åæº") } }, { name: '宿å åæºä»»å¡', icon: 'el-icon-check', onClick: () => { params.Extra = 1 this.Manual(params, "宿å åæº") } }, { name: '宿任å¡', icon: 'el-icon-check', onClick: () => { params.Extra = 2 this.Manual(params, "宿") } }, { name: 'åæ¶ä»»å¡', icon: 'el-icon-delete', onClick: () => { params.Extra = 3 this.Manual(params, "åæ¶") } } @@ -73,6 +89,7 @@ Manual(params, Remark) { let rows = this.$refs.table.getSelected(); if (rows.length == 0) return this.$error("è¯·éæ©ä»»å¡!"); if (rows.length > 1) return this.$error("åªå¯éæ©ä¸æ¡ä»»å¡!"); params.DelKeys = rows.map(x => { return x[this.table.key]; }); @@ -85,7 +102,7 @@ showClose: true,//æ¯å¦æ¾ç¤ºå³ä¸è§å ³éæé® type: "warning",//æç¤ºç±»å success:æå/info:ä¿¡æ¯/warning:è¦å/error:æ¥é }).then(() => { this.http.post("api/Task/ManualTask", params, "æ£å¨" + Remark + "ä»»å¡....").then(x => { this.http.post("api/Task/ManualTask?TaskId="+params.DelKeys+"&TaskType="+params.Extra, {}, "æ£å¨" + Remark + "ä»»å¡....").then(x => { if (!x.status) return this.$error(x.message); this.$success(Remark + "任塿å!"); this.refresh(); ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/0aec83b0-940b-410b-b815-b7567a3ab526.vsidxBinary files differ
ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/90edce4e-5c7d-43a1-a1ca-a45f82992279.vsidxBinary files differ
ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/bb49972a-b044-4a21-ac51-b32604fe6d49.vsidxBinary files differ
ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/f14b15c4-d0de-4059-a7fd-8efd859d0da6.vsidxBinary files differ
ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/TaskEnum/ManualTaskEnum.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,28 @@ using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace WIDESEAWCS_Common.TaskEnum { public enum ManualTaskEnum { /// <summary> /// éæ°ä¸åå åæºä»»å¡ /// </summary> SCTaskSend, /// <summary> /// 宿å åæºä»»å¡ /// </summary> SCTaskCompleted, /// <summary> /// 宿 /// </summary> Completed, /// <summary> /// åæ¶ /// </summary> Cancel } } ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs
@@ -282,6 +282,7 @@ /// <returns></returns> WebResponseContent AGVUpdateTaskState(AGVUpdateTaskDTO saveModel); WebResponseContent OutTaskFinish(string address); WebResponseContent ManualTask(int TaskId, int TaskType); WebResponseContent ManualTask(SaveModel saveModel); WebResponseContent ModifyBarcode(WMSTaskDTO taskDTO); } ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Task/TaskController.cs
@@ -33,9 +33,9 @@ [HttpPost, Route("ManualTask"), AllowAnonymous] public WebResponseContent ManualTask([FromBody] SaveModel saveModel) public WebResponseContent ManualTask(int TaskId, int TaskType) { return Service.ManualTask(saveModel); return Service.ManualTask(TaskId, TaskType); } [HttpPost, HttpGet, Route("UpdateTaskExceptionMessage")] ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Properties/PublishProfiles/FolderProfile.pubxml.user
@@ -6,7 +6,7 @@ <Project> <PropertyGroup> <_PublishTargetUrl>E:\IISText\èæ¹ä¸ä¸\WCS</_PublishTargetUrl> <History>True|2025-06-17T07:08:30.3988621Z;True|2025-06-17T11:49:45.7757057+08:00;False|2025-06-17T11:46:12.2872897+08:00;True|2025-06-17T11:14:34.8780060+08:00;True|2025-06-17T10:58:01.4890300+08:00;True|2025-05-20T11:49:19.9344988+08:00;True|2025-05-19T16:43:32.2157734+08:00;True|2025-05-19T16:12:01.9378787+08:00;True|2025-05-15T16:58:47.2930537+08:00;True|2025-05-15T13:17:15.3596644+08:00;True|2025-05-15T13:11:17.2616075+08:00;True|2025-05-15T12:57:49.7942020+08:00;True|2025-05-15T12:38:37.7925022+08:00;True|2025-05-15T12:28:15.6975809+08:00;True|2025-05-15T11:44:00.9991686+08:00;True|2025-05-15T10:37:45.5900920+08:00;True|2025-05-14T11:31:54.9438366+08:00;True|2025-05-14T09:59:15.2570833+08:00;True|2025-05-14T09:57:55.8054307+08:00;True|2025-05-14T09:39:18.3194886+08:00;True|2025-05-13T17:13:53.4476748+08:00;True|2025-05-13T15:21:11.2441407+08:00;True|2025-05-13T10:39:40.0223843+08:00;True|2025-05-09T11:16:41.1746344+08:00;True|2025-04-27T19:58:33.9706872+08:00;True|2025-04-27T14:52:52.9853720+08:00;True|2025-04-21T17:54:03.6534614+08:00;True|2025-04-19T10:28:25.0898569+08:00;True|2025-04-17T14:04:50.3243452+08:00;True|2025-03-27T16:23:43.2657011+08:00;True|2025-03-25T12:01:47.0052741+08:00;True|2025-02-14T17:36:18.5767695+08:00;True|2025-02-14T14:39:49.5856199+08:00;</History> <History>True|2025-06-19T09:43:29.0660951Z;True|2025-06-19T15:33:15.5169520+08:00;True|2025-06-17T15:08:30.3988621+08:00;True|2025-06-17T11:49:45.7757057+08:00;False|2025-06-17T11:46:12.2872897+08:00;True|2025-06-17T11:14:34.8780060+08:00;True|2025-06-17T10:58:01.4890300+08:00;True|2025-05-20T11:49:19.9344988+08:00;True|2025-05-19T16:43:32.2157734+08:00;True|2025-05-19T16:12:01.9378787+08:00;True|2025-05-15T16:58:47.2930537+08:00;True|2025-05-15T13:17:15.3596644+08:00;True|2025-05-15T13:11:17.2616075+08:00;True|2025-05-15T12:57:49.7942020+08:00;True|2025-05-15T12:38:37.7925022+08:00;True|2025-05-15T12:28:15.6975809+08:00;True|2025-05-15T11:44:00.9991686+08:00;True|2025-05-15T10:37:45.5900920+08:00;True|2025-05-14T11:31:54.9438366+08:00;True|2025-05-14T09:59:15.2570833+08:00;True|2025-05-14T09:57:55.8054307+08:00;True|2025-05-14T09:39:18.3194886+08:00;True|2025-05-13T17:13:53.4476748+08:00;True|2025-05-13T15:21:11.2441407+08:00;True|2025-05-13T10:39:40.0223843+08:00;True|2025-05-09T11:16:41.1746344+08:00;True|2025-04-27T19:58:33.9706872+08:00;True|2025-04-27T14:52:52.9853720+08:00;True|2025-04-21T17:54:03.6534614+08:00;True|2025-04-19T10:28:25.0898569+08:00;True|2025-04-17T14:04:50.3243452+08:00;True|2025-03-27T16:23:43.2657011+08:00;True|2025-03-25T12:01:47.0052741+08:00;True|2025-02-14T17:36:18.5767695+08:00;True|2025-02-14T14:39:49.5856199+08:00;</History> <LastFailureDetails /> </PropertyGroup> </Project> ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/PartialTaskService_Manual.cs
@@ -7,12 +7,220 @@ using WIDESEAWCS_Common.TaskEnum; using WIDESEAWCS_Core; using WIDESEAWCS_DTO.TaskInfo; using WIDESEAWCS_ITaskInfoService; using WIDESEAWCS_Model.Models; using WIDESEAWCS_QuartzJob; namespace WIDESEAWCS_TaskInfoService { public partial class TaskService { public WebResponseContent ManualTask(int TaskId, int TaskType) { WebResponseContent content = new WebResponseContent(); try { var Task = BaseDal.QueryFirst(x => x.TaskId == TaskId); if (Task == null) throw new Exception("æªæ¾å°ä»»å¡ä¿¡æ¯"); switch ((ManualTaskEnum)TaskType) { case ManualTaskEnum.SCTaskSend: content = SCTaskSend(Task); break; case ManualTaskEnum.SCTaskCompleted: content = SCTaskCompleted(Task); break; case ManualTaskEnum.Completed: content = Completed(Task); break; case ManualTaskEnum.Cancel: content = Cancel(Task); break; default: break; } } catch (Exception ex) { content.Error(ex.Message); } return content; } /// <summary> /// éæ°ä¸åå åæºä»»å¡ /// </summary> /// <param name="task"></param> /// <returns></returns> public WebResponseContent SCTaskSend(Dt_Task task) { WebResponseContent content = new WebResponseContent(); try { if (TaskInboundTypes.Contains(task.TaskType)) { if (task.TaskState != TaskInStatusEnum.SC_InExecuting.ObjToInt()) throw new Exception("ä»»å¡ç¶æä¸çäºå åæºå ¥åºæ§è¡ä¸ï¼ä¸å¯éæ°ä¸å"); task.TaskState = TaskInStatusEnum.Line_InFinish.ObjToInt(); content = UpdateData(task); } else if (TaskOutboundTypes.Contains(task.TaskType)) { if (task.TaskState != TaskOutStatusEnum.SC_OutExecuting.ObjToInt()) throw new Exception("ä»»å¡ç¶æä¸çäºå åæºåºåºæ§è¡ä¸ï¼ä¸å¯éæ°ä¸å"); task.TaskState = TaskOutStatusEnum.Car_OutFinish.ObjToInt(); content = UpdateData(task); } else if (task.TaskType == TaskRelocationTypeEnum.Relocation.ObjToInt()) { if (task.TaskState != TaskRelocationStatusEnum.SC_RelocationExecuting.ObjToInt()) throw new Exception("ä»»å¡ç¶æä¸çäºå åæºç§»åºæ§è¡ä¸ï¼ä¸å¯éæ°ä¸å"); task.TaskState = TaskRelocationStatusEnum.CarSource_Finish.ObjToInt(); content = UpdateData(task); } else if (task.TaskType == TaskOtherTypeEnum.RelocationCar.ObjToInt()) { if (task.TaskState != TaskCarStatusEnum.SC_CarExecuting.ObjToInt()) throw new Exception("ä»»å¡ç¶æä¸çäºå åæºç§»è½¦æ§è¡ä¸ï¼ä¸å¯éæ°ä¸å"); task.TaskState = TaskCarStatusEnum.ShuttleCar_Finish.ObjToInt(); content = UpdateData(task); } else if (task.TaskType == TaskOtherTypeEnum.RelocationCarCharging.ObjToInt()) { if (task.TaskState != CarChargingTaskEnum.CarChargingSC_CarExecuting.ObjToInt()) throw new Exception("ä»»å¡ç¶æä¸çäºå åæºç§»è½¦æ§è¡ä¸ï¼ä¸å¯éæ°ä¸å"); task.TaskState = CarChargingTaskEnum.CarCharging_Finish.ObjToInt(); content = UpdateData(task); } } catch (Exception ex) { content.Error(ex.Message); } return content; } /// <summary> /// 宿å åæºä»»å¡ /// </summary> /// <param name="task"></param> /// <returns></returns> public WebResponseContent SCTaskCompleted(Dt_Task task) { try { if (TaskInboundTypes.Contains(task.TaskType)) { if (task.TaskState != TaskInStatusEnum.SC_InExecuting.ObjToInt()) throw new Exception("ä»»å¡ç¶æä¸çäºå åæºå ¥åºæ§è¡ä¸"); } else if (TaskOutboundTypes.Contains(task.TaskType)) { if (task.TaskState != TaskOutStatusEnum.SC_OutExecuting.ObjToInt()) throw new Exception("ä»»å¡ç¶æä¸çäºå åæºåºåºæ§è¡ä¸"); } else if (task.TaskType == TaskRelocationTypeEnum.Relocation.ObjToInt()) { if (task.TaskState != TaskRelocationStatusEnum.SC_RelocationExecuting.ObjToInt()) throw new Exception("ä»»å¡ç¶æä¸çäºå åæºç§»åºæ§è¡ä¸"); } else if (task.TaskType == TaskOtherTypeEnum.RelocationCar.ObjToInt()) { if (task.TaskState != TaskCarStatusEnum.SC_CarExecuting.ObjToInt()) throw new Exception("ä»»å¡ç¶æä¸çäºå åæºç§»è½¦æ§è¡ä¸"); } else if (task.TaskType == TaskOtherTypeEnum.RelocationCarCharging.ObjToInt()) { if (task.TaskState != CarChargingTaskEnum.CarChargingSC_CarExecuting.ObjToInt()) throw new Exception("ä»»å¡ç¶æä¸çäºå åæºç§»è½¦æ§è¡ä¸"); } return StackCraneTaskCompleted(task.TaskNum); } catch (Exception ex) { return WebResponseContent.Instance.Error(ex.Message); } } /// <summary> /// å®æä»»å¡ /// </summary> /// <param name="task"></param> /// <returns></returns> public WebResponseContent Completed(Dt_Task task) { try { if (TaskInboundTypes.Contains(task.TaskType)) { if (task.TaskState < TaskInStatusEnum.SC_InFinish.ObjToInt()) { task.TaskState = TaskInStatusEnum.SC_InExecuting.ObjToInt(); UpdateData(task); StackCraneTaskCompleted(task.TaskNum); } AddTask_Hty(task, TaskOperateTypeEnum.ManualCompletion); } else if (TaskOutboundTypes.Contains(task.TaskType)) { if (task.TaskState < TaskOutStatusEnum.SC_OutFinish.ObjToInt()) { task.TaskState = TaskOutStatusEnum.SC_OutExecuting.ObjToInt(); UpdateData(task); StackCraneTaskCompleted(task.TaskNum); } AddTask_Hty(task, TaskOperateTypeEnum.ManualCompletion); } else if (task.TaskType == TaskRelocationTypeEnum.Relocation.ObjToInt()) { if (task.TaskState < TaskRelocationStatusEnum.SC_RelocationFinish.ObjToInt()) { task.TaskState = TaskRelocationStatusEnum.SC_RelocationExecuting.ObjToInt(); UpdateData(task); StackCraneTaskCompleted(task.TaskNum); } AddTask_Hty(task, TaskOperateTypeEnum.ManualCompletion); } else if (task.TaskType == TaskOtherTypeEnum.RelocationCar.ObjToInt()) { task.TaskState = TaskCarStatusEnum.SC_CarFinish.ObjToInt(); UpdateData(task); } else if (task.TaskType == TaskOtherTypeEnum.RelocationCarCharging.ObjToInt()) { task.TaskState = CarChargingTaskEnum.CarChargingSC_CarFinish.ObjToInt(); UpdateData(task); } return WebResponseContent.Instance.OK(); } catch (Exception ex) { return WebResponseContent.Instance.Error(ex.Message); } } /// <summary> /// åæ¶ä»»å¡ /// </summary> /// <param name="task"></param> /// <returns></returns> public WebResponseContent Cancel(Dt_Task task) { try { if (task.TaskType == TaskOtherTypeEnum.RelocationCar.ObjToInt() || task.TaskType == TaskOtherTypeEnum.RelocationCarCharging.ObjToInt()) AddTask_Hty(task, TaskOperateTypeEnum.ManualDeletion); if (!TaskInboundTypes.Contains(task.TaskType)) throw new Exception("æ æé"); if (task.TaskState > TaskInStatusEnum.Line_InExecuting.ObjToInt() && !string.IsNullOrEmpty(task.TargetAddress)) throw new Exception("å·²åé ç®æ å°å,ä¸å¯åæ¶"); task.TaskState = TaskInStatusEnum.InCancel.ObjToInt(); BaseDal.UpdateData(task); return WebResponseContent.Instance.OK(); } catch (Exception ex) { return WebResponseContent.Instance.Error(ex.Message); } } /// <summary> /// 人工æä½ä»»å¡ /// 1ï¼å®æï¼2ï¼åæ¶