wxw
7 天以前 3ffc9e207b22b4fff12e601aeb512b8d373e5a9d
修改问题
3个文件已修改
78 ■■■■ 已修改文件
Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs 46 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs
@@ -1871,14 +1871,13 @@
                    throw new Exception("库存托盘没有信息");
                }
                var locate = stockDetail.First().LocatNo;
                //var locatList = Db.Queryable<SysStorageLocat>().Where(m=>m.WareHouseNo == "W04" && (m.AreaNo == "B06" || m.AreaNo == "B07" || m.AreaNo == "B09") && m.IsDel == "0").ToList();
                var locatList = Db.Queryable<SysStorageLocat>().Where(m => m.WareHouseNo == "W04" && m.IsDel == "0").ToList();
                var locatList = Db.Queryable<SysStorageLocat>().Where(m=>m.WareHouseNo == "W04" && (m.AreaNo == "B06" || m.AreaNo == "B07" || m.AreaNo == "B09" || m.AreaNo == "B24") && m.IsDel == "0").ToList();
                var locat = locatList.FirstOrDefault(m => m.LocatNo == locate);
                //判断托盘储位是否在车间
                //if (locat == null)
                //{
                //    throw new Exception("储位信息没有在车间工位上");
                //}
                if (locat == null)
                {
                    throw new Exception("储位信息没有在车间工位上");
                }
                locat.Status = "0";
                Db.Updateable(locat).ExecuteCommand();
                //判断托盘信息
Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
@@ -303,6 +303,19 @@
                    }
                    else
                    {
                        var locateStr = stockDetail.LocatNo;
                        //更改储位状态为空储位
                        var locate = Db.Queryable<SysStorageLocat>().First(m => m.IsDel == "0" && m.LocatNo == locateStr);
                        if (locate != null)
                        {
                            locate.Status = "0";
                            Db.Updateable(locate).ExecuteCommand();
                        }
                        stockDetail.WareHouseNo = "";
                        stockDetail.RoadwayNo = "";
                        stockDetail.AreaNo = "";
                        stockDetail.LocatNo = "";
                        stockDetail.SONo = soNo;
                        stockDetail.UDF5 = "1";
                        await Db.Updateable(stockDetail).ExecuteCommandAsync();
@@ -481,7 +494,7 @@
                        pinStockDetail.LockQty += pickQty;
                        await Db.Updateable(pinStockDetail).ExecuteCommandAsync();
                    }
                }
                }
                //添加操作日志记录
                var k = new OperationSOServer().AddLogOperationSo("PDA模块", "拣货拼托", soNo, "拣货", $"在PDA上对出库单号为:{soNo}的原托盘码为:{palletNo},新托盘码为:{palletNoNew}的拣货拼托操作", userId);
@@ -1519,7 +1532,7 @@
                string skuName = boxInfos.First().SkuName;
                // 验证是否车间线边仓库
                var areaList = new List<string>() { "B06", "B07", "B09" };
                var areaList = new List<string>() { "B06", "B07", "B09", "B24" };
                if (!areaList.Contains(stockDetail.AreaNo))
                {
                    throw Oops.Bah("托盘不是车间托盘!");
@@ -1565,7 +1578,7 @@
                    await Db.Updateable(stockDetail).ExecuteCommandAsync();
                }   
                stock.Qty -= pickQty;
                //stock.LockQty -= pickQty;
                stock.LockQty -= pickQty;
                if (stock.Qty <= 0)
                {
                    await Db.Deleteable(stock).ExecuteCommandAsync();
@@ -1677,7 +1690,7 @@
                }
                // 验证是否车间线边仓库
                var areaList = new List<string>() { "B06", "B07", "B09" };
                var areaList = new List<string>() { "B06", "B07", "B09", "B24" };
                if (!areaList.Contains(stockDetail.AreaNo))
                {
                    throw Oops.Bah("托盘不是车间托盘!");
Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
@@ -1097,7 +1097,7 @@
                    skuList = skuList.Where(m => m.SkuNo == "100088").ToList();
                }
                skuStrList = skuList.Select(m => m.SkuNo).ToList();
                var areaStr = new List<string>() { "B06", "B07", "B09" };
                var areaStr = new List<string>() { "B06", "B07", "B09", "B24" };
                var stockRst = new StockServer();
                var stockDetailRst = new StockDetailServer();
                Expression<Func<DataStockDetail, bool>> item = Expressionable.Create<DataStockDetail>()
