Admin
2026-01-28 c29940a5ff8b56d96d4fe0fee2076a278e52e9c5
ÏîÄ¿´úÂë/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/MESTaskService.cs
@@ -177,9 +177,11 @@
                if (string.IsNullOrWhiteSpace(mES_In.endPosition)) return apiResponse.Error("目标位置不能为空");
                Dt_StockInfo dt_Stock=_stockInfoService.Repository.QueryData(x=>x.PalletCode== mES_In.containerNo && x.StockStatus== (int)StockStatusEmun.已入库).FirstOrDefault();
                Dt_StockInfo dt_Stock=_stockInfoService.Repository.QueryData(x=>x.PalletCode== mES_In.containerNo).FirstOrDefault();
                if (dt_Stock == null) return apiResponse.Error($"WMS未能查找道该托盘条码的库存货位信息,条码:{mES_In.containerNo}");
                if(dt_Stock.StockStatus == (int)StockStatusEmun.已入库)
                {
                Dt_LocationInfo dt_LocationInfo = _locationInfoService.Repository.QueryData(x => x.LocationCode == dt_Stock.LocationCode && x.LocationStatus== (int)LocationStatusEnum.InStock).FirstOrDefault();
                if (dt_LocationInfo == null) return apiResponse.Error($"WMS未能查找道该托盘条码的库存货位信息,条码:{mES_In.containerNo},未找到货位号:{dt_Stock.LocationCode}");
@@ -217,6 +219,44 @@
                WriteLog.Write_Log("MES_接收MES出库任务下发", $"出库任务添加", "成功", $"添加成功,托盘条码:{dt_Stock.PalletCode}");
                return apiResponse.OK();
                }else if(dt_Stock.StockStatus == (int)StockStatusEmun.移库锁定)
                {
                    Dt_LocationInfo dt_LocationInfo = _locationInfoService.Repository.QueryData(x => x.LocationCode == dt_Stock.LocationCode && x.LocationStatus == (int)LocationStatusEnum.Lock).FirstOrDefault();
                    if (dt_LocationInfo == null) return apiResponse.Error($"WMS未能查找道该托盘条码的库存货位信息,条码:{mES_In.containerNo},未找到货位号:{dt_Stock.LocationCode}");
                    Dt_roadwayinfo _Roadwayinfo = _roadWayinfoService.QbtainPlatform(dt_LocationInfo.RoadwayNo);
                    Dt_Task task = new Dt_Task();
                    task.TaskNum = mES_In.transNo;
                    task.PalletCode = dt_Stock.PalletCode;
                    task.PalletType = dt_Stock.PalletType;
                    task.Roadway = dt_LocationInfo.RoadwayNo;
                    task.TaskType = (int)TaskTypeEnum.Outbound;
                    task.TaskStatus = (int)OutTaskStatusEnum.OutWait;
                    task.SourceAddress = dt_LocationInfo.LocationCode;
                    task.TargetAddress = mES_In.endPosition;
                    task.CurrentAddress = dt_LocationInfo.LocationCode;
                    task.NextAddress = _Roadwayinfo.OutSCStationCode;
                    task.WarehouseId = dt_LocationInfo.WarehouseId;
                    task.OrderNo = mES_In.transDate.ToString();
                    task.Grade = 1;
                    task.Creater = "MES";
                    task.CreateDate = DateTime.Now;
                    _unitOfWorkManage.BeginTran();
                    BaseDal.AddData(task);
                    _unitOfWorkManage.CommitTran();
                    WriteLog.Write_Log("MES_接收MES出库任务下发", $"出库任务添加", "成功", $"添加成功,托盘条码:{dt_Stock.PalletCode}");
                    return apiResponse.OK();
                }
                else
                {
                    WriteLog.Write_Log("MES_接收MES出库任务下发", $"出库任务添加", $"失败,托盘条码:{dt_Stock.PalletCode}", $"库存状态错误,请查看WMS系统库存,库存状态:{dt_Stock.StockStatus}");
                    return apiResponse.Error("库存状态错误,请查看WMS系统库存");
                }
            }
            catch (Exception ex)
            {