1
huanghongfeng
2024-11-27 1dd9f4bf540a74a7de2daeeebf38491f86befa08
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Outbound.cs
@@ -427,9 +427,13 @@
                                Dt_LocationInfo newLocation;
                                //查走货位,进行生成移库任务 
                                int Locationtype = 9;   //默认为9
                                if (locationInfos.LocationType== (int)LocationStatusEnum.InStock)
                                if (dt_StockInfo.MaterialType == (int)InventoryMaterialType.成品)
                                {
                                    Locationtype = 11;
                                }
                                else if (dt_StockInfo.MaterialType == (int)InventoryMaterialType.原材料)
                                {
                                    Locationtype = 10;
                                }
                                newLocation = _basicService.LocationInfoService.GetLocation(locationInfos.RoadwayNo,Locationtype); //拿到了移库后的货位
                                if (newLocation != null)
@@ -506,7 +510,12 @@
                    {
                        RoadwayNo = "2";
                    }
                    Dt_LocationInfo locationInfos = _basicService.LocationInfoService.Repository.QueryFirst(x => x.RoadwayNo == RoadwayNo && x.LocationStatus == LocationStatusEnum.Pallet.ObjToInt());
                    Dt_LocationInfo locationInfos = _basicService.LocationInfoService.Repository.QueryFirst(x => x.RoadwayNo == RoadwayNo && x.Depth==1 && x.LocationStatus == LocationStatusEnum.Pallet.ObjToInt());
                    if(locationInfos == null)
                    {
                        locationInfos = _basicService.LocationInfoService.Repository.QueryFirst(x => x.RoadwayNo == RoadwayNo && x.Depth == 2 && x.LocationStatus == LocationStatusEnum.Pallet.ObjToInt());
                    }
                    if (locationInfos != null)
                    {
                        Dt_StockInfo dt_StockInfo = _stockService.StockInfoService.Repository.QueryFirst(x => x.LocationCode == locationInfos.LocationCode);
@@ -1134,7 +1143,7 @@
                else if(task.TaskType == (int)TaskTypeEnum.Inbound || task.TaskType == (int)TaskTypeEnum.PalletInbound)
                {
                    //处理出库的逻辑
                    Dt_LocationInfo locationinfo = _basicService.LocationInfoService.Repository.QueryFirst(x => x.LocationCode == task.SourceAddress);
                    Dt_LocationInfo locationinfo = _basicService.LocationInfoService.Repository.QueryFirst(x => x.LocationCode == task.TargetAddress);
                    if (locationinfo.LocationStatus == LocationStatusEnum.Lock.ObjToInt() || locationinfo.LocationStatus == LocationStatusEnum.PalletLock.ObjToInt())
                    {
                        locationinfo.LocationStatus = LocationStatusEnum.Free.ObjToInt();