@@ -1194,6 +1194,12 @@
                        //}
                        break;
                    case "W02"://原料库
                        if (skuList.Any(m => m.Type == "2"))
                        {
                            throw new Exception("仓库与出库物料不符");
                        }
                        break;
                    case "W04"://平库
                        if (skuList.Any(m => m.Type == "2"))
                        {
                            throw new Exception("仓库与出库物料不符");
@@ -2774,7 +2780,8 @@
                        //取合适库存商品
                        Dictionary<int, decimal> stockQtyDic = new Dictionary<int, decimal>();//托出库物品数
                        var qty = 0m;
                        var qty = 0m;//分配数量
                        var xQty = 0m;//下架数量
                        var house = "";
                        //分配货物
@@ -2810,6 +2817,11 @@
                                CreateUser = userId,
                                CreateTime = DateTime.Now
                            };
                            if (s.WareHouseNo == "W04")
                            {
                                allot.Status = "2";//待拣货
                                xQty += allot.Qty;
                            }
                            exAllotList.Add(allot);
                            s.LockQty += stockQtyDic[s.Id];
@@ -2822,11 +2834,12 @@
                            {
                                s.Status = "1";
                            }
                            var sd = Db.Updateable(s).UpdateColumns(it => new { it.LockQty, it.Status }).ExecuteCommand();
                        }
                        detail.AllotQty += qty;
                        detail.AllotQty += qty;//分配数量
                        detail.FactQty += xQty;//下架数量
                        detail.UpdateUser = userId;
                        detail.UpdateTime = DateTime.Now;
                        if (detail.Status == "0")
@@ -2892,8 +2905,13 @@
                                //证明所有分配数量全部小于等于出库数量 不做修改
                                break;
                        }
                        var outPalletCount = exAllotList.Where(w => w.Status == "0").Count();//查找有无需要出库的托盘
                        if (outPalletCount <= 0)
                        {
                            notice.Status = "3";//正在执行
                        }
                    }
                    notice.UpdateUser = userId;
                    notice.UpdateTime = DateTime.Now;
                    var zd = Db.Updateable(notice).ExecuteCommand();
@@ -3005,6 +3023,7 @@
                            soDetailList.Add(soDetail);
                        }
                        d.AllotQty = 0;
                        d.FactQty = 0;
                        d.Status = "0";
                        d.UpdateUser = userId;
                        d.UpdateTime = DateTime.Now;
@@ -3210,7 +3229,8 @@
                //var stockz = Db.Queryable<DataStock>().First(d => d.IsDel == "0" && d.SkuNo == detail.SkuNo && d.LotNo == detail.LotNo);
                var allotList = new List<BllExportAllot>();
                decimal outQtys = 0;
                decimal outQtys = 0;//分配数量
                decimal xQty = 0;//下架数量
                foreach (var st in model.StockList)
                {
                    var stock = stockList.First(a => a.Id == st.StockId);
@@ -3252,6 +3272,11 @@
                            CreateUser = userId,
                            CreateTime = DateTime.Now
                        };
                        if (stock.WareHouseNo == "W04")
                        {
                            allot.Status = "2";//待拣货
                            xQty += allot.Qty;
                        }
                        allotList.Add(allot);
                    }
                    else
@@ -3274,7 +3299,8 @@
                }
                Db.Insertable(allotList).ExecuteCommand();
                //修改单据明细
                detail.AllotQty += outQtys;
                detail.AllotQty += outQtys;//分配数量
                detail.FactQty += xQty;//下架数量
                detail.UpdateUser = userId;
                detail.UpdateTime = DateTime.Now;
                if (detail.Status == "0")
@@ -3304,6 +3330,12 @@
                    {
                        notice.Status = "1";//证明分配数量小于等于出库数量  修改为部分分配
                    }
                    var outPalletCount = allotList.Where(w => w.Status == "0").Count();//查找有无需要出库的托盘
                    if (outPalletCount <= 0)
                    {
                        notice.Status = "3";//正在执行
                    }
                    Db.Updateable(notice).ExecuteCommand();
                }
                //添加操作日志记录