chengsc
2024-08-19 5e2454c2a75cb70afc0d1933e5c29e02e21231e6
Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs
@@ -1332,22 +1332,23 @@
                var endLocate = Db.Queryable<SysStorageLocat>().First(m => m.LocatNo == task.EndLocat);
                if (endLocate != null)
                {
                    if (endLocate.Status != "0")
                    if (endLocate.Status != "4")
                    {
                        throw new Exception("目标储位状态非空储位");
                        throw new Exception("目标储位状态非移入中");
                    }
                }
                //更改库存明细
                foreach (var item in stockDetail)
                {
                    item.Status = "0";//待分配
                    item.LockQty = 0;//锁定数量改为0
                    //item.Status = "0";//待分配
                    //item.LockQty = 0;//锁定数量改为0
                    if (endLocate != null)//有目标储位说明移到其他区域储位
                    {
                        item.LocatNo = endLocate.LocatNo;//储位更改
                        item.WareHouseNo = endLocate.WareHouseNo;//所属仓库更改
                        item.RoadwayNo = endLocate.RoadwayNo;//所属巷道更改
                        item.AreaNo = endLocate.AreaNo;//所属区域更改
                        item.AreaNo = endLocate.AreaNo;//所属区域更改
                    }
                    else//没有目标储位说明移到入库口
                    {
@@ -1355,13 +1356,44 @@
                        item.WareHouseNo = "";//所属仓库更改(改为空)
                        item.RoadwayNo = "";//所属巷道更改(改为空)
                        item.AreaNo = "";//所属区域更改(改为空)
                    }
                    }
                    if (item.Qty == item.LockQty && item.LockQty>0)
                    {
                        item.Status = "2";
                    }
                    else if (item.Qty > item.LockQty && item.LockQty > 0)
                    {
                        item.Status = "1";
                    }
                    else if (item.Qty > item.LockQty && item.LockQty == 0)
                    {
                        item.Status = "0";
                    }
                    Db.Updateable(item).ExecuteCommand();
                    //更改库存总表
                    var stock = Db.Queryable<DataStock>().First(w => w.IsDel == "0" && w.SkuNo == item.SkuNo && w.LotNo == item.LotNo);
                    stock.LockQty -= (decimal)item.Qty;
                    Db.Updateable(stock).ExecuteCommand();
                    if (endLocate != null && endLocate.AreaNo == "B12") //是否是3楼缓存区 是:删除库存
                    {
                        //库存箱码明细删除
                        var boxInfo = Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.StockDetailId == item.Id).ToList();
                        Db.Deleteable(boxInfo).ExecuteCommand();
                        //删除库存托盘信息
                        Db.Deleteable(item).ExecuteCommand();
                        //更改库存总表
                        var stock = Db.Queryable<DataStock>().First(w => w.IsDel == "0" && w.SkuNo == item.SkuNo && w.LotNo == item.LotNo);
                        stock.LockQty -= (decimal)item.Qty;
                        stock.Qty -= (decimal)item.Qty;
                        Db.Updateable(stock).ExecuteCommand();
                        //更改托盘状态
                        var pallet = Db.Queryable<SysPallets>().First(m=>m.IsDel =="0" && m.PalletNo == task.PalletNo);
                        if (pallet != null)
                        {
                            pallet.Status = "0";
                            Db.Updateable(pallet).ExecuteCommand();
                        }
                    }
                }
                if (endLocate != null)
                {