| | |
| | | using Model.ModelVm.BllCheckVm; |
| | | using Newtonsoft.Json; |
| | | using SqlSugar; |
| | | using SqlSugar.Extensions; |
| | | using Utility.Tools; |
| | | using WMS.BLL.LogServer; |
| | | using WMS.DAL; |
| | |
| | | //循环盘点记录 |
| | | foreach (var l in demo) |
| | | { |
| | | var sku = Db.Queryable<SysMaterials>().First(a => a.IsDel == "0" && a.SkuNo == l.SkuNo); |
| | | if (l.CheckResult == 0)//正常 |
| | | { |
| | | if (sku.Type != "4") |
| | | { |
| | | var de3 = stockBox.First(m => m.BoxNo == l.BoxNo && m.BoxNo3 == l.BoxNo3); |
| | | if (de3 == null) |
| | |
| | | de2.Status = "0";//将库存明细状态改为待分配 |
| | | Db.Updateable(de2).ExecuteCommand(); |
| | | } |
| | | else |
| | | { |
| | | var de2 = stockDetail.First(m => m.PalletNo == l.PalletNo && m.SkuNo == l.SkuNo); |
| | | if (de2 == null) |
| | | { |
| | | throw new Exception($"未查询到{l.PalletNo}的库存明细的信息"); |
| | | } |
| | | de2.Status = "0";//将库存明细状态改为待分配 |
| | | Db.Updateable(de2).ExecuteCommand(); |
| | | } |
| | | |
| | | } |
| | | else if (l.CheckResult == 1)//盘亏 |
| | | { |
| | | if (sku.Type != "4") |
| | | { |
| | | var de3 = stockBox.First(m => m.BoxNo == l.BoxNo && m.BoxNo3 == l.BoxNo3); |
| | | if (de3 == null) |
| | |
| | | Db.Updateable(de).ExecuteCommand(); |
| | | Db.Updateable(de2).ExecuteCommand(); |
| | | Db.Deleteable(de3).ExecuteCommand(); |
| | | } |
| | | else |
| | | { |
| | | var de2 = stockDetail.First(m => m.PalletNo == l.PalletNo && m.SkuNo == l.SkuNo); |
| | | if (de2 == null) |
| | | { |
| | | throw new Exception($"未查询到{l.PalletNo}的库存明细的信息"); |
| | | } |
| | | de2.Status = "0"; |
| | | de2.Qty = l.RealQty; |
| | | var de = stock.First(m => m.SkuNo == l.SkuNo && m.LotNo == l.LotNo); |
| | | if (de == null) |
| | | { |
| | | throw new Exception($"未查询到物料{l.SkuNo}批次{l.LotNo}的总库存的信息"); |
| | | } |
| | | de.Qty -= Convert.ToDecimal(l.Qty - l.RealQty); |
| | | |
| | | Db.Updateable(de).ExecuteCommand(); |
| | | Db.Updateable(de2).ExecuteCommand(); |
| | | } |
| | | |
| | | } |
| | | else if (l.CheckResult == 2)//盘盈 |
| | | { |
| | | var sku = Db.Queryable<SysMaterials>().First(a => a.IsDel == "0" && a.SkuNo == l.SkuNo); |
| | | |
| | | var stockDetailInfo = stockDetail.First(m => m.PalletNo == d.PalletNo && m.SkuNo == d.SkuNo && m.LotNo == d.LotNo);//库存明细 |
| | | |
| | | if (sku.Type != "4") |