zhaowc
2025-04-07 19e95f4acc328bbf62a0427fe658d00268019e66
Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
@@ -2870,26 +2870,44 @@
                    throw new Exception("当前托盘未在库存中");
                }
                //怎么判断当前托盘是库外要取样的托盘,正常出库剩余托盘目前这种情况也能拣货啊,也没有分配信息
                var allot = Db.Queryable<BllExportAllot>().First(m =>
                    m.IsDel == "0" && m.PalletNo == palletNo && m.Status != "5" && m.Status != "6");
                if (allot != null)
                //先获取单据分配信息,再获取托盘分配信息
                var allotnotice = Db.Queryable<BllExportNotice>().Where(m =>
                    m.IsDel == "0" && m.Type == "3").ToList();
                if (allotnotice.Count  == 0)
                {
                    var soNo = Db.Queryable<BllExportNotice>()
                        .First(m => m.IsDel == "0" && m.SONo == allot.SONo);
                    if (soNo == null)
                    throw new Exception("未找到取样单据信息");
                }
                int pano = 0;
                var sono = "";
                foreach (var item in allotnotice)
                {
                    var allot = Db.Queryable<BllExportAllot>().First(m =>
                    m.IsDel == "0" && m.PalletNo == palletNo && m.Status != "5" && m.Status != "6" && m.SONo == item.SONo);
                    if (allot != null)
                    {
                        throw new Exception("未找到托盘上出库单据信息");
                        pano++;
                        sono = item.SONo;
                    }
                    if (soNo.Type != "3")
                }
                if (pano > 0)
                {
                    var locate = Db.Queryable<DataStockDetail>().First(w => w.PalletNo == palletNo);
                    if (locate != null)
                    {
                        throw new Exception("该托盘不是取样托盘");
                        if (locate.WareHouseNo == "w01")
                        {
                            type = "0";//库内取样
                        }
                        else
                        {
                            type = "1";
                        }
                    }
                    type = "0";//库内取样
                }
                else
                {
                    //判断当前托盘是否是在平库或库外
                    type = "1";//库前取样
                    throw new Exception("未找到取样托盘信息");
                }
                return type;
            }