liudl
8 天以前 3b4ab19a4b05e098e971746c692a0d012fde7445
Admin.NET/WCS.Application/PLC/PLCService.cs
@@ -714,9 +714,9 @@
                        //listResult.Add(plcConn.SetPlcDBValue(modPosEndStorey.PosType, modDevice.DbNumber, modPosEndStorey.PlcPos, storey));
                        PlcTaskInfo taskInfo = new PlcTaskInfo();
                        taskInfo = PLCCommon.GetEndPai(modTask.EndRoadway.Substring(1, 2), modTask.EndLocate.Substring(2, 2),
                                        modTask.EndLocate.Substring(0, 2), modTask.EndLocate.Substring(4, 2),
                                        modTask.EndLocate.Substring(6, 2));
                        taskInfo = PLCCommon.GetEndPai(endLocat.Substring(1, 2), endLocat.Substring(2, 2),
                                        endLocat.Substring(0, 2), endLocat.Substring(4, 2),
                                        endLocat.Substring(6, 2));
                        // 给PLC写入任务数据
                        var listResult = new List<Result>();
@@ -737,7 +737,7 @@
                        if (listResult.All(s => s.IsSucceed))
                        {
                            // 向跺机写入控制流程字
                            var res = modDevice.PLCUtil.SetPlcDBValue(modDevice.PosType, modDevice.WcsPos, "862");
                            var res = plcConn.SetPlcDBValue(modDevice.PosType, modDevice.DbNumber, modDevice.WcsPos, "862");//写入开始放货信号
                            var modcTaskMonitor = new WcsTaskMonitor()
                            {
                                TaskNo = modTask.TaskNo,
@@ -1299,16 +1299,16 @@
                    var modPosPallet = modDevice.listStation.FirstOrDefault(m => m.Text == "托盘码");
                    var (res, palletVal) = plcConn.GetPlcDBValue(PLCDataTypeEnum.String, modDevice.DbNumber, modPosPallet.PlcPos);
                    // 获取工位任务号信息
                    var modPosTaskNo = modDevice.listStation.FirstOrDefault(m => m.Text == "任务号");
                    var (taskRes, taskNoVal) = plcConn.GetPlcDBValue(PLCDataTypeEnum.String, modDevice.DbNumber, modPosTaskNo.PlcPos);
                    if (!res.IsSucceed || !taskRes.IsSucceed)
                    {
                        break;
                    }
                    //var modPosTaskNo = modDevice.listStation.FirstOrDefault(m => m.Text == "任务号");
                    //var (taskRes, taskNoVal) = plcConn.GetPlcDBValue(PLCDataTypeEnum.String, modDevice.DbNumber, modPosTaskNo.PlcPos);
                    //if (!res.IsSucceed || !taskRes.IsSucceed)
                    //{
                    //    break;
                    //}
                    string pallet = palletVal.ToString();
                    string taskNo = taskNoVal.ToString();
                    //string taskNo = taskNoVal.ToString();
                    // 获取任务信息
                    var modTask = _db.Queryable<WcsTask>().First(s => s.IsDelete == false && s.PalletNo == pallet && s.Status == TaskStatusEnum.Doing && s.TaskType == TaskTypeEnum.In && s.TaskNo == taskNo);
                    var modTask = _db.Queryable<WcsTask>().OrderByDescending(s=>s.CreateTime).First(s => s.IsDelete == false && s.PalletNo == pallet && s.Status == TaskStatusEnum.Doing && s.TaskType == TaskTypeEnum.In );//&& s.TaskNo == taskNo
                    if (modTask == null)
                    {
                        // 此托盘没有对应的转移任务 led显示
@@ -1477,19 +1477,19 @@
                        // led显示内容
                        // 根据目标工位号获取对应的LEDIP地址
                        var ledDevice = PLCTaskAction.plcDevices.First(m => m.StationNum == modDevice.StationNum && m.IsDelete == false && m.DeviceType == DeviceTypeEnum.Business && m.PlcId == modDevice.PlcId);
                        //var ledDevice = PLCTaskAction.plcDevices.First(m => m.StationNum == modDevice.StationNum && m.IsDelete == false && m.DeviceType == DeviceTypeEnum.Business && m.PlcId == modDevice.PlcId);
                        
                        ledText += $"出库完成\n\n";
                        //ledText += $"任务号:{taskInfo.TaskNo}\n";
                        //ledText += $"出库完成\n\n";
                        ////ledText += $"任务号:{taskInfo.TaskNo}\n";
                        ////ledText += $"托盘号:{taskInfo.PalletNo}\n\n";
                        ////ledText += $"起始位:{taskInfo.StartRoadway + " " + taskInfo.StartLocate}\n";
                        ////ledText += $"目标位:{taskInfo.EndRoadway + " " + taskInfo.EndLocate}";
                        //ledText += $"名称:{taskInfo.SkuName}\n";
                        //ledText += $"批号:{taskInfo.LotNo}\n";
                        //ledText += $"出库数量:{taskInfo.Qty}\n";
                        //ledText += $"分配数量:{taskInfo.CompleteQty}\n";
                        //ledText += $"托盘号:{taskInfo.PalletNo}\n\n";
                        //ledText += $"起始位:{taskInfo.StartRoadway + " " + taskInfo.StartLocate}\n";
                        //ledText += $"目标位:{taskInfo.EndRoadway + " " + taskInfo.EndLocate}";
                        ledText += $"名称:{taskInfo.SkuName}\n";
                        ledText += $"批号:{taskInfo.LotNo}\n";
                        ledText += $"出库数量:{taskInfo.Qty}\n";
                        ledText += $"分配数量:{taskInfo.CompleteQty}\n";
                        ledText += $"托盘号:{taskInfo.PalletNo}\n\n";
                        LedDisplay(ledDevice.LedIP, ledText);
                        //LedDisplay(ledDevice.LedIP, ledText);
                    }
                    // 反馈WMS出库完成
                    //TaskReques taskReques = new TaskReques();
@@ -1569,7 +1569,7 @@
                        // led显示内容
                        var ledDevice = PLCTaskAction.plcDevices.First(m => m.StationNum == modDevice.StationNum && m.IsDelete == false && m.DeviceType == DeviceTypeEnum.Business && m.PlcId == modDevice.PlcId);
                        
                        ledText += $"出库完成\n\n";
                        ledText += $"出库完成\n";
                        //ledText += $"任务号:{modTask.TaskNo}\n";
                        //ledText += $"托盘号:{modTask.PalletNo}\n\n";
                        //ledText += $"起始位:{modTask.StartRoadway + " " + modTask.StartLocate}\n";