1
huanghongfeng
2024-12-02 e2a5657e3a0b8615bcd78a3149e5ba9ce5579bb8
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Outbound.cs
@@ -452,6 +452,7 @@
                                        Creater = "WMS",
                                        CreateDate = DateTime.Now,
                                        TaskNum = BaseDal.GetTaskNum(nameof(SequenceEnum.SeqTaskNum)),
                                        MaterialType = dt_StockInfo.MaterialType
                                    };
                                    _unitOfWorkManage.BeginTran();
                                    if (locationInfos.LocationStatus == LocationStatusEnum.InStock.ObjToInt())
@@ -510,7 +511,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.EnableStatus != (int)EnableStatusEnum.Disable && x.Depth==1 && x.LocationStatus == LocationStatusEnum.Pallet.ObjToInt());
                    if(locationInfos == null)
                    {
                        locationInfos = _basicService.LocationInfoService.Repository.QueryFirst(x => x.RoadwayNo == RoadwayNo && x.Depth == 2 && x.EnableStatus != (int)EnableStatusEnum.Disable && x.LocationStatus == LocationStatusEnum.Pallet.ObjToInt());
                    }
                    if (locationInfos != null)
                    {
                        Dt_StockInfo dt_StockInfo = _stockService.StockInfoService.Repository.QueryFirst(x => x.LocationCode == locationInfos.LocationCode);
@@ -538,6 +544,7 @@
                                    Depth = locationInfos.Depth,
                                    CreateDate = DateTime.Now,
                                    PalletCodequantity = (int)dt_StockInfo.Materialweight,
                                    MaterialType = dt_StockInfo.MaterialType
                                };
                                _unitOfWorkManage.BeginTran();
@@ -618,6 +625,7 @@
                            CreateDate = DateTime.Now,
                            PalletCodequantity = (int)dt_StockInfo[i].Materialweight,
                            PLCTo = generate.TargetAddress == "R01-002-041-011-01" ? 1 : 2,
                            MaterialType = dt_StockInfo[i].MaterialType
                        };
                        _unitOfWorkManage.BeginTran();
@@ -707,6 +715,7 @@
                                    Creater = "WMS",
                                    Depth = locationinfo.Depth,
                                    CreateDate = DateTime.Now,
                                    MaterialType= stockt.MaterialType
                                };
                                dtstockt.Add(stockt);
                                locations.Add(locationinfo);
@@ -807,7 +816,7 @@
                                        Depth = locationinfo.Depth,
                                        CreateDate = DateTime.Now,
                                        PLCTo = int.Parse(saveModel.DelKeys[1].ToString()),
                                        MaterialType=stockt.MaterialType
                                    };
                                    dtstockt.Add(stockt);
                                    locations.Add(locationinfo);
@@ -1138,7 +1147,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();