diff --git a/WcsMain/ApiServe/Controllers/WmsController/ConveyController.cs b/WcsMain/ApiServe/Controllers/WmsController/ConveyController.cs index 2129922..0b63702 100644 --- a/WcsMain/ApiServe/Controllers/WmsController/ConveyController.cs +++ b/WcsMain/ApiServe/Controllers/WmsController/ConveyController.cs @@ -28,4 +28,13 @@ public class ConveyController(ConveyService conveyService) : ControllerBase [HttpPost("disposeVehicle")] public WmsApiResponse DisposeVehicle([FromBody] DisposeVehicleRequest request) => conveyService.DisposeVehicle(request); + + /// + /// 接收上位系统发过来的取消输送任务的指令 + /// + /// + /// + [HttpPost("cancel")] + public WmsApiResponse CancelVehicle([FromBody] List request) => conveyService.CancelConveyTask(request); + } diff --git a/WcsMain/ApiServe/Controllers/WmsController/WmsTaskController.cs b/WcsMain/ApiServe/Controllers/WmsController/WmsTaskController.cs index aee7a4f..fbd9214 100644 --- a/WcsMain/ApiServe/Controllers/WmsController/WmsTaskController.cs +++ b/WcsMain/ApiServe/Controllers/WmsController/WmsTaskController.cs @@ -39,5 +39,4 @@ public class WmsTaskController(WmsTaskService wmsTaskService) : ControllerBase /// [HttpPost("setStackerTaskNewDestination")] public WmsApiResponse GetStackerTaskNewDestination([FromBody] GetStackerTaskNewDestinationRequest request) => wmsTaskService.GetStackerTaskNewDestination(request); - } \ No newline at end of file diff --git a/WcsMain/ApiServe/Service/WmsService/ConveyService.cs b/WcsMain/ApiServe/Service/WmsService/ConveyService.cs index 26ab984..fdfbec0 100644 --- a/WcsMain/ApiServe/Service/WmsService/ConveyService.cs +++ b/WcsMain/ApiServe/Service/WmsService/ConveyService.cs @@ -70,4 +70,49 @@ public class ConveyService(DataBaseData dataBaseData, AppConveyTaskDao conveyTas if(string.IsNullOrEmpty(writeResult)) return WmsApiResponseFactory.Success(); return WmsApiResponseFactory.Fail(writeResult); } + + + /// + /// 取消wms的箱式线任务 + /// + /// + /// + public WmsApiResponse CancelConveyTask(List request) + { + try + { + foreach (var item in request) + { + if (string.IsNullOrEmpty(item.VehicleNo) || item.TaskType == default || item.Locations == default || item.Locations.Length < 1) + { + return WmsApiResponseFactory.RequestErr("存在必填项未填"); + } + //遍历所有点位 + foreach (var location in item.Locations) + { + //生成删除的对象 + var taskToDelete = new AppConveyTask + { + VehicleNo = item.VehicleNo, + Location = location + }; + int deleteResult = conveyTaskDao.VehicledDelete(taskToDelete); + if (deleteResult > 0) + { + return WmsApiResponseFactory.Success("删除成功"); + } + else + { + return WmsApiResponseFactory.DataBaseErr("删除失败"); + } + } + } + } + catch (Exception ex) + { + ConsoleLog.Error(ex.ToString()); + return WmsApiResponseFactory.Fail(ex); + } + return WmsApiResponseFactory.Success("没有找到匹配的记录"); + } } diff --git a/WcsMain/ApiServe/Service/WmsService/WmsTaskService.cs b/WcsMain/ApiServe/Service/WmsService/WmsTaskService.cs index 29ea4ea..fe905f5 100644 --- a/WcsMain/ApiServe/Service/WmsService/WmsTaskService.cs +++ b/WcsMain/ApiServe/Service/WmsService/WmsTaskService.cs @@ -7,6 +7,7 @@ using WcsMain.Business.CommonAction; using WcsMain.Common; using WcsMain.DataBase.Dao; using WcsMain.DataBase.TableEntity; +using WcsMain.Enum.Convey; using WcsMain.Enum.Stacker; using WcsMain.ExtendMethod; using WcsMain.Plugins; @@ -28,7 +29,7 @@ public class WmsTaskService(WmsTaskAction wmsTaskAction, AppWmsTaskDao wmsTaskDa /// public WmsApiResponse> GetStackerTask(List request) { - if (request.Count < 1 || request.Count > 20) return WmsApiResponseFactory.RequestErr>(null, "请求的任务数量只能在 1 至 20 范围内"); + if (request.Count < 1 || request.Count > 26) return WmsApiResponseFactory.RequestErr>(null, "请求的任务数量只能在 1 至 26 范围内"); List errRequest = []; // 存放错误的请求 /* 插入库存信息 */ // ---- 库存由WMS管理,数据库表也无需操作 List wmsTasks = []; @@ -173,13 +174,5 @@ public class WmsTaskService(WmsTaskAction wmsTaskAction, AppWmsTaskDao wmsTaskDa // // // } - - - - } - - - - } \ No newline at end of file diff --git a/WcsMain/Business/CommonAction/SendWmsTaskStatus.cs b/WcsMain/Business/CommonAction/SendWmsTaskStatus.cs index fbd8b0a..d70f9c8 100644 --- a/WcsMain/Business/CommonAction/SendWmsTaskStatus.cs +++ b/WcsMain/Business/CommonAction/SendWmsTaskStatus.cs @@ -16,6 +16,8 @@ namespace WcsMain.Business.CommonAction; public class SendWmsTaskStatus(AppWmsTaskDao wmsTaskDao, WmsWebApiPost wmsWebApiPost) { + + /// /// 发送 WMS 任务异常 /// diff --git a/WcsMain/Business/Convey/HistoryDataHandler/HisGetData/StackerOutC1.cs b/WcsMain/Business/Convey/HistoryDataHandler/HisGetData/StackerOutC1.cs index 729eb9a..579a9c3 100644 --- a/WcsMain/Business/Convey/HistoryDataHandler/HisGetData/StackerOutC1.cs +++ b/WcsMain/Business/Convey/HistoryDataHandler/HisGetData/StackerOutC1.cs @@ -132,6 +132,7 @@ public class StackerOutC1(ConveyOperation conveyOperation, DataBaseData dataBase // 比对两个区的箱子数量 var readResult_1 = CommonTool.Siemens.ReadInt16WithName($"数量1"); var readResult_2 = CommonTool.Siemens.ReadInt16WithName($"数量2"); + ConsoleLog.Info($"前区箱子数量{readResult_1.Value},后区箱子数量{readResult_2.Value}"); if (readResult_1.Value >= readResult_2.Value)//前区数量多去后区 { ConsoleLog.Info($"出库分流:{area} 箱码:{msg} 存在 1~5 站台任务且存在 6~9 区域任务"); diff --git a/WcsMain/DataBase/Dao/AppConveyTaskDao.cs b/WcsMain/DataBase/Dao/AppConveyTaskDao.cs index 60b582d..f54232d 100644 --- a/WcsMain/DataBase/Dao/AppConveyTaskDao.cs +++ b/WcsMain/DataBase/Dao/AppConveyTaskDao.cs @@ -93,6 +93,44 @@ public class AppConveyTaskDao } } + /// + /// 删除数据,以主键为条件 + /// + /// + /// + public int Delete(AppConveyTask appConveyTask) + { + try + { + var sqlFuc = CommonTool.DbServe.Deleteable(appConveyTask); + return sqlFuc.ExecuteCommand(); + } + catch (Exception ex) + { + _ = ex; + return 0; + } + } + + /// + /// 根据箱号和点位删除任务 + /// + /// + /// + public int VehicledDelete(AppConveyTask appConveyTask) + { + try + { + var deleteResult = CommonTool.DbServe.Deleteable().Where(it => it.VehicleNo == appConveyTask.VehicleNo && it.Location == appConveyTask.Location).ExecuteCommand(); + return deleteResult; + } + catch (Exception ex) + { + _ = ex; + return 0; + } + } + /// diff --git a/WcsMain/EquipOperation/ElTag/AtopOperation.cs b/WcsMain/EquipOperation/ElTag/AtopOperation.cs index 2653bde..8a2f8a0 100644 --- a/WcsMain/EquipOperation/ElTag/AtopOperation.cs +++ b/WcsMain/EquipOperation/ElTag/AtopOperation.cs @@ -62,7 +62,7 @@ public class AtopOperation /// /// /// - public Exception? ShowMsg(string? controllerDisplayName, int? tagId, string? value, LedColor ledColor = LedColor.Green, LedStatus ledStatus = LedStatus._0_5secblinking) + public Exception? ShowMsg(string? controllerDisplayName, int? tagId, string? value, LedColor ledColor = LedColor.Green, LedStatus ledStatus = LedStatus.LEDOn) { if (controllerDisplayName == default || tagId == default || value == default) {