| | |
| | | internal class WCSCore { |
| | | public static void OperateAgvTaskStatus(AgvTaskState model) { |
| | | if (string.IsNullOrEmpty(model.No)) { |
| | | var alertorDevice = Settings.alertorLightInfos.Where(a => a.deviceNo == int.Parse(model.LockNo)).FirstOrDefault(); |
| | | if (model.State == 1023) |
| | | { |
| | | var result = HH.WCS.Mobox3.YNJT_PT.device.TcpClient.SendHexOnce(alertorDevice.address, 502, alertorDevice.turnLight); |
| | | LogHelper.Info("modbus 返回信号:" + result, "TSSG"); |
| | | } |
| | | |
| | | if (model.State == 1025) |
| | | { |
| | | var result = HH.WCS.Mobox3.YNJT_PT.device.TcpClient.SendHexOnce(alertorDevice.address, 502, alertorDevice.offLight); |
| | | LogHelper.Info("modbus 返回信号:" + result, "TSSG"); |
| | | } |
| | | } |
| | | else { |
| | | var TN_Task = WCSHelper.GetTask(model.No); |
| | |
| | | break; |
| | | case 5: |
| | | WCSHelper.UpdateStatus(TN_Task, "开始卸货"); |
| | | WCSHelper.UpdateStatus(TN_Task, "卸货完成"); |
| | | TaskProcess.OperateStatus(TN_Task, 6); |
| | | if (TN_Task.S_OP_NAME == "移库单移库") |
| | | { |
| | | var startLoc = LocationHelper.GetLoc(TN_Task.S_START_LOC); |
| | | var endLoc = LocationHelper.GetLoc(TN_Task.S_END_LOC); |
| | | |
| | | TN_YiKuDetail detail = new TN_YiKuDetail() |
| | | { |
| | | S_NO = TN_Task.S_OP_CODE, |
| | | S_START_AREA = startLoc.S_AREA_CODE, |
| | | S_START_ROW = startLoc.N_ROW, |
| | | S_END_AREA = endLoc.S_AREA_CODE, |
| | | S_END_ROW = endLoc.N_ROW |
| | | }; |
| | | WMSHelper.updateShiftOrderDetail(detail); |
| | | } |
| | | WCSHelper.End(TN_Task); |
| | | break; |
| | | case 6: |
| | | WCSHelper.UpdateStatus(TN_Task, "卸货完成"); |
| | | TaskProcess.OperateStatus(TN_Task, 6); |
| | | break; |
| | | #endregion |
| | | case 2: |
| | | // 修改工单状态 |
| | | /* WCSHelper.UpdateWorkOrderStatus(TN_Task.S_OP_CODE, "已完成");*/ |
| | | WCSHelper.End(TN_Task); |
| | | break; |
| | | case 7: |
| | | //判断是否收到过强制取消,有就不做任何处理 |
| | |
| | | //终点托盘绑定 |
| | | if (LocationHelper.BindingLoc(wcsTask.S_END_LOC, new List<string> { wcsTask.S_CNTR_CODE })) { |
| | | //修改托盘状态为可用,增加库存量表,后面分拣出可以计算到 |
| | | ContainerHelper.Enable(wcsTask.S_CNTR_CODE, wcsTask.S_END_LOC); |
| | | /* ContainerHelper.Enable(wcsTask.S_CNTR_CODE, wcsTask.S_END_LOC);*/ |
| | | |
| | | } |
| | | } |