From 98801d4cb12664bacfb64bd6efda291ad249eafa Mon Sep 17 00:00:00 2001
From: yuyou_x <2336760928@qq.com>
Date: 星期五, 01 三月 2024 16:11:14 +0800
Subject: [PATCH] 修改安库测试问题
---
Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs | 100 ++++++++++++++++++++++++++++++++++---------------
1 files changed, 69 insertions(+), 31 deletions(-)
diff --git a/Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs b/Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs
index 2d8c259..d65b27e 100644
--- a/Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs
+++ b/Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs
@@ -11,6 +11,7 @@
using Model.ModelVm.BllCheckVm;
using Newtonsoft.Json;
using SqlSugar;
+using SqlSugar.Extensions;
using Utility.Tools;
using WMS.BLL.LogServer;
using WMS.DAL;
@@ -543,53 +544,90 @@
//寰幆鐩樼偣璁板綍
foreach (var l in demo)
{
+ var sku = Db.Queryable<SysMaterials>().First(a => a.IsDel == "0" && a.SkuNo == l.SkuNo);
if (l.CheckResult == 0)//姝e父
{
- var de3 = stockBox.First(m => m.BoxNo == l.BoxNo && m.BoxNo3 == l.BoxNo3);
- if (de3 == null)
+ if (sku.Type != "4")
{
- throw new Exception($"鏈煡璇㈠埌{l.BoxNo}绠变腑{l.BoxNo3}搴撳瓨绠辩爜鐨勪俊鎭�");
+ var de3 = stockBox.First(m => m.BoxNo == l.BoxNo && m.BoxNo3 == l.BoxNo3);
+ if (de3 == null)
+ {
+ throw new Exception($"鏈煡璇㈠埌{l.BoxNo}绠变腑{l.BoxNo3}搴撳瓨绠辩爜鐨勪俊鎭�");
+ }
+ var de2 = stockDetail.First(m => m.Id == de3.StockDetailId);
+ if (de2 == null)
+ {
+ throw new Exception($"鏈煡璇㈠埌{l.BoxNo}绠变腑{l.BoxNo3}搴撳瓨鏄庣粏鐨勪俊鎭�");
+ }
+ de2.Status = "0";//灏嗗簱瀛樻槑缁嗙姸鎬佹敼涓哄緟鍒嗛厤
+ Db.Updateable(de2).ExecuteCommand();
}
- var de2 = stockDetail.First(m => m.Id == de3.StockDetailId);
- if (de2 == null)
+ else
{
- throw new Exception($"鏈煡璇㈠埌{l.BoxNo}绠变腑{l.BoxNo3}搴撳瓨鏄庣粏鐨勪俊鎭�");
+ 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();
}
- de2.Status = "0";//灏嗗簱瀛樻槑缁嗙姸鎬佹敼涓哄緟鍒嗛厤
- Db.Updateable(de2).ExecuteCommand();
+
}
else if (l.CheckResult == 1)//鐩樹簭
{
- var de3 = stockBox.First(m => m.BoxNo == l.BoxNo && m.BoxNo3 == l.BoxNo3);
- if (de3 == null)
+ if (sku.Type != "4")
{
- throw new Exception($"鏈煡璇㈠埌{l.BoxNo}绠变腑{l.BoxNo3}搴撳瓨绠辩爜鐨勪俊鎭�");
- }
+ var de3 = stockBox.First(m => m.BoxNo == l.BoxNo && m.BoxNo3 == l.BoxNo3);
+ if (de3 == null)
+ {
+ throw new Exception($"鏈煡璇㈠埌{l.BoxNo}绠变腑{l.BoxNo3}搴撳瓨绠辩爜鐨勪俊鎭�");
+ }
- var de2 = stockDetail.First(m => m.Id == de3.StockDetailId);
- if (de2 == null)
- {
- throw new Exception($"鏈煡璇㈠埌{l.BoxNo}绠变腑{l.BoxNo3}搴撳瓨鏄庣粏鐨勪俊鎭�");
- }
- de2.Status = "0";
- de2.Qty -= de3.Qty;
- 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 -= de3.Qty;
+ var de2 = stockDetail.First(m => m.Id == de3.StockDetailId);
+ if (de2 == null)
+ {
+ throw new Exception($"鏈煡璇㈠埌{l.BoxNo}绠变腑{l.BoxNo3}搴撳瓨鏄庣粏鐨勪俊鎭�");
+ }
+ de2.Status = "0";
+ de2.Qty -= de3.Qty;
+ 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 -= de3.Qty;
- Db.Updateable(de).ExecuteCommand();
- Db.Updateable(de2).ExecuteCommand();
- Db.Deleteable(de3).ExecuteCommand();
+ 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")
{
var stockBoxInfo = stockBox.First(m => m.StockDetailId == stockDetailInfo.Id);//搴撳瓨绠辨敮鏄庣粏
@@ -644,7 +682,7 @@
{
de.Qty += (int)(l.RealQty - l.Qty);
}
-
+
Db.Updateable(de).ExecuteCommand();
}
}
--
Gitblit v1.8.0