admin
12 小时以前 cd93dd1fd57afa3437e43499236273c2e1df4423
Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
@@ -126,7 +126,6 @@
                bool isNew = false;
                var pinStockDetail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.SkuNo == stockDetail.SkuNo && m.LotNo == stockDetail.LotNo);
                //var pinStockDetail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.PalletNo == palletNoNew);
                if (pinStockDetail != null)
                {
@@ -137,13 +136,12 @@
                    if (palletNo != palletNoNew)//非整托拣货                                                
                    {
                        //var pinStockDetails = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.Id != pinStockDetail.Id).ToList();
                        var pinStockDetails = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == palletNoNew).ToList();
                        //只允许绑定同一个出库单下的物料
                        if (pinStockDetails.Count(m => m.SONo != notice.SONo) > 0)
                        {
                            throw Oops.Bah("拼托托盘上只能放同一个出库单下的物料!");
                        }
                        ////只允许绑定同一个出库单下的物料
                        //if (pinStockDetails.Count(m => m.SONo != notice.SONo) > 0)
                        //{
                        //    throw Oops.Bah("拼托托盘上只能放同一个出库单下的物料!");
                        //}
                    }
                    sdId = pinStockDetail.Id;
@@ -163,7 +161,7 @@
                        //只允许绑定同一个出库单下的物料
                        if (pinStockDetails.Count(m => m.SONo != notice.SONo) > 0)
                        {
                            throw Oops.Bah("一个托盘只能接受一个出库单拼托!");
                            throw Oops.Bah("新托盘信息不存在或已被使用!");
                        }
                    }
                    else
@@ -615,7 +613,7 @@
                #region 拼托信息
                bool isNew = false;
                var pinStockDetail = await Db.Queryable<DataStockDetail>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.SkuNo == stockDetail.SkuNo && m.LotNo == stockDetail.LotNo);
                //var pinStockDetail = await Db.Queryable<DataStockDetail>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNoNew);
                if (pinStockDetail != null)
                {
                    //修改托盘表状态让托盘表和库存明细表保持一致
@@ -625,19 +623,17 @@
                    if (palletNo != palletNoNew)//非整托拣货
                    {
                        //var pinStockDetails = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.Id != pinStockDetail.Id).ToList();
                        var pinStockDetails = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == palletNoNew).ToList();
                        if (pinStockDetails.Count(m => m.SONo != notice.SONo) > 0)
                        {
                            throw Oops.Bah("拼托托盘上只能放同一个出库单下的物料!");
                        }
                        //if (pinStockDetails.Count(m => m.SONo != notice.SONo) > 0)
                        //{
                        //    throw Oops.Bah("拼托托盘上只能放同一个出库单下的物料!");
                        //}
                    }
                }
                else
                {
                    isNew = true;
                    //var newPalletInfo = await Db.Queryable<SysPallets>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.Status == "0");
                    var newPalletInfo = await Db.Queryable<SysPallets>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNoNew);
                    if (newPalletInfo == null)
                    {
@@ -645,7 +641,8 @@
                    }
                    if (newPalletInfo.Status == "0")
                    {
                        var pinStockDetails = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == palletNoNew && (m.SkuNo != stockDetail.SkuNo && m.LotNo != stockDetail.LotNo)).ToList();
                        //var pinStockDetails = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == palletNoNew && (m.SkuNo != stockDetail.SkuNo && m.LotNo != stockDetail.LotNo)).ToList();
                        var pinStockDetails = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == palletNoNew && (m.SkuNo != stockDetail.SkuNo || m.LotNo != stockDetail.LotNo)).ToList();
                        if (pinStockDetails.Count(m => m.SONo != notice.SONo) > 0)
                        {
                            throw Oops.Bah("新托盘信息不存在或已被使用!");
@@ -1568,7 +1565,7 @@
                string skuNo = boxInfos.First().SkuNo;
                string skuName = boxInfos.First().SkuName;
                // 验证是否车间线边仓库
                //验证是否车间线边仓库
                string areaNoSql = $@"select AreaNo from SysStorageArea where IsDel='0' and AreaType='1'";
                DataTable areaNoDt = Db.Ado.GetDataTable(areaNoSql);
                List<string> areaNoList = areaNoDt.Rows.Cast<DataRow>().Select(e => e["AreaNo"] + "").ToList();
@@ -1729,9 +1726,12 @@
                    throw Oops.Bah("未查询到该托盘上货物的库存明细信息!");
                }
                // 验证是否车间线边仓库
                var areaList = new List<string>() { "B06", "B07", "B09", "B24", "B29" };
                if (!areaList.Contains(stockDetail.AreaNo))
                //验证是否车间线边仓库
                string areaNoSql = $@"select AreaNo from SysStorageArea where IsDel='0' and AreaType='1'";
                DataTable areaNoDt = Db.Ado.GetDataTable(areaNoSql);
                List<string> areaNoList = areaNoDt.Rows.Cast<DataRow>().Select(e => e["AreaNo"] + "").ToList();
                if (!areaNoList.Contains(stockDetail.AreaNo))
                {
                    throw Oops.Bah("托盘不是车间托盘!");
                }